2016-01-22 89 views
2

我将视频分机"flv","avi","mp4","mkv", "mpg", "wmv", "asf", "webm","mov","3gp","3gpp"转换为"mp4"以获得更好的质量。我使用ffmpeg转换.mp4视频不在窗口上播放

命令:

ffmpeg -i <server_path>/g9zyy2qg54qp1l5spo2-mergedFile.webm -strict -2 -vcodec libx264 -preset slow -vb 500k -maxrate 500k -bufsize 1000k -vf 'scale=-1:480 ' -threads 0 -ab 64k -s 640x480 -movflags faststart -metadata:s:v:0 rotate=0 <server_path>/g9zyy2qg54qp1l5spo2-mergedFile7.mp4 

影片的精致无处不在,除了在Windows上工作。没有视频正在窗口平台上工作。我尝试在Firefox,Opera上播放它们,甚至下载它们并在媒体播放器软件上播放,但根本没有任何作用。

你能告诉我我应该使用的视频在Windows上播放的编解码器吗?

+0

可能需要为老玩家添加-pix_fmt yuv420p? – rogerdpack

+0

@rogerdpack谢谢你回复。我也尝试过使用你提到的命令。但它没有奏效。我的目标是提出一个查询,使我的网站上的每个视频都可以在平台上的所有浏览器上播放,无论是在Linux,unix,windows还是mac上。目前并非所有视频都在窗口浏览器上播放。 –

+0

我已通过webRTC录制用户的音频/视频输入并将文件合并为webm格式创建了上述webm文件。该文件在窗口浏览器上运行,但在转换为mp4后,它不会在同一浏览器中运行。虽然在Linux平台上运行良好。 –

回答

0

在此处找到修复convert webm to mp4。现在合并webm文件后,我使用命令"ffmpeg -fflags +genpts -i 1.webm -r 24 1.mp4"将其转换为mp4。这个MP4文件正在窗口浏览器中播放。

对于上述过程,我必须使用2 ffmpeg命令。 1.To使合并的音频/视频文件转换成1个WEBM文件和

"ffmpeg -i {$audioFile} -i {$videoFile} -map 0:0 -map 1:0 -strict -2 {$mergedFileName}" 
  1. 要使mp4文件。

    “的ffmpeg -fflags + genpts -i {$ mergedFile} -strict -2 -r 24 {$ mp4File}”

我能俱乐部上面两个命令其输入的音频&视频文件给我单个MP4文件?

编辑: 我有杵以上两个命令

"ffmpeg -fflags +genpts -i {$videoFile} -i {$audioFile} -strict -2 -r 24 {$mp4File}" 

它的工作对我来说很好。结果mp4视频在窗口7(chrome,firefox,opera)浏览器中播放。也在Linux(firefox,Opera)浏览器中工作。

+0

是的,请参阅合并命令的答案 – Mulvya

+0

对不起@Mulvya。我需要在上面提到的两个命令中进行合并和转换。我已经找到了在窗口浏览器中播放视频的解决方案。目前我正在研究它,并将上述命令作为“ffmpeg -fflags + genpts -i {$ videoFile} -i {$ audioFile} -strict -2 -r 24 {$ mp4File}”进行分组。这个命令正在执行上述2个命令所做的事情,除非它不生成webm文件,这很好。所以目前我的问题解决了。如果工作完美,我正在测试更多场景。 –

1

使用

"ffmpeg -i {$audioFile} -i {$videoFile} -map 1:0 -map 0:0 -strict -2 -vcodec libx264 -preset slow -vb 500k -maxrate 500k -bufsize 1000k -vf 'scale=-1:480 ' -threads 0 -ab 64k -s 640x480 -movflags +faststart -metadata:s:v:0 rotate=0 -fflags +genpts <server_path>/g9zyy2qg54qp1l5spo2-mergedFile7.mp4 

(这里使用了原来的命令在你的问题)

0

我的视频被在Windows 10中加入约pix_fmt和分辨率参数(宽度和高度应为偶数)出场后:

ffmpeg -i temp-%d.png -c:v libx264 -strict -2 -preset slow -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -f mp4 output.mp4