Commit graph

37 commits

Author SHA1 Message Date
Wim Taymans
583d39dd8d update for new memory API 2012-01-25 12:30:28 +01:00
Edward Hervey
04520cbe9a rtp: Initialize GstRTPBuffer before usage 2011-12-05 18:39:59 +01:00
Matej Knopp
1e5dd9e315 Fix printf format compiler warnings on OS X / 64bit
https://bugzilla.gnome.org/show_bug.cgi?id=662615
2011-11-22 01:28:22 +00:00
Wim Taymans
75dc9634eb change getcaps to query
Chain up event function in payloaders.
2011-11-15 18:04:44 +01:00
Wim Taymans
249d0083cc update for base class rename 2011-11-11 12:25:01 +01:00
Wim Taymans
fbaf216d25 update for changed base classes 2011-11-10 17:23:47 +01:00
Mark Nauwelaerts
eb82a50bd1 rtp: port remaining to 0.11 2011-07-10 21:50:19 +02:00
Wim Taymans
4279aa6a68 theorapay: handle 0 sized packets
Handle 0 sized packets (repeat frame) in the payloader and depayloader.

Fixes #641827
2011-02-14 16:48:06 +01:00
Wim Taymans
f4155f3cf3 rtp: add RTP hint to the klass 2010-12-21 17:23:03 +01:00
Wim Taymans
f357e09ac1 rtp: fix rank of payloaders and depayloaders
Set the payloaders and depayloaders to a reasonable rank.
2010-12-21 17:22:58 +01:00
Wim Taymans
e47f4487b4 theorapay: clear packet on flush-stop 2010-12-21 13:55:40 +01:00
Sjoerd Simons
952fd666b3 Keep announcing the delivery-method in the capabilities
Even though we don't use delivery-method in our payloader, older versions of
the theora payloader in gstreamer required it. As such we need to keep this
around in the caps for backwards-compatibility.

This reverts part of 49463a37cb

Fixes #618940
2010-06-03 18:47:40 -04:00
Wim Taymans
49463a37cb rtptheora: remove delivery-method from caps
We can accept all delivery methods so don't advertise anything on the caps or
parse anything, we will handle whatever we receive.

Fixes #618940
2010-05-25 18:53:48 +02:00
Mark Nauwelaerts
af6fc84377 rtptheorapay: add config-interval parameter to re-insert config in stream
Add a new config-interval property to instruct the payloader to insert
configuration headers at periodic intervals in the stream
(when a keyframe is countered).
2010-05-10 13:35:52 +02:00
Mark Nauwelaerts
7bd3943bb9 rtptheorapay: do not discard downstream flow return 2010-05-10 13:35:44 +02:00
Mark Nauwelaerts
53928a74fa rtptheorapay: refactor buffer payloading 2010-05-10 13:35:41 +02:00
Benjamin Otte
cccfeaa59c gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 14:32:00 +01:00
Wim Taymans
9f098b352b rtp: use boilerplate 2009-12-23 13:09:54 +01:00
Wim Taymans
4ef9eee8b4 rtptheorapay: fix description 2009-05-06 18:06:49 +02:00
Edward Hervey
58a7c2ad8d rtptheorapay: Remove dead assignment. Value never read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
4a9e80720a Remove unused variables in _class_init
Detected by LLVM's CLang static analyzer
2009-04-18 18:51:27 +02:00
Michael Smith
85d7fb0599 rtptheorapay: fix length encoding in packed headers.
As for vorbis payloader; this by inspection had the same bug.
2009-04-01 17:31:18 -07:00
Sebastian Dröge
77e2637590 rtp: Use GLib functions for encoding/decoding base64 2009-03-18 14:50:17 +01:00
Wim Taymans
5e27695ca2 gst/rtp/: Fix the descriptions and fix some email addresses.
Original commit message from CVS:
* gst/rtp/gstasteriskh263.c:
* gst/rtp/gstasteriskh263.h:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_setcaps):
* gst/rtp/gstrtpL16depay.h:
* gst/rtp/gstrtpL16pay.c:
* gst/rtp/gstrtpL16pay.h:
* gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_setcaps):
* gst/rtp/gstrtpac3depay.h:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtp/gstrtpamrdepay.h:
* gst/rtp/gstrtpamrpay.c:
* gst/rtp/gstrtpamrpay.h:
* gst/rtp/gstrtpdepay.c:
* gst/rtp/gstrtpdepay.h:
* gst/rtp/gstrtpdvdepay.c: (gst_rtp_dv_depay_setcaps):
* gst/rtp/gstrtpg726depay.c:
* gst/rtp/gstrtpg726pay.c:
* gst/rtp/gstrtpg729depay.c:
* gst/rtp/gstrtpg729pay.c:
* gst/rtp/gstrtpgsmdepay.c:
* gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_setcaps):
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_setcaps):
* gst/rtp/gstrtph263depay.h:
* gst/rtp/gstrtph263pay.c:
* gst/rtp/gstrtph263pay.h:
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps):
* gst/rtp/gstrtph263pdepay.h:
* gst/rtp/gstrtph263ppay.c:
* gst/rtp/gstrtph263ppay.h:
* gst/rtp/gstrtph264depay.c:
* gst/rtp/gstrtph264depay.h:
* gst/rtp/gstrtph264pay.c:
* gst/rtp/gstrtph264pay.h:
* gst/rtp/gstrtpilbcdepay.c:
* gst/rtp/gstrtpilbcpay.c:
* gst/rtp/gstrtpjpegdepay.h:
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_setcaps):
* gst/rtp/gstrtpmp1sdepay.h:
* gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps):
* gst/rtp/gstrtpmp2tdepay.h:
* gst/rtp/gstrtpmp2tpay.c:
* gst/rtp/gstrtpmp2tpay.h:
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_setcaps):
* gst/rtp/gstrtpmp4apay.c:
* gst/rtp/gstrtpmp4apay.h:
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_setcaps):
* gst/rtp/gstrtpmp4gdepay.h:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4gpay.h:
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps):
* gst/rtp/gstrtpmp4vdepay.h:
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_event):
* gst/rtp/gstrtpmp4vpay.h:
* gst/rtp/gstrtpmpadepay.c:
* gst/rtp/gstrtpmpadepay.h:
* gst/rtp/gstrtpmpapay.c:
* gst/rtp/gstrtpmpapay.h:
* gst/rtp/gstrtpmpvdepay.c:
* gst/rtp/gstrtpmpvdepay.h:
* gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_process):
* gst/rtp/gstrtppcmapay.c:
* gst/rtp/gstrtppcmudepay.c:
* gst/rtp/gstrtppcmupay.c:
* gst/rtp/gstrtpspeexdepay.c:
* gst/rtp/gstrtpspeexpay.c:
* gst/rtp/gstrtpsv3vdepay.c:
* gst/rtp/gstrtpsv3vdepay.h:
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheoradepay.h:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtptheorapay.h:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbisdepay.h:
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
* gst/rtp/gstrtpvorbispay.h:
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_setcaps):
* gst/rtp/gstrtpvrawpay.c:
Fix the descriptions and fix some email addresses.
2008-11-25 18:03:02 +00:00
Wim Taymans
2428a1ca55 gst/rtp/gstrtpL16depay.c: Check if clock-rate and channels are valid.
Original commit message from CVS:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_setcaps),
(gst_rtp_L16_depay_process):
Check if clock-rate and channels are valid.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_setcaps),
(gst_rtp_ac3_depay_process):
Don't ignore the return value of set_caps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_setcaps),
(gst_rtp_amr_depay_process):
* gst/rtp/gstrtpamrdepay.h:
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set output caps on the buffers, the base class does that for
us.
The subclass will make sure we are negotiated.
* gst/rtp/gstrtpdvdepay.c: (gst_rtp_dv_depay_setcaps),
(gst_rtp_dv_depay_process), (gst_rtp_dv_depay_reset):
* gst/rtp/gstrtpdvdepay.h:
Clean up caps negotiation.
The subclass will make sure we are negotiated.
* gst/rtp/gstrtpg726depay.c: (gst_rtp_g726_depay_setcaps),
(gst_rtp_g726_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpg729depay.c: (gst_rtp_g729_depay_init),
(gst_rtp_g729_depay_setcaps), (gst_rtp_g729_depay_process):
* gst/rtp/gstrtpg729depay.h:
The subclass will make sure we are negotiated.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_setcaps),
(gst_rtp_gsm_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_setcaps):
Clean up caps negotiation.
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_setcaps),
(gst_rtp_h263_depay_process):
Clean up caps negotiation.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph263pay.c: (gst_rtp_h263_pay_setcaps),
(gst_rtp_h263_pay_flush), (gst_rtp_h263_pay_handle_buffer):
* gst/rtp/gstrtph263pay.h:
Don't ignore the return value of set_outcaps.
Do some more timestamps.
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps),
(gst_rtp_h263p_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph263ppay.c: (gst_rtp_h263p_pay_class_init),
(gst_rtp_h263p_pay_setcaps), (gst_rtp_h263p_pay_flush),
(gst_rtp_h263p_pay_handle_buffer):
* gst/rtp/gstrtph263ppay.h:
Don't ignore the return value of set_outcaps.
Do some more timestamps.
* gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_setcaps),
(gst_rtp_h264_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
Fix possible caps leak.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_setcaps):
Add some more debug info.
* gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_setcaps),
(gst_rtp_ilbc_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_sink_setcaps):
Clean up caps negotiation.
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_setcaps),
(gst_rtp_mp1s_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps),
(gst_rtp_mp2t_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_setcaps),
(gst_rtp_mp4a_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpmp4apay.c: (gst_rtp_mp4a_pay_new_caps),
(gst_rtp_mp4a_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_setcaps),
(gst_rtp_mp4g_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_finalize),
(gst_rtp_mp4g_pay_new_caps), (gst_rtp_mp4g_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps),
(gst_rtp_mp4v_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_new_caps),
(gst_rtp_mp4v_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_setcaps),
(gst_rtp_mpa_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpmpapay.c: (gst_rtp_mpa_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_setcaps),
(gst_rtp_mpv_depay_process):
Clean up caps negotiation.
Actually set output caps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpmpvpay.c: (gst_rtp_mpv_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_setcaps),
(gst_rtp_pcma_depay_process):
Clean up caps negotiation.
Set output buffer duration because we can.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtppcmapay.c: (gst_rtp_pcma_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_setcaps),
(gst_rtp_pcmu_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtppcmupay.c: (gst_rtp_pcmu_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_setcaps), (gst_rtp_speex_depay_process):
Clean up caps negotiation.
Set output caps on the pad and header buffers.
Set duration on output buffers because we can.
* gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_parse_ident):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_setcaps),
(gst_rtp_sv3v_depay_process):
Clean up caps negotiation.
No need to validate the buffer, the base class does that for us.
No need to set caps out output buffers, subclass does that.
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps),
(gst_rtp_theora_depay_process):
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_class_init),
(gst_rtp_theora_pay_flush_packet), (encode_base64),
(gst_rtp_theora_pay_finish_headers), (gst_rtp_theora_pay_parse_id),
(gst_rtp_theora_pay_handle_buffer):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps),
(gst_rtp_vorbis_depay_process):
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_setcaps):
Clean up caps negotiation, don't ignore setcaps return.
* gst/rtp/gstrtpvrawpay.c: (gst_rtp_vraw_pay_setcaps):
Don't ignore the return value of set_outcaps.
2008-10-27 11:03:53 +00:00
Thomas Vander Stichele
b3ac90d9e8 gst/: Added debug.
Original commit message from CVS:
* gst/rtp/gstrtptheorapay.c:
* gst/udp/gstmultiudpsink.c:
Added debug.
2008-06-20 16:24:11 +00:00
Olivier Crete
86c4b045ea gst/rtp/gstrtptheorapay.c: The Theora RTP payloader only supports the "inline" delievery method so let's declare this...
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheorapay.c:
The Theora RTP payloader only supports the "inline" delievery method
so let's declare this on the caps of the static pad template.
Fixes bug #537675.
2008-06-11 08:56:16 +00:00
Wim Taymans
4a7cbe8489 fixes: #514889
Original commit message from CVS:
patch by:  Wim Taymans  <wim.taymans@collabora.co.uk>
fixes: #514889
* gst/rtp/gstrtph264pay.c:
* gst/rtp/gstrtpmp4gdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4gpay.h:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtpvorbispay.c:
Fix various leaks shown up in valgrind
- free sprops and buffer in error cases in H264 payloader
- fix leak in mp4g depayloader when construction the caps
- don't leak config string in the mp4g payloader
- don't leak buffers and headers in theora and vorbis payloaders
* tests/check/elements/rtp-payloading.c:
Fix the RTP data test
- Actually send valid amr data to the payloader instead of 20
zero-bytes
- The mp4g payloader expects codec_data on the caps
2008-02-12 23:38:19 +00:00
Olivier Crete
4e1ff0164f gst/rtp/: Fix the clock rate to 90000 as required by the RFC.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps):
* gst/rtp/gstrtptheorapay.c:
Fix the clock rate to 90000 as required by the RFC.
Fixes #508644.
2008-01-11 17:21:30 +00:00
Stefan Kost
e7f919986a gst/rtp/: Remove copy/paste unused code (property setters and getter) found by the coverage suite (yay, saves ~20k on...
Original commit message from CVS:
* gst/rtp/gstasteriskh263.c:
* gst/rtp/gstrtpL16depay.c:
* gst/rtp/gstrtpac3depay.c:
* gst/rtp/gstrtpamrpay.c:
* gst/rtp/gstrtpdepay.c:
* gst/rtp/gstrtpgsmdepay.c:
* gst/rtp/gstrtph263depay.c:
* gst/rtp/gstrtph263pdepay.c:
* gst/rtp/gstrtph263ppay.c:
* gst/rtp/gstrtph264depay.c:
* gst/rtp/gstrtph264pay.c:
* gst/rtp/gstrtpmp2tdepay.c:
* gst/rtp/gstrtpmp4adepay.c:
* gst/rtp/gstrtpmp4gdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4vdepay.c:
* gst/rtp/gstrtpmpadepay.c:
* gst/rtp/gstrtpmpvdepay.c:
* gst/rtp/gstrtpsv3vdepay.c:
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbispay.c:
Remove copy/paste unused code (property setters and getter) found by
the coverage suite (yay, saves ~20k on disk).
2008-01-09 11:11:01 +00:00
Wim Taymans
fe26e8d94c gst/rtp/gstrtpL16pay.c: Removed some unused code.
Original commit message from CVS:
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_handle_buffer):
Removed some unused code.
* gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_handle_buffer):
* gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_handle_buffer):
* gst/rtp/gstrtpmp2tpay.c: (gst_rtp_mp2t_pay_handle_buffer):
* gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_handle_buffer):
* gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_init_packet),
(gst_rtp_theora_pay_flush_packet):
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_flush_packet):
Try to preserve the incomming buffer duration on the outgoing
packets. Fixes #478244.
2007-09-19 16:24:09 +00:00
Wim Taymans
4da361f94c gst/rtp/: Update theora pay/depayloader in a similar to vorbis.
Original commit message from CVS:
* gst/rtp/gstrtptheoradepay.c: (decode_base64),
(gst_rtp_theora_depay_parse_configuration):
* gst/rtp/gstrtptheorapay.c: (encode_base64),
(gst_rtp_theora_pay_finish_headers),
(gst_rtp_theora_pay_handle_buffer):
Update theora pay/depayloader in a similar to vorbis.
* gst/rtp/gstrtpvorbisdepay.c:
(gst_rtp_vorbis_depay_parse_configuration):
Update docs.
2007-05-14 17:10:12 +00:00
Thomas Vander Stichele
2fc868841f gst/rtp/Makefile.am: gst/rtp/fnv1hash.c (MASK_24, FNV1_HASH_32_INIT, FNV1_HASH_32_PRIME, fnv1_hash_32_new, fnv1_hash_...
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/fnv1hash.c (MASK_24, FNV1_HASH_32_INIT, FNV1_HASH_32_PRIME,
fnv1_hash_32_new, fnv1_hash_32_update, fnv1_hash_32_to_24):
* gst/rtp/fnv1hash.h (__GST_FNV1_HASH_H__):
Add a simple hashing implementation that we can use to generate
a 24-bit ident value based on the codebooks for vorbis and theora.
* gst/rtp/gstrtptheorapay.c (gst_rtp_theora_pay_finish_headers,
gst_rtp_theora_pay_handle_buffer):
* gst/rtp/gstrtpvorbisdepay.c
(gst_rtp_vorbis_depay_parse_configuration,
gst_rtp_vorbis_depay_switch_codebook, gst_rtp_vorbis_depay_process):
* gst/rtp/gstrtpvorbispay.c (gst_rtp_vorbis_pay_reset_packet,
gst_rtp_vorbis_pay_init_packet, gst_rtp_vorbis_pay_flush_packet,
gst_rtp_vorbis_pay_finish_headers, gst_rtp_vorbis_pay_handle_buffer):
Use the hashing function, ensuring that the same codebooks result
in the same ident and thus the same SDP description.
Various log fixes/changes.
2007-04-12 11:41:11 +00:00
Wim Taymans
20f18abf72 gst/rtp/: Fix encoding-name case.
Original commit message from CVS:
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_setcaps):
* gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_finish_headers):
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
Fix encoding-name case.
2007-03-05 17:08:32 +00:00
Wim Taymans
22eb34e2fe gst/rtp/: Fix case of encoding-name and key/value pairs to match the document.
Original commit message from CVS:
* gst/rtp/README:
* gst/rtp/gstrtpilbcdepay.c:
* gst/rtp/gstrtpilbcpay.c:
* gst/rtp/gstrtpmp4gdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpspeexdepay.c:
* gst/rtp/gstrtpspeexpay.c:
* gst/rtp/gstrtpsv3vdepay.c:
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbispay.c:
Fix case of encoding-name and key/value pairs to match the document.
This is to make interoperation with SDP case-insensitive as required by
the relevant RFCs.
2007-01-25 14:22:53 +00:00
Wim Taymans
3df533de2c gst/rtp/: Fix caps with payload numbers.
Original commit message from CVS:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtp/gstrtpgsmdepay.c:
* gst/rtp/gstrtph263pdepay.c:
* gst/rtp/gstrtph263ppay.c:
* gst/rtp/gstrtph264depay.c:
* gst/rtp/gstrtpilbcdepay.c:
* gst/rtp/gstrtpmp2tdepay.c:
* gst/rtp/gstrtpmp4gdepay.c:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_class_init):
* gst/rtp/gstrtpmp4vpay.c:
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_class_init),
(gst_rtp_mpa_depay_init), (gst_rtp_mpa_depay_setcaps),
(gst_rtp_mpa_depay_process):
* gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_class_init),
(gst_rtp_mpv_depay_init), (gst_rtp_mpv_depay_process):
* gst/rtp/gstrtppcmadepay.c:
* gst/rtp/gstrtppcmudepay.c:
* gst/rtp/gstrtpspeexdepay.c:
* gst/rtp/gstrtpspeexpay.c:
* gst/rtp/gstrtpsv3vdepay.c:
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbispay.c:
Fix caps with payload numbers.
Add some fixed payload numbers to caps when possible.
2007-01-24 12:22:51 +00:00
Christian Schaller
2ed1cb8ac2 gst/rtp/: Add theora pay/depayloaders.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_base_init),
(gst_rtp_theora_depay_class_init), (gst_rtp_theora_depay_init),
(gst_rtp_theora_depay_finalize),
(gst_rtp_theora_depay_parse_configuration),
(gst_rtp_theora_depay_setcaps),
(gst_rtp_theora_depay_switch_codebook),
(gst_rtp_theora_depay_process),
(gst_rtp_theora_depay_set_property),
(gst_rtp_theora_depay_get_property),
(gst_rtp_theora_depay_change_state),
(gst_rtp_theora_depay_plugin_init):
* gst/rtp/gstrtptheoradepay.h:
* gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_base_init),
(gst_rtp_theora_pay_class_init), (gst_rtp_theora_pay_init),
(gst_rtp_theora_pay_setcaps), (gst_rtp_theora_pay_reset_packet),
(gst_rtp_theora_pay_init_packet),
(gst_rtp_theora_pay_flush_packet),
(gst_rtp_theora_pay_finish_headers), (gst_rtp_theora_pay_parse_id),
(gst_rtp_theora_pay_handle_buffer),
(gst_rtp_theora_pay_plugin_init):
* gst/rtp/gstrtptheorapay.h:
Add theora pay/depayloaders.
2006-11-08 01:28:00 +00:00