Commit graph

163 commits

Author SHA1 Message Date
Jan Schmidt
34db0838be Fix integer overflow problem with pixel-aspect-ratio calculations in videoscale and xvimagesink (#341542)
Original commit message from CVS:
* docs/libs/gst-plugins-base-libs-docs.sgml:
* docs/libs/gst-plugins-base-libs-sections.txt:
* gst-libs/gst/video/video.c: (gst_video_calculate_display_ratio):
* gst-libs/gst/video/video.h:
* gst/videoscale/Makefile.am:
* gst/videoscale/gstvideoscale.c: (gst_video_scale_fixate_caps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps):
* tests/check/Makefile.am:
* tests/check/libs/video.c: (GST_START_TEST), (video_suite),
(main):
Fix integer overflow problem with pixel-aspect-ratio calculations
in videoscale and xvimagesink (#341542)
2006-05-12 21:30:00 +00:00
Wim Taymans
1f6e29bcb0 sys/: Register special buffer types along with the objects so that they are not registered at runtime from N differen...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_get_type):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_type):
Register special buffer types along with the objects so
that they are not registered at runtime from N different
streaming threads since they are not threadsafe.
2006-05-11 10:14:20 +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
Stefan Kost
0afac375b4 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* ext/alsa/gstalsamixeroptions.c:
(gst_alsa_mixer_options_class_init):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_class_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/ogg/gstoggparse.c: (gst_ogg_parse_class_init):
* gst-libs/gst/audio/gstaudioclock.c: (gst_audio_clock_class_init):
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_class_init):
* gst-libs/gst/audio/gstaudiosink.c:
(gst_audioringbuffer_class_init):
* gst-libs/gst/audio/gstaudiosrc.c:
(gst_audioringbuffer_class_init):
* gst-libs/gst/audio/gstringbuffer.c: (gst_ring_buffer_class_init):
* gst-libs/gst/interfaces/colorbalancechannel.c:
(gst_color_balance_channel_class_init):
* gst-libs/gst/interfaces/mixeroptions.c:
(gst_mixer_options_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/interfaces/tunerchannel.c:
(gst_tuner_channel_class_init):
* gst-libs/gst/interfaces/tunernorm.c: (gst_tuner_norm_class_init):
* gst-libs/gst/netbuffer/gstnetbuffer.c:
(gst_netbuffer_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c:
(gst_stream_selector_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* sys/v4l/gstv4lcolorbalance.c:
(gst_v4l_color_balance_channel_class_init):
* sys/v4l/gstv4ljpegsrc.c: (gst_v4ljpegsrc_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4ltuner.c: (gst_v4l_tuner_channel_class_init),
(gst_v4l_tuner_norm_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
* tests/old/testsuite/alsa/sinesrc.c: (sinesrc_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2006-04-08 21:02:53 +00:00
Edward Hervey
8f194ed848 gcc 4.1 unreferenced pointer fixes.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_dispose):
* gst/playback/gstplaybin.c: (handoff):
* gst/playback/gststreamselector.c:
(gst_stream_selector_set_property):
gcc 4.1 unreferenced pointer fixes.
* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put):
gst_buffer_ref() now takes a GstBuffer*.
2006-03-21 14:26:01 +00:00
Julien Moutte
ec0e8a27f1 sys/xvimage/xvimagesink.c: Fix a memleak reported by Jan Schmidt.
Original commit message from CVS:
2006-03-20  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_get_format_from_caps): Fix a memleak reported
by Jan Schmidt.
2006-03-20 18:09:41 +00:00
Julien Moutte
3b285cc760 sys/xvimage/xvimagesink.c: Check that the xvimage we are creating has a correct size before returning it. (#3...
Original commit message from CVS:
2006-03-05  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_show_frame), (gst_xvimagesink_buffer_alloc):
Check that the xvimage we are creating has a correct size         before returning it. (#314897)
2006-03-05 21:34:23 +00:00
Tim-Philipp Müller
c93d1b1c2a sys/: Add some _CFLAGS and _LIBS that seem to be missing and/or required for Cygwin (see #317048).
Original commit message from CVS:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Add some _CFLAGS and _LIBS that seem to be missing
and/or required for Cygwin (see #317048).
2006-02-24 10:18:52 +00:00
Jan Schmidt
c8ddff9120 sys/: Set shared memory segments to be deleted as soon as we have attached, that way they get cleaned up automaticall...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_destroy):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new):
Set shared memory segments to be deleted as soon as we have attached,
that way they get cleaned up automatically if we crash.
2006-02-18 22:41:31 +00:00
Jan Schmidt
6a22f9115b sys/: Fix up the XShm call testing so that we catch errors, and don't cause new ones by attempting to detach from a s...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls):
Fix up the XShm call testing so that we catch errors, and don't
cause new ones by attempting to detach from a segment we failed
to attach to. Fixes #312439.
2006-02-11 23:35:55 +00:00
Jan Schmidt
2b5b4217d4 ext/alsa/gstalsasink.c: Free the device name string.
Original commit message from CVS:
* ext/alsa/gstalsasink.c: (gst_alsasink_finalise),
(gst_alsasink_class_init):
Free the device name string.

* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init),
(gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad),
(gst_ogg_mux_handle_src_event), (gst_ogg_mux_clear_collectpads):
Don't remove a pad from the collectpads structure until it
is released - it's a request pad, and may receive data again
if the element gets moved back to PLAYING state.

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
Ensure we turn on double buffering on the Xv port, and
set the colour key to something dark and mysterious that
isn't black.
2006-01-27 01:36:01 +00:00
Julien Moutte
d1a56c2cb2 sys/: Handle some more cases of pixel aspect ratio.
Original commit message from CVS:
2006-01-26  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c:
(gst_ximagesink_calculate_pixel_aspect_ratio):
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_calculate_pixel_aspect_ratio): Handle some
more cases of pixel aspect ratio.
2006-01-26 19:17:38 +00:00
Julien Moutte
b4c1c1c61c sys/: Playbin keeps some ref to some frames. We might get a frame destroyed after changing state to
Original commit message from CVS:
2006-01-22  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_destroy):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimagesink_buffer_alloc): Playbin keeps some ref to some
frames. We might get a frame destroyed after changing state to
NULL, adding a safety check on xcontext.
2006-01-22 17:24:02 +00:00
Julien Moutte
db4de40ebf sys/xvimage/xvimagesink.c: I think one day i'll completely undestand how caps negotiation is supposed to work. This r...
Original commit message from CVS:
2006-01-21  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_buffer_alloc):
I think one day i'll completely undestand how caps negotiation
is supposed to work. This refactoring handles buffer_alloc
called with caps we can't handle. We definitely don't want a
set_caps with those caps, so we define and allocate a buffer
we would like to receive.
2006-01-21 22:40:03 +00:00
Thomas Vander Stichele
71d80c4751 sys/: move all regularly occurring messages to GST_LOG level add some more object logs
Original commit message from CVS:

* sys/ximage/ximagesink.c: (gst_ximage_buffer_finalize),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_put),
(gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_finalize),
(gst_xvimagesink_xvimage_put), (gst_xvimagesink_show_frame),
(gst_xvimagesink_buffer_alloc):
move all regularly occurring messages to GST_LOG level
add some more object logs
2006-01-15 10:06:40 +00:00
Julien Moutte
f77a290549 sys/xvimage/xvimagesink.c: Fixed a leak of the current image reference when cleaning up.
Original commit message from CVS:
2005-12-11  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state):
Fixed a leak of the current image reference when cleaning up.
Thanks to Arwed von Merkatz (alley_cat) for pointing it out.
2005-12-11 22:26:08 +00:00
Julien Moutte
ff7304769f sys/: Fixed a tricky bug. When caps renegotiation happens (only visible on ximagesink but bug is in xv too) set_caps ...
Original commit message from CVS:
2005-11-28  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_ximage_put),
(gst_ximagesink_setcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_setcaps): Fixed a tricky bug. When caps
renegotiation
happens (only visible on ximagesink but bug is in xv too)
set_caps was
destroying the internal x[v]image used to memcpy non locally
alloced
buffers so that it got renewed on next _chain. The issue is that
_expose will try to put that image as it reffed it in _put.
Using gst_buffer_unref instead of destroy fixes it !
2005-11-28 22:13:33 +00:00
Thomas Vander Stichele
4d8c9991a4 gst-libs/gst/video/Makefile.am: compile in copied-over videofilter into the video library
Original commit message from CVS:

* gst-libs/gst/video/Makefile.am:
compile in copied-over videofilter into the video library
* gst-libs/gst/video/videosink.h:
rename the header to gstvideosink.h since it's a base GstObject class
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h:
use the new header
2005-11-28 17:32:55 +00:00
Julien Moutte
0767718887 sys/xvimage/xvimagesink.c: Fix navigation events coordinates translation with pixel aspect ratios.
Original commit message from CVS:
2005-11-28  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event): Fix navigation events
coordinates translation with pixel aspect ratios.
2005-11-28 14:32:48 +00:00
Julien Moutte
9e5ce652b2 sys/xvimage/xvimagesink.c: Use calculated video geometry from _setcaps instead of buffer caps to respect pixel aspect...
Original commit message from CVS:
2005-11-28  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put):
Use calculated video geometry from _setcaps instead of buffer
caps to respect pixel aspect ratio. (fixes #322388)
2005-11-28 14:15:54 +00:00
Julien Moutte
390aa5ec7c sys/xvimage/xvimagesink.c: Refuse to create an XvImage if we can't find the format.
Original commit message from CVS:
2005-11-28  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new):
Refuse to create an XvImage if we can't find the format.
2005-11-28 10:43:26 +00:00
Julien Moutte
532bb2e605 sys/ximage/ximagesink.c: Fixed a tricky race.
Original commit message from CVS:
2005-11-27  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximage_buffer_free),
(gst_ximagesink_ximage_new), (gst_ximagesink_ximage_put),
(gst_ximagesink_bufferpool_clear),
(gst_ximagesink_buffer_alloc),
(gst_ximagesink_expose): Fixed a tricky race.
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_put),
(gst_xvimagesink_expose): Fixed a tricky race.
* sys/xvimage/xvimagesink.h:
2005-11-27 18:12:23 +00:00
Julien Moutte
462b7b64c4 More and more documentation.
Original commit message from CVS:
2005-11-27  Julien MOUTTE  <julien@moutte.net>

* docs/libs/tmpl/gstcolorbalance.sgml:
* docs/libs/tmpl/gstmixer.sgml:
* docs/libs/tmpl/gstxoverlay.sgml:
* sys/ximage/ximagesink.c: (gst_ximagesink_buffer_alloc):
* sys/ximage/ximagesink.h:
* sys/xvimage/xvimagesink.h: More and more documentation.
2005-11-27 11:41:55 +00:00
Julien Moutte
c5a52004e0 Added doc for xvimagesink.
Original commit message from CVS:
2005-11-26  Julien MOUTTE  <julien@moutte.net>

* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* sys/xvimage/xvimagesink.c: Added doc for xvimagesink.
2005-11-26 15:26:36 +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
Tim-Philipp Müller
e24e8e1276 sys/: Call gst_x_overlay_prepare_xwindow_id() to give applications a final chance to set their own xwindow id before ...
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximagesink_setcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps):
Call gst_x_overlay_prepare_xwindow_id() to give applications
a final chance to set their own xwindow id before the video
sink creates its own window.
2005-11-22 11:13:49 +00:00
Julien Moutte
24cc7d9c1a sys/xvimage/xvimagesink.c: Handle navigation events correcly with borders if applicable.
Original commit message from CVS:
2005-11-22  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event): Handle navigation
events correcly with borders if applicable.
2005-11-22 10:09:54 +00:00
Julien Moutte
cc3190e666 sys/ximage/ximagesink.c: Add debug macros on functions.
Original commit message from CVS:
2005-11-22  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_event_thread),
(gst_ximagesink_class_init): Add debug macros on functions.
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_xwindow_draw_borders),
(gst_xvimagesink_xvimage_put),
(gst_xvimagesink_xwindow_update_geometry),
(gst_xvimagesink_handle_xevents),
(gst_xvimagesink_get_xv_support),
(gst_xvimagesink_event_thread), (gst_xvimagesink_xcontext_get),
(gst_xvimagesink_xcontext_clear),
(gst_xvimagesink_get_format_from_caps),
(gst_xvimagesink_setcaps),
(gst_xvimagesink_change_state), (gst_xvimagesink_show_frame),
(gst_xvimagesink_buffer_alloc),
(gst_xvimagesink_set_xwindow_id),
(gst_xvimagesink_expose), (gst_xvimagesink_set_property),
(gst_xvimagesink_get_property), (gst_xvimagesink_finalize),
(gst_xvimagesink_init), (gst_xvimagesink_class_init):
* sys/xvimage/xvimagesink.h: Refactoring to handle aspect ratio,
expose while being PAUSED, out of data flow navigation events,
etc..
2005-11-22 09:18:56 +00:00
Tim-Philipp Müller
aaf1e55bd2 gst-libs/gst/interfaces/xoverlay.*: Remove everything having to do with the desired size; add gst_x_overlay_prepare_x...
Original commit message from CVS:
* gst-libs/gst/interfaces/xoverlay.c: (gst_x_overlay_base_init),
(gst_x_overlay_got_xwindow_id), (gst_x_overlay_prepare_xwindow_id):
* gst-libs/gst/interfaces/xoverlay.h:
Remove everything having to do with the desired size; add
gst_x_overlay_prepare_xwindow_id() function; remove the
'have-xwindow-id' signal and make gst_x_overlay_got_xwindow_id()
post a message on the bus instead (#321816).
* sys/ximage/ximagesink.c: (gst_ximagesink_xoverlay_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps),
(gst_xvimagesink_xoverlay_init):
Remove desired size stuff (#321816).
2005-11-21 20:28:23 +00:00
Jan Schmidt
1cc82e9138 Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027)
Original commit message from CVS:
* ext/libvisual/visual.c: (get_buffer):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_fixate):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_fixate_caps):
* gst/audioscale/gstaudioscale.c: (gst_audioscale_fixate):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiotestsrc_src_fixate):
* gst/sine/gstsinesrc.c: (gst_sinesrc_src_fixate):
* gst/videorate/gstvideorate.c: (gst_videorate_setcaps):
* gst/videoscale/gstvideoscale.c: (gst_videoscale_fixate_caps):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_videotestsrc_src_fixate):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_fixate):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_fixate):
Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
(#322027)
2005-11-21 14:29:53 +00:00
Tim-Philipp Müller
213898e8dc Fixes for GST_FOURCC_FORMAT API change.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps),
(gst_riff_create_iavs_caps):
* gst-libs/gst/riff/riff-read.c: (gst_riff_parse_file_header),
(gst_riff_parse_strh), (gst_riff_parse_strf_vids),
(gst_riff_parse_info):
* gst/videotestsrc/videotestsrc.c: (paintinfo_find_by_structure):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_set_caps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps):
Fixes for GST_FOURCC_FORMAT API change.
2005-11-21 13:32:36 +00:00
Tim-Philipp Müller
533d7d68c3 sys/xvimage/xvimagesink.c: Make state change function thread safe.
Original commit message from CVS:
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state):
Make state change function thread safe.
2005-11-15 19:01:43 +00:00
Julien Moutte
0a55772493 sys/xvimage/xvimagesink.c: Discovered how to take away flickering while resizing the window. Please don't put that in...
Original commit message from CVS:
2005-11-14  Julien MOUTTE  <julien@moutte.net>

* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_new):
Discovered how to take away flickering while resizing the
window. Please don't put that in ximagesink, refactoring in
progress.
2005-11-14 22:01:22 +00:00
Tim-Philipp Müller
e6ef73471b sys/xvimage/xvimagesink.c: Check whether peer pad exists before sending navigation events to it.
Original commit message from CVS:
* sys/xvimage/xvimagesink.c:
(gst_xvimagesink_navigation_send_event):
Check whether peer pad exists before sending navigation events
to it.
2005-11-11 17:41:04 +00:00
Julien Moutte
d69cf5631a sys/: Check the caps against our xcontext caps.
Original commit message from CVS:
2005-10-24  Julien MOUTTE  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_setcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_setcaps): Check
the caps against our xcontext caps.
2005-10-24 17:04:01 +00:00
Julien Moutte
69f68fa9f6 And here comes my change on caps for framerate and geometry range.
Original commit message from CVS:
2005-10-24  Julien MOUTTE  <julien@moutte.net>

* gst-libs/gst/video/video.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
And
here comes my change on caps for framerate and geometry range.
We are now accepting 1 to MAXINT for width and height, and from
0.0 to MAXDOUBLE for framerate. That allows duration less png
frames
to be blended correctly in videomixer.
2005-10-24 13:36:40 +00:00
Thomas Vander Stichele
4f8f42b0b6 restructure configure.ac, use correct libtool LDFLAGS, fix up defines
Original commit message from CVS:
restructure configure.ac, use correct libtool LDFLAGS, fix up defines
2005-10-16 13:54:44 +00:00
Jan Schmidt
0ba2f79cb5 sys/: Fix compilation when XShm is not available.
Original commit message from CVS:
* sys/ximage/ximagesink.c: (gst_ximage_buffer_init),
(gst_ximagesink_check_xshm_calls), (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_init),
(gst_xvimagesink_check_xshm_calls):
Fix compilation when XShm is not available.
2005-09-08 16:38:30 +00:00
Jan Schmidt
71ab6314a1 configure.ac: In the output at the end, don't show the first plugin on the same line as "Core plug-ins, always built:".
Original commit message from CVS:
* configure.ac:
In the output at the end, don't show the first plugin on the same
line as "Core plug-ins, always built:".
Indent the output as for other plugin categories
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_create):
#define that can be used to not use peer buffer_alloc functions for
test purposes.
* sys/ximage/ximagesink.c: (gst_ximage_buffer_init),
(gst_ximage_buffer_get_type), (gst_ximagesink_ximage_new),
(gst_ximagesink_show_frame):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_init),
(gst_xvimage_buffer_get_type), (gst_xvimagesink_setcaps),
(gst_xvimagesink_show_frame):
Error case handling fixes. gst-launch fakesrc ! x[v]imagesink now
fails gracefully instead of XError aborting or deadlocking.
2005-09-06 23:26:49 +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
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
Thomas Vander Stichele
1ea0574af4 make GST_PLUGIN_LDFLAGS only be flags; GST_LIBS should be added manually to each Makefile.am so we are sure it goes
Original commit message from CVS:
make GST_PLUGIN_LDFLAGS only be flags; GST_LIBS should be
added manually to each Makefile.am so we are sure it goes
*last* and doesn't add -L flags before linking in libs of our
own, like, say, internal .la libs, that then accidentally pick
up the installed copy.
2005-07-13 17:58:07 +00:00
Andy Wingo
d4ceba9d02 sys/xvimage/xvimagesink.c (gst_xvimage_buffer_destroy)
Original commit message from CVS:
2005-07-13  Andy Wingo  <wingo@pobox.com>

* sys/xvimage/xvimagesink.c (gst_xvimage_buffer_destroy)
(gst_xvimagesink_xvimage_new): Ref the xvimagesink while the
buffer points to it.
(gst_xvimagesink_check_xshm_calls): Don't use our xvimage buffer,
rather just doing X calls ourselves. Also fixes a memleak.
2005-07-13 13:54:11 +00:00
Thomas Vander Stichele
f4ce54b977 add deps for xv sinks on videosink
Original commit message from CVS:
add deps for xv sinks on videosink
2005-07-12 23:07:47 +00:00
Thomas Vander Stichele
9e8a11d3ce use overridable ERROR_CFLAGS; more macro splitting
Original commit message from CVS:
use overridable ERROR_CFLAGS; more macro splitting
2005-07-10 12:03:58 +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
Thomas Vander Stichele
5014a9eee6 fold all interfaces in one interfaces dir, preserving CVS history
Original commit message from CVS:
fold all interfaces in one interfaces dir, preserving CVS history
2005-06-30 11:58:40 +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