GNOME Bugzilla – Bug 471194
[rtpbuffer] RTP headers are wrong for win32
Last modified: 2007-09-07 18:05:59 UTC
Using RTP payloader elements on win32 generates invalid RTP Headers. This is because the MS Compiler packs the GstRTPHeader and GstRFC2190AHeader structures wrong.
Created attachment 94509 [details] [review] Patch for the GstRTPHeader structure Fix for the GstRTPHeader in gst-plugins-base.
Created attachment 94510 [details] [review] Patch for the GstRFC2190AHeader structure Fix for the GstRFC2190AHeader in gst-plugins-good.
Thanks, nice catch! The bit in -base should hopefully be fixed now: 2007-09-07 Tim-Philipp Müller <tim at centricular dot net> Based on patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com> * gst-libs/gst/rtp/gstrtpbuffer.c: Fix up GstRTPHeader helper struct so that compilers will not under any circumstances add padding in between our fields, as currently happens with MSVC on win32, because that would lead to us sending out RTP payloads with broken RTP headers (#471194). Fix assertion guards for gst_rtp_buffer_get_csrc() and _set_csrc(). * tests/check/Makefile.am: * tests/check/libs/.cvsignore: * tests/check/libs/rtp.c: Add some simple unit tests for GstRTPBuffer. Some are disabled because the code tested still needs fixing (set_csrc() does not work).