OpenHEVC / openHEVC

HEVC decoder
http://openhevc.github.io/openHEVC/
532 stars 193 forks source link

Decoding more than 2 SHVC layers in openHEVC #68

Open thanujarc opened 6 years ago

thanujarc commented 6 years ago

Hi,

I'm able to successfully decode 2 SHVC layers using openHEVC (encoded in SHM4.1). However, I'm unable to decode more than 2 layers, which were encoded in SHM4.1, using the current openHEVC implementation. Could you please let me know if this is supported in the current openHEVC version.

Thanks.

pcabarat commented 6 years ago

Hi,

Sadly we don't support more than one layer at the moment. We might be able to add support for more layers, but it would probably require some (rather big) refactoring to handle things in a proper way (direct and indirect reference layers, parameters sets signaled with different layer id in the nal headers etc). I am currently working on a cleaning of SHVC parameters. I'll let you know if I come up with something. However you should'nt expect much more support. For more recent versions you can use ffmpeg_update branch. On linux ou can build it using ./configure make LD_LIBRARY_PATH=libopenhevc/ ./ohplay -h

Pierre-Loup

thanujarc commented 6 years ago

Hi,

Thank you for your response. openHEVC hevc_rext branch does support two SHVC layers encoded in SHM4.1. From your response, I get that non of the branches support more than 2. Please let me know if you have any updates or a time frame for openHEVC to get more than 2 layer support?.

Thanks.

pcabarat commented 6 years ago

Hi again, ffmpeg_update should support more recent SHM versions bitstreams (from SHM 6.0 to 12.3). However a change in parameters sets parsing makes it non backward compatible to 4.1 if its the version you target. What do you mean by time frame?

Pierre-Loup

thanujarc commented 6 years ago

Thanks for the clarification. Yes, I managed to decode SHM12.3 bit streams (only up to 2 layers) using the ffmpeg_update branch. My requirement is to decode up to 5 layers, which I believe is a feature still not available in openHEVC. With "time frame" I was wondering if you have an idea when this capability will be available in the decoder.

Thanks.