Sebastian Dröge
3110b7cc31
Revert "videomixer2: Take into account new segments"
...
This reverts commit 84ae670ab4
.
Actually this is not how it is supposed to work. videomixer
creates a [0,-1] segment and then puts frames of the different
streams there based on their running times in their own segments.
2013-05-09 16:26:19 +02:00
Mathieu Duponchelle
84ae670ab4
videomixer2: Take into account new segments
...
Also forward the event downstream on the next opportunity.
https://bugzilla.gnome.org/show_bug.cgi?id=699793
2013-05-09 16:18:54 +02:00
Tim-Philipp Müller
643450c9b8
Revert "gstrtspsrc: set buffer-size for multicast buffers"
...
This reverts commit 2481e95d03
.
This is already done five lines above, it was added a year
ago in commit 561b131e
.
2013-05-09 09:09:59 +01:00
Nicolas Dufresne
2d53229a86
audiowsinclimit: Frequence property renamed cutoff
...
Updating the documentation to reflect this change.
See: https://bugzilla.gnome.org/show_bug.cgi?id=699964
2013-05-09 08:46:04 +02:00
Aha Unsworth
2481e95d03
gstrtspsrc: set buffer-size for multicast buffers
...
For receiving video data via RTSP when the video is sent via
multicast there is no way to specify the udpsrc buffer-size.
On windows the native network buffer is not large and with video
i-frames being huge the buffer is to small and you get i-frame corruption,
it looks terrible, and there is no (easy) way to set the udpsrc buffer-size.
https://bugs.freedesktop.org/show_bug.cgi?id=52264
2013-05-08 16:57:53 -03:00
Sebastian Dröge
1588cda9a1
videomixer2: Send stream-start before caps event
...
https://bugzilla.gnome.org/show_bug.cgi?id=699895
2013-05-08 16:02:46 +02:00
Thiago Santos
a0e934e72e
qtdemux: push new caps events when caps change
...
Whenever the demuxer has a new caps on a stream, it should set the
new_caps variable to true and a new caps event will be pushed before
the next buffer
2013-05-07 19:29:17 -03:00
Thiago Santos
725faab590
qtdemux: do not push discont buffers if they aren't discont
...
qtdemux takes its buffers from a GstAdapter. Those buffers are created
from the larger buffer that it obtained from upstream and they carry
the same flags, including DISCONT if it is set. In these cases, all
buffers that qtdemux is going to push would be marked as DISCONT.
This scenario can make parsers/decoders flush on every buffer leading
to no decoding at all hapenning. This patch prevents this by unsetting
the flag if it shouldn't be set.
2013-05-07 19:29:17 -03:00
Thiago Santos
4d073beeee
qtdemux: some code cleanup for mss handling code
...
* Explicitly init variables for fragmented formats at init
* Do not use GstClockTime type if the variable isn't a timestamp
* Fix a style/readability issue at an if block
* Group 2 mss mode conditional blocks together to improve readability
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:29:17 -03:00
Thiago Santos
d1b91c755c
qtdemux: avoid storing non-time newsegments to push later
...
This can confuse downstream when they get a byte segment after receiving
the natural time segment from qtdemux that it sends when starting to
push buffers. This is specially the case with parsers that try to
convert the position from byte to time format and might miss the
correct position for playback to start.
2013-05-07 19:29:17 -03:00
Thiago Santos
895525b5cb
qtdemux: avoid setting fields to non-writable caps
2013-05-07 19:29:17 -03:00
Wim Taymans
544d926732
qtdemux: don't send so many segment events
...
Only send one segment event in the beginning of the stream, not
after each moov and moof atom.
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:29:17 -03:00
Wim Taymans
d9cd4fcc17
qtdemux: place incomming timestamps on output
...
Place the incomming timestamp (if any) directly onto the outgoing buffers
and interpollate other timestamps.
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:29:17 -03:00
Thiago Santos
cca2f555d1
qtdemux: improve reset of internal status
...
Reset different variables on state changes to ready and when
handling a flush-stop. For handling flush stops we should check
if there is an upstream adaptive demuxer driving the pipeline as this
means that qtdemux will get a new moov atom. For 'standard' isomedia
streams this isn't true and qtdemux should keep the previous moov
information around.
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:29:17 -03:00
Thiago Santos
6c69e59677
qtdemux: prepare qtdemux to accept multiple dash moovs in a row
...
Whenever dashdemux switches bitrates it sends a new moov with the
new stream configuration. qtdemux should now handle this by splitting
the exposing and configuration of streams into separate functions. When
the stream is new it is configured and exposed, when it is a new bitrate
of an existing stream it is only reconfigured.
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:25:30 -03:00
Andre Moreira Magalhaes (andrunko)
2a7d3d1598
qtdemux: Move FLUSH_STOP/PAUSED_TO_READY handling to a reset method.
...
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:18:03 -03:00
Louis-Francis Ratté-Boulianne
d499b461da
qtdemux: Remove old pads when exposing streams and other general fixes.
...
Conflicts:
gst/isomp4/qtdemux.c
2013-05-07 19:18:03 -03:00
Thiago Santos
a3c19eeea1
qtdemux: handle mss streams
...
smoothstreaming streams should be handled as a special kind of
fragmented isomedia. In MSS the fragments will not contain a
'moov' atom with the media descriptions, this has to be extracted
from the caps.
Additionally, there should be another demuxer upstream that is likely
going to be the one to answer/act on queries and events, so qtdemux has
to forward those upstream.
2013-05-07 19:18:03 -03:00
Sebastian Rasmussen
9532b04947
rtpgstpay: fix invalid memory access in event handler
...
First process event in payloader, then hand it to the
base class which takes ownership of the event.
https://bugzilla.gnome.org/show_bug.cgi?id=699637
2013-05-04 10:49:23 +01:00
Tim-Philipp Müller
68ac392e8f
ac3parse, dcaparse: check buffer size before trimming
...
and unref old buffer as soon as possible.
2013-05-04 10:08:47 +01:00
Andoni Morales Alastruey
3462282b83
dcaparse: add support for "audio/x-private1-dts"
2013-05-03 13:44:23 +02:00
Andoni Morales Alastruey
4531381541
ac3parse: add support for "audio/x-private1-ac3"
2013-05-03 13:44:23 +02:00
Andoni Morales Alastruey
4a78a77e65
rtp: fix duplicated symbols with libvpx
2013-05-02 14:03:33 +02:00
Andoni Morales Alastruey
584fdbad84
goom2k1: fix duplicated symbols with goom
2013-05-02 14:03:26 +02:00
Sebastian Dröge
ae05ed4f05
rtph264pay: If the adapter is empty on EOS don't try to map its content
...
https://bugzilla.gnome.org/show_bug.cgi?id=699314
2013-05-01 15:49:45 +02:00
Ognyan Tonchev
0584d5c4c9
matroskademux: add stream-format=raw to aac caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=699303
2013-05-01 15:47:15 +02:00
Tim-Philipp Müller
7ccb387e85
udp: log WARNING debug message if UDP multicast is likely to be broken
2013-04-27 11:25:12 +01:00
Tim-Philipp Müller
4273eccace
udpsrc: add includes to get socklen_t defined on Windows
...
https://bugzilla.gnome.org/show_bug.cgi?id=692400
2013-04-27 11:16:54 +01:00
Yury Delendik
4bc06859d1
qtdemux: add support for VP6F VP6 flash codec
...
https://bugzilla.gnome.org/show_bug.cgi?id=699010
2013-04-27 09:39:45 +01:00
Edward Hervey
3e5ad52c0d
monoscope: Fix debug statement
2013-04-26 12:16:49 +02:00
Alexander Schrab
3ec9673dfc
mulawdec: change base class to GstAudioDecoder
...
https://bugzilla.gnome.org/show_bug.cgi?id=698894
2013-04-26 08:46:34 +02:00
Mathieu Duponchelle
6b153ce385
videomixer: send stream-start event.
2013-04-25 16:09:34 -03:00
Wim Taymans
1df2e623b5
docs: add some pay/depayloaders
...
See https://bugzilla.gnome.org/show_bug.cgi?id=551631
2013-04-25 14:05:55 +02:00
Sebastian Dröge
fb0384fa0d
mulaw: Some minor memleak fixes and cleanup
2013-04-25 12:44:15 +02:00
Alexander Schrab
f0edb5fb70
mulawenc: change to gstaudioencoder base, added bitrate tags
2013-04-25 12:36:15 +02:00
Sebastian Dröge
b1af93f791
(multi)udpsink: Use separate sockets for IPv4 and IPv6
...
https://bugzilla.gnome.org/show_bug.cgi?id=534243
2013-04-25 12:12:23 +02:00
Sebastian Dröge
0b552150ce
dynudpsink: Use separate sockets for IPv4 and IPv6
...
https://bugzilla.gnome.org/show_bug.cgi?id=534243
2013-04-25 12:09:27 +02:00
Sebastian Dröge
ed8ea46424
udp: Don't include removed gstudp.h in noinst_HEADERS
2013-04-25 10:43:56 +02:00
Sebastian Dröge
afb284e3a9
udp: Remove unused enum type
2013-04-25 09:16:14 +02:00
Sebastian Dröge
a957457cc1
udp: Use the generic marshaller instead of generating marshallers
2013-04-25 09:13:51 +02:00
Sebastian Dröge
07d3363436
udpsrc: Rename instance variable from host to multi_group
...
This is more consistent as it's used for the multicast-group property.
2013-04-25 09:07:41 +02:00
Sebastian Dröge
427673d283
udpsrc: Add bind-address property
...
This is equivalent to multicast-group currently for backwards compatibility.
In 2.0 this should be handled separately, the former only being the multicast
group and the latter always being the address the socket is bound to, even if
a multicast group is given.
2013-04-25 09:05:12 +02:00
Wim Taymans
5ba3fd3c63
vrawdepay: return output buffer from process
...
Return the output buffer from the process function instead of pushing
it ourselves. This way, the subclass can actually deal with the return
value of the push.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693727
2013-04-24 16:24:25 +02:00
Wim Taymans
eac9efb92e
rtp: a marker bit should translate to RESYNC
...
A marker bit on an audio packet does not mean a DISCONT (in the GStreamer sense
of missing data) but it means that the packet is the end of a talkspurt and thus
a good opportunity to resync to the clock. Use the RESYNC buffer flag to note
this.
Real discontinuities are marked with DISCONT still when the seqnum has a GAP or
when the input buffer has the DISCONT flag set.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=627204
2013-04-24 15:42:45 +02:00
Sebastian Dröge
fdb667ae00
rtpjpegdepay: Drop frame if it's less than 2 bytes large
...
https://bugzilla.gnome.org/show_bug.cgi?id=677560
2013-04-22 10:19:29 +02:00
Sreerenj Balachandran
504360fe36
autodetect: use _plugin_feature_rank_compare API instead of duplicating the code.
2013-04-18 14:00:06 +02:00
Olivier Crête
24bb263d54
videomixer: Don't unref query, we don't own it
...
Fixes double-unref bug. Bug found by Youness Alaoui
2013-04-16 19:29:48 -04:00
Sebastian Dröge
b0b0557c48
gst: Add better support for static plugins
2013-04-15 15:54:11 +02:00
Andoni Morales Alastruey
2ea9a66dd5
goom2k1: fix duplicated symbol with goom
2013-04-15 08:43:05 +02:00
Wim Taymans
9d7519f66e
rtp: register tag image types
...
The rtpgstdepay needs the type to be available in order to deserialize the
event.
2013-04-12 16:18:42 +01:00
Wim Taymans
b1f4587d75
rtpgstdepay: handle event parse failures better
2013-04-12 16:18:42 +01:00
Anton Belka
b959d827be
wavenc: add TOC setter support
2013-04-12 14:35:47 +02:00
Stefan Sauer
f4577ff492
wavenc: small cleanups for toc handling
...
Don't add empty labl/note chunks. Always pass instance as the first param. Add more logging.
2013-04-12 14:35:47 +02:00
Sebastian Dröge
b17750ed9e
rtspsrc: Proxy the ntp-sync property of rtpbin
2013-04-12 12:58:50 +02:00
Sebastian Dröge
53dae1585e
rtspsrc: Give the manager always the name "manager"
...
This allows to use the GstChildProxy interface to adjust
properties on it.
2013-04-12 12:51:05 +02:00
Anton Belka
bda2703e88
wavenc: add 'note' chunk support
2013-04-11 20:47:18 +02:00
Wim Taymans
f8013487c9
rtspsrc: add support for NetClientClock
...
When the server suggests a GstNetTimeProvider in the SDP, set up a
GstNetClientClock that slaves to the remote clock and suggest this clock in
provide_clock.
2013-04-11 15:00:05 +01:00
Wim Taymans
f96aa414e1
udpsink: avoid alloc and free in render function
...
Avoid doing alloc and free in the render function for each buffer. Instead,
allocate the needed arrays in _init and use those.
2013-04-11 14:57:11 +01:00
Stefan Sauer
48b9919e31
waveparse: remove superfluous g_list_first() calls
...
The variables already point to the start of the list.
2013-04-10 14:25:24 +02:00
Andreas Fenkart
20d3ec8810
rtpsbcdepay: fix sbc frame length calculation for mono and stereo modes
...
https://bugzilla.gnome.org/show_bug.cgi?id=697463
2013-04-09 23:17:57 +01:00
Anton Belka
5ae92ce770
wavparse: add 'note' chunk support
...
Add 'note' chunk support in TOC as GST_TAG_COMMENT
https://bugzilla.gnome.org/show_bug.cgi?id=696549
2013-04-09 22:58:27 +02:00
David Schleef
a55ccff854
qtdemux: check value inside enda to set endianness
2013-04-09 13:30:17 -07:00
Wim Taymans
ece73b786a
icydemux: avoid copy when we can
2013-04-09 17:34:12 +02:00
Wim Taymans
91a3afc4dc
gstpay: use bufferlist to avoid memcpy
2013-04-09 16:53:31 +02:00
Wim Taymans
3d7d757521
udpsink: improve debug
2013-04-09 16:53:31 +02:00
Alexander Schrab
79d5a7d03c
wavparse: error out if we receive eos before any valid data
...
https://bugzilla.gnome.org/show_bug.cgi?id=696684
2013-04-09 00:27:31 +01:00
Matej Knopp
67c2219687
deinterlace: force deinterlacing in "interlaced" mode
...
https://bugzilla.gnome.org/show_bug.cgi?id=697467
2013-04-07 20:48:21 +01:00
Nicola Murino
c41c16424d
rtpsbcdepay: fix printf format compiler warnings
...
https://bugzilla.gnome.org/show_bug.cgi?id=697343
2013-04-05 13:50:19 +01:00
Stefan Sauer
b79f667ef4
level: resync on discont
...
Drop pending data on discont and start a new cycle with a new base timestamp.
Cleanup some variables.
2013-04-04 22:49:49 +02:00
Olivier Crête
f8831c0cd2
rtpsbcdepay: Rank as secondary
...
This way, it will be selected by decodebin
Bug reported by andreas.fenkart@streamunlimited.com
https://bugzilla.gnome.org/show_bug.cgi?id=697227
2013-04-03 18:25:36 -04:00
Stefan Sauer
2e56032031
level: subdivide buffers for sample accurate interval handling
...
Previously we would skip level message when processing buffers > the requested
interval. Also the message frequency would contain quite some jitter due to only
considering them at the end of buffers.
Cleanup the tests while we're at it.
2013-04-03 21:40:17 +02:00
Stefan Sauer
b062171dda
spectrum: remove old since comment
2013-04-03 20:30:08 +02:00
Sebastian Dröge
d80ff8e7f3
rtspsrc: Proxy the multicast-iface property of udpsrc
2013-04-03 17:53:13 +02:00
Olivier Crête
6f3734c305
rtpssrcdemux: Only forward stick events while holding the sinkpad stream lock
...
Otherwise we get a race where if the RTCP packet comes in first and while
it is added the pads, the segment event arrives on the RTP stream, the event
may be lost completely and never forwarded.
2013-04-02 23:42:42 -04:00
Olivier Crête
76679f9ae9
rtpssrcdemux: No need to explicitely forward the caps
...
They are forwarded with the other events
2013-04-02 23:42:41 -04:00
Olivier Crête
4ad8693f3c
rtpssrcdemux: Remove unused GstSegment
2013-04-02 23:42:41 -04:00
Olivier Crête
7293b0eff7
rtpssrcdemux: Simplify event forwarding
...
Use the gst_pad_forward() mechanic, this way we won't miss pads that are
added while we are pushing
2013-04-02 23:42:41 -04:00
Olivier Crête
f4c3aef13a
rtpssrcdemux: Don't cross the internal links
...
We had the wrong condition to check for the internal links, so RTP and RTCP
pads got crossed!
2013-04-02 23:42:41 -04:00
Tim-Philipp Müller
078ff16abe
matroskademux: fix some debug messages
2013-04-03 00:49:37 +01:00
Arnaud Vrac
00b46b4744
matroskademux: handle TrueHD audio codec id
...
https://bugzilla.gnome.org/show_bug.cgi?id=697113
2013-04-02 22:47:54 +01:00
Wim Taymans
ac2bcfa833
theorapay: add delta-unit to output frames
2013-03-31 19:14:04 +02:00
Matej Knopp
5686512b77
qtmux: use timestamp delta as duration if possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=696437
2013-03-30 15:18:45 -07:00
Josep Torra
509631f60b
rtp: fixes debug message printf related compiler warnings in SBC depayloader
2013-03-30 09:44:41 +01:00
Arun Raghavan
87bdad4bfc
rtp: Add an rtpsbcdepay element
...
Pretty straightforward - takes SBC encapsulated in RTP, depayloads, and
pushes out SBC buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-03-28 17:22:33 +00:00
Tim-Philipp Müller
477cc51fe7
rtp: fix SBC payloader
...
Init RTP buffer on stack correctly, so mapping it works
without criticals and the payloader actually works.
2013-03-27 22:18:34 +00:00
David Schleef
53f8b05b08
Use %03u for format in gst_pad_create_stream_id_printf()
2013-03-25 18:57:08 -07:00
Sebastian Dröge
56062768af
capssetter: Prevent unneeded caps copying and allocation
2013-03-25 10:12:03 +01:00
Dirk Van Haerenborgh
766c5b22ed
capssetter: Pass any or filter caps upstream
...
capsetter accepts anything and just forwards different caps,
as such it should return ANY caps on the sinkpad.
https://bugzilla.gnome.org/show_bug.cgi?id=693005
2013-03-25 10:11:32 +01:00
Tim-Philipp Müller
35769f7c5d
wavparse: expose CUE sheet items as tracks not chapter entries in TOC
...
https://bugzilla.gnome.org/show_bug.cgi?id=677306
2013-03-24 17:55:55 +00:00
Tim-Philipp Müller
163a7afa1a
wavenc: add some example pipelines
2013-03-23 12:59:26 +00:00
Anton Belka
e808173483
wavenc: add TOC support
...
https://bugzilla.gnome.org/show_bug.cgi?id=680998
2013-03-23 12:55:08 +00:00
Matej Knopp
f29e62c131
qtdemux: make empty subtitle buffer recognition more robust
...
https://bugzilla.gnome.org/show_bug.cgi?id=696244
2013-03-23 11:24:23 +00:00
David Schleef
c0443a17c4
qtmux: Fix test regression with one buffer streams
2013-03-22 15:14:15 -07:00
David Schleef
5bd2864101
qtdemux: split large raw audio samples
...
In order to deal with a file that has samples that are 24 seconds
long. Seeking still doesn't work with such files.
2013-03-22 14:14:05 -07:00
David Schleef
364433c105
qtmux: Remove documentation for dts-method
2013-03-22 14:14:04 -07:00
David Schleef
6571e388be
qtmux: deprecate dts-method property
2013-03-22 14:14:04 -07:00
David Schleef
ee56a7cb99
qtmux: Fix problems causing bad durations in file
...
- Fix up out-of-order incoming DTS values.
- Fix duration of initial sample.
2013-03-22 14:14:04 -07:00
David Schleef
816e186029
qtmux: fix all timestamps once first_ts is determined
2013-03-22 14:14:04 -07:00
David Schleef
258c40c6dd
qtmux: Use PTS/DTS from incoming buffers
...
Remove old DTS guessing code.
2013-03-22 14:14:04 -07:00
Nicola Murino
709f05234f
qtmux: expose mulaw caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=696052
2013-03-22 20:08:06 +00:00