我该如何“调试”奇怪的 mp4 问题?

我该如何“调试”奇怪的 mp4 问题?

我有一组在直播期间录制的 MP4 文件。它们在 VLC(Windows 上)中播放得很好,但当我尝试将它们导入 Premiere Pro 时,程序就挂起了。我想也许文件格式存在一些问题,所以我尝试使用 ffmpeg 将它们复制到新文件中,只需执行以下操作

ffmpeg -i commentator1.mp4 -c copy commentator1-fixed.mp4

该命令运行并生成一个文件和以下输出

ffmpeg version N-99697-g6fb2bdd Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
  configuration: --prefix=/home/zetatwo/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/zetatwo/ffmpeg_build/include --extra-ldflags=-L/home/zetatwo/ffmpeg_build/lib --extra-libs='-lpthread -lm' --bindir=/home/zetatwo/bin --enable-gpl --enable-gnutls --enable-libaom --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libsvtav1 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree --enable-libsrt
  libavutil      56. 60.100 / 56. 60.100
  libavcodec     58.111.101 / 58.111.101
  libavformat    58. 62.100 / 58. 62.100
  libavdevice    58. 11.102 / 58. 11.102
  libavfilter     7. 88.100 /  7. 88.100
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc    55.  8.100 / 55.  8.100
[h264 @ 0x55b5fa2d5640] no frame!
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'commentator1.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 0
    compatible_brands: isomavc1
  Duration: 03:48:14.43, start: 0.000000, bitrate: 2670 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 2501 kb/s, 30 fps, 30 tbr, 90k tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 160 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Output #0, mp4, to 'commentator1-cut.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 0
    compatible_brands: isomavc1
    encoder         : Lavf58.62.100
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, q=2-31, 2501 kb/s, 30 fps, 30 tbr, 90k tbn, 90k tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 160 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
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: -6000, current: -6000; changing to -5999. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: 2586000, current: 2586000; changing to 2586001. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: 2586001, current: 2586000; changing to 2586002. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: 3063000, current: 3063000; changing to 3063001. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: 3381000, current: 3381000; changing to 3381001. This may result in incorrect timestamps in the output file.
[mp4 @ 0x55b5fa84fa80] Non-monotonous DTS in output stream 0:0; previous: 3732000, current: 3732000; changing to 3732001. This may result in incorrect timestamps in the output file.
frame=410832 fps=22838 q=-1.0 Lsize= 4468127kB time=03:48:14.36 bitrate=2672.8kbits/s speed= 761x    
video:4181003kB audio:268225kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.424778%

但是当我在 VLC 中播放新文件时,视频正常,但声音大约每隔一秒就会中断。现在可以将文件导入 Premiere Pro,但它将其解释为只有音频文件而没有视频。

  • 我应该如何解释这个ffmpeg输出?
  • 这可能是什么原因造成的?
  • 我如何才能获得有关文件的更多详细信息,以便更好地了解正在发生的事情?
  • 有什么好办法可以解决这个问题吗?我应该完全重新编码文件吗?(我不想这样做,因为媒体太多了)

相关内容