Video 如何使用FFMPEG对要在DLink DSM-520上播放的视频进行编码?
我已经搜索、测试了一个多星期,结果一无所获。我想使用FFMPEG将mp4和mkv转换为AVI文件,这些文件将在我的DLink DSM-520上播放。门科德会做的。FFMPEG生成的文件导致播放器在视频中锁定不到一分钟。首先,我使用Mencoder(从PocketDIVXEncoder生成的test.bat文件中提取)对文件进行编码:Video 如何使用FFMPEG对要在DLink DSM-520上播放的视频进行编码?,video,encoding,ffmpeg,mencoder,Video,Encoding,Ffmpeg,Mencoder,我已经搜索、测试了一个多星期,结果一无所获。我想使用FFMPEG将mp4和mkv转换为AVI文件,这些文件将在我的DLink DSM-520上播放。门科德会做的。FFMPEG生成的文件导致播放器在视频中锁定不到一分钟。首先,我使用Mencoder(从PocketDIVXEncoder生成的test.bat文件中提取)对文件进行编码: mencoder.exe ftwd105.mp4 -af volnorm -srate 44100 -oac mp3lame -lameopts mode=0:cb
mencoder.exe ftwd105.mp4 -af volnorm -srate 44100 -oac mp3lame -lameopts mode=0:cbr:br=128 -noodml -vf pp=ac,scale=720:404,crop=720:400,harddup -sws 9 -ovc lavc -lavcopts vcodec=mpeg4:mbd=1:last_pred=2:vstrict=1:threads=2:vmax_b_frames=0:vbitrate=1200 -ffourcc XVID -o ftwd105_HDTV.avi
输出文件在DSM-520上完美播放。使用FFPROBE查看该文件,我看到以下内容:
Input #0, avi, from 'ftwd105_HDTV.avi':
Metadata:
encoder : MEncoder Redxii-SVN-r37527-4.9.3 (x86_64)
Duration: 00:44:32.96, start: 0.000000, bitrate: 1193 kb/s
Stream #0:0: Video: mpeg4 (Simple Profile) (XVID / 0x44495658), yuv420p, 720x400 [SAR 1:1 DAR 9:5], 1053 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 24k tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p, 128 kb/s
现在我用FFMPEG做同样的尝试
ffmpeg -i ftwd105.mp4 -vcodec mpeg4 -vtag XVID -b:v 1200k -s 720x400 -acodec libmp3lame -ab 128k -ar 44100 -ac 2 -f avi ftwd105_ffmpeg.avi
此文件不能在媒体播放器上播放。它只需单击声音播放15-30秒,然后就会冻结。使用FFPROBE查看它,它看起来与Mencoder创建的文件完全相同
Input #0, avi, from 'ftwd105_ffmpeg.avi':
Metadata:
encoder : Lavf57.0.100
Duration: 00:44:33.14, start: 0.000000, bitrate: 1305 kb/s
Stream #0:0: Video: mpeg4 (Simple Profile) (XVID / 0x44495658), yuv420p, 720x400 [SAR 1:1 DAR 9:5], 1165 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 24k tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p, 128 kb/s
现在我用Xvid4PSP对视频进行编码。它播放得非常好,FFPROBE显示如下:
Input #0, avi, from 'ftwd105_ps2.avi':
Metadata:
encoder : VirtualDubMod 1.5.10.3 | www.virtualdub-fr.org || (build 2550/release)
Duration: 00:44:33.09, start: 0.000000, bitrate: 861 kb/s
Stream #0:0: Video: mpeg4 (Advanced Simple Profile) (XVID / 0x44495658), yuv420p, 720x400 [SAR 1:1 DAR 9:5], 723 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo, s16p, 128 kb/s
它使用的是高级简单配置文件,因此我查找此文件并更改我的FFMPEG选项:
ffmpeg -i ftwd105.mp4 -vcodec mpeg4 -vtag XVID -b:v 1200k -s 720x400 -profile:v 15 -level 0 -acodec libmp3lame -ab 128k -ar 44100 -ac 2 -f avi ftwd105_ffmpeg.avi
但是,尽管使用FFPROBE时输出文件看起来与Xvid4PSP制作的文件相同,但它仍然不能在DSM-520上播放
Input #0, avi, from 'ftwd105_ffmpeg_asp.avi':
Metadata:
encoder : Lavf57.0.100
Duration: 00:44:33.14, start: 0.000000, bitrate: 1305 kb/s
Stream #0:0: Video: mpeg4 (Advanced Simple Profile) (XVID / 0x44495658), yuv420p, 720x400 [SAR 1:1 DAR 9:5], 1165 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 24k tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p, 128 kb/s
所以现在我不知所措。FFMPEG不能生成DSM-520可以播放的文件吗?我想在Mencoder上使用FFMPEG的原因是速度快得多。FFMPEG需要15分钟,Mencoder需要40分钟
我应该注意的是,FFMPEG创建的所有文件在PC和我的Visio电视上都可以正常播放。DSM-520连接到一台不是智能电视的卧室电视上
编辑:我还尝试使用libxvid代替mpeg4,结果相同。您的
ffmpeg
命令使用本机编码器mpeg4
。您可以尝试使用libxvid
代替。当然,您需要安装并使用重新编译ffmpeg——启用libxvid
我忘了提到我使用了libxvid编解码器也有相同的结果。另一个想法是在完全输出模式下使用mediainfo
,而不是ffprobe
,并进行区分。您的ffmpeg
命令使用本机编码器mpeg4
。您可以尝试改用libxvid
。当然,您需要安装并用重新编译ffmpeg>--启用libxvid
我忘了提到我也使用了libxvid编解码器,并且得到了相同的结果。另一个想法是在完全输出模式下使用mediainfo
,而不是ffprobe
,并进行区分。