platform/upstream/gstreamer.git
10 years agosouphttpsrc: Don't duplicate status_code to GStreamer error mapping
Sebastian Dröge [Tue, 11 Feb 2014 12:25:22 +0000 (13:25 +0100)]
souphttpsrc: Don't duplicate status_code to GStreamer error mapping

10 years agogoom: Remove unused functions
Sebastian Dröge [Sun, 9 Feb 2014 22:38:44 +0000 (23:38 +0100)]
goom: Remove unused functions

10 years agomatroskaparse: Comment out some unused functions used only from the commented out...
Sebastian Dröge [Sun, 9 Feb 2014 22:21:20 +0000 (23:21 +0100)]
matroskaparse: Comment out some unused functions used only from the commented out pull-mode code

10 years agoid3v2mux: Fix another compiler warning
Sebastian Dröge [Sat, 8 Feb 2014 20:01:32 +0000 (21:01 +0100)]
id3v2mux: Fix another compiler warning

10 years agosouphttpsrc: Fix implicit enum conversion compiler warning
Sebastian Dröge [Sat, 8 Feb 2014 16:43:32 +0000 (17:43 +0100)]
souphttpsrc: Fix implicit enum conversion compiler warning

error: implicit conversion from enumeration type
'SoupStatus' to different enumeration type 'SoupKnownStatusCode'

10 years agointerleave: Fix unitialized variable compiler warning in test
Sebastian Dröge [Sat, 8 Feb 2014 16:41:21 +0000 (17:41 +0100)]
interleave: Fix unitialized variable compiler warning in test

error: variable 'mask' is used uninitialized
whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]

10 years agoid3v2mux: Fix unitialized variable compiler warning
Sebastian Dröge [Sat, 8 Feb 2014 16:27:51 +0000 (17:27 +0100)]
id3v2mux: Fix unitialized variable compiler warning

error: variable 'image_type' is used uninitialized
whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]

10 years agooss4: Fix typo in header include guard
Sebastian Dröge [Sat, 8 Feb 2014 16:25:27 +0000 (17:25 +0100)]
oss4: Fix typo in header include guard

error: 'GST_OSS4_AUDIO_H' is used as a header guard here,
followed by #define of a different macro [-Werror,-Wheader-guard]

10 years agortprtxsend: Fix unitialized variable compiler warning
Sebastian Dröge [Sat, 8 Feb 2014 16:24:06 +0000 (17:24 +0100)]
rtprtxsend: Fix unitialized variable compiler warning

variable 'rtx_ssrc' is used uninitialized whenever
'if' condition is false [-Werror,-Wsometimes-uninitialized]

10 years agortpac3depay: Remove unused variable
Sebastian Dröge [Sat, 8 Feb 2014 16:21:19 +0000 (17:21 +0100)]
rtpac3depay: Remove unused variable

10 years agoflx: Fix typo in header include guard
Sebastian Dröge [Sat, 8 Feb 2014 16:19:19 +0000 (17:19 +0100)]
flx: Fix typo in header include guard

error: '__GST_FLX_FMT__H__' is used as a header guard here,
followed by #define of a different macro [-Werror,-Wheader-guard]

10 years agoqtmux: remove have_dts flag from pads
Thiago Santos [Fri, 7 Feb 2014 13:07:41 +0000 (10:07 -0300)]
qtmux: remove have_dts flag from pads

It was used in the past in 0.10 when there was no explicit DTS
field in buffers, now we have it in 1.x series and we can
check it directly with GST_BUFFER_DTS_IS_VALID

10 years agoqtmux: improve support for sparse streams
Thiago Santos [Fri, 7 Feb 2014 04:49:26 +0000 (01:49 -0300)]
qtmux: improve support for sparse streams

Do not try to use subsequent buffer timestamps to calculate
sparse streams durations because the stream is sparse and
the buffers might not be 'time adjacent'. So rely on the
duration and give the option to the pad to provide
custom 'empty' buffers to represent the gaps in the
stream, this can vary on how the data is represented.

Right now, the only sparse stream supported is tx3g subtitles.

10 years agoqtmux: add support for text/x-raw subtitles
Thiago Santos [Thu, 6 Feb 2014 15:15:22 +0000 (12:15 -0300)]
qtmux: add support for text/x-raw subtitles

Adds it to mp4mux, qtmux and gppmux.

Buffers need to be prefixed with 2 bytes for the text length before
being muxed.

https://bugzilla.gnome.org/show_bug.cgi?id=581295

10 years agoqtmux: add support for the TX3G atoms
Thiago Santos [Thu, 6 Feb 2014 15:09:01 +0000 (12:09 -0300)]
qtmux: add support for the TX3G atoms

Adds functions for creating and setting values related to the
tx3g atom for raw text subtitle support.

QTFF spec has information on those atoms

https://bugzilla.gnome.org/show_bug.cgi?id=581295

10 years agoqtmux: add subtitle support to qtmuxmap structures
Thiago Santos [Wed, 5 Feb 2014 13:27:54 +0000 (10:27 -0300)]
qtmux: add subtitle support to qtmuxmap structures

adds basic stubs for subtitle support around the qtmux and
qtmuxmap structures. Still no real subtitle implemented, but
basic functions in place

https://bugzilla.gnome.org/show_bug.cgi?id=581295

10 years agomatroska: factor out read context init/reset
Reynaldo H. Verdejo Pinochet [Mon, 20 Jan 2014 20:31:14 +0000 (17:31 -0300)]
matroska: factor out read context init/reset

While at this, move _track_reset() to track-ids
so it can be called from the common read context
reset routine.

https://bugzilla.gnome.org/show_bug.cgi?id=722705

10 years agoeffectv: fix doc section of revtv element
Wim Taymans [Thu, 6 Feb 2014 11:21:07 +0000 (12:21 +0100)]
effectv: fix doc section of revtv element

10 years agoosxvideo: Fix libtool usage
Edward Hervey [Wed, 5 Feb 2014 11:46:54 +0000 (12:46 +0100)]
osxvideo: Fix libtool usage

--tag=CC is needed for static build

10 years agodeinterlace: do not try set deinterlace method if passthrough is enabled
Matthieu Bouron [Thu, 16 Jan 2014 11:26:41 +0000 (11:26 +0000)]
deinterlace: do not try set deinterlace method if passthrough is enabled

Fixes an issue with progressive content and unsupported video formats
for the deinterlace method.

https://bugzilla.gnome.org/show_bug.cgi?id=719636

10 years agoflacenc: order format in template caps by preference
Tim-Philipp Müller [Tue, 4 Feb 2014 20:26:56 +0000 (21:26 +0100)]
flacenc: order format in template caps by preference

To minimise risk of bad fixation, though audioconvert
at least should be smart enough to avoid it.

10 years agov4l2: Remove obsolete definition GST_V4L2_MISSING_BUFDECL
Dan Kegel [Sun, 2 Feb 2014 17:57:03 +0000 (09:57 -0800)]
v4l2: Remove obsolete definition GST_V4L2_MISSING_BUFDECL

The only use was removed by 9edc0c0365f79ab07ff2e65461c6696e3931a3f0

https://bugzilla.gnome.org/show_bug.cgi?id=723446

10 years agogst: Don't use endianness-specific S8 audio format
Rafał Mużyło [Tue, 4 Feb 2014 12:43:56 +0000 (13:43 +0100)]
gst: Don't use endianness-specific S8 audio format

It does not exist.

https://bugzilla.gnome.org/show_bug.cgi?id=723331

10 years agocairooverlay: add support for RGB16
Julien Isorce [Fri, 31 Jan 2014 14:17:54 +0000 (14:17 +0000)]
cairooverlay: add support for RGB16

https://bugzilla.gnome.org/show_bug.cgi?id=723289

10 years agomatroskamux: Fix constantly growing used uid list
Per x Johansson [Thu, 30 Jan 2014 08:43:50 +0000 (09:43 +0100)]
matroskamux: Fix constantly growing used uid list

Moves the used uid list to the class to avoid having it grow forever.

https://bugzilla.gnome.org/show_bug.cgi?id=723269

10 years agoAutomatic update of common submodule
Edward Hervey [Thu, 30 Jan 2014 09:44:05 +0000 (10:44 +0100)]
Automatic update of common submodule

From d48bed3 to 1a07da9

10 years agowavparse: Ignore Broadcast Wave Format (BWF) tags when searching for 'fmt' chunk
Mike Sheldon [Fri, 24 Jan 2014 01:52:08 +0000 (01:52 +0000)]
wavparse: Ignore Broadcast Wave Format (BWF) tags when searching for 'fmt' chunk

https://bugzilla.gnome.org/show_bug.cgi?id=723125

10 years agocheck: Use fakesink sync=True instead of an audio sink
Edward Hervey [Wed, 29 Jan 2014 09:37:53 +0000 (10:37 +0100)]
check: Use fakesink sync=True instead of an audio sink

Ensures the test can run on systems without alsa (or any audio output for
that matter), and will avoid people running build slaves wondering what
the hell was beeping during the night :)

10 years agoac3parse: custom get_sink_caps handling for private stream caps
Mark Nauwelaerts [Mon, 27 Jan 2014 19:05:42 +0000 (20:05 +0100)]
ac3parse: custom get_sink_caps handling for private stream caps

... now that those are transformed rather than parsed, some transforming
of caps is required as well to make auto-plugging succeed.

10 years agov4l2: guard use of ENODATA with #ifdef
Ryan Lortie [Sat, 25 Jan 2014 07:06:00 +0000 (02:06 -0500)]
v4l2: guard use of ENODATA with #ifdef

Not all systems with v4l have ENODATA defined, so check that we have it
before attempting to use it.

https://bugzilla.gnome.org/show_bug.cgi?id=722953

10 years agoRevert "rtspsrc: Proxy rtpjitterbuffer do-retransmission property"
Sebastian Dröge [Fri, 24 Jan 2014 11:37:39 +0000 (12:37 +0100)]
Revert "rtspsrc: Proxy rtpjitterbuffer do-retransmission property"

This reverts commit 9f7b1128b1f00a2b87a232ff890867549ab95ba5.

This should be handled automatically be rtspsrc if the AVPF profile
is used, and manual enabling of it can be done with the new-manager
signal.

10 years agortspsrc: add signal to notify of new manager
Wim Taymans [Fri, 24 Jan 2014 09:21:11 +0000 (10:21 +0100)]
rtspsrc: add signal to notify of new manager

So that you can configure and connect to signals on the rtpbin.

See https://bugzilla.gnome.org/show_bug.cgi?id=722866

10 years agortspsrc: Proxy rtpjitterbuffer do-retransmission property
Aleix Conchillo Flaqué [Thu, 23 Jan 2014 23:17:58 +0000 (15:17 -0800)]
rtspsrc: Proxy rtpjitterbuffer do-retransmission property

https://bugzilla.gnome.org/show_bug.cgi?id=722866

10 years agortpjitterbuffer: handle expected packet being an RTX packet
Wim Taymans [Tue, 21 Jan 2014 16:52:44 +0000 (17:52 +0100)]
rtpjitterbuffer: handle expected packet being an RTX packet

If the expected packet (do_next_seqnum is TRUE) is the one we requested
for retranmission earlier, do the logic to update the retransmission
statistics as well before setting up the timers for the next expected
packet.
Also reset the retransmission counter if the timer is reused for another
seqnum.

10 years agortpbin: add a caps accumulator for the request-pt-map signal
Wim Taymans [Tue, 21 Jan 2014 14:48:20 +0000 (15:48 +0100)]
rtpbin: add a caps accumulator for the request-pt-map signal

Add an accumulator that stops the signal emission as soon as a caps has
been retrieved. Otherwise the default handler would continue emitting
the signal and possibly overwrite the result with NULL again.

10 years agortxreceive: copy flags and timestamps from original buffer
Wim Taymans [Tue, 21 Jan 2014 14:25:54 +0000 (15:25 +0100)]
rtxreceive: copy flags and timestamps from original buffer

10 years agortpjitterbuffer: ignore invalid timestamps in rtt calculation
Wim Taymans [Tue, 21 Jan 2014 14:24:52 +0000 (15:24 +0100)]
rtpjitterbuffer: ignore invalid timestamps in rtt calculation

When the input buffer does not have a valid timestamp, don't try to
calculate the round-trip-time.

10 years agomatroskaparse: better default caps when none set
Reynaldo H. Verdejo Pinochet [Thu, 16 Jan 2014 17:23:13 +0000 (14:23 -0300)]
matroskaparse: better default caps when none set

Uses information gathered during EBML parsing to
forge a more suitable set of caps instead of blindly
assuming everything is video/x-matroska.

For consistency, stream type reset was added to
matroska-demux too.

https://bugzilla.gnome.org/show_bug.cgi?id=722311

10 years agotests: rtprtx::test_rtxreceive_data_reconstruction: remove useless code for triggerin...
George Kiagiadakis [Wed, 15 Jan 2014 16:29:35 +0000 (17:29 +0100)]
tests: rtprtx::test_rtxreceive_data_reconstruction: remove useless code for triggering retransmission

There is no need anymore to push yet another buffer in rtxsend
in order to trigger the previously requested retransmissions
to actually happen.

10 years agotests: rtprtx::test_rtxreceive_data_reconstruction: fix race condition
George Kiagiadakis [Wed, 15 Jan 2014 16:27:19 +0000 (17:27 +0100)]
tests: rtprtx::test_rtxreceive_data_reconstruction: fix race condition

Now with rtprtxsend pushing rtx buffers from a different thread,
this is necessary to ensure that the result of the test is deterministic.

This code makes use of GstCheck's global GMutex and GCond that are
being used inside GstCheck's sink pad chain() function in order
to synchronize with it.

10 years agotests: rtprtx::test_rtxsender_packet_retention: fix race condition
George Kiagiadakis [Wed, 15 Jan 2014 16:17:57 +0000 (17:17 +0100)]
tests: rtprtx::test_rtxsender_packet_retention: fix race condition

Now with rtprtxsend pushing rtx buffers from a different thread,
this is necessary to ensure that the result of the test is deterministic.

This code makes use of GstCheck's global GMutex and GCond that are
being used inside GstCheck's sink pad chain() function in order
to synchronize with it.

10 years agotests: rtprtx::test_push_forward_seq: fix race condition
George Kiagiadakis [Wed, 15 Jan 2014 10:26:33 +0000 (11:26 +0100)]
tests: rtprtx::test_push_forward_seq: fix race condition

Now with rtprtxsend pushing rtx buffers from a different thread,
this is necessary to ensure that the result of the test is deterministic.

This code makes use of GstCheck's global GMutex and GCond that are
being used inside GstCheck's sink pad chain() function in order
to synchronize with it.

10 years agotests: rtprtx::test_push_forward_seq: fix buffer refcounting
George Kiagiadakis [Wed, 15 Jan 2014 08:47:03 +0000 (09:47 +0100)]
tests: rtprtx::test_push_forward_seq: fix buffer refcounting

10 years agortprtxsend: ensure that no rtx buffers are sent after EOS
George Kiagiadakis [Tue, 21 Jan 2014 12:42:38 +0000 (13:42 +0100)]
rtprtxsend: ensure that no rtx buffers are sent after EOS

To do that, enqueue the EOS event to be sent from the srcpad task
thread and flush the queue right afterwards, so that no more rtx
buffers can be sent, even if there are more requests coming in.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722370

10 years agortprtxsend: run a new GstTask on the src pad
George Kiagiadakis [Wed, 15 Jan 2014 08:46:14 +0000 (09:46 +0100)]
rtprtxsend: run a new GstTask on the src pad

The reason behind this is to minimize the retransmission delay.
Previously, when a NACK was received, rtprtxsend would put a
retransmission packet in a queue and it would send it from chain(),
i.e. only after a new buffer would arrive.

This unfortunately was causing big delays, in the order of 60-100 ms,
which can be critical for the receiver side.

By having a separate GstTask for pushing buffers out of rtxsend,
we can push buffers out right after receiving the event, without
waiting for chain() to get called.

10 years agoshout2send: error out if no caps were received
Tim-Philipp Müller [Fri, 3 Jan 2014 17:47:55 +0000 (17:47 +0000)]
shout2send: error out if no caps were received

Instead of assuming that input is ogg.

10 years agoshout2send: accept audio/webm, audio/ogg and video/ogg as well
Tim-Philipp Müller [Fri, 3 Jan 2014 17:30:12 +0000 (17:30 +0000)]
shout2send: accept audio/webm, audio/ogg and video/ogg as well

Those are advertised in the template caps, but the
setcaps handler didn't handle them. But then oggmux
and oggparse at least for now still always output
application/ogg anyway, so that wasn't a real problem.

10 years agortpvp8pay: Don't leak input buffers
Sebastian Dröge [Mon, 20 Jan 2014 09:12:45 +0000 (10:12 +0100)]
rtpvp8pay: Don't leak input buffers

https://bugzilla.gnome.org/show_bug.cgi?id=722414

10 years agoavimux: reset some more audio pad data when needed
Mark Nauwelaerts [Sun, 19 Jan 2014 16:40:56 +0000 (17:40 +0100)]
avimux: reset some more audio pad data when needed

10 years agoavimux: write correct blockalign for vbr audio
Mark Nauwelaerts [Sun, 19 Jan 2014 16:38:59 +0000 (17:38 +0100)]
avimux: write correct blockalign for vbr audio

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720659

10 years agortpjitterbuffer: do not drop serialized events when latency is set
Aleix Conchillo Flaqué [Fri, 17 Jan 2014 01:36:12 +0000 (17:36 -0800)]
rtpjitterbuffer: do not drop serialized events when latency is set

Serialized events are now queued in the jitter buffer, so we don't
want to drop them even latency is set.

https://bugzilla.gnome.org/show_bug.cgi?id=722372

10 years agoavimux: don't make the buffer writable unless absolutely necessary
Michael Olbrich [Wed, 11 Dec 2013 08:36:22 +0000 (09:36 +0100)]
avimux: don't make the buffer writable unless absolutely necessary

https://bugzilla.gnome.org/show_bug.cgi?id=722396

10 years agov4l2: set GST_BUFFER_FLAG_DELTA_UNIT when appropriate
Michael Olbrich [Thu, 12 Sep 2013 14:56:56 +0000 (16:56 +0200)]
v4l2: set GST_BUFFER_FLAG_DELTA_UNIT when appropriate

https://bugzilla.gnome.org/show_bug.cgi?id=722394

10 years agov4l2bufferpool: don't ref the newly created allocator
Michael Olbrich [Fri, 17 Jan 2014 06:46:09 +0000 (07:46 +0100)]
v4l2bufferpool: don't ref the newly created allocator

Otherwise the allocator will never be deleted.

https://bugzilla.gnome.org/show_bug.cgi?id=712612

10 years agomatroskademux: Don't skip all video frames until the first keyframe
Sebastian Dröge [Wed, 15 Jan 2014 21:47:12 +0000 (22:47 +0100)]
matroskademux: Don't skip all video frames until the first keyframe

Instead do it like all other demuxers and let parsers and decoders
handle that. The keyframe information inside the container might
be completely wrong like in the sample file of the bug report,
and if it is correct and we push no keyframes, then the parsers
and decoders will handle that properly anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=682276

10 years agoqtdemux: remove elst_offset variables
Thiago Santos [Mon, 13 Jan 2014 13:08:09 +0000 (10:08 -0300)]
qtdemux: remove elst_offset variables

They are not used anymore

10 years agoqtdemux: remember reverse playback when verifying the segment end
Thiago Santos [Tue, 7 Jan 2014 00:36:17 +0000 (21:36 -0300)]
qtdemux: remember reverse playback when verifying the segment end

Check if the rate is positive or negative to correctly compare the current
position with the segment to make reverse playback work

10 years agoqtdemux: do not ignore empty segments
Thiago Santos [Fri, 3 Jan 2014 13:59:35 +0000 (10:59 -0300)]
qtdemux: do not ignore empty segments

Make sure empty segments are used and pushed with a gap event
to represent its data (or lack of it)

Each QtSegment is mapped into a GstSegment with the corresponding
media range. For empty QtSegments a gap event is pushed instead
of GstBuffers and it advances to the next QtSegment.

To make this work with seeks, need to keep track of the starting
'base' to make sure it remains consistently increasing when
pushing new segment events.
For example: if a seek makes qtdemux start from 5s, the first
segment will have a base=0. When the next segment is activated,
its base time will be QtSegment.time - qtdemux.segment_base so
that it doesn't include the first 5s that weren't played and
shouldn't be accounted on the running time

This purposedly will remove the fix made for
https://bugzilla.gnome.org/show_bug.cgi?id=700264, at this
point it was decided to respect the gaps, even if they cause
a delay on playback, because that's the way the file was crafted.

https://bugzilla.gnome.org/show_bug.cgi?id=345830

10 years agotests: Remove usage of the system clock from the rtprtx test
Olivier Crête [Fri, 13 Dec 2013 04:05:43 +0000 (23:05 -0500)]
tests: Remove usage of the system clock from the rtprtx test

10 years agotests: Initial segment in rtpcollision test
Olivier Crête [Fri, 13 Dec 2013 04:22:41 +0000 (23:22 -0500)]
tests: Initial segment in rtpcollision test

10 years agoexamples/*-rtpaux: specify payload type association for the audio stream, so that...
George Kiagiadakis [Tue, 14 Jan 2014 14:56:42 +0000 (15:56 +0100)]
examples/*-rtpaux: specify payload type association for the audio stream, so that rtx works also for audio

10 years agortprtxsend: remove wrong check for payload type not having been set
George Kiagiadakis [Tue, 14 Jan 2014 12:08:18 +0000 (13:08 +0100)]
rtprtxsend: remove wrong check for payload type not having been set

1) pt can be lower than 96
2) there is no point in checking that because rtprtxsend will not
   even store buffers for payload types that it doesn't know about,
   so this case will never be reached

10 years agortprtxsend: fix data locking when creating rtx packets
George Kiagiadakis [Tue, 14 Jan 2014 12:01:41 +0000 (13:01 +0100)]
rtprtxsend: fix data locking when creating rtx packets

This patch moves the creation of rtx packets to be done early,
in the src_event() function, when they are requested. The purpose
is to run gst_rtp_rtx_buffer_new() with the object locked to
protect internal data, because if it is done at the pushing stage,
we would have to lock and unlock multiple times in a row while we
are pushing the rtx buffers.

Previously there was no locking at all, which was terribly wrong.

10 years agortprtxsend: lock access to internal data in sink_event() function
George Kiagiadakis [Tue, 14 Jan 2014 11:50:23 +0000 (12:50 +0100)]
rtprtxsend: lock access to internal data in sink_event() function

10 years agortprtxsend: remove unnecessary call to reset() from finalize()
George Kiagiadakis [Tue, 14 Jan 2014 11:44:06 +0000 (12:44 +0100)]
rtprtxsend: remove unnecessary call to reset() from finalize()

...and use _free_full() on the pending buffers queue now that
reset() is not being called

10 years agortprtxsend: remove unused parameter from the internal reset() method
George Kiagiadakis [Tue, 14 Jan 2014 11:38:51 +0000 (12:38 +0100)]
rtprtxsend: remove unused parameter from the internal reset() method

10 years agortprtxsend: Use g_slice_* for allocating internal structures
George Kiagiadakis [Tue, 14 Jan 2014 11:32:38 +0000 (12:32 +0100)]
rtprtxsend: Use g_slice_* for allocating internal structures

10 years agortprtxreceive: remove stupid mutex unlock in the middle of chain()
George Kiagiadakis [Tue, 14 Jan 2014 11:28:01 +0000 (12:28 +0100)]
rtprtxreceive: remove stupid mutex unlock in the middle of chain()

10 years agortprtxreceive: use GST_DEBUG_OBJECT / GST_WARNING_OBJECT instead of GST_DEBUG / g_warning
George Kiagiadakis [Tue, 14 Jan 2014 11:25:36 +0000 (12:25 +0100)]
rtprtxreceive: use GST_DEBUG_OBJECT / GST_WARNING_OBJECT instead of GST_DEBUG / g_warning

10 years agortprtxreceive: fix integer format specifiers in GST_DEBUG
George Kiagiadakis [Tue, 14 Jan 2014 11:19:58 +0000 (12:19 +0100)]
rtprtxreceive: fix integer format specifiers in GST_DEBUG

seqnum in this function is 32-bit, so G_GUINT16_FORMAT would
produce undefined output on big endian systems

10 years agortprtxsend: change the rtx_pt_map directly in set_property() instead of delaying...
George Kiagiadakis [Tue, 14 Jan 2014 11:13:49 +0000 (12:13 +0100)]
rtprtxsend: change the rtx_pt_map directly in set_property() instead of delaying it for chain()

The same lock is held, so there is no point in complicating it...

10 years agortprtxreceive: change the rtx_pt_map directly in set_property() instead of delaying...
George Kiagiadakis [Tue, 14 Jan 2014 11:07:58 +0000 (12:07 +0100)]
rtprtxreceive: change the rtx_pt_map directly in set_property() instead of delaying it for chain()

The same lock is held, so there is no point in complicating it...

10 years agortprtxreceive: simplify the code of finalize()
George Kiagiadakis [Tue, 14 Jan 2014 10:55:00 +0000 (11:55 +0100)]
rtprtxreceive: simplify the code of finalize()

10 years agortprtxreceive: use the GstObject lock instead of a new one
George Kiagiadakis [Tue, 14 Jan 2014 10:52:21 +0000 (11:52 +0100)]
rtprtxreceive: use the GstObject lock instead of a new one

10 years agortprtxsend: use the GstObject lock instead of a new one
George Kiagiadakis [Tue, 14 Jan 2014 10:45:52 +0000 (11:45 +0100)]
rtprtxsend: use the GstObject lock instead of a new one

10 years agov4l2: Add NV12_64Z32 support
Nicolas Dufresne [Tue, 10 Dec 2013 19:29:55 +0000 (14:29 -0500)]
v4l2: Add NV12_64Z32 support

https://bugzilla.gnome.org/show_bug.cgi?id=722127

10 years agoosshelper: Don't leak fd when getting card name
Justin Joy [Tue, 14 Jan 2014 10:08:49 +0000 (19:08 +0900)]
osshelper: Don't leak fd when getting card name

https://bugzilla.gnome.org/show_bug.cgi?id=722163

10 years agoRevert "aacparse: relax the detection of ADTS"
Vincent Penquerc'h [Tue, 14 Jan 2014 09:43:33 +0000 (09:43 +0000)]
Revert "aacparse: relax the detection of ADTS"

This was pushed by mistake along with the V4L2 fix.

This reverts commit 8eb4b032bef444397c4d211f2095c173ba114187.

10 years agortpg726pay: don't leak encoding_name string
Justin Joy [Tue, 14 Jan 2014 06:42:01 +0000 (15:42 +0900)]
rtpg726pay: don't leak encoding_name string

https://bugzilla.gnome.org/show_bug.cgi?id=722159

10 years agov4l2: fix build break using V4L2_CAP_VIDEO_M2M_MPLANE
Vincent Penquerc'h [Mon, 13 Jan 2014 09:14:00 +0000 (09:14 +0000)]
v4l2: fix build break using V4L2_CAP_VIDEO_M2M_MPLANE

This may not be defined. Since the previous version used
only the other define (V4L2_CAP_VIDEO_OUTPUT_MPLANE), fall
back on this only when not available.

10 years agoaacparse: relax the detection of ADTS
Akihiro Tsukada [Tue, 26 Feb 2013 16:45:52 +0000 (01:45 +0900)]
aacparse: relax the detection of ADTS

According to ISO/IEC 13818-7, "channel_config" field in ADTS header
may have value of 0, as in the case of frame with PCE.
gst_aac_parse_detect_streams() returned FALSE for those frames
and discarded them.

10 years agov4l2bufferpool: check set_config return value in gst_v4l2_buffer_pool_new
Julien Isorce [Tue, 7 Jan 2014 11:58:23 +0000 (11:58 +0000)]
v4l2bufferpool: check set_config return value in gst_v4l2_buffer_pool_new

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Add parsed=1 field for encoded output
Nicolas Dufresne [Fri, 10 Jan 2014 17:40:31 +0000 (12:40 -0500)]
v4l2object: Add parsed=1 field for encoded output

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Don't leak empty caps
Nicolas Dufresne [Fri, 10 Jan 2014 17:39:16 +0000 (12:39 -0500)]
v4l2object: Don't leak empty caps

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2bufferpool: do not stop a stream not previously started
Julien Isorce [Wed, 8 Jan 2014 16:51:21 +0000 (16:51 +0000)]
v4l2bufferpool: do not stop a stream not previously started

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Don't enforce dimension field on encoded formats
Nicolas Dufresne [Thu, 12 Dec 2013 21:27:21 +0000 (16:27 -0500)]
v4l2object: Don't enforce dimension field on encoded formats

Don't enforce having width, height and framerate in template caps for encoded
formats. These don't always need to be exposed and may break negotiation for
decoder and decoding sink. If needed, these field will be automatically added
when probed caps are known.

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: unref downstream pool
Julien Isorce [Thu, 12 Dec 2013 17:09:59 +0000 (17:09 +0000)]
v4l2object: unref downstream pool

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2bufferpool: add gst_v4l2_buffer_pool_flush
Julien Isorce [Wed, 18 Dec 2013 18:37:23 +0000 (13:37 -0500)]
v4l2bufferpool: add gst_v4l2_buffer_pool_flush

STREAMOFF set all v4l2buffers to DEQUEUE state.

Then for CAPTURE we call QBUF on each buffer.
For OUTPUT the buffers are just push back in the GstBufferPool
base class 's queue.
But the loop actually looks like the same.

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Add vp8 support
Benjamin Gaignard [Mon, 16 Dec 2013 22:29:30 +0000 (17:29 -0500)]
v4l2object: Add vp8 support

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Don't force framerate field for OUTPUT
Nicolas Dufresne [Thu, 12 Dec 2013 21:46:09 +0000 (16:46 -0500)]
v4l2object: Don't force framerate field for OUTPUT

If there is nothing that seems to force a certain framerate on output device, it is
preferable to simply not set that feild. This allow negotiation with tsdemux in a
decoder for example.

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: _v4l2fourcc_to_structure() can be static
Nicolas Dufresne [Thu, 12 Dec 2013 19:07:03 +0000 (14:07 -0500)]
v4l2object: _v4l2fourcc_to_structure() can be static

This function is not used anymore outside v4l2object.

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Add MPEG1/2 support
Nicolas Dufresne [Thu, 12 Dec 2013 19:22:26 +0000 (14:22 -0500)]
v4l2object: Add MPEG1/2 support

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Ask for a decent buffer size when dealing with encoded formats
Nicolas Dufresne [Thu, 12 Dec 2013 17:18:45 +0000 (12:18 -0500)]
v4l2object: Ask for a decent buffer size when dealing with encoded formats

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2bufferpool: On warn on size change if n_planes > 1
Nicolas Dufresne [Sat, 7 Dec 2013 19:03:53 +0000 (14:03 -0500)]
v4l2bufferpool: On warn on size change if n_planes > 1

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: check if translated format is valid
Julien Isorce [Tue, 31 Dec 2013 16:38:09 +0000 (16:38 +0000)]
v4l2object: check if translated format is valid

Also add a FIXME in gst_v4l2_object_setup_format
to note that the whole function has to be improved
in order to support ENCODED formats.
It requires to have an encoder device which we do not
have right now.

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Validate returned dimensions
Nicolas Dufresne [Sat, 7 Dec 2013 15:31:15 +0000 (10:31 -0500)]
v4l2object: Validate returned dimensions

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Ensure max is not smaller then min in decide_allocation
Nicolas Dufresne [Fri, 6 Dec 2013 00:36:25 +0000 (19:36 -0500)]
v4l2object: Ensure max is not smaller then min in decide_allocation

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Don't keep the max paramter when using our own pool
Nicolas Dufresne [Fri, 6 Dec 2013 00:36:06 +0000 (19:36 -0500)]
v4l2object: Don't keep the max paramter when using our own pool

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2bufferpool: Respect the suggested min buffer
Nicolas Dufresne [Fri, 6 Dec 2013 00:34:44 +0000 (19:34 -0500)]
v4l2bufferpool: Respect the suggested min buffer

https://bugzilla.gnome.org/show_bug.cgi?id=720568

10 years agov4l2object: Allocate pool if needed in decide_allocation
Nicolas Dufresne [Thu, 5 Dec 2013 23:48:44 +0000 (18:48 -0500)]
v4l2object: Allocate pool if needed in decide_allocation

https://bugzilla.gnome.org/show_bug.cgi?id=720568