如何将 WTV(和 DVR-MS)文件转换为较小的标准格式?

Ric*_*ard 7 windows-media-center handbrake video-conversion

我的 HTPC 上的外部硬盘驱动器几乎已满,因此我需要将从电视(WTV 格式)录制的大量电影转换成更小的内容。目前,一部2小时的电影大约是3-4GB。

我已经尝试将 WTV 文件转换为 DVR-MS(使用内置的wtvconverter.exe),然后使用以下命令行通过 handbrakecli 运行它:

handbrakecli.exe --input "film.dvr-ms" --output "film.mp4" --encoder x264 --quality 20
Run Code Online (Sandbox Code Playgroud)

在 Handbrake 中,这将通过将输出设置为 MP4、将编码器设置为 x264 并将质量设置为 20。

问题是生成的 MP4 在 1.5 到 2GB 之间,虽然比原始文件小,但对于从(PAL)电视录制的 2 小时长的标清电影来说仍然看起来很疯狂!我希望这样的东西是 700-800MB,如果不是更少的话。

将质量设置为 19 会使图片降级到无法观看的程度。

任何人都可以推荐 Handbrake(或 handbrakecli)的设置,它将 DVR-MS 文件转换成更小的尺寸?

(我对编解码器或容器不是特别重视,但更喜欢合理标准的东西,以确保它可以在大量计算机和移动设备上观看)

更新

可能不清楚,但如果您只知道使用图形版本的 Handbrake 转换文件的设置,那么这是一个非常好的答案!

Ric*_*ard 8

请注意:撰写此答案时(2012 年 7 月),ffmpeg 无法在不丢失音频的情况下转换 WTV 文件。然而,在 ffmpeg 4.0.0 上的测试表明它现在可以正常工作,因此无需使用wtvconverter.exe将 WTV 文件预转换为 DVR-MS。像这样:

ffmpeg -i "input.wtv" -y -filter:v yadif -vcodec libx264 -crf 23 "output.mp4"

应该转换您的电视录音。

原答案如下

经过一番研究发现:

  1. 手刹不是最好的工具,你应该使用ffmpeg代替。
  2. 使用 ffmpeg 时,需要使用 DVR-MS 格式(而不是 WTV 格式)作为源文件,否则最终会没有声音。

您需要执行几个步骤,首先从 WTV 转换为 DVR-MS:

%WINDIR%\ehome\wtvconverter.exe "Recorded TV Show.wtv" "Recorded TV Show.dvr-ms"
Run Code Online (Sandbox Code Playgroud)

然后将该 DVR-MS 文件转换为 H.264/MPEG-4 AVC。你可以改变-crf 23——更高的数字意味着更低的质量,合理的值是从 19 到 25:

ffmpeg -i "Recorded TV Show.dvr-ms" -y -filter:v yadif -vcodec libx264 -crf 23 "Recorded TV Show.mp4"
Run Code Online (Sandbox Code Playgroud)

然后删除临时 DVR-MS 文件:

del /F "Recorded TV Show.dvr-ms"
Run Code Online (Sandbox Code Playgroud)

转换后,VLC 将提供有关“Recorded TV Show.mp4”的以下详细信息:

在此处输入图片说明

我转换的文件现在是 530MB(低于 1.59GB),用于 1 小时 50 分钟的 SD 内容。这意味着它大约是原始 WTV 文件大小的 1/3。