Olivier Crête
e15c293f13
rtph263ppay: Return the sink pad template as sink caps, not the src's
...
https://bugzilla.gnome.org/show_bug.cgi?id=577784
2011-11-08 15:53:39 +01:00
Olivier Crête
4b28d9d44e
rtph263ppay: Also implement size/framerate restrictions in getcaps
...
https://bugzilla.gnome.org/show_bug.cgi?id=577784
2011-11-08 15:53:18 +01:00
Olivier Crête
ff31090671
rtph263ppay: Implement getcaps following RFC 4629, picks the right annexes
...
https://bugzilla.gnome.org/show_bug.cgi?id=577784
2011-11-08 15:52:57 +01:00
Tim-Philipp Müller
d65490dfad
rtp: use GLib's G_BIG_ENDIAN define instead of BIG_ENDIAN
...
Fixes compiler warning on mingw32
2011-11-03 23:28:31 +00:00
Wim Taymans
b1ef7e8a86
update for meta api change
2011-11-02 09:06:37 +01:00
Wim Taymans
9a8a8e72c8
structure: fix for api update
2011-11-02 09:06:37 +01:00
Wim Taymans
9c14280b1d
make some more things compile again
2011-10-27 19:00:52 +02:00
Wim Taymans
fc4684f4c6
fix compilation
2011-10-27 16:03:17 +02:00
Marc Leeman
98075ad70d
set colour masks for video/x-raw-rgb in rtpvrawdepay
2011-10-14 09:32:47 +02:00
Wim Taymans
a5cc912140
Merge branch 'master' into 0.11
...
Conflicts:
ext/jpeg/gstjpegdec.c
gst/rtp/gstrtpvrawpay.c
2011-10-13 08:58:06 +02:00
Edward Hervey
1b56d40170
rtpvrawpay: Only use 24 LSB for depth=24 RGB caps
...
... and indent the masks for clarity
2011-10-12 11:26:50 +02:00
Sjoerd Simons
bf65acf11f
gstrtpg722pay: Compensate for clockrate vs. samplerate difference
...
The RTP clock-rate used for G722 is 8000, even though the samplerate is
16000. Compensate for this by pretending G722 has 8 bits per sample
instead of the 4 bits as if it were a codec that ran at half the speed,
but with twice the number of bits. Fixes #661376
2011-10-10 21:50:28 +01:00
Wim Taymans
87fbd1e784
Merge branch 'master' into 0.11
...
Conflicts:
common
ext/pulse/pulsesink.c
ext/soup/gstsouphttpclientsink.c
gst/audioparsers/gstaacparse.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtpmanager/gstrtpjitterbuffer.c
gst/rtpmanager/rtpjitterbuffer.c
gst/rtsp/gstrtspsrc.c
sys/ximage/gstximagesrc.c
2011-09-28 12:44:59 +02:00
Mark Nauwelaerts
fd757890eb
rtph264depay: improve downstream flow return feedback to upstream
...
... although basertpdepay does not really make it easy/possible to do so
all the way.
2011-09-20 14:14:39 +02:00
Wim Taymans
83ea243000
Merge branch 'master' into 0.11
...
Conflicts:
common
2011-09-06 16:37:03 +02:00
Wim Taymans
33f18b8ea4
Merge branch 'master' into 0.11
...
Conflicts:
gst/audioparsers/gstamrparse.c
gst/isomp4/qtdemux.c
2011-09-06 16:06:25 +02:00
Mark Nauwelaerts
06f8e356a6
rtpmp4gdepay: improve bogus interleaved index compensating
...
Patch by <gudake@gmail.com>
Fixes #654585 .
2011-09-06 13:20:23 +02:00
Olivier Crête
d4778dbe43
rtph263ppay: Set H263-2000 if thats what the other side wants
...
The static caps states this element supports H263-2000, but setcaps never
sets it, so it was lie.
See https://bugzilla.gnome.org/show_bug.cgi?id=577784
2011-09-05 12:58:55 +02:00
Wim Taymans
24df106272
mp2t: fix encoding name according to RFC3551
2011-08-31 18:45:15 +02:00
Wim Taymans
18065ac823
port to new video flags
2011-08-25 16:41:23 +02:00
Wim Taymans
60f0e44bf6
video: port to new colorimetry info
2011-08-23 19:09:31 +02:00
Wim Taymans
9d6371405e
fourcc: remove fourcc from caps
2011-08-22 12:24:15 +02:00
Wim Taymans
77ad0a1363
port more elements to new audio caps and API
2011-08-19 14:01:45 +02:00
Wim Taymans
ee2aa25e04
port to new API
2011-08-03 18:37:27 +02:00
Wim Taymans
4121021bb2
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulsesink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtp/gstrtph264pay.c
gst/rtpmanager/gstrtpssrcdemux.c
2011-08-03 18:25:30 +02:00
Robert Krakora
f7893b8721
rtpjpegpay: Add support for H.264 payload in MJPEG container
...
See http://www.quickcamteam.net/uvc-h264/USB_Video_Payload_H.264_0.87.pdf
Fixes bug #655530 .
2011-08-03 10:09:42 +02:00
Wim Taymans
5771056ed5
rtpvorbispay: fix porting error
2011-08-02 11:51:45 +02:00
Wim Taymans
49af68ebf4
-good: fix for bufferpool API change
2011-07-29 17:27:07 +02:00
Sjoerd Simons
4c73439ee3
rtph264depay: Cope with FU-A E bit not being set
...
Some h264 payloaders are unfortunately buggy and don't correctly set the
E bit in FU-A NAL when they have ended. Work around this by assuming
such a fragmentation unit has ended when there was no packet loss and a
new NAL is started
2011-07-27 18:18:13 +01:00
Wim Taymans
3e089bd7a9
rtp: fix compilation
2011-07-26 17:45:01 +02:00
Olivier Crête
2591a882ae
rtph264depay: Complete merged AU on marker bit
...
The marker bit on a RTP packet means the AU has been completed, so push it out
immediately to reduce the latency.
https://bugzilla.gnome.org/show_bug.cgi?id=654850
2011-07-21 17:11:08 +02:00
Olivier Crête
118a7cc36a
rtph264pay: Only set the marker bit on the last NALU of a multi-NALU access unit
...
An access unit could contain multiple NAL units, in that case, only the last
RTP packet of the last NALU should have its marker bit set.
https://bugzilla.gnome.org/show_bug.cgi?id=654850
2011-07-21 17:11:06 +02:00
Mark Nauwelaerts
471904032d
rtph264depay: reset upon FLUSH_STOP
...
... which is particularly needed when merging NAL units, where not resetting
would lead to output of an older (pre-flush) AU (with unintended timestamp).
2011-07-18 14:32:26 +02:00
Wim Taymans
9c087d7d85
Merge branch 'master' into 0.11
2011-07-15 17:06:39 +02:00
Olivier Crête
87c7f303b0
rtppcmApay/depay: Static clock rates on static payloads, dynamic on dynamic
...
Partially reverts 397dc60b
2011-07-14 20:13:01 -04:00
Olivier Crête
57a832cbb1
rtph264pay: Implement getcaps
...
Convert profile-level-id from RTP caps into video/x-h264 style caps (with profile and level)
2011-07-13 14:10:35 -04:00
Mark Nauwelaerts
eb82a50bd1
rtp: port remaining to 0.11
2011-07-10 21:50:19 +02:00
Wim Taymans
cc65bff7c1
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
docs/plugins/inspect/plugin-esdsink.xml
docs/plugins/inspect/plugin-gconfelements.xml
2011-06-21 18:24:41 +02:00
Mark Nauwelaerts
3daf1ecc21
rtpmp4adepay: fix output buffer timestamps in case of multiple frames
2011-06-21 15:15:33 +02:00
Wim Taymans
3c889415a3
rtp: port some more (de)payloader
2011-06-13 17:14:00 +02:00
Wim Taymans
9a54175e9f
rtp: port to 0.11
2011-06-13 16:33:46 +02:00
Wim Taymans
b0fbb1725f
rtp: fix for API changes in the base classes
2011-06-13 13:25:49 +02:00
Wim Taymans
0b1bdcf7cb
Merge branch 'master' into 0.11
...
Conflicts:
sys/ximage/ximageutil.c
2011-06-02 18:51:29 +02:00
Marc Leeman
ff1c05d876
rtpmp4vpay: Deprecated send-config property and replace by config-interval
...
Fixes bug #622412 .
2011-05-26 12:22:52 +02:00
Wim Taymans
d89790d545
Merge branch 'master' into 0.11
...
Conflicts:
gst/avi/gstavidemux.c
gst/rtp/gstrtpac3depay.c
gst/rtp/gstrtpg726depay.c
gst/rtp/gstrtpmpvdepay.c
gst/videofilter/gstgamma.c
2011-05-24 17:34:19 +02:00
Mark Nauwelaerts
397dc60b71
pcmudepay: allow variable sample rate
2011-05-24 13:13:55 +02:00
Mark Nauwelaerts
f335fee99e
pcmadepay: allow variable sample rate
2011-05-24 13:13:52 +02:00
Stefan Kost
d122ea0122
rtp: fix static array overruns in a nicer way
...
Use G_N_ELEMENTS instead of hard-coding the array size.
2011-05-20 10:34:47 +03:00
Stefan Kost
5792d3b9c0
rtp: fix static array overruns
...
Yes array[10] has elements from 0...9.
2011-05-20 00:53:44 +03:00
Jose Antonio Santos Cadenas
9d32243671
rtp: Fix segmentation fault processing payload buffers
...
This commit checks if the value returned by
gst_rtp_buffer_get_payload_buffer and
gst_rtp_buffer_get_payload_subbuffer is NULL before using it.
2011-05-18 15:25:24 +02:00
Wim Taymans
31ffc671f2
rtpgstpay: fix buffer leak
2011-04-26 16:04:07 +01:00
Wim Taymans
eb84592cad
rtpgstpay: fix buffer leak
2011-04-26 15:58:12 +02:00
Wim Taymans
9a96783abb
rtp: port some more elements
2011-04-25 18:14:45 +02:00
Wim Taymans
bf9b4f8362
rtp: port more to 0.11
2011-04-25 17:27:40 +02:00
Wim Taymans
60db07b4bb
rtp: port some more (de)payloaders
2011-04-25 13:16:58 +02:00
Wim Taymans
4aa6ca5578
port more plugins to 0.11
2011-04-18 10:54:43 +02:00
Wim Taymans
7555d0949f
Merge branch 'master' into 0.11
...
Conflicts:
android/apetag.mk
android/avi.mk
android/flv.mk
android/icydemux.mk
android/id3demux.mk
android/qtdemux.mk
android/rtp.mk
android/rtpmanager.mk
android/rtsp.mk
android/soup.mk
android/udp.mk
android/wavenc.mk
android/wavparse.mk
configure.ac
2011-04-18 10:23:45 +02:00
Tim-Philipp Müller
f325935314
pulse, speexenc, rtpgsmpay: don't use g_assert() for error handling
...
Don't use g_assert() for error handling, even if they're highly unlikely.
Either we *know* that something can't happen, in which case we
should just not handle it, or we think something can happen, but it is
very very unlikely that it will ever happen, in which case we should
handle it like any other error instead of asserting.
g_assert() is best left for conditions we have control of, like checking
internal consistency of our code, not checking return values of external
code.
Fixes a bunch of warnings when compiling with -DG_DISABLE_ASSERT:
gstrtpgsmpay.c: In function 'gst_rtp_gsm_pay_handle_buffer':
gstrtpgsmpay.c:130:17: warning: variable 'rtpgsmpay' set but not used
gstspeexenc.c: In function 'gst_speex_enc_encode':
gstspeexenc.c:904:19: warning: variable 'written' set but not used
pulsesink.c: In function 'gst_pulsesink_change_state':
pulsesink.c:2725:9: warning: variable 'res' set but not used
pulsesrc.c: In function 'gst_pulsesrc_change_state':
pulsesrc.c:1253:7: warning: variable 'e' set but not used
2011-04-16 18:15:43 +01:00
Robert Swain
5b18c652fb
rtp, rtpmanager: Address unused but set variables
...
GCC 4.6.x spits warnings about variables that are unused but set. Such
variables have been removed where trivial but with comments left behind
for informational purposes in some cases.
gst_rtp_session_chain_recv_rtcp () was changed in commit 490113d4
to always return GST_FLOW_OK instead of the return value of
rtp_session_process_rtcp (), so we'll keep it that way.
2011-04-16 12:49:16 +01:00
Thibault Saunier
b541208b77
android: Make it ready for androgenizer
...
Remove the android/ top dir
Fixe the Makefile.am to be androgenized
To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 01:20:11 +02:00
Haakon Sporsheim
fd545e260d
rtpgstpay: declare frag_offset to hold 32bits.
...
As specified in documenation above and below.
https://bugzilla.gnome.org/show_bug.cgi?id=646954
2011-04-09 23:14:18 +01:00
Alexey Fisher
9b15f9c6a1
rtpspeexpay: Do not transmitt samples with GAP flag
...
If we get GAP samples, there is no need to transmitt it.
In some situations, microphone is muted, we can drop net traffick
usage to ~1 kbit/s. Without patch it will stay ~20 kbit/s
2011-04-08 13:56:13 +02:00
Wim Taymans
0024300aa2
rtp: port some pay/depayloaders
2011-04-07 19:04:33 +02:00
David Schleef
e54ba41ff7
rtpvrawpay: Implement interlacing
2011-02-17 18:05:43 -08: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
Olivier Crête
8a7a327db7
rtptheoradepay: Request new keyframe on lost packets
...
Theora can only use the last frame (or the keyframe) as a reference, so in
practice. If we receive a buffer that references an unknown codebook, request
new headers. It probably means that headers were lost.
2011-02-01 18:28:51 +01:00
Wim Taymans
f95c30a413
j2kpay: skip EPH packets
...
Include EPH markers into the previous chunk of packets.
2011-02-01 16:39:10 +01:00
Olivier Crête
07ebec51f5
rtppcmapay: Rename the class to have the right name
...
It was name pmca instead of pcma and made debug logs hard to search.
2011-01-31 17:56:43 -05:00
Tim-Philipp Müller
693b3b7e0b
h264depay: don't leak codec data buffer in byte-stream=true mode
...
https://bugzilla.gnome.org/show_bug.cgi?id=640063
2011-01-20 14:10:55 +00:00
Edward Hervey
4decc3aaea
rtp: Fix unitialized variables on macosx
2011-01-06 12:29:21 +01:00
Wim Taymans
6b91c5f6e7
vrawdepay: fix length check
...
Add some more debugging.
Add the length check so we don't cause unneeded warnings.
2011-01-05 15:03:32 +01:00
Wim Taymans
5ed3701a2d
mp4adepay: improve timestamps on outgoing packets
...
Improve parsing of the samplerate.
Parse the framelen so that we can calculate timestamps.
When interpollate the incomming timestamp on outgoing buffers when there are
multiple subframes.
fixes #625825
2010-12-31 13:57:05 +01:00
Wim Taymans
9c2393490f
mp4adepay: fix timestamps on buffers
2010-12-30 16:24:46 +01:00
Wim Taymans
756869421c
mpvpay: fix flushing and discont
...
Fix flushing and disconts.
Clean up in state changes.
2010-12-30 16:24:46 +01:00
Tim-Philipp Müller
fafd0b7bc3
rtpjpegdepay: fix framerate parsing for locales that use a comma as floating point
...
atof() converts strings according to the current locale, but the
framerate string will likely always use a dot as floating point
separator, so use g_ascii_strtod() instead (but also canonicalise
the string before, so we can handle both formats as input).
2010-12-29 14:59:30 +00:00
Wim Taymans
ef0bc7558d
gstpay: fix klass, add RTP as a use case
2010-12-23 18:39:52 +01:00
Wim Taymans
5fe6046c20
gstdepay: cleanup the cache
2010-12-23 18:39:52 +01:00
Wim Taymans
7c9b91d2d8
gstpay/depay: add generic gstreamer payloader
...
Add the beginnings of a generic GStreamer buffers payloader.
2010-12-23 18:39:52 +01:00
Wim Taymans
e13340ccb5
mp4gpay: reset state on flush-stop
2010-12-23 17:06:58 +01:00
Wim Taymans
1dd71cc63f
mp4gdepay: flush state on flush-stop
2010-12-23 16:26:07 +01:00
Wim Taymans
6db12cb003
rtpac3pay: add AC3 payloader
2010-12-21 22:34:49 +01:00
Wim Taymans
97993d3119
ac3depay: fix debug category description
2010-12-21 22:17:19 +01:00
Wim Taymans
e2f4fe8d3d
mpapay: add debug category
2010-12-21 22:16:42 +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
d5c8771b2b
vrawdepay: reset depayloader state
...
Reset the depayloader state on flush-stop.
2010-12-21 15:24:18 +01:00
Wim Taymans
eb99eb5515
mp4pay: use vmethod for intercepting events
2010-12-21 15:23:08 +01:00
Wim Taymans
e47f4487b4
theorapay: clear packet on flush-stop
2010-12-21 13:55:40 +01:00
Wim Taymans
2c6e198157
vorbispay: clear packet on flush-stop
2010-12-21 13:49:41 +01:00
Wim Taymans
1eb0f65f39
mp4gdepay: reset depayloader state
2010-12-21 12:31:44 +01:00
Wim Taymans
e8b8753c90
h264pay: flush adapter on flush-stop
2010-12-21 12:29:58 +01:00
Wim Taymans
6a5e6eac55
mpapay: flush last packets on EOS
2010-12-20 18:50:25 +01:00
Wim Taymans
933a170898
mpapay: reset payloader on state change
2010-12-20 16:51:47 +01:00
Wim Taymans
984849f8fe
mpapay: reset payloader on flush
...
Reset the payloader on a flush event.
Handle DISCONT better.
2010-12-20 16:06:26 +01:00
Mark Nauwelaerts
4c368242c0
rtph264depay: determine output h264 layout using caps negotiation
...
... thereby (partially) deprecating properties currently controlling whether
or not byte-stream output or NAL/AU alignment (though properties still determine
fallback if nothing specified in caps).
Fixes #606662 .
2010-12-17 15:38:27 +01:00
Wim Taymans
b87ec0262b
j2kpay: handle EOC correctly
...
Don't include the next 2 bytes when we are at the end of the data and there are
no more bytes left.
2010-12-16 18:57:27 +01:00
Edward Hervey
34222431aa
rtpj2kpay: Initialize all fields
...
Makes sad compliers happy
2010-12-15 18:21:34 +01:00
Wim Taymans
744472d2ad
j2kpay: cleanup header construction
...
Use a simpler way of constructing the header that doesn't depend on
the endianness.
2010-12-15 16:25:10 +01:00
Wim Taymans
184c4219a7
j2kdepay: add support for buffer lists
2010-12-15 13:12:09 +01:00
Wim Taymans
957eac9579
j2kpay: stop scanning when we reached the end
...
Stop scanning for markers when we reached the end of the data.
2010-12-14 15:28:40 +01:00
Wim Taymans
acc37e52a7
mp4vpay: we can also accept xvid caps
2010-12-12 15:14:40 +01:00
Wim Taymans
6729a3b79c
j2kdepay: make the depayloader more resilient
...
Use 3 adapters, one to accumulate paketization units, another on to accumulate
tiles and a last one to accumulate the final frame.
Don't just blindly flush the adapter on DISCONT but only discard the current
packetization unit.
When we dropped jpeg2000 packets between SOP markers, adjust the SOT header with
the new lenght.
2010-12-09 18:18:24 +01:00
Wim Taymans
005e27fa79
j2kpay: use SOP markers to split bitstream
...
When parsing the bitstream, look for SOP markers because we are allowed to split
packets on those marker boundaries.
Rework the parsing code a little so that we can pack multiple Packetization
units in one RTP packet.
2010-12-02 19:16:48 +01:00
Wim Taymans
29363d6068
rtpj2kpay: use buffer lists
...
Use buffer lists for doing zerocopy payloading.
Add property to disable buffer lists.
2010-12-02 19:16:47 +01:00
Wim Taymans
7e47921637
h264pay: small cleanups
...
Allocate adapter only once.
Make some guint8 * const.
2010-12-02 19:16:47 +01:00
Tambet Ingo
9d52c1a1d7
rtph264pay: implement full bytestream scan mode.
...
Implement the full bytestream scan mode.
Fixes #634910
2010-12-02 19:16:47 +01:00
Thijs Vermeir
e7b1655069
rtph264depay: fix segfault on empty payload
...
https://bugzilla.gnome.org/show_bug.cgi?id=635843
2010-11-26 23:33:40 +00:00
Wim Taymans
706731b331
rtph264depay: only set delta unit on all-non-key units
...
Only set the delta flag when all of the units in the packet are delta units.
Based on patch from Olivier Crête <olivier.crete@collabora.co.uk>
Fixes #632945
2010-11-01 15:09:05 +01:00
Stefan Kost
d8167e3071
various (gst): add a missing G_PARAM_STATIC_STRINGS flags
2010-10-13 18:00:28 +03:00
Wim Taymans
9f8b56b974
h264depay: always mark the codec_data as keyframe
...
We need to mark the codec_data as a keyframe or else downstream decoders might
decide to skip it, waiting for a keyframe.
Fixes #631996
2010-10-13 11:48:49 +02:00
Thijs Vermeir
bcde8c1b29
rtpmpvpay: fix timestamping of rtp buffers
...
Incomming buffer is only pushed on the adapter at the end of the
handle_buffer function. But duration/timestamp of this buffer is already
taken into account for the current data in the adapter. This leads to
wrong rtp timestamps and extra latency.
2010-10-12 15:17:02 +02:00
Sebastian Dröge
a4c27169b6
rtp: Fix unitialized compiler warnings on OS X build bot
...
These warnings are wrong though, the variables are only used in
the cases where they *are* initialized by the bit reader.
2010-10-04 09:39:59 +02:00
Sebastian Dröge
c1877deee0
rtpg722pay: Fix uninitialized variable compiler warning
...
The clock rate is always 8000 Hz according to the RFC and
the sampling rate must always be 16000 Hz.
2010-10-03 23:49:08 +02:00
Wim Taymans
78e4a260b4
rtp: add G722 pay and depayloader
2010-09-30 18:34:36 +02:00
Wim Taymans
f5c65a919f
rtph264depay: refactor and simplify AU merging
...
Move the processing of the NALU to a separate method.
Simplify the merging of NALU into AU and use common code when possible.
2010-09-22 12:41:23 +02:00
Wim Taymans
9cc24e1b94
rtppay: some printf format fixes
2010-09-17 11:07:02 +02:00
Wim Taymans
604c6555a4
rtpjpegpay: cleanups for DRI markers
...
Protect against invalid DRI markers.
do some cleanups
2010-09-13 17:31:35 +02:00
American Dynamics
0f3151c73b
gstrtpjpegpay: Added Define Restart Interval (DRI) Marker
...
Added ability to detect and respond to a JPEG-defined DRI marker
2010-09-13 16:47:23 +02:00
Mark Nauwelaerts
d8a27ebe3e
rtpmparobustdepay: fix some mis-implementation
...
Also add some debug.
2010-09-10 13:26:43 +02:00
Mark Nauwelaerts
81773f9cce
rtpmparobustdepay: properly insert dummy buffers
2010-09-10 13:26:31 +02:00
Stefan Kost
d569cd8195
mp4adepay: small logging cleanup and addition to debug config parsing
2010-09-09 21:49:43 +03:00
Wim Taymans
de4a7fc4c4
rtpjpegpay: improve debugging
2010-09-09 18:48:53 +02:00
Mark Nauwelaerts
075afb6693
rtpmparobustdepay: use valid bitrate for dummy frame
2010-09-09 16:33:29 +02:00
Sebastian Dröge
640cb863d4
rtpjpegpay: Fix uninitialized variable compiler warning
...
Fixes bug #629018 .
2010-09-08 07:13:42 +02:00
Wim Taymans
2ed53fd77f
rtpjpegpay: do some more sanitity checks
...
Protect some more against invalid input.
2010-09-07 16:40:08 +02:00
American Dynamics
a482677a14
jpegpay: handle corrupted jpeg better
...
Protect against corrupted jpeg input.
2010-09-07 15:20:12 +02:00
Wim Taymans
474c013051
rvawdepay: cleanup unused fields
2010-09-07 13:56:54 +02:00
Wim Taymans
6be0c7b762
vrawdepay: handle invalid payload better
...
Make sure we don't read more data than available in the input buffer.
Clip the input data into the output buffer.
2010-09-07 13:56:53 +02:00
Stefan Kost
988f228da7
rtpmp4adepay: grab the sampling arte and put into caps
...
This is needed to be able to mux the received audio into mp4 (in the case of
aac). Fixes #625825 .
2010-09-06 21:54:25 +03:00
Tim-Philipp Müller
22560c473d
rtp: mark constant tables as const
2010-09-06 14:40:02 +01:00
Mark Nauwelaerts
2953801a5f
rtpamrpay: properly support perfect-rtptime
2010-09-06 14:47:05 +02:00
Mark Nauwelaerts
275e352a2e
rtpamrpay: proper duration for multiple frame payload
2010-09-06 14:47:02 +02:00
Mark Nauwelaerts
f5bbc56745
rtpamr(de)pay: support AMR-WB SID frame
2010-09-06 14:46:59 +02:00
Mark Nauwelaerts
d1974e386a
rtpg729pay: properly support perfect-rtptime
2010-09-06 14:46:56 +02:00
Wim Taymans
fadade4d4a
jpegdepay: handle DISCONT and reset state
...
Put a DISCONT event on the next output buffer when the input buffer had a
DISCONT.
Make sure we clear our adapter and reset our state before going to PAUSED.
Free the qtables.
Fixes #626869
2010-09-06 10:23:07 +02:00
Wim Taymans
3ec0d6b245
g729pay: extend from right parent
2010-09-06 10:23:07 +02:00
Wim Taymans
af70b300cc
rtpmp4gpay: implement perfect timestamps
...
Use bitreader for parsing the config string
Reset state variables when going to READY
Parse frame length and use it to keep track of the rtptimestamps
2010-08-04 10:40:24 +02:00
Wim Taymans
29b32853d5
rtph263pdepay: allow more clock-rates as input
...
Although the spec says that the clock-rate should always be 90000, some rtsp
servers send different clock-rates so we must accept then in order to handle
those streams too.
2010-08-04 10:40:24 +02:00
Wim Taymans
d37c5e9021
L16depay: default to 1 channel
...
When we can't find any channel or encoding-params on the caps for dynamic
payload types, set the default number of channels to 1, as the spec says we
should.
See #623209
2010-08-04 10:40:24 +02:00
Wim Taymans
ed80c1834c
L16depay: use encoding-params for the channels
...
When parsing the number of channels, use the encoding-params property from the
RTP caps because that is where we can find the channels according to the spec.
Fall back to the channels property in the caps when needed.
Fixes #623209
2010-08-04 10:39:44 +02:00
Mark Nauwelaerts
f1fe0e7157
rtpg729pay: avoid basertppayload perfect-rtptime mode
...
G729 packets may only occur intermittently (e.g. cn packets), and as such
do not allow for perfect-rtptime calculating rtp times based on frame or byte
count. In particular, do not use rtp audio base payloader as base class, but
rather base payloader directly.
2010-08-02 13:05:05 +02:00
Mark Nauwelaerts
6405df0c50
rtph264pay: fix element leak
2010-08-02 13:04:41 +02:00
Mark Nauwelaerts
fadff26eec
rtpmp4vdepay: fix buffer leak
2010-08-02 13:04:39 +02:00
Mark Nauwelaerts
6a9c70486f
rtph264depay: tweak DELTA_UNIT labeling
...
Consider SPS, PPS and IDR as keyframe, all others as DELTA_UNIT.
See #620154 .
2010-06-16 15:53:45 +02:00
Mark Nauwelaerts
dde3825405
rtph264depay: also consider AU and SEI NALUs as DELTA_UNIT
...
Fixes #620154 .
2010-06-14 11:49:42 +02:00
Stefan Kost
a1da36d5a6
build: include stdio.h for sscanf
2010-06-12 21:26:16 +03:00
Tim-Philipp Müller
97a2111c58
rtpmparobustdepay: don't try to unref NULL buffers
...
Fixes generic/states unit test.
2010-06-11 21:18:52 +01:00
Mark Nauwelaerts
815e06ba55
rtp: add mpa-robust depayloader
...
Fixes #589997 .
2010-06-11 11:45:48 +02:00
Sjoerd Simons
c39e82a1ce
Cope with short startcodes in the h264 bytestream
2010-06-07 10:28:06 +02:00
Tristan Matthews
8e0adba996
gstrtpceltpay: don't always fixate sink caps to 1 channel
...
The getcaps function should not fixate the channels field until we
get the encoding-params field from our srcpad's caps. Fixes #620591
2010-06-05 10:02:35 +02: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
ffc06e17f0
mp4gdepay: calculate the frame duration correctly
...
When we calculate the frame duration, we need to use the amount of
frames in the _previous_ packet, not the current packet. The frame duration is
needed to correctly de-interleave interleaved streams. This fixes the case where
there are a variable number of frames in a packet.
Fixes #620494
2010-06-03 19:39:04 +02: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
Olivier Crête
28f509fdca
rtptheoradepay: make delivery-method parameter optional
...
It probably will not be in the final RFC as it is not in RFC 5215 for Vorbis.
If there is a configuration specified, assume it is in-line and if nothing is
specified, assume it is in-band.
https://bugzilla.gnome.org/show_bug.cgi?id=618386
2010-05-13 12:22:36 +02:00
Wim Taymans
3e4bc043a5
celtpay: fix queue duration calculations
...
Don't blindly add the durations of incomming buffers to the total queued
duration because it might be invalid. Mark the total queued duration invalid
when we receive an invalid incomming timestamp because that's when we lose track
of the total queued duration.
Fixes #618324
2010-05-13 11:30:27 +02:00
Mark Nauwelaerts
4cff2e2c67
rtph264pay: extract SPS and PPS from property provided parameter set
...
... so it can also be regularly inserted into the stream if so configured.
Fixes #617164 .
2010-05-12 10:24:10 +02:00
Tim-Philipp Müller
c209a6ab40
rtp: dist missing header file to fix make distcheck
2010-05-11 20:26:37 +01:00
Olivier Crête
34d0d59142
rtph264pay: Re-send SPS/PPS when requested
...
https://bugzilla.gnome.org/show_bug.cgi?id=606689
2010-05-10 15:07:09 +02:00
Mark Nauwelaerts
90311e522f
rtph264pay: fix typo in debug message
2010-05-10 13:35:55 +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
14b14fdf7a
rtptheoradepay: fix in-band configuration parsing
...
Also make configuration header parsing a bit more relaxed with respect
to length field interpretation.
2010-05-10 13:35:50 +02:00
Mark Nauwelaerts
b899afaeb6
rtpvorbisdepay: fix in-line configuration parsing
...
Also make configuration header parsing a bit more relaxed with respect
to length field interpretation.
2010-05-10 13:35:48 +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
Mark Nauwelaerts
220f865f77
rtpmp4vpay: add config-interval parameter to re-insert config in stream
...
Add a new config-interval property to instruct the payloader to insert
config (VOSH, VOS, etc) at periodic intervals in the stream
(when a GOP or VOP-I is encountered).
Based on patch by <marc.leeman at gmail.com>
Fixes #607452 .
2010-05-04 11:19:43 +02:00
Tim-Philipp Müller
c1d24699f5
rtp: fix printf format of some debug messages
2010-05-01 11:25:26 +01:00
Mark Nauwelaerts
be5ffd96fe
rtptheoradepay: also accept in-band configuration
...
Fixes #574416 (theora).
2010-04-30 13:54:56 +02:00
Mark Nauwelaerts
a344cfba27
rtpvorbisdepay: also accept in-line configuration
...
Fixes #574416 (vorbis).
2010-04-30 13:54:52 +02:00
Olivier Crête
7bc3253761
rtptheoradepay: Ignore packets without a known codebook
...
Don't produce an error if a packet is received without a valid codebook,
it's possible that the codebook will just be coming later.
See #574416 .
2010-04-30 13:54:50 +02:00
Mark Nauwelaerts
6bf7f5cfd3
rtph264depay: DELTA_UNIT marking of output buffers
...
... which evidently makes (most) sense if output buffers are
actually frames.
Partially based on a patch by
Miguel Angel Cabrera <mad_aluche at hotmail.com>
Fixes #609658 .
2010-04-30 13:50:03 +02:00
Mark Nauwelaerts
0206b67b1d
rtph263depay: extra keyframe info from PTYPE header
...
... as opposed to taking it from h263 payload header, which need not
be so reliable.
Fixes #610172 .
2010-04-30 13:50:00 +02:00
Mark Nauwelaerts
fe9e6d82ee
rtph263depay: also use Picture Start Code to detect packet loss
...
This ensures a whole frame is dropped if a (start) packet is lost,
rather than relying only on the DISCONT flag.
2010-04-30 13:49:57 +02:00
Mark Nauwelaerts
84ac277add
rtph263depay: detect frame start using Picture Start Code
...
So we stop dropping fragments as soon as there is a picture start (code).
In particular, this prevents dropping the first frame following
initial DISCONT.
2010-04-30 13:49:54 +02:00
Mark Nauwelaerts
e7903311f5
rtph263depay: handle a few FIXMEs
2010-04-30 13:49:51 +02:00
Mark Nauwelaerts
3692bbb7ae
rtph263depay: slightly refactor payload dropping
2010-04-30 13:49:47 +02:00
Mark Nauwelaerts
a08f76a92e
rtph263pay: use found GOBs to apply Mode A payloading
...
... rather than falling back to sending the whole frame in one packet
if number of GOB startcodes < maximum.
One might take this further and still perform Mode B/C payloading,
but at least this should cater for decent fragments in typical cases.
Fixes #599585 .
2010-04-30 13:49:43 +02:00
Wim Taymans
754007b344
qcelpdepay: add first version of a QCELP depayloader
2010-04-29 18:07:10 +02:00
Mark Nauwelaerts
e053a89c21
rtph264depay: profile-level-id is an optional parameter
...
So, if needed, extract the corresponding info from
sprop-parameter-sets.
Based on patch provided by <dxssx at gmail.com>
Fixes #612657 .
2010-04-16 12:14:26 +02:00
Stefan Kost
6772badb88
docs: enable the 2 of 65 rtp elements in the docs
2010-04-08 17:19:41 +03:00
Marco Ballesio
2ff1558a87
h264depay: handle properly STAPs
...
in rtph264depay.c, lines 577-576, NALU-type 24 (Single-Time Aggregation
Packet) is handled in fall-through as NALU-type 26 (unhandled).
This leads high quality h264 streams such as:
rtsp://stream.yle.mobi/yle/areena/MEDIA_E0342657_p3.mp4
to fail with "NAL unit type 24 not supported yet" (but it's actually
supported), and thus to close any stream which contains STAPs.
The proposed one-liner patch fixes the issue.
Fixes #615051 .
2010-04-07 16:17:06 +03:00
Benjamin Otte
412cc10314
Add -Wold-style-definition flag
...
And fix the warnings
2010-03-21 15:17:46 +01:00
Benjamin Otte
3f511ec361
Add -Wwrite-strings to the configure flags
...
... and fix all warnings
2010-03-21 14:17:47 +01:00
Wim Taymans
b019a78ab8
h264pay: fix config-interval property
...
Use the same units for comparing the elapsed time against the interval.
Fixes #613013
2010-03-19 17:13:07 +01:00
Tim-Philipp Müller
073201b329
build: Makefile.am cleanups
...
Mostly add $(GST_BASE_CFLAGS) where it was missing, but also fix up
order of flags and libs if needed (see docs/random/moving-plugins).
2010-03-18 21:34:24 +00:00
Benjamin Otte
cccfeaa59c
gst_element_class_set_details => gst_element_class_set_details_simple
2010-03-18 14:32:00 +01:00
Mark Nauwelaerts
fd5164af96
rtph264depay: do not call _push_ts with unneeded (and wrong) time parameter
...
Fixes #613206 .
2010-03-18 12:43:14 +01:00
Benjamin Otte
1055aaa9cb
Add -Wredundant-decls warning flag
...
Also fix compile issues
2010-03-17 19:35:10 +01:00
Benjamin Otte
3342b1679e
Add -Wmissing-declarations -Wmissing-prototypes warning flags
...
And fix all the warnings.
2010-03-17 18:23:28 +01:00
Wim Taymans
7e363149f3
mp4gdepay: improve constantDuration guessing
...
When no constantDuration has been given in the caps, try to derive one from the
timestamp difference between packets. Also keep doing this for each packet
because some broken streams might simply provide wrong timestamps.
2010-03-17 16:27:13 +01:00
Wim Taymans
cabe01ef95
Revert "rtph263depay: baseclass handles timestamps for us"
...
This reverts commit 564581e1b8
.
If we don't call push_ts, there will be no timestamp at all on the outgoing
buffer.
Fixes #612154
2010-03-08 17:48:27 +01:00
Wim Taymans
968c981e74
h263pay: fix typo in debug
2010-03-08 17:47:14 +01:00
Wim Taymans
3a09d334a0
rtpmp4gdepay: avoid division by 0
...
Avoid a division by 0 when no constantDuration was specified and when out two
timestamps are equal.
Fixes #610265
2010-02-23 12:58:03 +01:00
Wim Taymans
e43839eae9
dvdepay: don't output frames until we have a header
...
Wait for the complete first 6 header DIF packets before outputting a frame.
Decoders need this info to correctly decode the data.
Fixes #610556
2010-02-23 12:54:36 +01:00
Wim Taymans
ad6d4540a7
rtppay: don't ignore result from set_outcaps
...
set_outcaps can fail and we need to propagate the result upstream.
2010-02-12 13:53:58 +01:00
Mark Nauwelaerts
71e35b2bf3
rtpspeexpay: fix occasional buffer leak
...
Fixes #608255 .
2010-01-27 17:05:34 +01:00
Olivier Crête
9afc247906
rtpg729pay: ptime should is in nanoseconds
...
https://bugzilla.gnome.org/show_bug.cgi?id=607403
2010-01-21 10:54:14 +01:00
Wim Taymans
1f6b06ce66
rtph264pay: scale spspps_interval to milliseconds
...
The spspps_interval is kept in seconds. Convert it to milliseconds before
comparing it to another value in milliseconds.
2010-01-20 16:29:57 +01:00
Wim Taymans
95333115cd
rtph264pay: rename spspps-interval property
...
Rename the spspps-interval property to config-interval because it is nicer.
2010-01-20 15:44:40 +01:00
Olivier Crête
c4fa559f15
rtph264pay: Don't set profile-level-id in out caps
...
The profile-level-id represents restrictions on what can be sent, it does not
describe the stream. So it should be reflected in the sink caps of the
payloader, not the src caps.
https://bugzilla.gnome.org/show_bug.cgi?id=607353
2010-01-19 13:47:38 +01:00
Olivier Crête
7a0590b1f1
rtph264pay: Don't ignore the return value from set_outcaps
...
https://bugzilla.gnome.org/show_bug.cgi?id=607353
2010-01-19 13:35:37 +01:00