为什么在ts文件上搜索这么慢?

时间:2015-06-30 06:49:39

标签: ffmpeg stream seek transport

我正在处理一个ts文件,以下是ffprobe输出:

ffprobe version N-45589-gb6a0b8b-   http://johnvansickle.com/ffmpeg/    Copyright (c) 2007-2014 the FFmpeg developers
  built on Aug 28 2014 02:30:32 with gcc 4.8 (Debian 4.8.3-9)
  configuration: --enable-gpl --enable-version3 --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --disable-ffserver --enable-libass --enable-gnutls --cc=gcc-4.8
  libavutil      54.  7.100 / 54.  7.100
  libavcodec     56.  0.101 / 56.  0.101
  libavformat    56.  3.100 / 56.  3.100
  libavdevice    56.  0.100 / 56.  0.100
  libavfilter     5.  0.103 /  5.  0.103
  libswscale      3.  0.100 /  3.  0.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  0.100 / 53.  0.100
[hevc @ 0x298b4a0] No start code is found.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] No start code is found.
    Last message repeated 2 times
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] No start code is found.
    Last message repeated 7 times
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] No start code is found.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[hevc @ 0x298b4a0] PPS id out of range: 0
[hevc @ 0x298b4a0] Error parsing NAL unit #2.
[mpegts @ 0x2987560] decoding for stream 0 failed
[mpegts @ 0x2987560] Could not find codec parameters for stream 0 (Video: hevc ([36][0][0][0] / 0x0024)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpegts, from 'mp4box-jlsj-4k.ts':
  Duration: 00:02:15.00, start: 0.001111, bitrate: 31116 kb/s
  Program 1
    Stream #0:0[0x65]: Video: hevc ([36][0][0][0] / 0x0024), 25 tbr, 90k tbn, 90k tbc
    Stream #0:1[0x66]: Audio: eac3, 48000 Hz, 5.1(side), fltp, 448 kb/s

我遇到的问题是,在此文件上搜索速度极慢,完成搜索操作需要1分钟以上。

此ts文件大小为500MB,包含2,793,052个ts包,2,750,469个视频包,137个带random_acces_indicator的视频包。 寻求缓慢的可能原因是什么?为什么ffmpeg会报告这些错误?我需要做什么才能进行分析?

1 个答案:

答案 0 :(得分:0)

我的意思是,不是hevc专家,但似乎输入文件的容器已损坏或其中的数据已损坏。

尝试使用:ffmpeg -i <<INPUT>> -c copy <<OUTPUT.ts>>重新打包它。如果出现任何问题或文件中的数据损坏,ffmpeg应报告。