Sebastian Dröge
2856d8a6fa
[MOVED FROM BAD 051/134] vp8: Move structure definitions, etc to public header files for gtk-doc
2012-09-16 15:27:14 +02:00
Sebastian Dröge
83ffb384d0
[MOVED FROM BAD 050/134] vp8enc: Implement multipass encoding
...
Fixes bug #621348 .
2012-09-16 15:27:14 +02:00
Sebastian Dröge
7f3e1a1484
[MOVED FROM BAD 049/134] vp8enc: Set VP8E_SET_CPUUSED to 0
...
This setting controls how much CPU can be used by the encoder, specified
in fractions of 16. Negative values mean strict enforcement of this
while positive values are adaptive.
The default value is -4, which means that we're not running as fast
as possible and probably are wasting some quality. 0 is the recommended
default by libvpx upstream.
2012-09-16 15:27:14 +02:00
Sebastian Dröge
ec2c2b5fcc
[MOVED FROM BAD 048/134] vp8enc: Use VPX defines for REALTIME, GOOD/BEST quality deadlines instead of our own
...
These are the values used for the speed property.
2012-09-16 15:27:14 +02:00
Tim-Philipp Müller
87fee9151b
[MOVED FROM BAD 047/134] vp8enc: fix printf format warning in log message
...
gstvp8enc.c:564: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’
gstvp8enc.c:744: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’
2012-09-16 15:27:14 +02:00
Tim-Philipp Müller
86db423828
[MOVED FROM BAD 046/134] basevideo, vp8: guard unstable API with GST_USE_UNSTABLE_API
...
Add some guards and fat warnings to the header files with still unstable
API, so people who just look at the installed headers know that it
actually is unstable API.
Merging previous commit into current codebase.
2012-09-16 15:27:14 +02:00
David Schleef
b8cd2ec0f6
[MOVED FROM BAD 045/134] basevideo: Move base video from vp8 to gst-libs
2012-09-16 15:27:14 +02:00
Sebastian Dröge
2014a7eee2
[MOVED FROM BAD 044/134] vp8: Use VPX_PLANE_* instead of PLANE_*
2012-09-16 15:27:14 +02:00
Sebastian Dröge
b9e31e22c6
[MOVED FROM BAD 043/134] vp8: Add compatilibity defines to work with older versions of libvpx too
2012-09-16 15:27:14 +02:00
Philip Jägenstedt
70305a8088
[MOVED FROM BAD 042/134] vp8dec: s/IMG_FMT_I420/VPX_IMG_FMT_I420/
...
This corresponds to upstream libvpx commit 6cd4a10e167203d1deb79abf60ee72599e97891b
2012-09-16 15:27:14 +02:00
Sebastian Dröge
0de97a2e85
[MOVED FROM BAD 041/134] vp8enc: Allow a maximum keyframe distance of 0, i.e. all frames are keyframes
2012-09-16 15:27:14 +02:00
Sebastian Dröge
f431917418
[MOVED FROM BAD 040/134] vp8dec: Set decoder deadline from the QoS information
2012-09-16 15:27:14 +02:00
Sebastian Dröge
8e3994ad8f
[MOVED FROM BAD 039/134] vp8enc: Move debug output one line above where the packet is still valid
2012-09-16 15:27:13 +02:00
Sebastian Dröge
e0aa93f455
[MOVED FROM BAD 038/134] vp8enc: Correctly ignore non-frame packets from the encoder
...
Fixes bug #619916 .
2012-09-16 15:27:13 +02:00
Sebastian Dröge
951b3a1594
[MOVED FROM BAD 037/134] basevideodecoder: Take the frame duration into account when calculating the earliest time
...
This formula is used in many other elements too.
Fixes bug #619318 .
2012-09-16 15:27:13 +02:00
Sebastian Dröge
c90e9b3127
[MOVED FROM BAD 036/134] basevideodecoder: Reset QoS values when necessary
2012-09-16 15:27:13 +02:00
Sebastian Dröge
13dbfc2fa9
[MOVED FROM BAD 035/134] vp8enc: Use GST_VIDEO_CAPS_YUV(I420) instead of handwritten I420 caps for the pad template
...
Fixes bug #619344 .
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
c28c23b63d
[MOVED FROM BAD 034/134] vp8dec: drop late frames after decoding them
...
This saves a memcpy, which is always something.
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
ee152678af
[MOVED FROM BAD 033/134] vp8enc: threads property
...
Increasing from 1 to 2 threads on an Thinkpad X60s decreased encode time
in a test from ~24 s to ~19 s, so this is quite useful.
Ideally we should let 0 be the default and automatically match the number
of CPU cores (or something).
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
109a4f4e12
[MOVED FROM BAD 032/134] vp8enc: add mode property to switch between CBR/VBR
...
Always using CBR when bitrate is used isn't that great, VBR mode
can produce meaningful results too.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
d2d3aefa94
[MOVED FROM BAD 031/134] vp8dec: Only enable postprocessing if the decoder supports it
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
9918341dd0
[MOVED FROM BAD 030/134] vp8: typo: s/HAVE_VP8_DECODER/HAVE_VP8_ENCODER/
...
Fixup for bug #619172 .
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
7f56565f76
[MOVED FROM BAD 029/134] vp8: move #ifdef HAVE_VP8_ENCODER/DECODER
...
Otherwise we'll try including e.g. <vpx/vp8cx.h> which doesn't exist.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
70015da68e
[MOVED FROM BAD 028/134] vp8enc: Write GStreamer element and version in the vorbiscomment vendor string
2012-09-16 15:27:13 +02:00
Sebastian Dröge
9cb55fb96b
[MOVED FROM BAD 027/134] vp8: Only enable the encoder or decoder if it's available in libvpx
...
Fixes bug #619172 .
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
2c0d247ad9
[MOVED FROM BAD 026/134] vp8: exlcude dec/enc based on CONFIG_VP8_DECODER/ENCODER
...
This may not be very autotoolish, but works with libvpx in the state
that libvpx is actually in. Moved the debug init to the elements
themselves to minimize amount of #ifdefs
2012-09-16 15:27:13 +02:00
Philip Jägenstedt
80d2b43443
[MOVED FROM BAD 025/134] vp8enc: Limit max-latency to 25 to match libvpx
...
From libvpx/vp8/encoder/onyx_int.h:
#define MAX_LAG_BUFFERS (CONFIG_REALTIME_ONLY? 1 : 25)
While we don't need to be tied to what libvpx does internally, it
doesn't make sense to pretend to support longer frame lags than are
actually possible.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
67adf511fd
[MOVED FROM BAD 024/134] vp8: Undef HAVE_CONFIG_H before including libvpx headers
...
A public libvpx header includes private headers if this is
defined, causing compilation failures because the private headers
are not installed of course.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
78fc2011db
[MOVED FROM BAD 023/134] vp8enc: Some more minor adjustments for the Ogg mapping
2012-09-16 15:27:13 +02:00
Sebastian Dröge
93def25c8a
[MOVED FROM BAD 022/134] vp8dec: Fix memory leak
2012-09-16 15:27:13 +02:00
Sebastian Dröge
b7e64c7c69
[MOVED FROM BAD 021/134] vp8enc: Adjust Ogg mapping for the changes
2012-09-16 15:27:13 +02:00
Sebastian Dröge
5ce64cf8ad
[MOVED FROM BAD 020/134] vp8dec: Add properties to control the VP8 decoder post processing feature
...
This is disabled by default for now.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
f4f6bc62f4
[MOVED FROM BAD 019/134] vp8enc: Rename keyframe-interval to max-keyframe-distance
...
And use default settings for buffer sizes until we expose this
somehow.
2012-09-16 15:27:13 +02:00
Sebastian Dröge
6ce8a5609f
[MOVED FROM BAD 018/134] vp8: Improve error handling and debug output
2012-09-16 15:27:13 +02:00
Sebastian Dröge
3028d1abc0
[MOVED FROM BAD 017/134] vp8: Use correct strides and plane offsets for GStreamer
2012-09-16 15:27:13 +02:00
Sebastian Dröge
5d397656f9
[MOVED FROM BAD 016/134] vp8enc: Implement GstTagSetter interface
2012-09-16 15:27:13 +02:00
Sebastian Dröge
e3ede57f5e
[MOVED FROM BAD 015/134] vp8enc: Fix setting of the keyframe flag on encoded frames
2012-09-16 15:27:13 +02:00
Sebastian Dröge
b1f35fff9d
[MOVED FROM BAD 014/134] vp8enc: Post an error message on the bus if encoder initialization fails
2012-09-16 15:27:13 +02:00
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
Sebastian Dröge
aa2cd462da
gst: Update for GST_PLUGIN_DEFINE() API changes
2012-04-05 17:36:38 +02:00
Sebastian Dröge
5cdd49bf25
gst: Update versioning
2012-04-04 14:37:47 +02:00
Mark Nauwelaerts
ecf09f45f3
jpegenc: plug template caps leak
2012-04-03 18:42:51 +02:00
Wim Taymans
3d61d12e03
update for buffer api change
2012-03-30 18:15:34 +02:00
Sebastian Dröge
df946f603f
speexenc: Use new gst_audio_encoder_set_headers() API
2012-03-30 12:53:44 +02:00
Sebastian Dröge
b16f5637e8
ext: Update for GstAudioEncoder API changes
2012-03-30 12:18:45 +02:00
Mark Nauwelaerts
12d7acf6f6
flacenc: plug ref leak
2012-03-29 17:21:53 +02:00
Sebastian Dröge
49f85b38b7
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
configure.ac
2012-03-29 15:03:09 +02:00
Mark Nauwelaerts
e4e38f9a0f
wavpackenc: query downstream for BYTE seeking support
2012-03-28 14:50:04 +02:00
Mark Nauwelaerts
03bde3f0d2
flacenc: query downstream for BYTE seeking support
2012-03-28 14:50:03 +02:00
Mark Nauwelaerts
5550d8bc6f
flacdec: clean up obsolete log statement
2012-03-28 14:50:03 +02:00
Wim Taymans
69002aa24f
update for buffer changes
2012-03-28 12:53:05 +02:00