Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support CodecID 12 for HEVC #24

Closed
daveisfera opened this issue Sep 19, 2023 · 6 comments
Closed

Support CodecID 12 for HEVC #24

daveisfera opened this issue Sep 19, 2023 · 6 comments

Comments

@daveisfera
Copy link

Several existing implementations used CodecID of 12 to support HEVC before this project began, and there are also hardware implementations based on those concepts, so could this be added to Enhanced RTMP as well?

@veovera
Copy link
Owner

veovera commented Sep 20, 2023

Hey Dave,

  • Gotcha, can you list some of the hardware and software implementations
  • let's us consider this
  • curious: switching to fourcc HEVC is straight forward and minimal work. Is that not possible?

thx

@daveisfera
Copy link
Author

daveisfera commented Sep 20, 2023

Here's some of the implementations that I'm aware of:

I agree that switching appears to be doable, but getting all of the existing implementations to do this can be a difficult and the even bigger challenge is then upgrading all of the existing installs

And then when you consider all of the existing content that has been generated over the years with CodecID of 12, it would be really nice to have that brought into the standard as valid. From my perspective, it could be introduced as "deprecated" or "not recommended", so future implementations and uses would be using fourcc but all of the existing usage would still work as is

@zenomt
Copy link

zenomt commented Sep 22, 2023

i'm concerned that making "id 12 == HEVC" official is a negative incentive to transition to the fourCc way, no matter how much you say it's "deprecated" or "NOT RECOMMENDED", especially given the inertia of existing implementations.

@zenomt
Copy link

zenomt commented Sep 22, 2023

there is no Protocol Police, and nobody is stopping anyone from using any codec ID any way they want (i'm currently using audio codec id 15 ("Device Specific") for Opus in my Javascript+WebCodecs implementation). the only reason to document video codec id 12 as HEVC would be to encourage interoperation and adoption in new implementations, but new implementations should be preferring the fourCc way.

IMO use of any "unassigned" or "reserved" code points should be considered ad hoc, uncoordinated, and nonstandard, and especially now that there's Enhanced RTMP, doing so should be considered "NOT RECOMMENDED".

@veovera
Copy link
Owner

veovera commented Sep 22, 2023

Hey David,

I understand the suggestion and appreciate you bringing it up. After thinking about this some more, it feels like the best course of action is to leave this alone. Some of the thinking behind this is:

  • Introducing CodecID 12 for HEVC as part of the spec while at the same time deeming it as “deprecated” or “not recommended” feels at odds with each other and ultimately will not have any real effect.

  • While unlikely, Introducing CodecID 12 for HEVC, could perhaps be incompatible with other unofficial implementations.

  • Leaving this alone will not break anything, and future implementations for HEVC will be compelled to adopt the FourCC approach as outlined in the enhanced RTMP specification.

Hope this helps. I will close this issue out for now. If a compelling argument comes up, we will reopen.

Thanks!

@veovera
Copy link
Owner

veovera commented Sep 22, 2023

closing per previous reason (#24 (comment))

@veovera veovera closed this as completed Sep 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants