Commit graph

2165 commits

Author SHA1 Message Date
Sebastian Dröge
087ecc20eb [MOVED FROM BAD 013/134] vp8dec: Fix memory leaks and fail if initializing the decoder fails 2012-09-16 15:27:13 +02:00
David Schleef
ba0c0c6bbb [MOVED FROM BAD 012/134] vp8enc: Set timebase
Also misc cleanup.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
dd38c5c993 [MOVED FROM BAD 011/134] vp8dec: Fix decoding of invisible frames 2012-09-16 15:27:12 +02:00
Sebastian Dröge
de308639da [MOVED FROM BAD 010/134] vp8enc: Update the latency when initializing the encoder 2012-09-16 15:27:12 +02:00
Sebastian Dröge
42300e5ee7 [MOVED FROM BAD 009/134] vp8dec: Correctly initialize stream info before peeking at the stream
Otherwise peeking will fail and we'll get invalid values
2012-09-16 15:27:12 +02:00
Sebastian Dröge
08a5311f85 [MOVED FROM BAD 008/134] vp8dec: Make sure to pass a keyframe as first frame to the decoder, copy output frames only once and require width/height/etc on the input caps 2012-09-16 15:27:12 +02:00
Sebastian Dröge
091ba8f6aa [MOVED FROM BAD 007/134] vp8enc: Add support for invisible frames and the Ogg mapping 2012-09-16 15:27:12 +02:00
David Schleef
75d31dabe8 [MOVED FROM BAD 006/134] vp8dec: Fix reset after seeking
Also remove some unused code.
2012-09-16 15:27:12 +02:00
Sebastian Dröge
4a733f9083 [MOVED FROM BAD 005/134] vp8enc: Set frame numbers as buffer offsets 2012-09-16 15:27:12 +02:00
Sebastian Dröge
4d3759bbe6 [MOVED FROM BAD 004/134] vp8enc: Always get as many frames as possible from the encoder 2012-09-16 15:27:12 +02:00
Sebastian Dröge
522e0cb779 [MOVED FROM BAD 003/134] vp8enc: Fill the oldest pending frame instead of the newest 2012-09-16 15:27:12 +02:00
Sebastian Dröge
5f7655d481 [MOVED FROM BAD 002/134] vp8enc: Correctly set delta unit flag for non-keyframes 2012-09-16 15:27:12 +02:00
David Schleef
a27682279d [MOVED FROM BAD 001/134] vp8: Add encoder/decoder 2012-09-16 15:27:12 +02:00
Mark Nauwelaerts
a32398fee5 replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:07:40 +02:00
Wim Taymans
829c80ce6c fix more caps 2012-09-14 13:30:37 +02:00
Wim Taymans
e59498c33d pulsesrc: disable reconfigure
See https://bugzilla.gnome.org/show_bug.cgi?id=683902
2012-09-13 10:25:48 +02:00
Stefan Sauer
f874922e1c collectpads: remove gst_collect_pads_add_pad_full
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:05:44 +02:00
Mark Nauwelaerts
f12ef67f56 ext, gst: only activate in pull mode if upstream is seekable 2012-09-11 17:44:51 +02:00
Wim Taymans
c47c410e7b pulsesrc: consider stream alive when not connected yet
When we start and renegotiate, there is a moment where the stream is created but
not yet connected. Make sure all functions deal with this situation correctly
instead of erroring out.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681247
2012-09-10 13:35:15 +02:00
Wim Taymans
619b2bd1a9 pulsesrc: don't fail when not negotiated yet
When get_time is called but we are not yet negotiated, return 0 instead of
posting an error. It's possible that the base class is still negotiating when
our get_time is called.
2012-09-10 12:15:25 +02:00
Wim Taymans
497ff16355 update for audio base src api change 2012-09-10 11:32:25 +02:00
Wim Taymans
148ab7539b pulse: improve debug 2012-09-06 10:43:52 +02:00
Mark Nauwelaerts
8d53318e22 dvdemux: remove obsolete update newsegment handling code 2012-09-05 11:50:05 +02:00
Tim-Philipp Müller
b27ac94af2 gst_message_new_duration -> gst_message_new_duration_changed 2012-09-02 01:31:53 +01:00
Mark Nauwelaerts
67f3d6ac16 gdkpixbuf: adjust to modified video overlay composition API 2012-08-30 12:21:01 +02:00
Tim-Philipp Müller
4bb52bbadf docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert 2012-08-27 21:20:30 +01:00
Tim-Philipp Müller
e4cb67fad8 docs: gst-launch-0.11 -> gst-launch-1.0 2012-08-27 21:20:29 +01:00
Sjoerd Simons
01665d9da3 pulsesrc: Only print caps if they're provided 2012-08-27 09:00:45 +02:00
Arun Raghavan
ef9c81d495 pulsesrc: Handle negotiation events
This makes sure that we:

a) Destroy an existing stream if a negotiate() request comes in: this is
required when receiving a downstream renegotiation request after a
stream has been created.

b) Create a new stream on prepare(): this is required since we do a
setcaps() in negotiate(), which causes the stream to be dropped by a
ringbuffer release() call (this does not happen during first negotiation
since the release is only done on a running ringbuffer). The subsequent
call to ringbuffer acquire() fails because the stream was lost on
release().

https://bugzilla.gnome.org/show_bug.cgi?id=681247
2012-08-22 11:38:42 +02:00
Arun Raghavan
1a8512986a pulse: Clear unpositioned flag when setting positions
If converting a PA channel map to gst channel positions results in a
valid set of channel positions, we clear the unpositioned flag from the
ringbuffer spec.
2012-08-22 11:38:42 +02:00
Arun Raghavan
e317d88eaa pulsesrc: Remove redundant channel-mask setting for stereo case
The gstaudio helper libraries already take care of this case for us.
2012-08-22 11:38:41 +02:00
Arun Raghavan
fe83843abe pulsesrc: Don't use memset to set invalid channel positions
This itereates over the GstAudioInfo to set invalid channel positions
rather than use memset() which works right now because it assumes that
GST_AUDIO_CHANNEL_POSITION_INVALID is -1.
2012-08-22 11:38:41 +02:00
Tim-Philipp Müller
2c69684b80 gdkpixbufsink: minor docs improvement 2012-08-22 10:30:04 +01:00
Tim-Philipp Müller
c71248662d gdkpixbuf: re-enable already-ported gdkpixbufsink 2012-08-22 10:23:24 +01:00
Tim-Philipp Müller
39411ab4eb gdkpixbuf: port gdkpixbufoverlay element to 0.11 2012-08-22 10:14:39 +01:00
Tim-Philipp Müller
582bfea738 gdkpixbuf: re-enable already-ported gdkpixbuf element as gdkpixbufdec
Not sure why it as disabled exactly given that it had already
been ported (though without metas or baseclass).

Move plugin_init bits into separate source file, and rename
decoder element to gdkpixbufdec.
2012-08-22 10:14:39 +01:00
Tim-Philipp Müller
58037b75b2 gdkpixbuf: remove old and unused gst_loader source file
Once upon a time used to load GStreamer vids via GdkPixbuf API.
2012-08-22 10:14:39 +01:00
Anton Belka
59186f970d flacenc: allow a TOC with single alternative top-level entry
Allow a TOC that has a single alternative top-level entry
with multiple sequence sub-entries

https://bugzilla.gnome.org/show_bug.cgi?id=540891
2012-08-10 14:24:28 +02:00
Sebastian Dröge
6f74b2afb7 gst: Set alignment at the correct place of GstAllocationParams 2012-08-08 17:41:31 +02:00
Tim-Philipp Müller
787c314ec3 Silence some 'variable may be used uninitialized' compiler warnings
When compiling with -DG_DISABLE_ASSERT
2012-08-08 11:31:59 +01:00
Tim-Philipp Müller
4de8bd004c No code with side-effects inside g_assert() please 2012-08-08 11:07:55 +01:00
Anton Belka
fa86bf26df flacenc: add TOC support
Add TOC as embedded cuesheets in flac files.

https://bugzilla.gnome.org/show_bug.cgi?id=54089
2012-08-07 18:04:41 +02:00
Sebastian Dröge
7b5925b5a4 gst: Add stream-id to stream-start events 2012-08-06 13:43:57 +02:00
Tim-Philipp Müller
c074bfd0b9 gst_tag_list_free -> gst_tag_list_unref 2012-08-04 16:10:16 +01:00
Mark Nauwelaerts
94ab6e17f5 flacdec: improve and relax audio frame parsing
... so as to properly recognize first audio frame.

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

Conflicts:

	ext/flac/gstflacdec.c
2012-08-03 14:02:23 +02:00
Sebastian Dröge
0827f54b93 tag: Update for taglist/tag event API changes 2012-07-28 00:19:51 +02:00
Mark Nauwelaerts
2e8260a787 flacenc: obtain image type from the sample info 2012-07-27 11:26:18 +02:00
Mark Nauwelaerts
e31bfd6ddb flacenc: remove extraneous _unref
... since we did not obtain a buffer ref from the GstSample.
2012-07-27 11:25:49 +02:00
Robert Swain
7c94509243 flacenc: Update to use GstSample tag setting API 2012-07-27 10:14:23 +02:00
Mark Nauwelaerts
0f18a9aaaa flacenc: only set complete output caps once
... so as to avoid downstream complaints about missing streamheaders.
2012-07-25 16:02:39 +02:00
Mark Nauwelaerts
a9b4ceefaf flacdec: also support S24_32 output 2012-07-25 16:02:39 +02:00
Mark Nauwelaerts
c340deb8b6 flacenc: pass correct parameters to encoder lib 2012-07-25 16:02:38 +02:00
Mark Nauwelaerts
7e6338044c flacenc: adjust to modified audioencoder getcaps helper API 2012-07-25 16:02:38 +02:00
Tim-Philipp Müller
942d745cf1 jpegdec: fix up example pipeline some more
No more ffmpegcolorspace
2012-07-24 12:10:46 +01:00
Sreerenj Balachandran
1057c02c73 jpegdec: Fix the example gst-launch pipeline. 2012-07-24 12:59:14 +02:00
Sebastian Dröge
6e673d4796 ext: Update for video base classes API changes 2012-07-23 10:32:36 +02:00
Alban Browaeys
0c24e92308 soup: deprecated soup_message_headers _get -> _get_one
https://bugzilla.gnome.org/show_bug.cgi?id=680206
2012-07-18 22:48:08 +01:00
Edward Hervey
fa5697ec08 jpeg/png: Call video_decoder_negotiate() 2012-07-18 18:27:40 +02:00
Edward Hervey
f063e40af7 demux: Push STREAM_START event when needed 2012-07-13 13:51:48 +02:00
Wim Taymans
16b8e2d171 update for query api changes 2012-07-06 11:50:50 +02:00
Wim Taymans
8eadb9c12c update for query api changes 2012-07-06 11:26:46 +02:00
Wim Taymans
77813e67e1 update for allocation query changes 2012-07-06 11:05:11 +02:00
Sebastian Dröge
aeafc3a093 gst: Implement segment-done event 2012-07-05 13:13:09 +02:00
Wim Taymans
df097db437 jpegenc: mark all output frames as keyframes 2012-06-27 09:13:47 +02:00
Wim Taymans
30d3dfee36 update for task api change 2012-06-20 10:33:42 +02:00
Wim Taymans
f65495d405 update for audio api change 2012-06-08 10:11:12 +02:00
Wim Taymans
456c8e8205 pulsesrc: improve clock handling
Post the notify outside of the pa_lock to avoid a deadlock caused by basesrc
calling get_time with the object lock.
Reset the clock on connect.
Post clock-lost and clock-provide messages.

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

Conflicts:

	ext/pulse/pulsesrc.c
2012-06-07 15:15:03 +02:00
Mohammed Sameer
3bcae19398 Better GstClock for pulsesrc
This clock uses the actual stream time (pa_stream_get_time) to get a more accurate timestamp.

Conflicts:

	ext/pulse/pulsesrc.c
2012-06-07 15:11:09 +02:00
Vincent Penquerc'h
088c4442c4 png: fix video state leaks 2012-06-07 11:25:23 +01:00
Vincent Penquerc'h
1dad35eeff jpegdec: fix video state leak 2012-06-07 11:24:45 +01:00
Wim Taymans
b5df4f0e62 update for tag event change 2012-06-06 13:02:12 +02:00
Thiago Santos
78ec03e32f Some printf variable format fixes
The osx compiler complains about those
2012-06-05 17:53:57 -03:00
Wim Taymans
23520e4127 jpegdec: set colorimetry on output info 2012-06-04 16:18:05 +02:00
Sebastian Dröge
5ba30e6111 png: Port to 0.11 again 2012-05-28 15:22:55 +02:00
Jens Georg
982c1b479f soup: Drop transferMode.dlna.org header
Leave it to the application to decide on the header. No header at all
is better than having the wrong header as DLNA mandates that a missing
header has to be tolerated while a wrong header is an error.

https://bugzilla.gnome.org/show_bug.cgi?id=676020
2012-05-28 15:22:55 +02:00
Edward Hervey
0b82806547 png: Port to base video classes
Conflicts:

	ext/libpng/gstpngdec.c
	ext/libpng/gstpngdec.h
	ext/libpng/gstpngenc.c
	ext/libpng/gstpngenc.h

Reverted to 0.10, needs to be ported again.
2012-05-28 15:22:55 +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
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
Sjoerd Simons
c5196f6b1b pulsesrc: Listen to source output events, not sink input 2012-05-21 11:57:17 +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
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
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
Thiago Santos
db74901b6a jpegenc: do not proxy our filter caps downstream on caps queries
Downstream likely won't accept video/x-raw and the caps query
will return EMPTY caps. Instead, create a copy of the caps that
has all structure names replaced by 'image/jpeg'

Simple pipeline that shows the problem:
gst-launch-1.0 videotestsrc num-buffers=1 ! "video/x-raw, \
  width=(int)640, height=(int)480" ! videoscale ! jpegenc ! \
  "image/jpeg, width=(int)800, height=(int)600" ! filesink \
  location=/tmp/image.jpg
2012-05-04 16:25:31 -03:00
Wim Taymans
373333c2b3 pulsesink: improve debug 2012-04-25 10:29:45 +02:00
Wim Taymans
c0140982ee pulsesink: start unmuted when requested
When we explicitely set the mute property to FALSE, connect to pulseaudio with
the PA_STREAM_START_UNMUTED flag set, otherwise pulseaudio will use its
previously used value (which might start the stream muted).

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=672401
2012-04-25 10:29:45 +02:00
Bastien Nocera
933986fccc soup: Handle icy and icyx URI schemes
As handled by QuickTime (for icy), and Orban/Coding Technologies
AAC/aacPlus Player (for icyx). See also:
https://bugzilla.gnome.org/show_bug.cgi?id=394207
https://bugzilla.gnome.org/show_bug.cgi?id=403285

https://bugzilla.gnome.org/show_bug.cgi?id=673899
2012-04-23 15:34:54 +02:00
Sebastian Dröge
04b70571e5 video: Update for libgstvideo API changes 2012-04-19 12:20:59 +02:00
Mark Nauwelaerts
38d571fa57 dv1394: port to 0.11 2012-04-18 17:09:45 +02:00
Mark Nauwelaerts
67e168aef4 collectpads2: rename to collectpads 2012-04-17 15:14:27 +02:00
Tim-Philipp Müller
e0eddb4f25 shout2: update for ogg media type changes 2012-04-15 22:49:47 +01:00
Sebastian Dröge
d99eb6d2cb Update everything for the removal of the interface library and mixer/tuner interfaces 2012-04-13 13:15:11 +02:00
Руслан Ижбулатов
e7659756a1 Fix format string
Fixes #673859
2012-04-10 22:41:20 +01:00
Tim-Philipp Müller
e09ae5736d Use new gst_element_class_set_static_metadata() 2012-04-10 00:51:41 +01:00