Opened 4 years ago

Closed 4 years ago

#9034 closed defect (wontfix)

hevc parsing/decoding errors: PPS id out of range: 1

Reported by: Aman Owned by:
Priority: minor Component: avcodec
Version: git-master Keywords: hevc
Cc: ffmpeg@tmm1.net Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

Many repeated errors parsing an hevc atsc3 stream.

How to reproduce:

% ffmpeg -i hevc-pps-error.ts -c copy -f null -y /dev/null
ffmpeg version N-98693-g1ead176d87 Copyright (c) 2000-2020 the FFmpeg developers
  built with Apple clang version 11.0.3 (clang-1103.0.32.62)
  configuration: --disable-shared --enable-static --disable-stripping --disable-manpages --disable-sdl2
  libavutil      56. 58.100 / 56. 58.100
  libavcodec     58.100.100 / 58.100.100
  libavformat    58. 50.100 / 58. 50.100
  libavdevice    58. 11.101 / 58. 11.101
  libavfilter     7. 87.100 /  7. 87.100
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100

[hevc @ 0x7fdfdf00d600] PPS id out of range: 1
    Last message repeated 147 times
[mpegts @ 0x7fdfdf00dc00] start time for stream 3 is not set in estimate_timings_from_pts
Input #0, mpegts, from 'hevc-pps-error.ts':
  Duration: 00:00:30.26, start: 42925.496444, bitrate: 2280 kb/s
  Program 3
    Stream #0:0[0x31]: Video: hevc (Main) ([36][0][0][0] / 0x0024), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x32](spa): Data: bin_data (AC-4 / 0x342D4341)
    Stream #0:2[0x33](eng): Data: bin_data (AC-4 / 0x342D4341)
    Stream #0:3[0x3a](eng): Data: bin_data (STPP / 0x50505453)
Output #0, null, to '/dev/null':
  Metadata:
    encoder         : Lavf58.50.100
    Stream #0:0: Video: hevc (Main) ([36][0][0][0] / 0x0024), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 59.94 fps, 59.94 tbr, 90k tbn, 90k tbc
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[NULL @ 0x7fdfdf00d600] PPS id out of range: 1
    Last message repeated 517 times
frame= 1056 fps=0.0 q=-1.0 Lsize=N/A time=00:00:29.97 bitrate=N/A speed= 801x
video:6874kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

The NULL messages are coming from libavcodec/hevc_parser.c

[NULL @ 0x7fdfdf00d600] PPS id out of range: 1
    Last message repeated 517 times

The hevc error messages are coming from libavcodec/hevcdec.c

[hevc @ 0x7fdfdf00d600] PPS id out of range: 1
    Last message repeated 147 times

Trying to decode (i.e. without -c copy) results in more errors repeated continuously:

[hevc @ 0x7fb3a383be00] PPS id out of range: 1
[hevc @ 0x7fb3a383be00] Error parsing NAL unit #7.
[NULL @ 0x7fb3a481ee00] PPS id out of range: 1
Error while decoding stream #0:0: Invalid data found when processing input

Same behavior with ffmpeg master (32586a42da8c9dedd30c6e4c0417c9da91c1f283)

Attachments (1)

hevc-pps-error-small.ts (2.5 MB ) - added by Aman 4 years ago.

Change History (5)

by Aman, 4 years ago

Attachment: hevc-pps-error-small.ts added

comment:1 by Aman, 4 years ago

Cc: ffmpeg@tmm1.net added

comment:2 by Carl Eugen Hoyos, 4 years ago

Priority: normalminor

Crashes with the reference decoder...

in reply to:  2 comment:3 by Balling, 4 years ago

Status: newopen

Replying to cehoyos:

Crashes with the reference decoder...

Did you report to https://hevc.hhi.fraunhofer.de/trac/hevc ?

comment:4 by Aman, 4 years ago

Resolution: wontfix
Status: openclosed

Seems to me this is a broken HEVC encoder in whatever ATSC3 broadcast tower this signal came from. There no PPS #1 anywhere yet the slices try to reference it. Not sure what any decoder could do to deal with such broken input.

Note: See TracTickets for help on using tickets.