Catching all error warnings via ffprobe

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Catching all error warnings via ffprobe

Kieran O Leary
Hi,

I'm trying to catch all error warnings via JSON ffprobe output, but only
some of the errors are making their way through. The errors about ac-tex
damage and MVs not available end up in the JSON, but I also want to get
what I assume is an mp2 header missing error that you can see further down
- [mp2 @ 0000025cadd44fc0] Header missing .
What can I add to my command to get these other errors?

Here's a snippet of the JSON output showing the error:
"logs": [
                {
                    "context": "mpeg2video",
                    "level": 16,
                    "category": 6,
                    "message": "[mpeg2video @ 0000025cadd438c0] ac-tex
damaged at 34 30"
                },
                {
                    "context": "mpeg2video",
                    "level": 16,
                    "category": 6,
                    "message": "[mpeg2video @ 0000025cadd438c0] Warning MVs
not available"

ANd here's my command - normally I just use -show_frames but I also added
format and streams just to see if the info might show up there.

ffprobe -sexagesimal E:\DV_batches\IFI_Batch_10\MV8805\MV8805.m2t -show_log
16 -show_frames -show_format -show_streams -of json  > outout.json
ffprobe version N-96643-g2942b00285-g2383021a7a+1 Copyright (c) 2007-2020
the FFmpeg developers
  built with gcc 9.2.0 (Rev2, Built by MSYS2 project)
  configuration:  --disable-autodetect --enable-amf --enable-bzlib
--enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv
--enable-lzma --enable-nvenc --enable-zlib --enable-sdl2 --enable-ffnvcodec
--enable-nvdec --enable-cuda-llvm --enable-libmp3lame --enable-libopus
--enable-libvorbis --enable-libx264 --enable-libdav1d --disable-debug
--enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype
--enable-libmfx --enable-libmysofa --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame
--enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack
--enable-libwebp --enable-libxml2 --enable-libzimg --enable-libshine
--enable-gpl --enable-avisynth --enable-libxvid --enable-libaom
--enable-libopenmpt --enable-version3 --enable-openssl
--extra-cflags=-DLIBTWOLAME_STATIC --extra-libs=-lstdc++
--extra-cflags=-DLIBXML_STATIC --extra-libs=-liconv --enable-nonfree
  libavutil      56. 39.100 / 56. 39.100
  libavcodec     58. 67.101 / 58. 67.101
  libavformat    58. 37.100 / 58. 37.100
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 74.100 /  7. 74.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
[mpeg2video @ 0000025cadd14480] Invalid frame dimensions 0x0.
    Last message repeated 1 times
[mpegts @ 0000025cadd13580] PES packet size mismatch
[mpegts @ 0000025cadd13580] Packet corrupt (stream = 1, dts = 314015040).
[mpegts @ 0000025cadd13580] Could not find codec parameters for stream 2
(Unknown: none ([160][0][0][0] / 0x00A0)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
[mpegts @ 0000025cadd13580] Could not find codec parameters for stream 3
(Unknown: none ([161][0][0][0] / 0x00A1)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
Input #0, mpegts, from 'E:\DV_batches\IFI_Batch_10\MV8805\MV8805.m2t':
  Duration: 00:58:08.00, start: 1.280000, bitrate: 26120 kb/s
  Program 100
    Stream #0:0[0x810]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000 kb/s, 25
fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x814]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz,
stereo, fltp, 384 kb/s
    Stream #0:2[0x815]: Unknown: none ([160][0][0][0] / 0x00A0)
    Stream #0:3[0x811]: Unknown: none ([161][0][0][0] / 0x00A1)
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3
[mpegts @ 0000025cadd13580] Packet corrupt (stream = 0, dts = 166788000).
[mpeg2video @ 0000025cadd438c0] ac-tex damaged at 8 3
[mpeg2video @ 0000025cadd438c0] Warning MVs not available
[mpeg2video @ 0000025cadd438c0] concealing 5850 DC, 5850 AC, 5850 MV errors
in I frame
[mpegts @ 0000025cadd13580] Packet corrupt (stream = 0, dts = 203216400).
[mpeg2video @ 0000025cadd438c0] ac-tex damaged at 41 57
[mpeg2video @ 0000025cadd438c0] Warning MVs not available
[mpeg2video @ 0000025cadd438c0] concealing 990 DC, 990 AC, 990 MV errors in
P frame
[mpegts @ 0000025cadd13580] PES packet size mismatch
[mpegts @ 0000025cadd13580] Packet corrupt (stream = 1, dts = 203200560).
[mp2 @ 0000025cadd44fc0] Header missing
[mpeg2video @ 0000025cadd438c0] ac-tex damaged at 7 55
[mpeg2video @ 0000025cadd438c0] Warning MVs not available
[mpeg2video @ 0000025cadd438c0] concealing 1170 DC, 1170 AC, 1170 MV errors
in B frame
[mpegts @ 0000025cadd13580] PES packet size mismatch
[mpegts @ 0000025cadd13580] Packet corrupt (stream = 1, dts = 314015040).
[mpeg2video @ 0000025cadd438c0] ac-tex damaged at 34 30
[mpeg2video @ 0000025cadd438c0] Warning MVs not available
[mpeg2video @ 0000025cadd438c0] concealing 3420 DC, 3420 AC, 3420 MV errors
in B frame
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Catching all error warnings via ffprobe

Kieran O Leary
Hi - I've done some more tests and either I'm missing something here or
perhaps this is a bug? It seems like only video errors appear in the JSON,
not audio.
I bumped up the loglevel, added and -show_error and I'm still not seeing
the mp2 header issues appear in the json.
For example this appears in the terminal:

[mpegts @ 0000023d706538c0] Continuity check failed for pid 2069 expected 7
got 0
[mpegts @ 0000023d706538c0] Continuity check failed for pid 2068 expected
10 got 9
[mpegts @ 0000023d706538c0] PES packet size mismatch
[mpegts @ 0000023d706538c0] Packet corrupt (stream = 1, dts = 203200560).
[mp2 @ 0000023d70767e40] Header missing

but I see no errors in the audio frames section of the JSON output:
{
            "media_type": "audio",
            "stream_index": 1,
            "key_frame": 1,
            "pkt_pts": 203200560,
            "pkt_pts_time": "0:37:37.784000",
            "pkt_dts": 203200560,
            "pkt_dts_time": "0:37:37.784000",
            "best_effort_timestamp": 203200560,
            "best_effort_timestamp_time": "0:37:37.784000",
            "pkt_duration": 2160,
            "pkt_duration_time": "0:00:00.024000",
            "pkt_pos": "7371266244",
            "pkt_size": "1152",
            "sample_fmt": "s16p",
            "nb_samples": 1152,
            "channels": 2,
            "channel_layout": "stereo"
        },

It seems that any errors for the audio streams are not making their way
into the JSON, but the video errors are, as per my last email.
Any guidance on how I can get these audio errors into the JSON  - am I
missing a command or is this a bug?

ffprobe -loglevel 48 -sexagesimal D:\IFI_Batch_10\MV8805\MV8805.m2t
-show_error -show_log 48 -show_frames -of json > error.json
ffprobe version N-96643-g2942b00285-g2383021a7a+1 Copyright (c) 2007-2020
the FFmpeg developers
  built with gcc 9.2.0 (Rev2, Built by MSYS2 project)
  configuration:  --disable-autodetect --enable-amf --enable-bzlib
--enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv
--enable-lzma --enable-nvenc --enable-zlib --enable-sdl2 --enable-ffnvcodec
--enable-nvdec --enable-cuda-llvm --enable-libmp3lame --enable-libopus
--enable-libvorbis --enable-libx264 --enable-libdav1d --disable-debug
--enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype
--enable-libmfx --enable-libmysofa --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame
--enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack
--enable-libwebp --enable-libxml2 --enable-libzimg --enable-libshine
--enable-gpl --enable-avisynth --enable-libxvid --enable-libaom
--enable-libopenmpt --enable-version3 --enable-openssl
--extra-cflags=-DLIBTWOLAME_STATIC --extra-libs=-lstdc++
--extra-cflags=-DLIBXML_STATIC --extra-libs=-liconv --enable-nonfree
  libavutil      56. 39.100 / 56. 39.100
  libavcodec     58. 67.101 / 58. 67.101
  libavformat    58. 37.100 / 58. 37.100
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 74.100 /  7. 74.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
[NULL @ 0000025ad4843580] Opening 'D:\IFI_Batch_10\MV8805\MV8805.m2t' for
reading
[file @ 0000025ad308b000] Setting default whitelist 'file,crypto,data'
[mpegts @ 0000025ad4843580] Format mpegts probed with size=2048 and score=50
[mpegts @ 0000025ad4843580] stream=0 stream_type=2 pid=810
prog_reg_desc=TSHV
[mpegts @ 0000025ad4843580] stream=1 stream_type=3 pid=814
prog_reg_desc=TSHV
[mpegts @ 0000025ad4843580] stream=2 stream_type=a0 pid=815
prog_reg_desc=TSHV
[mpegts @ 0000025ad4843580] stream=3 stream_type=a1 pid=811
prog_reg_desc=TSHV
[mpegts @ 0000025ad4843580] Before avformat_find_stream_info() pos: 0 bytes
read:32768 seeks:0 nb_streams:4
[mpegts @ 0000025ad4843580] parser not found for codec none, packets or
times may be invalid.
    Last message repeated 1 times
[mpeg2video @ 0000025ad4844480] Invalid frame dimensions 0x0.
    Last message repeated 1 times
[mpeg2video @ 0000025ad4844480] Format yuv420p chosen by get_format().
[mpegts @ 0000025ad4843580] parser not found for codec none, packets or
times may be invalid.
    Last message repeated 1 times
[mpegts @ 0000025ad4843580] Probe buffer size limit of 5000000 bytes reached
[mpegts @ 0000025ad4843580] PES packet size mismatch
[mpegts @ 0000025ad4843580] Packet corrupt (stream = 1, dts = 314015040).
[mpegts @ 0000025ad4843580] Could not find codec parameters for stream 2
(Unknown: none ([160][0][0][0] / 0x00A0)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
[mpegts @ 0000025ad4843580] Could not find codec parameters for stream 3
(Unknown: none ([161][0][0][0] / 0x00A1)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
[mpegts @ 0000025ad4843580] After avformat_find_stream_info() pos: 0 bytes
read:5656720 seeks:2 frames:117
Input #0, mpegts, from 'D:\IFI_Batch_10\MV8805\MV8805.m2t':
  Duration: 00:58:08.00, start: 1.280000, bitrate: 26120 kb/s
  Program 100
    Stream #0:0[0x810], 40, 1/90000: Video: mpeg2video (Main), 1 reference
frame ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first, left),
1440x1080 [SAR 4:3 DAR 16:9], 0/1, 25000 kb/s, 25 fps, 25 tbr, 90k tbn, 50
tbc
    Stream #0:1[0x814], 54, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, fltp, 384 kb/s
    Stream #0:2[0x815], 11, 1/90000: Unknown: none ([160][0][0][0] / 0x00A0)
    Stream #0:3[0x811], 12, 1/90000: Unknown: none ([161][0][0][0] / 0x00A1)
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3
Processing read interval id:0 start:N/A end:N/A
[mpeg2video @ 0000025ad4874ec0] Format yuv420p chosen by get_format().
[mpeg2video @ 0000025ad4874ec0] Skipping B slice due to open GOP
    Last message repeated 271 times
[mpegts @ 0000025ad4843580] Continuity check failed for pid 31 expected 10
got 5
[mpegts @ 0000025ad4843580] Continuity check failed for pid 0 expected 8
got 5
[mpegts @ 0000025ad4843580] Continuity check failed for pid 129 expected 7
got 4
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2065 expected 8
got 0
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2069 expected 6
got 0
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2068 expected
13 got 11
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2064 expected
12 got 5
[mpegts @ 0000025ad4843580] Packet corrupt (stream = 0, dts = 166788000).
[mpeg2video @ 0000025ad4874ec0] ac-tex damaged at 8 3
[mpeg2video @ 0000025ad4874ec0] Warning MVs not available
[mpeg2video @ 0000025ad4874ec0] concealing 5850 DC, 5850 AC, 5850 MV errors
in I frame
[mpegts @ 0000025ad4843580] Continuity check failed for pid 31 expected 8
got 6
[mpegts @ 0000025ad4843580] Continuity check failed for pid 0 expected 8
got 6
[mpegts @ 0000025ad4843580] Continuity check failed for pid 129 expected 7
got 5
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2065 expected 8
got 0
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2064 expected 5
got 9
[mpegts @ 0000025ad4843580] Packet corrupt (stream = 0, dts = 203216400).
[mpeg2video @ 0000025ad4874ec0] ac-tex damaged at 41 57
[mpeg2video @ 0000025ad4874ec0] Warning MVs not available
[mpeg2video @ 0000025ad4874ec0] concealing 990 DC, 990 AC, 990 MV errors in
P frame
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2069 expected 7
got 0
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2068 expected
10 got 9
[mpegts @ 0000025ad4843580] PES packet size mismatch
[mpegts @ 0000025ad4843580] Packet corrupt (stream = 1, dts = 203200560).
[mp2 @ 0000025ad48f4000] Header missing
[mpegts @ 0000025ad4843580] Continuity check failed for pid 31 expected 13
got 6
[mpegts @ 0000025ad4843580] Continuity check failed for pid 0 expected 13
got 6
[mpegts @ 0000025ad4843580] Continuity check failed for pid 129 expected 11
got 5
[mpeg2video @ 0000025ad4874ec0] ac-tex damaged at 7 55
[mpeg2video @ 0000025ad4874ec0] Warning MVs not available
[mpeg2video @ 0000025ad4874ec0] concealing 1170 DC, 1170 AC, 1170 MV errors
in B frame
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2065 expected 2
got 0
[mpegts @ 0000025ad4843580] Continuity check failed for pid 2068 expected 9
got 7
[mpegts @ 0000025ad4843580] PES packet size mismatch
[mpegts @ 0000025ad4843580] Packet corrupt (stream = 1, dts = 314015040).
[mpeg2video @ 0000025ad4874ec0] ac-tex damaged at 34 30
[mpeg2video @ 0000025ad4874ec0] Warning MVs not available
[mpeg2video @ 0000025ad4874ec0] concealing 3420 DC, 3420 AC, 3420 MV errors
in B frame
[AVIOContext @ 0000025ad484c040] Statistics: 11394191376 bytes read, 2 seeks

Best,

Kieran
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: Catching all error warnings via ffprobe

Kieran O Leary
On Mon, Jun 29, 2020 at 11:12 AM Kieran O Leary <[hidden email]>
wrote:

> Hi - I've done some more tests and either I'm missing something here or
> perhaps this is a bug? It seems like only video errors appear in the JSON,
> not audio.
> I bumped up the loglevel, added and -show_error and I'm still not seeing
> the mp2 header issues appear in the json.
> For example this appears in the terminal:
>
> [mpegts @ 0000023d706538c0] Continuity check failed for pid 2069 expected
> 7 got 0
> [mpegts @ 0000023d706538c0] Continuity check failed for pid 2068 expected
> 10 got 9
> [mpegts @ 0000023d706538c0] PES packet size mismatch
> [mpegts @ 0000023d706538c0] Packet corrupt (stream = 1, dts = 203200560).
> [mp2 @ 0000023d70767e40] Header missing
>
> but I see no errors in the audio frames section of the JSON output:
> {
>             "media_type": "audio",
>             "stream_index": 1,
>             "key_frame": 1,
>             "pkt_pts": 203200560,
>             "pkt_pts_time": "0:37:37.784000",
>             "pkt_dts": 203200560,
>             "pkt_dts_time": "0:37:37.784000",
>             "best_effort_timestamp": 203200560,
>             "best_effort_timestamp_time": "0:37:37.784000",
>             "pkt_duration": 2160,
>             "pkt_duration_time": "0:00:00.024000",
>             "pkt_pos": "7371266244",
>             "pkt_size": "1152",
>             "sample_fmt": "s16p",
>             "nb_samples": 1152,
>             "channels": 2,
>             "channel_layout": "stereo"
>         },
>
> It seems that any errors for the audio streams are not making their way
> into the JSON, but the video errors are, as per my last email.
> Any guidance on how I can get these audio errors into the JSON  - am I
> missing a command or is this a bug?
>

Just checking in again to see if anyone has any guidance here.

Best,

Kieran

>
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".