Commit graph

6059 commits

Author SHA1 Message Date
Maria Giovanna Chiossa
561b131e1a rtspsrc: also set UDP buffer size in multicast
Also set the UDP buffer size in multicast mode.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=675448
2012-07-19 15:26:36 +02:00
Tim-Philipp Müller
f879e4e0f0 avidemux: fix header parsing in push mode
Fix 'break' that got warped to the wrong place,
probably as part of a merge. Fixes GST_IS_BUFFER
criticals in parse_idit() when being accidentally
passed a NULL buffer because of the missing break.

gst-launch-1.0 playbin uri=http://docs.gstreamer.com/media/sintel_trailer-480i.avi
2012-07-18 23:43:59 +01:00
Wim Taymans
ac2a366a12 update for ghostpad changes 2012-07-18 18:07:02 +02:00
Sebastian Dröge
9fdcad4aee matroskademux: Pass seek rate to upstream seek events in push mode
Fixes bug #679435.

Conflicts:
	gst/matroska/matroska-demux.c
2012-07-18 11:40:56 +02:00
Wim Taymans
51371d26ee update for RTP buffer api changes 2012-07-17 16:38:27 +02:00
Patricia Muscalu
d38ac43a27 rtph264pay: use buffer lists
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679994
2012-07-17 10:10:14 +02:00
Sebastian Dröge
b01cf1561c flacparse: Fix parsing of ISRC from the cuesheets 2012-07-17 10:01:54 +02:00
Anton Belka
ffc204e6bd flacparse: add TOC support
Add support embedded cuesheets in flac files.
Parsing METADATA_BLOCK_CUESHEET as TOC.

https://bugzilla.gnome.org/show_bug.cgi?id=540891
2012-07-17 09:58:07 +02:00
Mark Nauwelaerts
a94d5d9f3b flacparse: avoid some more frame misparsing by additional header sanity check
... using a required constant blocking_strategy bit.

https://bugzilla.gnome.org/show_bug.cgi?id=679807
2012-07-13 15:37:18 +02:00
Edward Hervey
f063e40af7 demux: Push STREAM_START event when needed 2012-07-13 13:51:48 +02:00
Stefan Sauer
0cff483bd7 qtmux: avoid warning if both ts are equal 2012-07-11 13:54:00 +02:00
Tim-Philipp Müller
80245e2a70 multiudpsink: check the right size when warning about too large udp packets
What matters is the total size, not the size of any of the
individual memory chunks that make up the packet.
2012-07-11 12:31:13 +01:00
Wim Taymans
ab77c424be autodetect: proxy ts-offset properties
Proxy the ts-offset property in the audio*sink elements.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679343
2012-07-10 14:38:21 +02:00
Wim Taymans
2052cabdc4 fix for allocator API changes 2012-07-09 16:28:41 +02:00
Mark Nauwelaerts
f1b435d1b5 update for riff field rename 2012-07-09 12:53:47 +02:00
Tim-Philipp Müller
c6224443a4 rtph264pay: avoid some relocations 2012-07-06 19:11:02 +01:00
Tim-Philipp Müller
3ef35ecdbc rtpmp4vpay: remove deprecated send-config property
Use config-interval instead.
2012-07-06 14:49:18 +01:00
Tim-Philipp Müller
cd1da84bcc rtph264depay: remove deprecated "byte-stream" and "access-unit" properties
These will be picked automatically based on downstream caps now, so
if you want the depayloader to output a specific format, make sure
the element downstream advertises that preference or use a capsfilter
after the depayloader to force it.
2012-07-06 14:46:22 +01:00
Tim-Philipp Müller
cffbf8cfc3 rtph264pay: remove deprecated and non-functional "profile-level-id" property
This is now optionally taken from downstream caps, so can be
specified via a capsfilter after the payloader.
2012-07-06 14:46:22 +01:00
Mark Nauwelaerts
400bdee601 aacparse: perform additional sanity check before confirming ADTS format
... and tweak confusing debug message.
2012-07-06 15:29:37 +02:00
Mark Nauwelaerts
986286a8ea aacparse: remove unhelpful stray debug message 2012-07-06 15:29:28 +02:00
Tim-Philipp Müller
c22268b5d3 rtpsession: remove deprecated and unused "ntp-ns-base" property 2012-07-06 13:16:00 +01:00
Tim-Philipp Müller
c60625a5e4 docs: update isomp4 docs for gppmux -> 3gppmux change as well 2012-07-06 12:57:34 +01:00
Tim-Philipp Müller
cf9b2149dd isomp4: remove gppmux, which was deprecated in favour of 3gppmux 2012-07-06 12:54:02 +01:00
Tim-Philipp Müller
1cb8295bb0 smtp: remove deprecated "fps" property 2012-07-06 12:49:54 +01:00
Tim-Philipp Müller
080cbf322f multipartdemux: remove deprecated and unused "autoscan" property
Replaced by boundary=NULL.
2012-07-06 12:46:30 +01:00
Tim-Philipp Müller
48706beb70 rtph263ppay: accept any h263 input unless downstream forces specific requirements
rtph263ppay should accept any input compatible with its sink template
caps if it just outputs to e.g. udpsink or fakesink.

rtph263ppay ! rtph263pdepay should also work with any compatible input.
This would fail before with not-negotiated errors because the get_caps
function would see the encoding-name in the depayloader's template caps
and default to baseline H.263 because there's no profile/level information
in those caps, which is the right thing to do if downstream has filtercaps
from an SDP, but not if those fields are absent because they can be
anything like with the depayloader's template caps. Makes

  videotestsrc ! avenc_h263p ! rtph263ppay ! rtph263pdepay ! fakesink

work.
2012-07-06 11:57:38 +01:00
Wim Taymans
8eadb9c12c update for query api changes 2012-07-06 11:26:46 +02:00
Sebastian Dröge
aeafc3a093 gst: Implement segment-done event 2012-07-05 13:13:09 +02:00
Sebastian Dröge
2e90ff9bb9 matroskademux: Remove the TOC query handling 2012-07-05 12:35:49 +02:00
Sebastian Dröge
04e0bbef17 matroska: Update for new GstToc API
TOC support in matroskamux is disabled for now as it was broken anyway.
2012-07-05 12:28:59 +02:00
Tim-Philipp Müller
8098a2f0b2 imagefreeze: clear 0 DTS on buffers output, as sinks will prefer DTS over PTS for syncing
Since the initial decoded still image buffer will have dts=pts=0, and
we only set PTS on buffers we push out, all buffers pushed out would
have a DTS of 0. Sinks, however, will prefer DTS over PTS if both are
set, and will therefore always see a timestamp of 0 no matter what
the PTS is set to.

Fixes unit test too.
2012-07-04 19:03:12 +01:00
Tim-Philipp Müller
42cc0d1e48 deinterleave; downgrade caps change failure debug message
Add some more info and downgrade to warning, so
it doesn't look like the unit test failed.
2012-07-03 19:44:26 +01:00
Tim-Philipp Müller
0fa3992e37 audiopanorama: fix negotiation and unit test
Must remove a possibly-fixed channel-mask field if
we're going to set unfixed channels on the structure,
or a different channel count.
2012-07-03 17:54:22 +01:00
Sebastian Dröge
407bf06dc4 matroskademux: Only push the TOC event, the message is handled by the sinks 2012-07-03 17:34:10 +02:00
Javier Jardón
c740490c26 rtp: remove some outdated comments
https://bugzilla.gnome.org/show_bug.cgi?id=679301
2012-07-03 08:58:26 +01:00
Tim-Philipp Müller
b9d020ac4f rndbuffersize: add push mode support
https://bugzilla.gnome.org/show_bug.cgi?id=656317
2012-06-28 20:05:09 +01:00
David Corvoysier
c06cb7c145 isomp4: Try to seek upstream before processing seek push event
When it receives a seek in push mode, the qtdemux should first try to push the event upstream, and only if upstream fails fall back to
its own seek logic.
2012-06-28 14:44:58 +02:00
David Corvoysier
998534a2a1 isomp4: Allow duration queries to be forwarded upstream
When receiving a duration query for TIME format, try to query upstream, and only if upstream fails fall back to qtdemux duration handling.
2012-06-28 14:44:58 +02:00
Wim Taymans
6d158775bb rtph264pay: cleanups
Use the caps properties for alignment and format.
Remove some old properties, we always want to use bufferlists when we can now.
2012-06-28 12:00:09 +02:00
Wim Taymans
429bda6923 h264pay: prefer AVC, it's easier to parse etc 2012-06-28 11:32:03 +02:00
Tim-Philipp Müller
83cb4c63c3 matroska: update for GstToc API additions 2012-06-26 18:48:11 +01:00
Wim Taymans
e565f0d1ff matroska: set interlace-mode 2012-06-26 17:04:41 +02:00
Tim-Philipp Müller
2c04c30ec3 matroska-mux: update for GstTocSetter changes 2012-06-25 20:11:53 +01:00
Sebastian Dröge
dff2fec970 matroskademux: Return FALSE from queries if we can't answer POSITION/DURATION queries 2012-06-25 13:33:57 +02:00
Anton Belka
c3061f434b matroskademux: Return FALSE from TOC query if no TOC exists instead of an empty TOC 2012-06-25 09:47:59 +02:00
Tim-Philipp Müller
296783908c matroska: update for GstToc API changes 2012-06-24 22:51:16 +01:00
Tim-Philipp Müller
456847c66b rtspsrc: update for gst_element_make_from_uri() changes 2012-06-23 14:57:28 +01:00
Wim Taymans
30d3dfee36 update for task api change 2012-06-20 10:33:42 +02:00
Wim Taymans
dc04908412 update for clock api changes 2012-06-20 10:01:57 +02:00
Matej Knopp
c55e492e80 matroska-demux: Send gap events for subtitle streams 2012-06-19 11:21:52 +01:00
Tim-Philipp Müller
b6da022417 splitfilesrc: fix up docs for 0.11 2012-06-17 01:00:40 +01:00
Tim-Philipp Müller
3b94e44571 splitfilesrc: small uri handler fixup and some more docs
Get URI location using gst_uri_get_location(), so any
escaped bits get unescaped.

https://bugzilla.gnome.org/show_bug.cgi?id=609049
2012-06-17 00:59:54 +01:00
Tim-Philipp Müller
1d659d8e41 splitfilesrc: re-port to 0.11 2012-06-17 00:59:21 +01:00
Bastien Nocera
9b13a29f91 splitfilesrc: Implement splitfile:// URI scheme
https://bugzilla.gnome.org/show_bug.cgi?id=609049

Conflicts:

	gst/multifile/gstsplitfilesrc.c
2012-06-17 00:58:54 +01:00
Wim Taymans
540245894f theoradepay: fix buffer memory
The memory was added to the input buffer instead of the output buffer.
2012-06-14 10:43:56 +02:00
Wim Taymans
694be55c05 rtspsrc: Don't reset time in flush-stop
Don't reset the time in flush-stop. Live sources can do this flush in the
playing state and so the pipeline will never have a chance to update the
base_time of the elements, which only happens when going from paused to
playing.
2012-06-14 08:58:58 +02:00
Vincent Penquerc'h
fe45881a0f deinterlace: send QoS messages when dropping a frame
https://bugzilla.gnome.org/show_bug.cgi?id=657941
2012-06-12 15:40:37 +01:00
Wim Taymans
935472aba7 rtspsrc: Rework the async state handling
Always send the flushing events to the udp elements now that basesrc supports
this. This makes sure a segment event is sent correctly after a flush.
Keep track of the currently executing command and make it possible to specify
what command you want to cancel when starting a new async command.

See https://bugzilla.gnome.org/show_bug.cgi?id=677905
2012-06-12 16:05:40 +02:00
Stefan Sauer
ea17c457f9 childproxy: update api use 2012-06-11 18:24:20 +02:00
Mark Nauwelaerts
8b1da8adb2 matroskademux: always perform full seek if seek is flushing
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677838
2012-06-11 13:12:26 +02:00
Tim-Philipp Müller
17b422137a rndbuffersize: printf format fix for long -> int change 2012-06-11 11:20:18 +01:00
Tim-Philipp Müller
98e415dc9d debug: change rndbuffersize properties from long to int
These should all be int instead of long, to avoid bugs
when passing these as varargs with g_object_set(), and
there was no reason to use long in the first place here.
Fixes FIXME.
2012-06-09 16:53:54 +01:00
Sebastian Dröge
a1948e34d2 elements: Use gst_pad_set_caps() instead of manual event fiddling 2012-06-08 15:54:42 +02:00
Wim Taymans
f65495d405 update for audio api change 2012-06-08 10:11:12 +02:00
Wim Taymans
eb982e4bbe rtspsrc: only reset the manager object when we did a seek
Only reset the manager object when we used a Range header, ie. when we did a
seek. Otherwise we just paused and we can resume just fine.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677475
2012-06-07 12:11:14 +02:00
Sebastian Dröge
91ca34a0bb matroskademux: Update for TOC event API change 2012-06-06 14:17:08 +02:00
Wim Taymans
b5df4f0e62 update for tag event change 2012-06-06 13:02:12 +02:00
Wim Taymans
37df608fdc fix Y800 format 2012-06-06 13:00:58 +02:00
Thiago Santos
78ec03e32f Some printf variable format fixes
The osx compiler complains about those
2012-06-05 17:53:57 -03:00
Sebastian Dröge
ca4b5d795b audioparsers: Fix GstBaseParse::get_sink_caps() implementations
They should take the filter caps into account and always return
the template caps appended to the actual caps. Otherwise the
parsers stop to accept unparsed streams where upstream does not
know about channels, rate, etc.

Fixes bug #677401.
2012-06-05 09:21:08 +02:00
Wim Taymans
b8c08838bb qtdemux: set the palette size correctly 2012-05-31 13:44:46 +02:00
Wim Taymans
72b7d4884f video: remove duplicate format 2012-05-29 17:52:11 +02:00
Edward Hervey
5294edded2 flvdemux: Post error message if EOS before pads were created
Happens with some files with only headers
2012-05-29 16:59:06 +02:00
Tim-Philipp Müller
3986174aa9 flv, matroska: don't use GstStructure API on tag lists 2012-05-27 00:02:08 +01:00
Edward Hervey
923be8a85b rtpmp2tdepay: Only output integral mpeg-ts packets
From RFC 2250

2. Encapsulation of MPEG System and Transport Streams
...
   For MPEG2 Transport Streams the RTP payload will contain an integral
   number of MPEG transport packets.  To avoid end system
   inefficiencies, data from multiple small MTS packets (normally fixed
   in size at 188 bytes) are aggregated into a single RTP packet.  The
   number of transport packets contained is computed by dividing RTP
   payload length by the length of an MTS packet (188).
....

Since it needs to contain "an integral number of MPEG transport packets", a
simple fix is to check that's the case, and strip off any leftover data.

Fixes #676799

Conflicts:

	gst/rtp/gstrtpmp2tdepay.c
2012-05-26 12:04:54 +02:00
Alessandro Decina
51c8cd805d matroskademux: increase NEWSEGMENT accuracy after seeking
demux->common.segment is populated during seek handling with the target
start/stop positions. Don't override them when sending out a NEWSEGMENT.

Conflicts:

	gst/matroska/matroska-demux.c
2012-05-24 14:31:55 +02:00
Alessandro Decina
66d95d808c matroskademux: don't discard the incoming seek segment on push based seeking
The incoming seek segment was being discarded leading to push based seeking
being potentially inaccurate.
2012-05-24 14:26:23 +02:00
Luis de Bethencourt
c81fff0471 rtp: fix build issue in gstrtph264pay.c 2012-05-24 09:29:25 +01:00
Jonas Holmberg
7bf3a1bf95 rtph264pay: Add unrestricted caps
If there are no profile restrictions downstream, return caps with
profile=constrained-baseline in the first structure and append
unrestricted caps as the last structure.

Fixes bug #672019
2012-05-24 10:01:19 +02:00
Maria Giovanna Chiossa
ff019d05f6 rtsp: add the Scale header when needed
Setting GST_SEEK_FLAG_SKIP when sending a seek event in rtspsrc should
set the "Scale" field in the rtsp PLAY header.
Because the boolean "src->skip" is set after the call, "Speed" instead
of "Scale" is always set. Move the assignment before issuing the _play
request.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676618
2012-05-24 09:57:31 +02:00
Sreerenj Balachandran
f400a06ba5 videobox: Fix the sample pipeline. 2012-05-23 10:14:16 +02:00
Anton Novikov
eba7494ab0 icydemux: warning if setting srcpad caps fails 2012-05-23 10:05:41 +02:00
Anton Novikov
6c31088adc icydemux: activate srcpad before setting caps
Before gst_pad_set_active() is called, the pad has
FLUSHING flag set, so setting the caps fails
2012-05-23 10:04:09 +02:00
Thiago Santos
46083803d7 avimux: fix assertion when handling a date tag as a string
Date tags are GDate, not strings. Add a special case to convert
it to the exif date format representation in string to avoid
the assertion
2012-05-21 10:34:20 -03:00
Mark Nauwelaerts
182596b3ab rtpmp2tpay: respect mtu and packet boundaries
See #659915.
2012-05-18 12:53:44 +02:00
Youness Alaoui
7703a11073 rtpjpegpay: Allow U and V components to use different quant tables if they contain the same data
This allows some cameras (Logitech C920) that specify different quant
tables but both with the same data, to work.
Bug reported by Robert Krakora
2012-05-16 09:49:08 +02:00
Tim-Philipp Müller
aef0ad44d4 rndbuffersize: only send flush-stop if it was a flushing seek 2012-05-09 15:14:55 +01:00
Tim-Philipp Müller
338286cedf rndbuffersize: must send flush-stop after acquiring the stream lock
Otherwise the streaming thread might just keep on going and we
might never get the stream lock.
2012-05-09 12:24:37 +01:00
Tim-Philipp Müller
7e03f5f004 rndbuffersize: port seeking code to 0.11 2012-05-09 11:39:34 +01:00
Tim-Philipp Müller
84c842cfe9 rndbuffersize: add support for seeks
Useful for e.g. filesrc ! rndbuffersize ! queue2 ! ...
2012-05-09 11:39:34 +01:00
Tim-Philipp Müller
920e91e072 rndbuffersize: send SEGMENT event before pushing buffers
Conflicts:

	gst/debugutils/rndbuffersize.c
2012-05-09 11:39:34 +01:00
Wim Taymans
354e35a6ee interleave: fix compilation again 2012-05-09 11:19:10 +02:00
Pascal Buhler
8161daef4a rtpsession: creation should be signaled before validation
https://bugzilla.gnome.org/show_bug.cgi?id=667850
2012-05-09 10:36:18 +02:00
Alban Browaeys
a56361623c isomp4: set layout=interleaved on raw audio caps
This fixes a not-negotiated error at least on mov files with
twos audio with two channels and video dvcp. As playbin and gst-launch
sample coming from the qtdemux.c file uses audioconvert and the latter
require format interleaved.

https://bugzilla.gnome.org/show_bug.cgi?id=675326
2012-05-03 23:28:50 +01:00
Tim-Philipp Müller
2d249dcc29 videomixer: change sink pad template name from sink_%d to sink_%u 2012-05-01 18:58:03 +01:00
Wim Taymans
01db5dbff0 interleave: handle EOS on all pads
When all pads go to EOS immediately, we are not negotiated and our collected
function is called (without any available data). Handle this case gracefully.

Conflicts:

	gst/interleave/interleave.c
2012-05-01 13:35:56 +02:00
Wim Taymans
e0636feff8 interleave: improve debugging 2012-05-01 13:34:32 +02:00
Tim-Philipp Müller
b072c78270 alpha: don't set up stuff before the input and output formats are known
Fixes crash on startup.
2012-05-01 00:23:14 +01:00
Peter Seiderer
175f666293 multifilesink: don't write stream header twice for first file 2012-04-30 22:53:42 +01:00