GNOME Bugzilla – Bug 795742
rtp: implementation of RFC 6464
Last modified: 2018-11-03 12:06:35 UTC
Created attachment 371597 [details] [review] gst/rtp: add GstRTPAudioLevelMeta From the RFC: A Real-time Transport Protocol (RTP) Header Extension for Client-to-Mixer Audio Level Indication Abstract This document defines a mechanism by which packets of Real-time Transport Protocol (RTP) audio streams can indicate, in an RTP header extension, the audio level of the audio sample carried in the RTP packet. In large conferences, this can reduce the load on an audio mixer or other middlebox that wants to forward only a few of the loudest audio streams, without requiring it to decode and measure every stream that is received. The implementation includes a new GstRTPAudioLevelMeta and implementations for translating between RTP and Meta in the base-payloader and -depayloader.
Created attachment 371598 [details] [review] rtpbasepayload: add audio-level-id property To embed GstRTPAudioLevelMeta as specified by RFC 6464
Created attachment 371599 [details] [review] rtpbasedepayload: add audio-level-id property To read RFC 6464 information from the RTP packet and add that information as a GstRTPAudioLevelMeta to the outgoing buffer.
Might make sense to add support for this to the level element (or a new element), so that we also have something to generate it.
ping?
Review of attachment 371597 [details] [review]: Can't you put this into gstrtpmeta.h instead of adding another ? ::: gst-libs/gst/rtp/gstrtpaudiolevelmeta.h @@ +61,3 @@ +GstRTPAudioLevelMeta * gst_buffer_extract_rtp_audio_level_meta_one_byte_ext (GstBuffer *buffer, + GstRTPBuffer *rtp, + guint8 id); There is no extract function for 2 byte ext?
Review of attachment 371598 [details] [review]: You seem to only do the one-byte version here, the 2-bytes version is missing? I guess adding it requires a bit more API.
Review of attachment 371599 [details] [review]: Same question about the 2-byte meta.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/446.