Commit graph

1652 commits

Author SHA1 Message Date
Sebastian Dröge
63b89f5625 gst/typefind/gsttypefindfunctions.c: Add simple typefinder for the CELT codec (www.celt-codec.org).
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (celt_type_find),
(plugin_init):
Add simple typefinder for the CELT codec (www.celt-codec.org).
2008-07-28 12:47:06 +00:00
Sebastian Dröge
ef5004e56e gst/audioconvert/: Implement a linear congruential generator as pseudo random number generator for the dither noise. ...
Original commit message from CVS:
* gst/audioconvert/audioconvert.h:
* gst/audioconvert/gstaudioquantize.c:
(gst_audio_quantize_setup_dither),
(gst_audio_quantize_free_dither):
* gst/audioconvert/gstfastrandom.h:
Implement a linear congruential generator as pseudo random number
generator for the dither noise. This is about 2 times faster than
using GLib's mersenne twister. Also this uses only integer math for
generating integers while GLib internally uses floating point math.
2008-07-23 18:34:19 +00:00
David Schleef
cc74285d12 gst/audiotestsrc/gstaudiotestsrc.*: Add 'ticks', a 1/30 second sine wave pulse every second.
Original commit message from CVS:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/audiotestsrc/gstaudiotestsrc.h:
Add 'ticks', a 1/30 second sine wave pulse every second.
2008-07-17 02:30:24 +00:00
Jan Schmidt
024d0e56f5 gst/playback/: First stab at integrating DVD subpicture overlay into playbin. Successfully plugs and plays, but the q...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
First stab at integrating DVD subpicture overlay into
playbin. Successfully plugs and plays, but the queues need
shrinking - 3 seconds of video is too much buffering.
2008-07-14 08:18:58 +00:00
Stefan Kost
8b24a3a057 gst/audioconvert/gstaudioconvert.c: Remove now obsolete note in the docs.
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c:
Remove now obsolete note in the docs.
2008-07-11 18:06:33 +00:00
Stefan Kost
4f699b7f80 Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-11 06:10:24 +00:00
Stefan Kost
2b33c755b6 Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00
Sebastian Dröge
b02dc1bf6a gst/playback/gstdecodebin.c: And ref the pad before returning it again when linking to the queue failed. Otherwise we...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (add_raw_queue):
And ref the pad before returning it again when linking to the queue
failed. Otherwise we will unref the pad twice later and things break.
2008-07-07 09:55:41 +00:00
Sebastian Dröge
ba9c438f98 gst/playback/gstdecodebin.c: If linking the raw pad with a queue fails, try it without a queue instead of failing com...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (add_raw_queue):
If linking the raw pad with a queue fails, try it without a queue
instead of failing completely. This should never happen.
2008-07-07 09:48:45 +00:00
Evgeniy Stepanov
bddd224b36 gst/playback/gstdecodebin.c: Add a queue after a demuxer if the demuxer outputs raw data. This was done before only f...
Original commit message from CVS:
Patch by: Evgeniy Stepanov <eugeni dot stepanov at gmail dot com>
* gst/playback/gstdecodebin.c: (add_raw_queue), (close_pad_link):
Add a queue after a demuxer if the demuxer outputs raw data. This was
done before only for non-raw data but is required in this case too.
Fixes bug #540215.
decodebin2 doesn't have this issue because all streams of a group
go through multiqueue.
2008-07-06 23:22:12 +00:00
Wim Taymans
3fb8f3b0dd gst/videotestsrc/gstvideotestsrc.*: Cleanups, use default property values as defines.
Original commit message from CVS:
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init), (gst_video_test_src_init),
(gst_video_test_src_set_property),
(gst_video_test_src_get_property), (gst_video_test_src_create):
* gst/videotestsrc/gstvideotestsrc.h:
Cleanups, use default property values as defines.
Add property to enable/disable peer buffer allocation.
2008-07-01 13:22:49 +00:00
Sebastian Dröge
a97dc76ad7 gst/ffmpegcolorspace/: Only set/get on the PAL8 format, ffmpegcolorspace doesn't support it on other formats. Also ad...
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_get_unit_size):
Only set/get on the PAL8 format, ffmpegcolorspace doesn't support
it on other formats. Also adjust the unit size only for that format
to not include the palette. Fixes bug #540497.
2008-06-30 08:29:09 +00:00
Stefan Kost
e0d27d23cc gst/adder/gstadder.c: Use GST_DEBUG_FUNCPTR and remove some extra vlnak lines.
Original commit message from CVS:
* gst/adder/gstadder.c:
Use GST_DEBUG_FUNCPTR and remove some extra vlnak lines.
2008-06-29 13:45:27 +00:00
Stefan Kost
69f2aaea3c gst/playback/gstqueue2.c: Do not double notify. Remove the unsued return value.
Original commit message from CVS:
* gst/playback/gstqueue2.c:
Do not double notify. Remove the unsued return value.
2008-06-24 16:22:45 +00:00
Michael Smith
6ef8ecd7a3 gst/playback/: Add get-video-pad, get-audio-pad, get-text-pad action signals to playbin2. This allows the user to get...
Original commit message from CVS:
* gst/playback/gstplay-marshal.list:
* gst/playback/gstplaybin2.c:
Add get-video-pad, get-audio-pad, get-text-pad action signals to
playbin2. This allows the user to get to the selector's sinkpads, and
thus inspect a range of things - caps, tags, etc.
2008-06-20 18:24:24 +00:00
Michael Smith
f5b9e8c065 gst/playback/gstplaybin2.c: Use a different constant for the convert-frame signal id.
Original commit message from CVS:
* gst/playback/gstplaybin2.c:
Use a different constant for the convert-frame signal id.
Fixes #537009.
2008-06-20 17:27:03 +00:00
Michael Smith
8a59d948d9 gst/playback/: Fix a whole bunch of typos in comments and log statements.
Original commit message from CVS:
* gst/playback/gstplaybin2.c:
* gst/playback/gstplaysink.c:
Fix a whole bunch of typos in comments and log statements.
2008-06-20 17:18:55 +00:00
Michael Smith
9d2564874a gst/playback/gstdecodebin2.c: Ensure decodebin2 emits 'drained' signal once, and only once, when all pads are drained.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
Ensure decodebin2 emits 'drained' signal once, and only once, when all
pads are drained.
2008-06-20 16:56:18 +00:00
Thomas Vander Stichele
bcc3b3b5f5 apparently it's an error to specify nc -l -p 3000 - though the short usage does not make it very clear that you can d...
Original commit message from CVS:
apparently it's an error to specify nc -l -p 3000 - though the short usage
does not make it very clear that you can drop the host arg with -l
2008-06-20 16:12:50 +00:00
Wim Taymans
cf7da52701 gst/playback/gstplaybin2.c: Implement the source property, emit notify when it changes in the underlying uridecodebin.
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (gst_play_bin_get_property),
(notify_source), (activate_group):
Implement the source property, emit notify when it changes in the
underlying uridecodebin.
2008-06-20 09:19:59 +00:00
Antoine Tremblay
1a71c15677 gst/gdp/gstgdppay.c: Fix a buffer memleak and remove a confusing and wrong debug output.
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset):
Fix a buffer memleak and remove a confusing and wrong debug output.
Fixes bug #538663.
2008-06-20 08:45:13 +00:00
Stefan Kost
332fe99892 Final round of doc updates.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/speed/gstspeed.c:
* gst/speexresample/gstspeexresample.c:
* gst/videosignal/gstvideoanalyse.c:
* gst/videosignal/gstvideodetect.c:
* gst/videosignal/gstvideomark.c:
* sys/dvb/gstdvbsrc.c:
* sys/oss4/oss4-mixer.c:
* sys/oss4/oss4-sink.c:
* sys/oss4/oss4-source.c:
* sys/wininet/gstwininetsrc.c:
Final round of doc updates.
2008-06-16 07:30:32 +00:00
Michael Smith
2fdd607e95 gst/playback/gstplaybasebin.c: Disconnect signals from decodebins we created before we remove it from playbin, to avo...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c:
Disconnect signals from decodebins we created before we remove it from
playbin, to avoid crashes if the decodebin is eventually disposed after
the playbin itself (possible if the app takes a reference on the
decodebin).
Fixes #536521.
2008-06-04 17:42:38 +00:00
Tim-Philipp Müller
93db55c074 gst/typefind/gsttypefindfunctions.c: Bunch of small clean-ups: use gst_type_find_suggest_simple(); don't copy caps fo...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (aac_type_find),
(mp3_type_find), (musepack_type_find), (MULTIPART_MAX_HEADER_SIZE),
(mpeg_sys_type_find), (mpeg_ts_type_find), (mpeg4_video_type_find),
(h264_video_type_find), (mpeg_video_stream_type_find),
(dv_type_find), (mmsh_type_find):
Bunch of small clean-ups: use gst_type_find_suggest_simple(); don't
copy caps for no good reason (this may be desirable to make it easier
to detect leaks, but then it should probably be done for all caps
in the typefinder somewhere).
2008-06-04 17:12:40 +00:00
Peter Kjellerstedt
c140528357 gst/tcp/gstmultifdsink.c: Fixed accidental use of IPv4 options for all IPv6 addresses.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (setup_dscp_client):
Fixed accidental use of IPv4 options for all IPv6 addresses.
2008-06-04 11:33:23 +00:00
Antoine Tremblay
be2f6a8085 gst/gdp/gstgdppay.c: Don't set caps on the buffers that contain a copy of the buffer including the caps of them resul...
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader):
Don't set caps on the buffers that contain a copy of the buffer
including the caps of them resulting in an always increasing refcount
of the caps and insanely large caps. Instead include a buffer without
caps in the new caps. Fixes bug #536475.
2008-06-04 05:58:38 +00:00
Sebastian Dröge
d57ab7cfdb gst/videoscale/gstvideoscale.c: Transform a given PAR to a range on the struct with the generic height/width instead ...
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps):
Transform a given PAR to a range on the struct with the generic
height/width instead of the struct with the possibly restricted
height/width.
2008-06-04 05:44:06 +00:00
Sebastian Dröge
8b14d08115 gst/videoscale/gstvideoscale.c: Prefer the given format if it contains something stricter than [1,MAX] for height or ...
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (gst_video_scale_transform_caps):
Prefer the given format if it contains something stricter than [1,MAX]
for height or width and only put a structure that requires rescaling
as second. This makes it possible to use videoscale in pipelines where
the source can actually produce the wanted height/width but usually
selects a different one from the requested.
2008-06-04 04:24:27 +00:00
Sebastian Dröge
1d37b272ce gst/adder/gstadder.c: When using gst_element_iterate_pads() one has to unref every pad after usage.
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_query_duration),
(gst_adder_query_latency):
When using gst_element_iterate_pads() one has to unref every pad
after usage.
2008-06-02 12:20:35 +00:00
Sebastian Dröge
fdd708c418 gst/audioconvert/gstaudioconvert.c: Allow up to 11 positioned channels now that audioconvert can handle this but add ...
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c:
(structure_has_fixed_channel_positions),
(gst_audio_convert_transform_caps):
Allow up to 11 positioned channels now that audioconvert can handle
this but add no default positions for > 8 channels.
* tests/check/elements/audioconvert.c: (GST_START_TEST):
Add some unit tests for the above change: Test conversion of
11 positioned channels to stereo and the other way around, test
conversion of 15 unpositioned channels in different ways.
2008-05-30 08:42:17 +00:00
Sebastian Dröge
b86a5d4303 gst/audioconvert/gstchannelmix.c: If mixing left or right to center (or the other way around) only take the complete ...
Original commit message from CVS:
* gst/audioconvert/gstchannelmix.c:
(gst_channel_mix_fill_one_other):
If mixing left or right to center (or the other way around) only take
the complete value if we don't already have the original position in
the source.
2008-05-29 12:17:16 +00:00
Sebastian Dröge
45ef6b5e13 gst-libs/gst/audio/multichannel.c: Allow rear center together with rear left/right and other previously conflicting c...
Original commit message from CVS:
* gst-libs/gst/audio/multichannel.c:
(gst_audio_check_channel_positions),
(gst_audio_set_structure_channel_positions_list),
(gst_audio_fixate_channel_positions):
Allow rear center together with rear left/right and other previously
conflicting channel positions. The reason why they weren't allowed
was the channel mixing implementation in audioconvert.
Also take this into account when fixing channel layouts.
Allow setting channel positions for 1/2 channels when using
gst_audio_set_structure_channel_position().
* gst/audioconvert/gstchannelmix.c:
(gst_channel_mix_fill_compatible), (gst_channel_mix_detect_pos),
(gst_channel_mix_fill_one_other), (gst_channel_mix_fill_others),
(gst_channel_mix_fill_special), (gst_channel_mix_fill_matrix):
Major rewrite of the channel mixing.
We now allow previously	conflicting channel positions to appear
together (rear center and rear left/right for example).
Fixes bug #533817.
Rework the way channels are mixed together to take more possible
channel positions into account, properly mix from/to side channels
and don't assume that either center, left&right or nothing of a
specific position is available anymore.
* tests/check/elements/audioconvert.c: (GST_START_TEST):
Adjust unit tests with non-standard 1/2 channel layouts to the more
correct new behaviour.
Add a unit test for 5.1->Stereo downmixing.
2008-05-29 11:34:09 +00:00
Mark Nauwelaerts
17b17a566f gst/videorate/gstvideorate.*: React (more) to NEWSEGMENT
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* gst/videorate/gstvideorate.c: (gst_video_rate_reset),
(gst_video_rate_flush_prev), (gst_video_rate_event),
(gst_video_rate_chain):
* gst/videorate/gstvideorate.h:
React (more) to NEWSEGMENT
Small adjustment in timestamp calculation to prevent mismatches
Fixes #435633.
2008-05-28 14:49:24 +00:00
Sebastian Dröge
57c3aa9b66 gst/adder/gstadder.c: Implement latency query.
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_query_duration),
(gst_adder_query_latency), (gst_adder_query):
Implement latency query.
2008-05-28 08:14:47 +00:00
Sebastian Dröge
4ccac97b40 gst/adder/gstadder.c: Correctly resync the iterator if gst_iterator_next() returns
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_query_duration):
Correctly resync the iterator if gst_iterator_next() returns
GST_ITERATOR_RESYNC.
2008-05-27 18:10:00 +00:00
Wim Taymans
514b8fa456 gst/playback/gstdecodebin2.c: Check for NULL cases and log them, creating ghostpads can, for example, fail when the p...
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
(gst_decode_group_control_source_pad), (gst_decode_group_expose):
Check for NULL cases and log them, creating ghostpads can, for example,
fail when the pad returns wrong caps.
* gst/playback/gstplaybin2.c: (perform_eos):
When pushing out the EOS event, collect the return value and warn when
something failed.
2008-05-27 10:35:55 +00:00
Tim-Philipp Müller
fa38b99379 gst/videoscale/gstvideoscale.c: Change default scaling method from nearest-neighbour to bilinear.
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c: (DEFAULT_PROP_METHOD):
Change default scaling method from nearest-neighbour to bilinear.
2008-05-26 10:29:20 +00:00
Tim-Philipp Müller
206f91995b Limit duration to a maximum of five seconds for tmplayer format where we can guess the duration only from the timesta...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (parser_state_init),
(gst_sub_parse_format_autodetect), (handle_buffer):
* gst/subparse/gstsubparse.h:
* tests/check/elements/subparse.c: (test_tmplayer_style3b):
Limit duration to a maximum of five seconds for tmplayer format where
we can guess the duration only from the timestamp of the next line of
text. We don't want to show a text for eternities just because nothing
else is being said for a while.
2008-05-25 20:51:35 +00:00
Tim-Philipp Müller
747d52adb3 gst/videotestsrc/videotestsrc.c: May just as well use the precalculated uvstride here.
Original commit message from CVS:
* gst/videotestsrc/videotestsrc.c: (paint_hline_NV12_NV21):
May just as well use the precalculated uvstride here.
2008-05-22 22:35:40 +00:00
Jan Schmidt
d58def621b Add some documentation comments, and some new headers to be scanned.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gio.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggdemux.h:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggmux.h:
* gst/audioconvert/audioconvert.c:
* gst/audioconvert/audioconvert.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.h:
* gst/playback/gstdecodebin.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcp.h:
Add some documentation comments, and some new headers to be scanned.
Rename some internal enum declarations (audioconvert's DitherType and
NoiseShapingType, GstUnitType from the TCP elements) to match the
documented GObject type names so that the docs pick them up.
Name the playbin2 docs markups properly so they get picked up. They'll
need renaming back when/if playbin2 becomes playbin.
100% symbol coverage for the plugin docs, booya.
2008-05-22 22:09:16 +00:00
Thijs Vermeir
88b1e8efcf gst/videotestsrc/videotestsrc.c: Fix generation of NV12/NV21 frames. Fixes bug #532454.
Original commit message from CVS:
Patch by: Thijs Vermeir <thijsvermeir@gmail.com>
* gst/videotestsrc/videotestsrc.c: (paint_hline_NV12_NV21):
Fix generation of NV12/NV21 frames. Fixes bug #532454.
2008-05-22 18:30:15 +00:00
Sjoerd Simons
1c424d9d93 gst/playback/gstdecodebin.c: Lock the fakesink before setting the state to NULL and removing it from the bin so that ...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/playback/gstdecodebin.c: (remove_fakesink):
Lock the fakesink before setting the state to NULL and removing it from
the bin so that a concurrent state change cannot interfere.
Fixes #534331.
2008-05-22 11:59:33 +00:00
Julien Moutte
0f80e462d9 gst/tcp/gstmultifdsink.c: Use IPPROTO_IP instead of SOL_IP, works on more platforms.
Original commit message from CVS:
2008-05-21  Julien Moutte  <julien@fluendo.com>

* gst/tcp/gstmultifdsink.c: (setup_dscp_client): Use IPPROTO_IP
instead of SOL_IP, works on more platforms.
* gst/typefind/gsttypefindfunctions.c: (aac_type_find): Fix printf
arguments.
2008-05-21 16:47:58 +00:00
Wim Taymans
2cdf18edff Some debug and comment fixes.
Original commit message from CVS:
* ext/vorbis/vorbisdec.c:
* gst/videoscale/gstvideoscale.c: (gst_video_scale_transform):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_show_frame):
Some debug and comment fixes.
* tests/examples/dynamic/addstream.c: (main):
Fix , to ;
2008-05-21 16:44:15 +00:00
Wim Taymans
c6b54c3d02 Don't use bad gst_element_get_pad().
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind):
* gst/playback/decodetest.c: (new_decoded_pad_cb):
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(try_to_link_1), (elem_is_dynamic), (close_link), (type_found),
(cleanup_decodebin):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_init),
(connect_element), (gst_decode_group_control_demuxer_pad):
* gst/playback/gstplaybasebin.c: (queue_remove_probe),
(queue_out_of_data), (gen_preroll_element), (preroll_unlinked),
(mute_group_type):
* gst/playback/gstplaybin.c: (gst_play_bin_vis_blocked),
(gst_play_bin_set_property), (handoff), (gen_video_element),
(gen_text_element), (gen_audio_element), (gen_vis_element),
(remove_sinks), (add_sink), (setup_sinks):
* gst/playback/gstplaybin2.c: (pad_added_cb), (no_more_pads_cb):
* gst/playback/gstplaysink.c: (gst_play_sink_get_video_sink),
(gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked),
(gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin),
(gst_play_sink_get_vis_plugin), (gst_play_sink_set_mute),
(gen_video_chain), (gen_text_chain), (gen_audio_chain),
(gen_vis_chain), (gst_play_sink_reconfigure),
(gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc),
(gst_play_sink_request_pad):
* gst/playback/gsturidecodebin.c: (type_found), (setup_source):
* gst/playback/test.c: (gen_video_element), (gen_audio_element),
(cb_newpad):
* gst/playback/test6.c: (new_decoded_pad_cb):
* tests/check/elements/audioconvert.c: (GST_START_TEST):
* tests/check/elements/audiorate.c: (test_injector_chain),
(do_perfect_stream_test):
* tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST):
* tests/check/elements/gdpdepay.c: (GST_START_TEST):
* tests/check/elements/gnomevfssink.c:
* tests/check/elements/textoverlay.c:
(notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2):
* tests/check/elements/videotestsrc.c: (GST_START_TEST):
* tests/check/libs/cddabasesrc.c: (GST_START_TEST):
* tests/check/pipelines/oggmux.c: (test_pipeline):
* tests/check/pipelines/streamheader.c: (GST_START_TEST):
* tests/check/pipelines/theoraenc.c: (GST_START_TEST):
* tests/check/pipelines/vorbisenc.c: (GST_START_TEST):
* tests/examples/seek/scrubby.c: (make_wav_pipeline):
* tests/examples/seek/seek.c: (make_mod_pipeline),
(make_dv_pipeline), (make_wav_pipeline), (make_flac_pipeline),
(make_sid_pipeline), (make_parse_pipeline), (make_vorbis_pipeline),
(make_theora_pipeline), (make_vorbis_theora_pipeline),
(make_avi_msmpeg4v3_mp3_pipeline), (make_mp3_pipeline),
(make_avi_pipeline), (make_mpeg_pipeline), (make_mpegnt_pipeline),
(update_fill), (msg_buffering):
Don't use bad gst_element_get_pad().
2008-05-21 16:36:50 +00:00
Sebastian Dröge
736b181916 gst/audioconvert/gstchannelmix.c: Fix copy & paste error in last commit.
Original commit message from CVS:
* gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_others):
Fix copy & paste error in last commit.
2008-05-21 11:36:37 +00:00
Sebastian Dröge
7d605d4514 gst/audioconvert/gstchannelmix.c: Add support for mixing GST_AUDIO_CHANNEL_POSITION_SIDE_* from/to other channel posi...
Original commit message from CVS:
* gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_others):
Add support for mixing GST_AUDIO_CHANNEL_POSITION_SIDE_* from/to
other channel positions when source has SIDE channels and dest doesn't
or the other way around.
2008-05-21 11:30:58 +00:00
Henrik Eriksson
10ae17ced1 gst/tcp/gstmultifdsink.*: Add support for DSCP QOS. Fixes #469933.
Original commit message from CVS:
Patch by: Henrik Eriksson <henriken at axis dot com>
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init),
(gst_multi_fd_sink_init), (setup_dscp_client), (setup_dscp),
(gst_multi_fd_sink_add_full), (gst_multi_fd_sink_set_property),
(gst_multi_fd_sink_get_property):
* gst/tcp/gstmultifdsink.h:
Add support for DSCP QOS. Fixes #469933.
2008-05-21 11:29:25 +00:00
Sebastian Dröge
d47bd6d7bc gst/audioconvert/gstchannelmix.c: Prevent division by zero if the channel mix matrix contains only zeroes.
Original commit message from CVS:
* gst/audioconvert/gstchannelmix.c:
(gst_channel_mix_fill_normalize):
Prevent division by zero if the channel mix matrix contains only
zeroes.
2008-05-21 07:28:04 +00:00
Antoine Tremblay
a8dda35c1b gst/gdp/gstgdppay.c: Close a buffer memory leak. Fixes bug #534071.
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_chain):
Close a buffer memory leak. Fixes bug #534071.
2008-05-21 06:45:22 +00:00
Sebastian Dröge
e66b0a6642 gst/adder/gstadder.c: Adder also doesn't support audio/x-raw-int with width!=depth so don't claim this on the pad tem...
Original commit message from CVS:
* gst/adder/gstadder.c:
Adder also doesn't support audio/x-raw-int with width!=depth so don't
claim this on the pad template caps.
2008-05-21 05:48:05 +00:00
Sebastian Dröge
fcda3964dc gst/audioconvert/gstaudioconvert.c: Fix logic in last commit.
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_fixate_channels):
Fix logic in last commit.
2008-05-20 12:26:32 +00:00
Sebastian Dröge
d76c4b4c65 gst/audioconvert/gstaudioconvert.c: Passthrough the channel positions if the number of output channels is the same as...
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_fixate_channels):
Passthrough the channel positions if the number of output channels is
the same as the number of input channels, the input had a channel
layout and downstream requests no special one. We did this already for
> 2 channels but now it's also done for 1 channel. Fixes bug #533617.
2008-05-20 12:15:34 +00:00
Sebastian Dröge
b5a5d64713 gst/audioconvert/gstaudioconvert.c: Correctly set the default channel positions when converting to 8 channels.
Original commit message from CVS:
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_fixate_channels):
Correctly set the default channel positions when converting to 8
channels.
2008-05-20 08:12:19 +00:00
Tim-Philipp Müller
7cb1276dac gst/typefind/gsttypefindfunctions.c: Use data scan helper in aac typefinder and stop scanning for headers when we've ...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (aac_type_find):
Use data scan helper in aac typefinder and stop scanning
for headers when we've found a type. Also fix potential invalid
memory access when calculating the frame length.
2008-05-19 15:59:40 +00:00
Tim-Philipp Müller
cfc8f3c0d7 gst/typefind/gsttypefindfunctions.c: Don't modify scan context when we return FALSE in ensure_data, so it's possible ...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (data_scan_ctx_ensure_data),
(mpeg_sys_is_valid_pack):
Don't modify scan context when we return FALSE in ensure_data, so
it's possible to continue scanning, and we don't end up with a NULL
data pointer and a positive size, which might bite us the next time
we're called. Small constification.
2008-05-19 14:09:08 +00:00
Sebastian Dröge
05cf63634e gst/adder/gstadder.c: Adder doesn't support 24 bit samples so don't claim it supports them in the pad template caps.
Original commit message from CVS:
* gst/adder/gstadder.c:
Adder doesn't support 24 bit samples so don't claim it supports them
in the pad template caps.
2008-05-16 21:12:02 +00:00
Tim-Philipp Müller
d92ff26d29 gst/audioresample/gstaudioresample.c: Revert previous change which made basetransform handle buffer_alloc and which b...
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c: (gst_audioresample_init):
Revert previous change which made basetransform handle buffer_alloc
and which breaks things badly in the non-passthrough case since it
returned buffers with a different (ie. sometimes smaller) size than
the size requested.
2008-05-14 13:57:41 +00:00
Sebastian Dröge
6720c5beb8 gst/adder/gstadder.c: Correctly declare the supported endianness on the pad templates and check for correct endiannes...
Original commit message from CVS:
* gst/adder/gstadder.c: (gst_adder_setcaps),
(gst_adder_class_init):
Correctly declare the supported endianness on the pad templates
and check for correct endianness in the set caps function. Adder
only supports native endianness.
Also use gst_element_class_set_details_simple().
2008-05-14 10:58:52 +00:00
Hannes Bistry
b9bc12afd8 gst/tcp/: Fix regression in clientsrc because we did not add the fd to the poll set anymore. Fixes #532364.
Original commit message from CVS:
Patch by: Hannes Bistry <hannesb at gmx dot de>
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_start):
* gst/tcp/gsttcpserversink.c:
(gst_tcp_server_sink_handle_server_read),
(gst_tcp_server_sink_handle_wait), (gst_tcp_server_sink_init_send):
Fix regression in clientsrc because we did not add the fd to the poll
set anymore. Fixes #532364.
Do some cleanups here and there.
2008-05-13 16:02:19 +00:00
Sebastian Dröge
05349cc354 gst/playback/: Use correct marshallers. GstCaps are a boxed type and no GObject subclass.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplay-marshal.list:
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
Use correct marshallers. GstCaps are a boxed type and no GObject
subclass.
2008-05-13 13:04:24 +00:00
Sebastian Dröge
4d5870847f gst/ffmpegcolorspace/imgconvert.c: Fix nv12<->nv21 conversion if stride is larger than width.
Original commit message from CVS:
* gst/ffmpegcolorspace/imgconvert.c: (nv12_to_nv21):
Fix nv12<->nv21 conversion if stride is larger than width.
2008-05-13 09:14:44 +00:00
Tim-Philipp Müller
fed34307db gst/typefind/gsttypefindfunctions.c: Don't do lots of 4-byte peeks, but use the 'new' data scan helper for this inste...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (h264_video_type_find):
Don't do lots of 4-byte peeks, but use the 'new' data scan helper
for this instead; don't check if we've found enough markers after
each and every step, it's enough to do that only if we've actually
found a new marker.
Embed a G_UNLIKELY into the IS_MPEG_HEADER macro.
2008-05-10 20:16:21 +00:00
Tim-Philipp Müller
104fed4d66 gst/typefind/gsttypefindfunctions.c: Move scan helper thingy to the beginning of the file so we can use it in other t...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c:
(DATA_SCAN_CTX_CHUNK_SIZE), (DataScanCtx), (data_scan_ctx_advance),
(data_scan_ctx_ensure_data), (GST_MPEGVID_TYPEFIND_TRY_SYNC),
(mpeg_video_stream_type_find):
Move scan helper thingy to the beginning of the file so we can use
it in other typefind functions. Rename it to something more
generic. Also improve handling of things towards the end of the
typefind data: peek as much as we can if we know the size of the
data, rather than just min_size.
2008-05-10 18:19:17 +00:00
Sebastian Dröge
531c6fb462 gst/ffmpegcolorspace/: Add conversions from/to NV12 and NV21 and conversions between those two formats. Fixes bug #53...
Original commit message from CVS:
Based on a patch by:
Björn Benderius <bjoern dot benderius at axis dot com>
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt),
(gst_ffmpegcsp_avpicture_fill):
* gst/ffmpegcolorspace/imgconvert.c: (nv12_to_nv21):
* gst/ffmpegcolorspace/imgconvert_template.h:
Add conversions from/to NV12 and NV21 and conversions between those
two formats. Fixes bug #532166.
2008-05-09 08:34:52 +00:00
Edward Hervey
9fa3d7a294 gst/typefind/gsttypefindfunctions.c: Abort the h264 typefinding as soon as _peek() doesn't return anything, which hap...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (h264_video_type_find):
Abort the h264 typefinding as soon as _peek() doesn't return anything,
which happens for example with files smaller than 128kb.
2008-05-08 17:35:44 +00:00
Sjoerd Simons
09163ca363 gst/audioresample/gstaudioresample.c: Let audioresample use the buffer allocation of basetransform instead of it's ow...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/audioresample/gstaudioresample.c: (gst_audioresample_init):
Let audioresample use the buffer allocation of basetransform instead
of it's own stuff.
* tests/check/elements/audioresample.c: (alloc_only_48000),
(GST_START_TEST), (audioresample_suite):
Add unit test for the recent basetransform bugfix, where upstream
changes caps to something that can't be passed through anymore.
2008-05-08 06:20:42 +00:00
Sebastian Dröge
b9a285021c gst/volume/gstvolume.c: Return NOT_NEGOTIATED if we didn't set a process function yet for some reason instead of cras...
Original commit message from CVS:
* gst/volume/gstvolume.c: (volume_transform_ip):
Return NOT_NEGOTIATED if we didn't set a process function yet for some
reason instead of crashing later. Might fix bug #509125.
2008-05-06 12:35:09 +00:00
Tim-Philipp Müller
fd54092a2a gst/audioconvert/: Add support for more than 8 channels and NONE channel layouts. For more than 8 channels no channel...
Original commit message from CVS:
Based on a patch by: Tim-Philipp Müller  <tim.muller at collabora co uk>
* gst/audioconvert/audioconvert.c: (audio_convert_prepare_context):
* gst/audioconvert/audioconvert.h:
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_parse_caps),
(structure_has_fixed_channel_positions),
(gst_audio_convert_transform_caps):
* gst/audioconvert/gstchannelmix.c: (gst_channel_mix_fill_matrix):
Add support for more than 8 channels and NONE channel layouts. For
more than 8 channels no channel conversion is supported yet, only
format conversions are supported. Fixes bug #398033.
* tests/check/elements/audioconvert.c: (verify_convert),
(GST_START_TEST), (audioconvert_suite):
Add some unit tests by Tim for checking the NONE channel layouts
and more than 8 channels and add some more unit tests for channel
conversions.
2008-05-06 12:12:16 +00:00
Wim Taymans
4a3db41f6d gst/playback/gstdecodebin2.c: When autoplugging fails, set the element back to NULL before unreffing it.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c: (connect_pad):
When autoplugging fails, set the element back to NULL before
unreffing it.
2008-05-06 10:16:49 +00:00
Sebastian Dröge
9333eb4899 gst/subparse/samiparse.c: Remove trailing, leading and double whitespaces.
Original commit message from CVS:
* gst/subparse/samiparse.c: (handle_start_sync),
(end_sami_element), (characters_sami):
Remove trailing, leading and double whitespaces.
Correctly timestamp buffers and output the last buffer too.
* tests/check/elements/subparse.c: (GST_START_TEST),
(subparse_suite):
Add a simple unit test for SAMI parsing.
2008-05-05 12:33:05 +00:00
Young-Ho Cha
76e3ffb61c gst/subparse/samiparse.c: Only output characters inside the "sync" elements. There could be other elements like "styl...
Original commit message from CVS:
Patch by: Young-Ho Cha <ganadist at chollian dot net>
* gst/subparse/samiparse.c: (handle_start_sync),
(start_sami_element), (end_sami_element), (characters_sami),
(sami_context_reset):
Only output characters inside the "sync" elements. There could be
other elements like "style" that have some content but should
not be printed. Fixes bug #467911.
2008-05-05 11:14:48 +00:00
Sebastian Dröge
de277a5b2a gst/playback/: Allow setting -1 as current-audio to mute the current audio stream, similar to what is done for subtit...
Original commit message from CVS:
* gst/playback/gstplaybasebin.c: (set_audio_mute),
(set_active_source):
* gst/playback/gstplaybasebin.h:
* gst/playback/gstplaybin.c: (gst_play_bin_class_init),
(playbin_set_audio_mute):
Allow setting -1 as current-audio to mute the current audio stream,
similar to what is done for subtitles. Fixes bug #342294.
2008-05-05 10:03:51 +00:00
Sebastian Dröge
83f0729394 Remove some unused code.
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiosink.c: (audioringbuffer_thread_func):
* gst-libs/gst/audio/gstaudiosrc.c: (audioringbuffer_thread_func):
* gst/tcp/gsttcp.c: (gst_tcp_socket_write):
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_get_fps_list):
Remove some unused code.
* gst/audioconvert/gstaudioquantize.c:
(gst_audio_quantize_free_noise_shaping):
Don't return before freeing the noise shaping history.
2008-05-04 15:02:20 +00:00
Tim-Philipp Müller
005c1c8636 gst/subparse/: Fix parsing of tmplayer subtitle variant where every single line contains text and there isn't an empt...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (handle_buffer),
(gst_sub_parse_sink_event):
* gst/subparse/tmplayerparse.c: (tmplayer_process_buffer),
(tmplayer_parse_line):
Fix parsing of tmplayer subtitle variant where every single line contains
text and there isn't an empty line after each line to determine the
duration (#530962). Improve EOS handling for tmplayer subtitles a bit by
making sure that we push out the last line of text without a duration if
there's still text left in the buffer at the end.
2008-05-03 15:45:23 +00:00
Tim-Philipp Müller
ee90cf1969 gst/subparse/gstsubparse.c: Fix detection of discontinuities based on the buffer offset (doesn't work so well if no b...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (feed_textbuf):
Fix detection of discontinuities based on the buffer offset (doesn't work
so well if no buffer offset is set) and also check for the DISCONT buffer
flag. This keeps the parser state from being reset after each buffer in
the unit test.
2008-05-03 15:39:04 +00:00
Tim-Philipp Müller
6de5983831 gst/typefind/gsttypefindfunctions.c: Further fine-tuning: don't absolutely require sequence or GOP headers but adjust...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (mpeg_video_stream_type_find):
Further fine-tuning: don't absolutely require sequence or GOP headers
(as introduced in the previous commit), but adjust the typefind
probabilities returned accordingly if we don't see them. Also make sure
picture header and first slice are somewhat close to each other (which
is not perfect but still better than requiring a fixed offset or having
no limit at all).
2008-05-03 12:09:16 +00:00
Stefan Kost
2b843ca69f gst/playback/: Also include config.h when relying on defines from it. Fixes the build. Its been a please to serve :)
Original commit message from CVS:
* gst/playback/test4.c:
* gst/playback/test5.c:
* gst/playback/test6.c:
* gst/playback/test7.c:
Also include config.h when relying on defines from it. Fixes the
build. Its been a please to serve :)
2008-05-02 11:13:05 +00:00
Thijs Vermeir
32c304ad6f Add support for NV12 and NV21 in videotestsrc
Original commit message from CVS:
* gst/videotestsrc/videotestsrc.c (paint_setup_NV12),
(paint_setup_NV21), (paint_hline_NV12_NV21):
Add support for NV12 and NV21 in videotestsrc
2008-05-02 10:54:51 +00:00
Sebastian Dröge
abbce230e2 gst/videoscale/: Support 1x1 images as input and output as for example the BBC HQ new streams have 1x1 GIFs in the pl...
Original commit message from CVS:
* gst/videoscale/gstvideoscale.c:
* gst/videoscale/vs_4tap.c: (vs_image_scale_4tap_Y):
* gst/videoscale/vs_image.c: (vs_image_scale_nearest_RGBA),
(vs_image_scale_linear_RGBA), (vs_image_scale_nearest_RGB),
(vs_image_scale_linear_RGB), (vs_image_scale_nearest_YUYV),
(vs_image_scale_linear_YUYV), (vs_image_scale_nearest_UYVY),
(vs_image_scale_linear_UYVY), (vs_image_scale_nearest_Y),
(vs_image_scale_linear_Y), (vs_image_scale_nearest_RGB565),
(vs_image_scale_linear_RGB565), (vs_image_scale_nearest_RGB555),
(vs_image_scale_linear_RGB555):
Support 1x1 images as input and output as for example the BBC HQ new
streams have 1x1 GIFs in the playlists for some reason.
2008-05-02 10:02:05 +00:00
Tim-Philipp Müller
ea0d78e8e5 gst/playback/gstdecodebin.c: If we can't activate one of the decoders we plugged in (such as, say, musepackdec) for s...
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (free_pad_probe_for_element),
(try_to_link_1):
If we can't activate one of the decoders we plugged in (such as,
say, musepackdec) for some reason (it might not support push mode,
for example), remove any pad probes that close_pad_link() might
have set up. This makes sure we later don't try to remove a probe
for a pad that doesn't exist any longer, and avoids nast warnings
and probably other things too.
2008-05-01 19:11:42 +00:00
Tim-Philipp Müller
f8977b9e9e gst/typefind/gsttypefindfunctions.c: Rework mpeg video stream typefinding a bit more: make sure sequence,
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c:
(mpeg_video_stream_ctx_ensure_data), (mpeg_video_stream_type_find),
(plugin_init):
Rework mpeg video stream typefinding a bit more: make sure sequence,
GOP, picture and slice headers appear in the order they should and
that we've in fact at least had one of each; fix picture header
detection; decouple picture and slice header check - don't assume
they're at a fixed offset, there may be extra data in between. Also,
announce varying degrees of probability depending on what we found
exactly (multiple pictures, at least one picture, just sequence and
GOP headers). Finally, in _ensure_data(), take into account that we
might be typefinding smaller amounts of data, such as the first
buffer of a stream, so fall back to the minimum size needed as long
as that's available, instead of erroring out if there's less than
2kB of data. Fixes #526173. Conveniently also doesn't recognise the
fuzzed file from #399342 as valid.
2008-04-30 20:54:56 +00:00
Tim-Philipp Müller
5f6db60a4d gst/typefind/gsttypefindfunctions.c: Refactor a bit: use context structure to track parsing offset and size of availa...
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (MpegVideoStreamCtx),
(mpeg_video_stream_ctx_advance), (mpeg_video_stream_ctx_ensure_data),
(mpeg_video_stream_type_find):
Refactor a bit: use context structure to track parsing offset and size of
available data and make the code a bit clearer. Fixes bad memory access
in #356937.
2008-04-30 14:37:52 +00:00
Michael Smith
802c45b10b gst/: Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro is defined.
Original commit message from CVS:
* gst/playback/test4.c:
* gst/playback/test5.c:
* gst/playback/test6.c:
* gst/tcp/gstmultifdsink.c:
Include stdlib.h and unistd.h only if the appropriate HAVE_*_H macro
is defined.
2008-04-28 22:18:49 +00:00
Stefan Kost
2b44c294ff gst/playback/gstplaybin.c: Remove obsolete streaminfo code and fix a leak. Fixes #529546
Original commit message from CVS:
* gst/playback/gstplaybin.c:
Remove obsolete streaminfo code and fix a leak. Fixes #529546
2008-04-24 08:19:35 +00:00
Sebastian Dröge
0c73cdcbc8 gst/typefind/gsttypefindfunctions.c: Add "mpp" and "mp+" as possible extensions for MusePack files.
Original commit message from CVS:
* gst/typefind/gsttypefindfunctions.c: (musepack_type_find),
(plugin_init):
Add "mpp" and "mp+" as possible extensions for MusePack files.
Add typefinding for MusePack StreamVersion 8 files and include the
stream version in the caps.
2008-04-19 20:06:59 +00:00
Edward Hervey
9e630c23db gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Don't validate the payload if there isn't any.
Fixes #525915
2008-04-18 14:54:01 +00:00
Stefan Kost
e6528c39fe gst/audiotestsrc/gstaudiotestsrc.c: Remove cpp style commented old code.
Original commit message from CVS:
* gst/audiotestsrc/gstaudiotestsrc.c:
Remove cpp style commented old code.
2008-04-15 19:06:00 +00:00
Stefan Kost
0d3c154ccf gst/playback/gstdecodebin2.c: Fix signal docs.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c:
Fix signal docs.
2008-04-15 19:02:10 +00:00
Wim Taymans
f0738f6fd3 docs/design/draft-keyframe-force.txt: Fix typo.
Original commit message from CVS:
* docs/design/draft-keyframe-force.txt:
Fix typo.
* gst/playback/gstqueue2.c: (update_buffering),
(gst_queue_handle_src_query):
Set buffering mode in the messages.
Set buffering percent in the query.
* tests/examples/seek/seek.c: (update_fill), (msg_state_changed),
(do_stream_buffering), (do_download_buffering), (msg_buffering):
Do some more fancy things based on the buffering method in use.
2008-04-11 01:25:01 +00:00
Wim Taymans
e5bdd95038 gst/playback/gstqueue2.c: Include extra buffering stats in the buffering message.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (update_buffering),
(gst_queue_close_temp_location_file), (gst_queue_handle_src_query),
(gst_queue_src_checkgetrange_function):
Include extra buffering stats in the buffering message.
Implement BUFFERING query.
* gst/playback/gsturidecodebin.c: (do_async_start),
(do_async_done), (type_found), (setup_streaming), (setup_source),
(gst_uri_decode_bin_change_state):
Only add decodebin2 when the type is found in streaming mode.
Make uridecodebin async to PAUSED even when we don't have decodebin2
added yet.
2008-04-09 21:40:17 +00:00
Tim-Philipp Müller
7a29d716bd gst/: Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multipl...
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/volume/gstvolume.c: (plugin_init):
Work around missing bits of thread-safety on older GLibs some
more to avoid assertions when starting up multiple playbin
objects concurrently (see #512382).
2008-04-06 20:16:27 +00:00
Stefan Kost
b04f8ef354 docs/plugins/: Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
Update introspection data.
* ext/ogg/gstoggmux.c:
Document oggmux.
* gst/playback/gstdecodebin2.c:
Don't use gtk-doc style comment start for private stuff, but make it
formatted like this for consistency.
2008-04-03 14:58:06 +00:00
Wim Taymans
c98a370f8c gst/playback/gstdecodebin2.c: Remove fakesink hack, we can now implement this more elegantly.
Original commit message from CVS:
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (gst_decode_bin_dispose),
(gst_decode_bin_set_sink_caps), (gst_decode_bin_get_sink_caps),
(gst_decode_bin_set_property), (gst_decode_bin_get_property),
(analyze_new_pad), (connect_pad), (expose_pad),
(gst_decode_group_new), (gst_decode_group_control_demuxer_pad),
(gst_decode_group_expose), (gst_decode_group_free),
(do_async_start), (do_async_done), (gst_decode_bin_change_state):
Remove fakesink hack, we can now implement this more elegantly.
Added property to bypass typefinding.
Removed underrun callback and demuxer pad probe, we now use the srcpad
probe to expose groups.
API::sink-caps property
* gst/playback/gstplaybin2.c: (no_more_pads_cb):
Guard against multiple emissions of the no_more_pads signal, which
happens when we are dealing with chained oggs.
* gst/playback/gsturidecodebin.c: (remove_decoders),
(make_decoder), (type_found), (setup_streaming), (source_new_pad),
(setup_source):
For streams, use our own typefind element and plug our queue after it.
We will need this to determine the type of buffering to use for the
queue soon.
2008-04-03 12:16:04 +00:00
Wim Taymans
8f77a5d928 gst/playback/gstqueue2.c: Update the estimated input data when we push out a buffer.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (update_out_rates),
(gst_queue_open_temp_location_file),
(gst_queue_close_temp_location_file), (gst_queue_handle_src_event),
(gst_queue_handle_src_query), (gst_queue_set_property):
Update the estimated input data when we push out a buffer.
Add some debug info about the temp file.
Only forward src events when we are not using a temp file.
Don't block the duration query, we need to find something better.
Don't leak the temp filename.
2008-04-02 11:08:05 +00:00
Sebastian Dröge
c82eca96a6 configure.ac: Require GLib 2.12 and liboil 0.3.14.
Original commit message from CVS:
* configure.ac:
Require GLib 2.12 and liboil 0.3.14.
* gst/volume/gstvolume.c: (volume_process_double):
Unconditionally use liboil 0.3.14 function.
2008-04-01 14:01:14 +00:00
Michael Smith
670d6cd1e4 gst/gdp/gstgdpdepay.c: Check the body CRC (if set) when depayloading.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Check the body CRC (if set) when depayloading.
Fixes #522401.
2008-03-27 15:26:38 +00:00
Wim Taymans
03e571d945 gst/playback/gstqueue2.c: The queue is never filled when there are no buffers in the queue at all.
Original commit message from CVS:
* gst/playback/gstqueue2.c: (gst_queue_is_filled):
The queue is never filled when there are no buffers in the queue at all.
Fixes #523993.
2008-03-24 14:08:22 +00:00
Wim Taymans
ad1cbe1edd gst/playback/gstplaybin2.c: Update some docs.
Original commit message from CVS:
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init),
(init_group), (free_group), (gst_play_bin_init),
(gst_play_bin_finalize), (gst_play_bin_set_uri),
(gst_play_bin_set_suburi), (gst_play_bin_get_video_tags),
(gst_play_bin_get_audio_tags), (gst_play_bin_get_text_tags),
(gst_play_bin_set_current_video_stream),
(gst_play_bin_set_current_audio_stream),
(gst_play_bin_set_current_text_stream),
(gst_play_bin_set_encoding), (gst_play_bin_set_property),
(gst_play_bin_get_property), (pad_added_cb), (pad_removed_cb),
(no_more_pads_cb), (perform_eos), (autoplug_select_cb),
(activate_group), (deactivate_group), (setup_next_source),
(save_current_group), (gst_play_bin_change_state):
Update some docs.
Add new locks and conds to protect pipeline creation and group
switching.
Implement the sub-uri property.
Keep track of pending uridecodebin creation and configure the output
pipeline after all streams are configured.
Propagate subtitle encoding to the uridecodebins.
Implement getting the video/audio/visualisation elements.
Use input-selector for stream switching.
If we are asked to do visualisation, prefer to autoplug raw sinks
instead of sinks that accept encoded data.
2008-03-24 12:26:30 +00:00
Wim Taymans
cd1fed3345 gst/playback/gstplaysink.*: Add methods to get audio/video/vis elements.
Original commit message from CVS:
* gst/playback/gstplaysink.c: (gst_play_sink_class_init),
(gst_play_sink_init), (gst_play_sink_dispose),
(gst_play_sink_set_video_sink), (gst_play_sink_get_video_sink),
(gst_play_sink_set_audio_sink), (gst_play_sink_get_audio_sink),
(gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked),
(gst_play_sink_set_vis_plugin), (gst_play_sink_get_vis_plugin),
(gst_play_sink_set_volume), (gst_play_sink_get_volume),
(gst_play_sink_set_mute), (gen_video_chain), (gen_text_chain),
(gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure),
(gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc),
(gst_play_sink_send_event_to_sink), (gst_play_sink_change_state):
* gst/playback/gstplaysink.h:
Add methods to get audio/video/vis elements.
Add methods to set the font description for the overlay.
Remove properties, we're using this element with its methods only.
Add support for subtitles.
Rearrange the locking a bit to not use the object lock for protecting
the pipeline construction.
Try to use the volume and mute property on the sink when its available.
Implement the mute option with volume when the sink does not have a mute
property.
Only add volume element when the sink has no volume property.
Only do visualisations with raw audio pads.
2008-03-24 12:15:26 +00:00