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

What about adding also H.266/VVC? #7

Open
yekuiwang opened this issue May 9, 2023 · 8 comments
Open

What about adding also H.266/VVC? #7

yekuiwang opened this issue May 9, 2023 · 8 comments

Comments

@yekuiwang
Copy link

yekuiwang commented May 9, 2023

Indeed, thanks from our side as well for the good job for enhancing the RTMP & FLV specs!

We at Bytedance are interested in adding also the support of H.266/VVC. Is it OK to add that?

@yekuiwang
Copy link
Author

OK, let me ask two other questions. Anyone else interested in adding H.266/VVC? Anyone has whatever concern on adding H.266/VVC?

@veovera
Copy link
Owner

veovera commented May 11, 2023

Thanks for the H.266 suggestion. We will take a look and evaluate.

@zenomt
Copy link

zenomt commented May 14, 2023

with the move to fourcc, adding new codecs should be independent of RTMP and FLV now. instead adding new codecs should be with codec-specific docs that give the fourcc and any codec-specific syntax or semantics mapped onto the generic enhanced RTMP (similar to the WebCodecs Codec Registry and e.g. HEVC Registration).

i'm only just starting to look deep at Enhanced RTMP, but i see one hindrance to generality already regarding composition time offsets, which i'll raise in a new issue.

@zenomt
Copy link

zenomt commented May 14, 2023

i opened #9 about the composition time offset issue, and also suggested a separation of syntax from codec registry.

@veovera
Copy link
Owner

veovera commented May 22, 2023

RTMP messages are transferred using a lower level transport layer (i.e. RTMP Chunk Stream). RTMP messages that carry compressed AV data may have associated hint information as part of the message. Correct, you can define any fourcc. It would however behoove to define fourcc plus appropriate set or hints/rules at the same time as part of the Enhanced RTMP to make sure that developers settle on specific set of rules and behaviors for a particular fourcc data format. This assures that a stream behaves the same no matter what tech stack delivers or plays it.

@yekuiwang
Copy link
Author

Given the way how H.265/HEVC has been added, the changes needed for adding H.266/VVC can be simple and similar, like the following:

  1. Add a Video FourCC value VVC = {'v', 'v', 'c', '1'}.
  2. Add VideoTagBody corresponding to VVC, similar as that for HEVC, but with "DATA = [VvcDecoderConfigurationRecord]" and "DATA = [VVC NALU]".

@TroyKomodo
Copy link

TroyKomodo commented Jun 10, 2023

Out of curiosity is there any playback support in the major vendors for VVC yet?

  • Such as browser support (in any browser)
  • Desktop Player Support (in any desktop player)
  • Encoder Support (in any encoder)

I have not heard much about VVC. I was curious if anyone is currently working on adding support to chromium, vlc or ffmpeg.

Since, well as nice as it would be to supporting the codec using RTMP I dont understand what device will end up consuming the stream if there is currently no support anywhere else

@yekuiwang
Copy link
Author

@TroyKomodo You can find information on the deployment status of the VVC standard from this document: https://www.jvet-experts.org/doc_end_user/current_document.php?id=12630.

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

4 participants