Commit graph

11591 commits

Author SHA1 Message Date
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
Andoni Morales Alastruey
5b3d3b0885 osxvideosink: make sure all selectors are performed on the same thread
When we are using a dedicated thread to run the main run loop we
must make sure that all selectors are performed on this same thread.
For instance if performSelectorOnMainThread is called from the real
main thread, it will not go through the message queue and will be
executed from the real main thread. By forcing the target thread,
we ensure that all functions will be called either from the real
main thread when the main run loop is running or from our thread
spinning the main loop.
2012-05-25 11:07:35 +02:00
Mathias Hasselmann
e143c43ef5 jpegdec: remove framerate
The jpeg decoder doesn't need/care about the framerate to so it should
not be in the caps.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676302
2012-05-24 16:13:05 +02:00
Alessandro Decina
57e43aeb21 osxvideosink: start the loop before calling [gstview haveSuperview]
...as haveSuperview requires the mainloop to be running
2012-05-24 14:36:13 +02:00
Alessandro Decina
dc8de54cce osxvideosink: fix indentation 2012-05-24 14:36:09 +02:00
Alessandro Decina
fdf5fd9f16 osxvideosink: enable running the cocoa main runloop in a thread 2012-05-24 14:36:03 +02:00
Alessandro Decina
718837d914 osxvideosink: add code to optionally run the cocoa main runloop in a separate thread
Add a little hack to run the cocoa main runloop from a separate thread _when_
the main runloop is not being run (which means that the app doesn't use cocoa).
Runloops are thread specific, so the hack boils down to getting the runloop for
the main thread and setting it as the runloop for our dedicated thread.
2012-05-24 14:35:59 +02:00
Alessandro Decina
e3cba62b7e osxvideosink: reset app_started to FALSE when shutting down 2012-05-24 14:35:55 +02:00
Alessandro Decina
645b37e80a osxvideosink: rename cocoa runloop helper funcs 2012-05-24 14:35:51 +02:00
Alessandro Decina
7f576b923a osxvideosink: don't create application menus 2012-05-24 14:35:46 +02:00
Andoni Morales Alastruey
a3cf0ab5f5 osxvideosink: reset the embed property for backward compatilibity 2012-05-24 14:35:42 +02:00
Andoni Morales Alastruey
7cc93e9195 osxvideosink: fix navigation when force-aspect-ratio is activated 2012-05-24 14:35:37 +02:00
Andoni Morales Alastruey
fd19abf9ee osxvideosink: add force-aspect-ratio property 2012-05-24 14:35:32 +02:00
Andoni Morales Alastruey
9b8bfe9b9e osxvideosink: start internal window if no view is provided 2012-05-24 14:35:27 +02:00
Andoni Morales Alastruey
ba5d55dd69 osxvideosink: implement the navigation interface 2012-05-24 14:35:21 +02:00
Andoni Morales Alastruey
088bc6b056 osvideosink: create, destroy, resize and draw from the main thread 2012-05-24 14:35:16 +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
Sebastian Rasmussen
d502b8cb24 common: Update so the plugin scanner changes are included
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676674
2012-05-24 11:17:13 +02:00
Sebastian Rasmussen
6d2920ecff configure: suppress some warnings when debug is disabled
Warnings about unused variables should be suppressed if core has the
debug system disabled.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676671
2012-05-24 10:39:32 +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
Luis de Bethencourt
b63a6e2cbc mng: remove ext/libmng
Port to 0.10 was never finished.
Interest was lost.

https://bugzilla.gnome.org/show_bug.cgi?id=324364
2012-05-22 13:48:48 +01: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
Sjoerd Simons
c5196f6b1b pulsesrc: Listen to source output events, not sink input 2012-05-21 11:57:17 +02:00
Mark Nauwelaerts
182596b3ab rtpmp2tpay: respect mtu and packet boundaries
See #659915.
2012-05-18 12:53:44 +02:00
Edward Hervey
f96d18e959 jpeg: Remove dead code
Conflicts:

	ext/jpeg/gstjpegdec.c
2012-05-18 11:16:05 +02:00
Sebastian Dröge
c11e680a10 jpegdec: Fix compilation 2012-05-18 11:05:35 +02:00
Edward Hervey
9c4e195e79 jpegdec: When dropping frames on EOS, flush out data
Cleaner way of handling stray data
2012-05-18 11:05:17 +02:00
Edward Hervey
d243fb9178 jpegdec: Remove unused variable
Conflicts:

	ext/jpeg/gstjpegdec.c
2012-05-18 11:05:02 +02:00
Edward Hervey
d811797186 jpegdec: Only parse for SOI when we didn't see it before 2012-05-18 11:04:39 +02:00
Edward Hervey
c6c4906770 jpegdec: Remember if we saw SOI and handle stray data on EOS 2012-05-18 11:04:32 +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
95f6e0dbe4 souphttpsrc: fix possible data corruption after seeking
Consider a downstream element that may issue seeks in very short
succession (e.g. queue2), depending on the access pattern of
the downstream element (e.g. qtdemux with audio/video chunks
interleaved so that there's always a sizeable gap between the
current chunks for each stream). In this case, queue2 will maintain
two ranges, and even when it serves a chunk from memory, it will
switch ranges and make souphttpsrc seek to the end of the available
data for that range, assuming that that's where we'll want to
continue reading from next.

This may lead to the following seek request pattern:

 - source reading position A
 - seek to B
 - now reading position still A, requested_postion is B
 - streaming thread to be restarted to continue from B
 - seek to A, before streaming thread had time to do the seek
 - do_seek() now sees reading position == seek position and
   returns early.
 - however, requested position is still B from the earlier
   seek request
 - streaming thread starts up, sees that a seek to B is pending
   and requests data from B from the server, while the GstBaseSrc
   segment has of course been updated/reset to position A, which
   was the last seek request.
 - we will now send data for position B and pretend that's the
   data from position A (via the newsegment event, etc.)
 - this causes data corruption

Reproducible doing seek-emulated fast-forward/backward on 006648.
2012-05-16 08:31:15 +01:00
Sebastian Dröge
5203e5500e configure: Require core/base 0.11.91 2012-05-16 09:13:00 +02:00
Matej Knopp
728e81c2a2 .gitignore: add visual studio IDE files and OS X .DS_Store files
https://bugzilla.gnome.org/show_bug.cgi?id=667899
2012-05-16 08:05:32 +01:00
Sebastian Dröge
62580b14f6 jpeg: Port to 0.11 again 2012-05-14 14:39:34 +02:00
Edward Hervey
8e9eb77816 jpeg: Port jpegdec/jpegenc to base video classes
Conflicts:

	ext/jpeg/gstjpegdec.c
	ext/jpeg/gstjpegdec.h
	ext/jpeg/gstjpegenc.c
	ext/jpeg/gstjpegenc.h

Reverted to 0.10 versions for now, next port again.
2012-05-14 13:01:48 +02:00
Tim-Philipp Müller
dd75c21670 annodex: remove annodex plugin and CMML elements
This never really took off and is most likely completely
unused. If there is still a need for this, it should
probably be done differently, perhaps inside oggdemux/mux.
2012-05-13 19:21:19 +01:00
Sebastian Dröge
3f833f7574 Back to development 2012-05-13 16:59:58 +02:00
Sebastian Dröge
979a6a3373 Release 0.11.91 2012-05-13 16:31:03 +02:00
Sebastian Dröge
c0c9e8809e Update .po files 2012-05-13 16:30:03 +02:00
Sebastian Dröge
d2fdf9e5fc Automatic update of common submodule
From dc70203 to 3429ba6
2012-05-13 15:56:05 +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
Peter Seiderer
65a28698db v4l2src: fix v4l2_std_id logging
input.std is of type v4l2_std_id which is defined as 64-bit unsigned integer.
Casting to uint means the higher bits, wich are used for the private video
standards of the TI video capture/display driver for example, are lost.
2012-05-09 15:12:28 +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