After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 795742 - rtp: implementation of RFC 6464
rtp: implementation of RFC 6464
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other All
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on: 761947
Blocks:
 
 
Reported: 2018-05-02 08:28 UTC by Håvard Graff (hgr)
Modified: 2018-11-03 12:06 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gst/rtp: add GstRTPAudioLevelMeta (14.66 KB, patch)
2018-05-02 08:28 UTC, Håvard Graff (hgr)
needs-work Details | Review
rtpbasepayload: add audio-level-id property (10.68 KB, patch)
2018-05-02 08:28 UTC, Håvard Graff (hgr)
reviewed Details | Review
rtpbasedepayload: add audio-level-id property (7.76 KB, patch)
2018-05-02 08:29 UTC, Håvard Graff (hgr)
reviewed Details | Review

Description Håvard Graff (hgr) 2018-05-02 08:28:06 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.
Comment 1 Håvard Graff (hgr) 2018-05-02 08:28:42 UTC
Created attachment 371598 [details] [review]
rtpbasepayload: add audio-level-id property

To embed GstRTPAudioLevelMeta as specified by RFC 6464
Comment 2 Håvard Graff (hgr) 2018-05-02 08:29:15 UTC
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.
Comment 3 Sebastian Dröge (slomo) 2018-05-02 11:17:30 UTC
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.
Comment 4 Håvard Graff (hgr) 2018-09-17 11:33:52 UTC
ping?
Comment 5 Olivier Crête 2018-10-10 19:10:17 UTC
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?
Comment 6 Olivier Crête 2018-10-10 19:12:09 UTC
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.
Comment 7 Olivier Crête 2018-10-10 19:13:12 UTC
Review of attachment 371599 [details] [review]:

Same question about the 2-byte meta.
Comment 8 GStreamer system administrator 2018-11-03 12:06:35 UTC
-- 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.