Opened 5 years ago

Closed 5 years ago

#3872 closed defect (fixed)

Broken HEVC playback with some videos (regression)

Reported by: Krakean Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: hevc regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Broken HEVC playback with some videos since beginning of August.
How to reproduce:
Just download this sample: http://sendfile.su/1013164 (press left blue button "Скачать")
and try to play it.

This is a regression, because this file playing fine with ffmpeg from August 6st, but already broken in ffmpeg from August 15.
So I assume its has been broken somewhere between these days.

Change History (10)

comment:1 follow-up: Changed 5 years ago by kurosu

  • Keywords hevc added
  • Reproduced by developer set
  • Status changed from new to open

The SPS is overread by 8 bits, however the overread is much much bigger: the VUI seems incorrect in this file, like truncated. However, if we continue decoding nonetheless, the sequence decodes fine.

comment:2 Changed 5 years ago by cehoyos

  • Keywords regression added
  • Reproduced by developer unset

comment:3 Changed 5 years ago by cehoyos

  • Reproduced by developer set

comment:4 Changed 5 years ago by kurosu

There is no way to determine where in the bitstream the SPS has been corrupted. It would be hazardous to let the decoding continue: this sequence doesn't contain a valid hevc header.

Could you also tell us how you produced this file? It's quite possible one of the tools involved is broken. I suspect your multiplexing application, eg mkvtoolnix.

comment:5 Changed 5 years ago by Krakean

Could you also tell us how you produced this file?

Sadly, but I don't know. I just an author of media player for Windows which uses ffmpeg as codecs base. User just sent me this file and said that is doesn't cannot be played anymore.
I assume source file was created with mkvtoolnix too, as this sample.

comment:6 Changed 5 years ago by Krakean

There is no way to determine where in the bitstream the SPS has been corrupted. It would be hazardous to let the decoding continue: this sequence doesn't contain a valid hevc header.

Is it mean that this regression will not be fixed?

comment:7 Changed 5 years ago by kurosu

There are various possibilities. I'm personally against the broadest one (just ignore the error), but this needs more discussion inside the project.

It would be really helpful to narrow down the scenario where this occurs, as it would make more likely for a workaround to be integrated.

Do you know if your user remuxed/truncated/... the file you provided us? If yes, having the full file could help. In any case, it would really be a plus to have more information on how it was generated.

comment:8 in reply to: ↑ 1 Changed 5 years ago by cehoyos

Replying to kurosu:

The SPS is overread by 8 bits, however the overread is much much bigger: the VUI seems incorrect in this file, like truncated. However, if we continue decoding nonetheless, the sequence decodes fine.

Please only set a ticket status to open once all information is present.

Regression since 5ec85c97

comment:9 Changed 5 years ago by kurosu

I think the really interesting information is the encoder used. I think mkvmerge has always been fine, seeing the initial commit:
https://github.com/mbunkus/mkvtoolnix/commit/8270527b19e271ff3d8c50f3845f5e4d564c5b91#diff-46364bfa1cfae63c3177c12104574fdcR555

comment:10 Changed 5 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from open to closed

Fixed by Christophe in 0625a380 - thank you for the report!

Note: See TracTickets for help on using tickets.