Commit graph

85 commits

Author SHA1 Message Date
Michael Smith
7292973429 ext/theora/theoradec.c: Since the plugin doesn't support anything other than 4:2:0 right now, post an error and fail ...
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_handle_type_packet):
Since the plugin doesn't support anything other than 4:2:0 right
now, post an error and fail if we get something else. Won't matter
until libtheora supports the other pixel formats, but hopefully
that'll be soon...
2007-03-12 23:29:07 +00:00
Wim Taymans
62ef7da73b Small documentation updates/fixes
Original commit message from CVS:
* ext/theora/theoradec.c:
* ext/vorbis/vorbisdec.c:
* gst-libs/gst/audio/gstringbuffer.c:
(gst_ring_buffer_commit_full):
* gst-libs/gst/audio/gstringbuffer.h:
* gst-libs/gst/rtp/gstrtpbuffer.c:
* gst-libs/gst/tag/gstvorbistag.c:
Small documentation updates/fixes
2007-01-09 11:15:57 +00:00
Wim Taymans
0a5978dfaf ext/theora/theoradec.c: Implement reverse playback.
Original commit message from CVS:
* ext/theora/theoradec.c: (gst_theora_dec_reset),
(theora_dec_push_forward), (theora_dec_push_reverse),
(theora_handle_data_packet), (theora_dec_decode_buffer),
(theora_dec_flush_decode), (theora_dec_chain_reverse),
(theora_dec_chain_forward), (theora_dec_chain):
Implement reverse playback.
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset),
(vorbis_dec_decode_buffer), (vorbis_dec_flush_decode),
(vorbis_dec_chain_forward):
Clear buffers used for reverse playback in _reset.
No need to set the eos flag, we clip samples using the segment.
2006-11-26 16:39:41 +00:00
Wim Taymans
38a28fda01 ext/theora/: Document and partially implement an algorithm for doing reverse playback of theora video.
Original commit message from CVS:
* ext/theora/gsttheoradec.h:
* ext/theora/theoradec.c: (gst_theora_dec_init),
(theora_dec_sink_event), (theora_dec_chain_forward),
(theora_dec_flush_decode), (theora_dec_chain_reverse),
(theora_dec_chain):
Document and partially implement an algorithm for doing reverse playback
of theora video.
2006-11-02 15:06:36 +00:00
Michael Smith
d24ba074b7 ext/theora/theoradec.c: Zero byte theora packets are valid and well-defined; don't warn on them.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_chain):
Zero byte theora packets are valid and well-defined; don't warn on
them.
2006-10-06 12:57:10 +00:00
Wim Taymans
5f3f10861e ext/theora/theoradec.c: Better clipping.
Original commit message from CVS:
* ext/theora/theoradec.c: (clip_buffer):
Better clipping.
2006-07-21 11:03:28 +00:00
Edward Hervey
9dbfbfde27 ext/theora/theoradec.c: Implement clipping for accurate seeking.
Original commit message from CVS:
* ext/theora/theoradec.c: (clip_buffer), (theora_dec_push):
Implement clipping for accurate seeking.
Closes #345225
2006-06-19 09:57:50 +00:00
Stefan Kost
377e2be9f3 make more debug catagories static
Original commit message from CVS:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c: (gst_theora_parse_class_init):
* gst/audiorate/gstaudiorate.c:
make more debug catagories static
* tests/check/Makefile.am:
* tests/check/elements/adder.c: (message_received),
(test_event_message_received), (GST_START_TEST),
(test_play_twice_message_received), (adder_suite):
added test case for using element twice, extra bonus points for anyone
who can make these test run reliably
2006-05-23 20:38:56 +00:00
Tim-Philipp Müller
90840bc0e0 ext/theora/theoradec.c: Make work with time-stamped input buffers that do not have a granulepos in BUFFER_OFFSET_END ...
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_chain):
Make work with time-stamped input buffers that do not
have a granulepos in BUFFER_OFFSET_END (like theora
buffers coming from matroskademux). Fixes #342448.
2006-05-23 15:18:40 +00:00
Wim Taymans
97e943f681 ext/theora/theoradec.c: Cleanups, add some G_LIKELY.
Original commit message from CVS:
* ext/theora/theoradec.c: (gst_theora_dec_reset),
(theora_dec_src_query), (theora_dec_src_event),
(theora_dec_sink_event), (theora_handle_comment_packet),
(theora_handle_data_packet), (theora_dec_change_state):
Cleanups, add some G_LIKELY.
Use segment helpers instead of our own wrong code.
Clear queued buffers on seek and READY.
* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_reset),
(vorbis_dec_convert), (vorbis_dec_src_query),
(vorbis_dec_src_event), (vorbis_dec_sink_event),
(vorbis_handle_comment_packet), (vorbis_dec_push),
(vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
* ext/vorbis/vorbisdec.h:
Remove old useless packetno variable.
Do position query properly.
Add some G_LIKELY.
Do cleanup of queued buffers in new helper function
and use it.
2006-05-15 17:42:19 +00:00
Tim-Philipp Müller
d8965c30fb Const-ify GEnumValue and GFlagsValue arrays. Use
Original commit message from CVS:
* ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type),
(gst_text_overlay_halign_get_type),
(gst_text_overlay_wrap_mode_get_type):
* ext/theora/theoradec.c: (theora_handle_type_packet),
(theora_handle_data_packet):
* ext/theora/theoraenc.c: (gst_border_mode_get_type),
(theora_enc_sink_setcaps), (theora_enc_chain):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_mode_get_type):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type):
* gst/tcp/gstfdset.c: (gst_fdset_mode_get_type):
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_sync_method_get_type), (gst_unit_type_get_type),
(gst_client_status_get_type):
* gst/videoscale/gstvideoscale.c:
(gst_video_scale_method_get_type):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_pattern_get_type):
* gst/videotestsrc/videotestsrc.c: (paint_setup_I420),
(paint_setup_YV12), (paint_setup_YUY2), (paint_setup_UYVY),
(paint_setup_YVYU), (paint_setup_IYU2), (paint_setup_Y41B),
(paint_setup_Y42B), (paint_setup_Y800), (paint_setup_YVU9),
(paint_setup_YUV9), (paint_setup_RGB888), (paint_setup_BGR888),
(paint_setup_RGB565), (paint_setup_xRGB1555):
Const-ify GEnumValue and GFlagsValue arrays. Use
GST_ROUND_UP_* macros instead of home-made ones.
2006-05-09 19:24:46 +00:00
Wim Taymans
9e6ae51849 ext/ogg/gstoggdemux.c: Mark buffers with DISCONT after seek and after activating new chains.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer),
(gst_ogg_chain_mark_discont), (gst_ogg_chain_new_stream),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek):
Mark buffers with DISCONT after seek and after activating new
chains.
* ext/theora/gsttheoradec.h:
* ext/theora/theoradec.c: (gst_theora_dec_reset),
(theora_get_query_types), (theora_dec_sink_event),
(theora_dec_push), (theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
Fix frame counter.
Detect and mark DISCONT buffers.
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_dec_push), (vorbis_dec_chain),
(vorbis_dec_change_state):
* ext/vorbis/vorbisdec.h:
Use GstSegment.
Detect and mark DISCONT buffers.
Don't crash on 0 sized buffers.
2006-05-03 15:34:48 +00:00
Stefan Kost
e972defd3e make GstElementDetails const
Original commit message from CVS:
* ext/alsa/gstalsamixerelement.c:
* ext/alsa/gstalsasrc.c:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c:
* ext/ogg/gstogmparse.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/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiorate/gstaudiorate.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
* gst/subparse/gstsubparse.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
* gst/typefind/gsttypefindfunctions.c: (plugin_init):
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/v4l/gstv4ljpegsrc.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* sys/v4l/gstv4lsrc.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
* tests/check/libs/cddabasesrc.c:
make GstElementDetails const
2006-04-28 19:46:37 +00:00
Wim Taymans
ba7bbf143b ext/theora/theoradec.c: Some more debug info.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_event),
(theora_handle_data_packet):
Some more debug info.
* tests/examples/seek/seek.c: (start_seek), (main):
Print element messages too.
2006-04-10 10:29:21 +00:00
Wim Taymans
f0d28a0da1 ext/theora/theoradec.c: Unref unhandled events.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_sink_event),
(theora_handle_data_packet), (theora_dec_chain):
Unref unhandled events.
Protect against empty buffers.
Perform QoS on running time.
2006-04-07 15:14:32 +00:00
Andy Wingo
76d5f5e214 ext/theora/theoradec.c (theora_handle_data_packet): This value is often negative -- make it signed so as not to wrap ...
Original commit message from CVS:
2006-04-04  Andy Wingo  <wingo@pobox.com>

* ext/theora/theoradec.c (theora_handle_data_packet): This value
is often negative -- make it signed so as not to wrap around.
Fixes segfaults introduced on 9 March.
2006-04-04 10:16:46 +00:00
Wim Taymans
157a5acfed ext/theora/: Don't try to store a gdouble in a gboolean.
Original commit message from CVS:
* ext/theora/gsttheoradec.h:
* ext/theora/theoradec.c: (theora_dec_src_event):
Don't try to store a gdouble in a gboolean.
Small cleanups.
2006-04-03 16:43:10 +00:00
j^
08047f5cfe better/unified long descriptions
Original commit message from CVS:
Patch by: j^ <j at bootlab dot org>
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.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/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/subparse/gstsubparse.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpclientsink.c:
* gst/tcp/gsttcpclientsrc.c:
* gst/tcp/gsttcpserversink.c:
* gst/tcp/gsttcpserversrc.c:
better/unified long descriptions
Fixes #336477
2006-03-29 14:00:08 +00:00
Stefan Kost
2d826700fa Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init),
(gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init):
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init):
* ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init),
(gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init):
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_base_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_base_init):
* gst/adder/gstadder.c: (gst_adder_get_type):
* gst/adder/gstadder.h:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init),
(gst_audio_test_src_create):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_base_init):
* gst/volume/gstvolume.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* tests/check/libs/cddabasesrc.c:
* tests/old/examples/gob/gst-identity2.gob:
Add docs for adder, use GST_ELEMENT_DETAILS macro,
define GstElementDetails at the top
2006-03-24 10:42:11 +00:00
Wim Taymans
808d7edd02 ext/libvisual/visual.c: Small cleanups.
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_get_type),
(gst_visual_src_setcaps), (gst_vis_src_negotiate),
(gst_visual_chain):
Small cleanups.
* ext/theora/gsttheoradec.h:
* ext/theora/theoradec.c: (gst_theora_dec_init),
(gst_theora_dec_reset), (_theora_granule_time),
(theora_dec_src_convert), (theora_dec_sink_convert),
(theora_dec_src_query), (theora_dec_src_event),
(theora_dec_sink_event), (theora_handle_comment_packet),
(theora_handle_header_packet), (theora_dec_push),
(theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
Add simple QoS.
2006-03-09 17:58:00 +00:00
Wim Taymans
81e72d14b4 Updated/added documentation.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/pango/gstclockoverlay.h:
* ext/pango/gsttextoverlay.h:
* ext/pango/gsttextrender.h:
* ext/pango/gsttimeoverlay.h:
* ext/theora/gsttheoradec.h:
* ext/theora/gsttheoraenc.h:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* gst/audioconvert/gstaudioconvert.h:
* gst/audiotestsrc/gstaudiotestsrc.h:
* gst/ffmpegcolorspace/gstffmpegcolorspace.h:
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gstmultifdsink.h:
Updated/added documentation.
* ext/pango/gsttextoverlay.c: (gst_text_overlay_valign_get_type),
(gst_text_overlay_halign_get_type),
(gst_text_overlay_wrap_mode_get_type),
(gst_text_overlay_base_init), (gst_text_overlay_class_init),
(gst_text_overlay_init), (gst_text_overlay_set_property),
(gst_text_overlay_get_property):
Fix up properties to be enums instead of string to make bindings,
introspection and automatic GUI creation possible.
Add getters for the properties.
2006-03-01 16:24:37 +00:00
Tim-Philipp Müller
41e4f03f9b Pass unhandled queries upstream instead of just dropping them (#326447). Also, fix supported query types list for som...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_query_types),
(gst_ogg_pad_src_query):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query):
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_query):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_query):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_src_query),
(gst_vorbisenc_sink_query):
* gst/adder/gstadder.c: (gst_adder_query):
Pass unhandled queries upstream instead of just
dropping them (#326447). Also, fix supported
query types list for some elements.
2006-02-01 11:56:11 +00:00
Wim Taymans
6ec9735673 ext/theora/theoradec.c: Call right _scale functions.
Original commit message from CVS:
* ext/theora/theoradec.c: (_theora_granule_time),
(theora_dec_src_convert), (theora_dec_sink_convert):
Call right _scale functions.
Use parameter instead of some other random value.
2006-01-31 17:44:35 +00:00
Wim Taymans
344800fb30 ext/theora/theoradec.c: Use higher precision timestamps calculation.
Original commit message from CVS:
* ext/theora/theoradec.c: (_theora_granule_frame),
(_theora_granule_time), (_inc_granulepos),
(theora_dec_src_convert), (theora_dec_sink_convert),
(theora_handle_type_packet), (theora_handle_data_packet),
(theora_dec_chain):
Use higher precision timestamps calculation.
Convert some other conversions to _scale.
2006-01-31 17:27:00 +00:00
Tim-Philipp Müller
2d15397f29 ext/theora/theoradec.c: Post taglist actually on bus instead of just freeing it (fixes #327114 and totem bug #327080).
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_handle_comment_packet):
Post taglist actually on bus instead of just freeing it
(fixes #327114 and totem bug #327080).
* ext/vorbis/vorbisdec.c: (vorbis_handle_comment_packet):
Use gst_element_found_tags_for_pad(), so that the tags
are sent downstream as an event as well.
2006-01-16 15:19:55 +00:00
Thomas Vander Stichele
5f83aa7dfa expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:42:02 +00:00
Andy Wingo
1ecddd21ea Update for alloc_buffer changes.
Original commit message from CVS:
2005-12-05  Andy Wingo  <wingo@pobox.com>

* ext/libvisual/visual.c: (get_buffer):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer):
* ext/pango/gsttextrender.c: (gst_text_render_chain):
* ext/theora/theoradec.c: (theora_handle_data_packet):
* ext/theora/theoraenc.c: (theora_buffer_from_packet),
(theora_enc_chain):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create):
Update for alloc_buffer changes.
2005-12-05 13:02:12 +00:00
Jan Schmidt
0e82871285 Convert elements to use fractions for their framerate.
Original commit message from CVS:
* ext/libvisual/visual.c: (gst_visual_src_setcaps), (get_buffer),
(gst_visual_chain):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_chain):
* ext/theora/theoradec.c: (theora_handle_type_packet):
* ext/theora/theoraenc.c: (theora_enc_sink_setcaps),
(theora_enc_chain):
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
* gst-libs/gst/video/video.c: (gst_video_frame_rate):
* gst-libs/gst/video/video.h:
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_caps_to_pixfmt):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_set_caps):
* gst/videorate/gstvideorate.c: (gst_videorate_transformcaps),
(gst_videorate_setcaps), (gst_videorate_blank_data),
(gst_videorate_chain):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_src_fixate), (gst_videotestsrc_getcaps),
(gst_videotestsrc_parse_caps), (gst_videotestsrc_setcaps),
(gst_videotestsrc_event), (gst_videotestsrc_create):
* gst/videotestsrc/gstvideotestsrc.h:
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get),
(gst_ximagesink_setcaps), (gst_ximagesink_change_state),
(gst_ximagesink_get_times), (gst_ximagesink_init):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support),
(gst_xvimagesink_setcaps), (gst_xvimagesink_change_state),
(gst_xvimagesink_get_times), (gst_xvimagesink_init):
* sys/xvimage/xvimagesink.h:
Convert elements to use fractions for their framerate.
V4L elements to come later tonight.
2005-11-22 16:08:37 +00:00
Andy Wingo
20b31b4153 ext/ogg/gstoggdemux.c (gst_ogg_pad_submit_packet)
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* ext/ogg/gstoggdemux.c (gst_ogg_pad_submit_packet)
(gst_ogg_demux_perform_seek):
* ext/theora/theoradec.c (theora_dec_sink_event):
* ext/vorbis/vorbisdec.c (vorbis_dec_sink_event): Run
update-funcnames.
2005-11-22 11:51:24 +00:00
Andy Wingo
137c23468e Don't take stream lock.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* ext/vorbis/vorbisdec.c (vorbis_dec_sink_event):
* gst/videorate/gstvideorate.c (gst_videorate_event):
* ext/theora/theoradec.c (theora_dec_sink_event):
* ext/theora/theoraenc.c (theora_enc_sink_event): Don't take
stream lock.

* gst/subparse/gstsubparse.c (gst_subparse_src_event):
* ext/ogg/gstoggdemux.c (gst_ogg_demux_perform_seek): Update for
stream lock changes.
2005-11-21 17:29:00 +00:00
Andy Wingo
f405e12b4a *.*: Ran scripts/update-macros. Oh yes.
Original commit message from CVS:
2005-11-21  Andy Wingo  <wingo@pobox.com>

* *.h:
* *.c: Ran scripts/update-macros. Oh yes.
2005-11-21 16:35:24 +00:00
Thomas Vander Stichele
44ae8114e6 Fix a whole set of pad template leaks
Original commit message from CVS:
Fix a whole set of pad template leaks
2005-11-16 18:21:46 +00:00
Wim Taymans
7879080357 ext/: Fix old naming.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_event):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_handle_identification_packet),
(vorbis_handle_data_packet):
* ext/vorbis/vorbisdec.h:
Fix old naming.

* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
Don't try to sync on buffers without a timestamp.
2005-10-21 15:14:36 +00:00
Wim Taymans
f88e6c08fd Query API update.
Original commit message from CVS:
* examples/seeking/seek.c: (make_avi_msmpeg4v3_mp3_pipeline),
(query_positions_elems), (query_positions_pads), (update_scale),
(do_seek), (set_update_scale), (message_received), (main):
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_find_chains),
(gst_ogg_demux_loop):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_sink_query):
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_sink_event):
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_sink_event), (vorbis_handle_data_packet):
* gst/adder/gstadder.c: (gst_adder_query):
* gst/audiotestsrc/gstaudiotestsrc.c: (gst_audiotestsrc_src_query):
* gst/playback/test3.c: (update_scale):
* gst/playback/test5.c: (new_pad), (no_more_pads), (start_finding),
(dump_element_stats), (main):
* gst/playback/test6.c: (main):
* gst/sine/gstsinesrc.c: (gst_sinesrc_src_query):
Query API update.
2005-10-19 15:55:33 +00:00
Wim Taymans
f13f1c0b3b check/generic/states.c: remove old property.
Original commit message from CVS:
* check/generic/states.c: (GST_START_TEST):
remove old property.

* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_perform_seek):
* ext/theora/theoradec.c: (theora_dec_sink_event):
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_data_packet):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_set_gst_timestamp):
* gst/videorate/gstvideorate.c: (gst_videorate_event):
Update for newsegment API change.
2005-10-11 16:30:55 +00:00
Wim Taymans
d6825b358a ext/: Propagate error codes from alloc_buffer too.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer):
* ext/theora/theoradec.c: (theora_handle_data_packet):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
Propagate error codes from alloc_buffer too.
2005-09-29 19:12:44 +00:00
Andy Wingo
6665c3084c All plugins updated for element state changes.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* All plugins updated for element state changes.
2005-09-02 15:43:18 +00:00
Andy Wingo
c32721723b Updates for two-arg init from GST_BOILERPLATE_FULL.
Original commit message from CVS:
2005-08-28  Andy Wingo  <wingo@pobox.com>

* Updates for two-arg init from GST_BOILERPLATE_FULL.
2005-08-28 17:52:45 +00:00
Wim Taymans
7824216cef ext/ogg/gstoggdemux.c: Parse seeking events better.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_src_query),
(gst_ogg_pad_event), (gst_ogg_demux_factory_filter),
(gst_ogg_pad_submit_packet), (gst_ogg_chain_new),
(gst_ogg_demux_init), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_collect_chain_info), (gst_ogg_demux_collect_info),
(gst_ogg_demux_chain), (gst_ogg_demux_loop), (gst_ogg_print):
Parse seeking events better.
Unref static caps.
Generate correct newsegment events, fixes seeking in live oggs.

* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_dec_src_event), (theora_dec_src_getcaps),
(theora_dec_sink_event), (theora_dec_push), (theora_dec_chain):
Use newsegment values to report correct play time.

* ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
(vorbis_dec_src_event), (vorbis_dec_sink_event):
* ext/vorbis/vorbisdec.h:
Parse and use newsegment values to report correct play time.

* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_event), (gst_base_audio_sink_render):
Clear ringbuffer on flush.
Use newsegment values to calculate playback time.

* sys/ximage/ximagesink.c: (gst_ximagesink_get_times):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_times):
Basesink does newsegment calculations for us now.
2005-08-24 18:04:45 +00:00
Wim Taymans
ee8ed3a89d examples/seeking/seek.c: Update seek example.
Original commit message from CVS:
* examples/seeking/seek.c: (setup_dynamic_link),
(make_dv_pipeline), (make_vorbis_theora_pipeline), (query_rates),
(query_positions_elems), (query_positions_pads), (do_seek):
Update seek example.

* ext/ogg/gstoggdemux.c: (gst_ogg_pad_event),
(gst_ogg_pad_typefind), (gst_ogg_demux_chain_elem_pad),
(gst_ogg_demux_queue_data), (gst_ogg_demux_chain_peer),
(gst_ogg_pad_submit_packet), (gst_ogg_pad_submit_page),
(gst_ogg_demux_handle_event),
(gst_ogg_demux_deactivate_current_chain),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_collect_chain_info), (gst_ogg_demux_collect_info),
(gst_ogg_demux_chain), (gst_ogg_demux_send_event),
(gst_ogg_demux_loop):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_collected):
* ext/theora/theoradec.c: (theora_dec_src_event),
(theora_dec_src_getcaps), (theora_dec_sink_event),
(theora_dec_push), (theora_dec_chain):
* ext/vorbis/Makefile.am:
* ext/vorbis/vorbisdec.c: (vorbis_dec_src_event),
(vorbis_dec_sink_event), (vorbis_dec_push),
(vorbis_handle_data_packet):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_sink_event),
(gst_vorbisenc_chain):
* gst/playback/gststreaminfo.c: (cb_probe):
* gst/subparse/gstsubparse.c: (gst_subparse_src_event):
* gst/videorate/gstvideorate.c: (gst_videorate_event):
* gst/videoscale/gstvideoscale.c:
(gst_videoscale_handle_src_event):
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_event):
* sys/ximage/ximagesink.c: (gst_ximagesink_show_frame),
(gst_ximagesink_navigation_send_event):
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event):
Various event updates and cleanups
2005-07-27 18:34:29 +00:00
Wim Taymans
82dc411e33 Updated seek example.
Original commit message from CVS:
* docs/libs/tmpl/gstringbuffer.sgml:
* examples/seeking/seek.c: (make_vorbis_theora_pipeline),
(query_rates), (query_positions_elems), (query_positions_pads),
(update_scale), (do_seek):
Updated seek example.

* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_pad_submit_page), (gst_ogg_demux_activate_chain),
(gst_ogg_demux_find_chains), (gst_ogg_demux_send_event),
(gst_ogg_demux_loop):
Push out correct discont values.

* ext/theora/theoradec.c: (theora_dec_src_convert),
(theora_dec_sink_convert), (theora_dec_src_getcaps),
(theora_dec_sink_event), (theora_handle_type_packet),
(theora_handle_header_packet), (theora_dec_push),
(theora_handle_data_packet), (theora_dec_chain),
(theora_dec_change_state):
Better timestamping.

* ext/vorbis/vorbisdec.c: (gst_vorbis_dec_init),
(vorbis_dec_sink_event), (vorbis_dec_push),
(vorbis_handle_data_packet), (vorbis_dec_chain):
* ext/vorbis/vorbisdec.h:
Better timestamping.

* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_get_time), (gst_base_audio_sink_get_times),
(gst_base_audio_sink_event), (gst_base_audio_sink_render):
Handle syncing on timestamps instead of sample offsets. Make
use of DISCONT values as described in design docs.

* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_get_time):
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_acquire),
(gst_ring_buffer_set_sample), (gst_ring_buffer_commit),
(gst_ring_buffer_read):
* gst-libs/gst/audio/gstringbuffer.h:
* sys/ximage/ximagesink.c: (gst_ximagesink_get_times),
(gst_ximagesink_show_frame):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_times):
Correcly convert buffer timestamp to stream time.
2005-07-16 14:47:27 +00:00
Wim Taymans
9c4abc693f ext/: Remove deprecated/unused query types.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_get_query_types),
(theora_dec_src_getcaps), (theora_dec_push):
* ext/vorbis/vorbisdec.c: (vorbis_get_query_types):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_get_query_types):
Remove deprecated/unused query types.
2005-07-07 08:39:36 +00:00
Wim Taymans
a46a991d26 ext/theora/theoradec.c: Prepare for better timestamp fix later.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_src_getcaps),
(theora_dec_push), (theora_handle_data_packet):
Prepare for better timestamp fix later.

* gst/audioconvert/gstaudioconvert.c:
List most accurate caps first

* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_loop):
Use proper pad task function.

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_show_frame):
Fix deadlock when alloc failed.
2005-07-06 15:14:38 +00:00
Andy Wingo
1f40231de5 configure.ac: Enable -Werror.
Original commit message from CVS:
2005-07-04  Andy Wingo  <wingo@pobox.com>

* configure.ac: Enable -Werror.

* ext/theora/theoradec.c (theora_dec_src_getcaps):
* gst/audioconvert/bufferframesconvert.c
(buffer_frames_convert_fixate):
* gst/audioconvert/gstaudioconvert.c (_fixate_caps_to_int)
(gst_audio_convert_fixate):
* gst/sine/gstsinesrc.c (gst_sinesrc_src_fixate)
(gst_sinesrc_create): Fixate func changes.

* sys/ximage/ximagesink.c: (gst_ximagesink_renegotiate_size),
(gst_ximagesink_buffer_alloc): Unused var.
2005-07-04 10:37:25 +00:00
Andy Wingo
5e606a8451 ext/theora/theoradec.c (theora_dec_src_getcaps): Implement a getcaps to do explicit caps. Needs to be done in all dec...
Original commit message from CVS:
2005-07-01  Andy Wingo  <wingo@pobox.com>

* ext/theora/theoradec.c (theora_dec_src_getcaps): Implement a
getcaps to do explicit caps. Needs to be done in all decoders,
possibly via a base class.

* configure.ac (GST_PLUGIN_LDFLAGS): Add videoscale.

* ext/ogg/gstoggdemux.c (gst_ogg_pad_typefind): No need to set
caps on the sink pad, just rely on the pad template. Also, setting
ANY caps on a pad is not valid because the caps are not fixed.

* sys/ximage/ximagesink.c (gst_ximagesink_buffer_alloc): Set the
caps on the buffer, and get the width from the desired_caps if
they're set.
(gst_ximagesink_renegotiate_size): Implement via setting the
desired_caps on the ximagesink.
(gst_ximagesink_setcaps): Only reset the width of the player if it
wasn't already set. Not sure if this is right.
(gst_ximagesink_show_frame): Memcpy only for normal buffers.

* sys/ximage/ximagesink.h (desired_caps): New field, is the caps
that the user wants. NULL unless the window has been resized.

* gst/volume/gstvolume.c (volume_transform): Adapt to
basetransform refcount changes.
2005-07-01 17:13:02 +00:00
Edward Hervey
6ec852f662 ext/theora/theoradec.c: re-arranged call to parent's state change in order to avoid locks (or worse).
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_change_state):
re-arranged call to parent's state change in order to avoid locks (or
worse).
2005-06-27 13:11:29 +00:00
Andy Wingo
55d437af1c gst/: Ghost pad API fixes.
Original commit message from CVS:
2005-06-09  Andy Wingo  <wingo@pobox.com>

* gst-libs/gst/gconf/gconf.c:
* gst/playback/test.c:
* gst/playback/gstplaybin.c (gen_video_element): Ghost pad API
fixes.

* gst/audioconvert/gstaudioconvert.c: RPAD fixes.

* ext/theora/theoraenc.c (theora_enc_chain):
* ext/theora/theoradec.c (theora_handle_data_packet): GCC4 fixes.

* ext/ogg/gstoggdemux.c (GstOggPad): Derive from GstPad, not
RealPad.
2005-06-08 22:18:05 +00:00
Wim Taymans
6db639089a Cleanups and buffer alloc.
Original commit message from CVS:
* ext/ogg/README:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_clear_chains):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_buffer_from_page):
* ext/theora/theoradec.c: (theora_dec_src_query),
(theora_handle_data_packet):
* ext/theora/theoraenc.c: (theora_buffer_from_packet),
(theora_enc_chain):
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_data_packet):
* gst/audioconvert/bufferframesconvert.c:
(buffer_frames_convert_chain):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_configure_context),
(gst_ffmpegcsp_setcaps), (gst_ffmpegcsp_bufferalloc),
(gst_ffmpegcsp_chain):
* gst/videorate/gstvideorate.c: (gst_videorate_transformcaps),
(gst_videorate_getcaps), (gst_videorate_setcaps),
(gst_videorate_event), (gst_videorate_chain):
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_activate),
(gst_videotestsrc_src_query), (gst_videotestsrc_loop):
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new),
(gst_ximagesink_setcaps), (gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimage_buffer_finalize), (gst_xvimage_buffer_free),
(gst_xvimage_buffer_class_init), (gst_xvimage_buffer_get_type),
(gst_xvimagesink_xvimage_new), (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc):
Cleanups and buffer alloc.
2005-06-02 09:46:40 +00:00
Wim Taymans
b6764dcc97 ext/ogg/gstoggdemux.c: Also FLUSH upstream, makes the loop function exit faster.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_clear_chains):
Also FLUSH upstream, makes the loop function exit faster.

* ext/theora/theoradec.c: (theora_dec_src_query):
Some more debug info in the query.

* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_new),
(gst_ximagesink_setcaps):
Release lock on par error, better error reporting.
2005-05-30 16:34:46 +00:00
Wim Taymans
2bed7c60aa ext/: Remove STREAM locks as they are taken in core now.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose),
(gst_ogg_pad_typefind), (gst_ogg_pad_submit_packet),
(gst_ogg_chain_new_stream), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_chain), (gst_ogg_demux_loop),
(gst_ogg_demux_sink_activate):
* ext/theora/theoradec.c: (theora_dec_src_event),
(theora_handle_comment_packet), (theora_dec_chain),
(theora_dec_change_state):
* ext/vorbis/vorbisdec.c: (vorbis_dec_sink_event),
(vorbis_handle_data_packet), (vorbis_dec_chain),
(vorbis_dec_change_state):
Remove STREAM locks as they are taken in core now.
Never set bogus granulepos on vorbis/theora.
Fix leaks in theoradec tag parsing.
2005-05-25 12:04:37 +00:00