我尝试使用 ffmpeg(在 Windows 上)将 DVD 转换为 mp4,但我收到了一些警告消息,并且转换后的视频没有声音
我使用这个命令行:
ffmpeg -hwaccel qsv -i VTS_01_1.vob -vf yadif -c:v h264_qsv -global_quality 15 -preset medium -c:a aac -b:a 256k VTS_01_0.mp4
视频信息
ffmpeg -i .\VTS_01_1.VOB
Input #0, mpeg, from '.\VTS_01_1.VOB':
Duration: 00:24:55.52, start: 0.360000, bitrate: 5742 kb/s
Stream #0:0[0x1bf]: Data: dvd_nav_packet
Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bottom first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn
Side data:
cpb: bitrate max/min/avg: 7000000/0/0 buffer size: 1835008 vbv_delay: N/A
Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
但我收到此警告信息:
- 警告:为了与旧命令行兼容,将 hwaccel_output_format 默认为 qsv。此行为已弃用,将来会被删除。请明确设置“-hwaccel_output_format qsv”。
- 警告:为了与旧命令行兼容,将 child_device_type 默认为 AV_HWDEVICE_TYPE_DXVA2。此行为将来会被删除。请通过“-init_hw_device”选项明确设置设备类型。
你能帮我解决这个问题吗?
答案1
修复该问题所需的步骤:
-hwaccel_output_format qsv
在之前添加-i
-init_hw_device qsv:hw,child_device_type=dxva2
在之前添加-i
命令的修改版本:
ffmpeg -hwaccel qsv -hwaccel_output_format qsv -init_hw_device qsv:hw,child_device_type=dxva2 -i VTS_01_1.vob -vf yadif -c:v h264_qsv -global_quality 15 -preset medium -c:a aac -b:a 256k VTS_01_0.mp4