FFMPEG - 为什么这个 ffmpeg 转换的视频不能在 LG 电视上播放,而另一个可以?

FFMPEG - 为什么这个 ffmpeg 转换的视频不能在 LG 电视上播放,而另一个可以?

我有两个文件,都是用同一个大的 mp4 文件创建的。其中一个文件 (A.mp4) 在我的 LG 电视上播放正常,而另一个文件 (B.mp4) 却在电视上播放不顺畅。A.mp4 时长为 5 秒,而 B.mp4 时长为 10 分钟。

第一个是使用这个 ffmpeg 命令创建的:

ffmpeg -t 00:00:05  -i parent.mp4  -c:v h264 A.mp4

当我使用此命令转换整个文件(约 2 个半小时)时,生成的文件无法在电视上播放。与 A.mp4 相比,我唯一能看到的不同之处是比特率较大,约为 22000 kbps。我以为找到了问题所在,于是运行了 ffmpeg,但将比特率限制为 A.mp4 的比特率。(没有使用编解码器设置,因为父级也是 h.264 编码的)。

ffmpeg -i parent.mp4 -t 00:10:00 -b:v 8540k B.mp4

但这个文件无法在电视上播放。在我的 Mac 上,两个文件都可以正常播放。

以下是两个文件的 ffprobe 输出的差异报告:

1c1
< Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'A.mp4':
---
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'B.mp4':
7,8c7,8
<   Duration: 00:00:05.02, start: 0.000000, bitrate: 8653 kb/s
<     Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 8540 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)
---
>   Duration: 00:10:00.02, start: 0.000000, bitrate: 8642 kb/s
>     Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 8501 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)
11c11
<     Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 127 kb/s (default)
---
>     Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)

我想找到正确的 ffmpeg 设置来转换整个父文件,以便它可以在 LG 电视上播放。欢迎提出任何想法。

更新:运行@llogan建议的命令,以下是日志:

ffmpeg -i A.mp4  -map 0 -c copy B.mp4
ffmpeg version 4.1.1 Copyright (c) 2000-2019 the FFmpeg developers
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'A.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.20.100
  Duration: 00:00:05.02, start: 0.000000, bitrate: 8653 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 8540 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 127 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Output #0, mp4, to 'B.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.20.100
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 8540 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 60k tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 127 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=  300 fps=0.0 q=-1.0 Lsize=    5305kB time=00:00:04.99 bitrate=8705.9kbits/s speed=8.78x
video:5218kB audio:78kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.172889%

相关内容