我最近開始了一個網站,用戶可以上傳視頻到上工作,我用的ffmpeg一個初學者,但我一直在尋找,尋找如何做這些事情,我想要做,但是其中大部分都不適合我。FFMPEG用PHP轉換視頻的MP4和快照
我想任何視頻類型轉換爲.mp4
和保持質量儘可能的好。現在我的代碼只能用於上傳.mov
和.mp4
,但.avi
不能轉換(它甚至不會爲這些文件創建新文件)。
我也想借高畫質截圖從視頻爲好,但現在我得到的截圖似乎真的低質量的,所以我不知道這是怎麼回事這一點。
我現在使用的代碼是這樣的:
$ffmpeg = "/Users/USERNAME/ffmpeg/ffmpeg";
$src = "/Applications/MAMP/htdocs/lounge/videos/".$filename."_original.".$ext;
$img = "/Applications/MAMP/htdocs/lounge/videos/thumbnails/".$filename."_1.jpg";
$img2 = "/Applications/MAMP/htdocs/lounge/videos/thumbnails/".$filename."_2.jpg";
$img3 = "/Applications/MAMP/htdocs/lounge/videos/thumbnails/".$filename."_3.jpg";
$video = "/Applications/MAMP/htdocs/lounge/videos/".$filename.".mp4";
$src = preg_replace("/ /", "\ ", $src);
$img = preg_replace("/ /", "\ ", $img);
$imgOutput = shell_exec("$ffmpeg -ss 1 -i $src -s 960x540 -f image2 -vframes 1 $img");
$imgOutput2 = shell_exec("$ffmpeg -ss 15 -i $src -s 960x540 -f image2 -vframes 1 $img2");
$imgOutput3 = shell_exec("$ffmpeg -ss 30 -i $src -s 960x540 -f image2 -vframes 1 $img3");
$videoOuput = shell_exec("$ffmpeg -y -i $src 2>&1 -s vga $video");
我怎麼能去輸出720p或1080p的視頻?
如果你想要真正高質量的截圖,請刪除.jpg並使用.png – Havenard 2013-03-14 22:12:42
1080p視頻是'-s 1920x1080'和720p視頻是'-s 1280x720' – Havenard 2013-03-14 22:15:24
好的,我確實使用過720p視頻,但它是與原始圖像相比仍然有點像。 – 2013-03-14 22:25:17