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 711497 - rtpvp8pay: Compatibility issue with linphone due to always sending a picture id
rtpvp8pay: Compatibility issue with linphone due to always sending a picture id
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other All
: Normal normal
: 1.2.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-11-05 16:03 UTC by Elio Francesconi
Modified: 2013-11-05 16:29 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Elio Francesconi 2013-11-05 16:03:12 UTC
The RTP stream generated by GStreamer is not compatible with old decoder implementation. 
I noiticedthis issue with the soft phone I’m using(Linphphone), it seems its vp8 decoder with name "WebM Project VP8 Decoder v0.9.7-pl” is not compatible with your encoder (I got gstreamer-1.2.pkg, you provide us)

And the only information I got was:
vpx_codec_decode failed : 5 Bitstream not supported by this decoder ((null))

People develop webrtc2sip server were having the same issue, I’ve found some threads about this issue
https://groups.google.com/forum/#!msg/discuss-webrtc/xCxqzxopsDM/jIKtkA_StOgJ
https://groups.google.com/forum/#!topic/doubango/OH-nOn5w-ng
They solved disabling extension in vp8 encoding #define TDAV_VP8_DISABLE_EXTENSION in
http://doubango.googlecode.com/svn-history/r796/branches/2.0/doubango/tinyDAV/src/codecs/vpx/tdav_codec_vp8.c 

This is the header of the first packet I sent to the softphone
90:80:7c:10:32:00:9d:01:2a:a0:00:78:00:00:47:08:85:85:88:85:84:88…

This issue is in rtpvp8pay due to the default PICTURE MODE used, it is not supported in the early version of vp8.
#define DEFAULT_PICTURE_ID_MODE VP8_PAY_PICTURE_ID_7BITS

I solved the issue recompiling with this default value,
#define DEFAULT_PICTURE_ID_MODE VP8_PAY_NO_PICTURE_ID


My suggestion is to change the default one value with VP8_PAY_NO_PICTURE_ID more conservative configuration, then let change the value programmatically.
Comment 1 Sebastian Dröge (slomo) 2013-11-05 16:29:13 UTC
commit 111982de2811c2c5bfb15d2d89322d9597e822c1
Author: Sebastian Dröge <sebastian@centricular.com>
Date:   Tue Nov 5 17:26:49 2013 +0100

    rtpvp8pay: Make Picture ID mode configurable and default to no picture ID
    
    Some implementations (linphone) only support no picture at all in the
    stream and will fail if one is provided.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=711497