enhanced-rtmp: onMetaData: videocodecid not defined for HEVC, VP9 and AV1
Hi,
I am really glad a new version of RTMP is coming 🙏
In the FLV spec, there is a field in onMetaData called videocodecid where the codec was specified:
videocodecid: Number: Video codec ID used in the file (see E.4.3.1 for available CodecID values)
with CodecID:
Codec Identifier. The following values are defined: 2 = Sorenson H.263
3 = Screen video
4 = On2 VP6
5 = On2 VP6 with alpha channel 6 = Screen video version 2
7 = AVC
Unfortunately, in the current version of enhancements of RTMP spec, there is no mention of onMetaData’s videocodecid field.
Is it something missing or is it because onMetaData is not really useful?
Best regards, Thibault
About this issue
- Original URL
- State: closed
- Created a year ago
- Reactions: 1
- Comments: 17 (7 by maintainers)
Commits related to this issue
- 完成对enhanced rtmp videocodecid的兼容 请查阅: https://github.com/veovera/enhanced-rtmp/issues/8 — committed to ZLMediaKit/ZLMediaKit by xia-chu a year ago
- 完成对enhanced rtmp videocodecid的兼容 (#2718) 请查阅: https://github.com/veovera/enhanced-rtmp/issues/8 — committed to ZLMediaKit/ZLMediaKit by xia-chu a year ago
Closing the issue. We added new onMetaData section in the spec. videocodecid property MUST now be set to a FOURCC value (per enhanced-RTMP spec) when video codec is signaled via FourCC. We alerted the OBS team of the new spec section.
Hi, I’m sad to tell you that, at this moment, we can not guess whether the video codec is H264 or H265 from
obs.Obssendmetadatawith videocodecid of7when push a H265 rtmp stream:And
obsdid not setfourCcListinNetConnection connect command:So when i am implementing
enhanced-RTMP, i am very confused whether the stream is H264 or H265. Rtmp metadata will becoming dispensable, it can even lead to ambiguity.Also, what videocodeid should be used for vp9 and av1?
So I strongly recommend adding a field in metadata that indicates the correct codecid.
Thanks, Best regards.