Commit graph

828 commits

Author SHA1 Message Date
Wim Taymans
d4474d8ad1 gst/tcp/gstmultifdsink.c: Fix wrong GList iteration that could crash the server when more then 2 clients disconnect a...
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_multifdsink_class_init), (gst_multifdsink_add),
(gst_multifdsink_remove), (gst_multifdsink_clear),
(gst_multifdsink_client_remove),
(gst_multifdsink_handle_client_read),
(gst_multifdsink_client_queue_data),
(gst_multifdsink_client_queue_caps),
(gst_multifdsink_client_queue_buffer),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_queue_buffer),
(gst_multifdsink_handle_clients), (gst_multifdsink_thread),
(gst_multifdsink_init_send), (gst_multifdsink_close):
Fix wrong GList iteration that could crash the server when
more then 2 clients disconnect at the same time. Read all the
pending commands in one batch to recover from command storms under
very heavy load.
2004-06-29 10:28:29 +00:00
Wim Taymans
4f89d3a37b gst/videomixer/videomixer.c: Avoid divide by zero, choose masterpad as the pad with the highest framerate.
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_pad_get_type),
(gst_videomixer_pad_class_init), (gst_videomixer_pad_get_property),
(gst_videomixer_pad_set_property),
(gst_videomixer_pad_sinkconnect), (gst_videomixer_pad_init),
(gst_video_mixer_background_get_type), (gst_videomixer_get_type),
(gst_videomixer_class_init), (gst_videomixer_init),
(gst_videomixer_request_new_pad), (gst_videomixer_blend_ayuv_i420),
(pad_zorder_compare), (gst_videomixer_sort_pads),
(gst_videomixer_fill_checker), (gst_videomixer_fill_color),
(gst_videomixer_fill_queues), (gst_videomixer_blend_buffers),
(gst_videomixer_update_queues), (gst_videomixer_loop),
(plugin_init):
Avoid divide by zero, choose masterpad as the pad with the highest
framerate.
2004-06-28 07:28:49 +00:00
Julien Moutte
2624d3ea37 sys/: I prefer locking the mutex in the function directly. We might want to call it from somewhere else one day.
Original commit message from CVS:
2004-06-27  Julien Moutte  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_xwindow_decorate),
(gst_ximagesink_xwindow_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_decorate),
(gst_xvimagesink_xwindow_new): I prefer locking the mutex in the
function directly. We might want to call it from somewhere else one day.
2004-06-27 19:02:29 +00:00
Julien Moutte
fa3c245918 sys/: Trying to fix the random behaviour of window decorations.
Original commit message from CVS:
2004-06-27  Julien Moutte  <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_xwindow_decorate),
(gst_ximagesink_xwindow_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xwindow_decorate),
(gst_xvimagesink_xwindow_new): Trying to fix the random behaviour of
window decorations.
2004-06-27 18:53:04 +00:00
Wim Taymans
3995eac7fd ext/dv/gstdvdec.*: Implement drop_factor property to lower the framerate with a factor.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_class_init), (gst_dvdec_init),
(gst_dvdec_video_getcaps), (gst_dvdec_video_link),
(gst_dvdec_push), (gst_dvdec_loop), (gst_dvdec_change_state),
(gst_dvdec_set_property), (gst_dvdec_get_property):
* ext/dv/gstdvdec.h:
Implement drop_factor property to lower the framerate with
a factor.
2004-06-27 16:38:41 +00:00
Thomas Vander Stichele
5b7573b8ff unbreak install
Original commit message from CVS:
unbreak install
2004-06-27 15:42:15 +00:00
Wim Taymans
9b2151cc67 ext/dv/gstdvdec.*: Fix timestamp, duration and offset of the buffers.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_push), (gst_dvdec_loop),
(gst_dvdec_change_state):
* ext/dv/gstdvdec.h:
Fix timestamp, duration and offset of the buffers.
2004-06-27 14:42:09 +00:00
Wim Taymans
d1931e499d gst/tcp/: More multifdsink fixes, more recovery policy fixes.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_multifdsink_class_init), (gst_multifdsink_add),
(gst_multifdsink_remove), (gst_multifdsink_clear),
(gst_multifdsink_client_remove),
(gst_multifdsink_handle_client_read),
(gst_multifdsink_client_queue_data),
(gst_multifdsink_client_queue_caps),
(gst_multifdsink_client_queue_buffer),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_queue_buffer),
(gst_multifdsink_handle_clients), (gst_multifdsink_thread),
(gst_multifdsink_init_send), (gst_multifdsink_close):
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcpserversink.c:
(gst_tcpserversink_handle_server_read),
(gst_tcpserversink_handle_select), (gst_tcpserversink_close):
More multifdsink fixes, more recovery policy fixes.
Removed stupid g_print
2004-06-27 11:15:23 +00:00
Wim Taymans
2c2b65c4b0 gst/tcp/: Added multifdsink, made tcpserversink a subclass of fdsink, removed one of the locks, added recovery policy...
Original commit message from CVS:
* gst/tcp/Makefile.am:
* gst/tcp/gstmultifdsink.c: (gst_recover_policy_get_type),
(gst_multifdsink_get_type), (gst_multifdsink_base_init),
(gst_multifdsink_class_init), (gst_multifdsink_init),
(gst_multifdsink_debug_fdset), (gst_multifdsink_client_remove),
(gst_multifdsink_handle_client_read),
(gst_multifdsink_client_queue_data),
(gst_multifdsink_client_queue_caps),
(gst_multifdsink_client_queue_buffer),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_queue_buffer),
(gst_multifdsink_handle_clients), (gst_multifdsink_thread),
(gst_multifdsink_chain), (gst_multifdsink_set_property),
(gst_multifdsink_get_property), (gst_multifdsink_init_send),
(gst_multifdsink_close), (gst_multifdsink_change_state):
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcpplugin.c: (plugin_init):
* gst/tcp/gsttcpserversink.c: (gst_tcpserversink_get_type),
(gst_tcpserversink_class_init), (gst_tcpserversink_init),
(gst_tcpserversink_handle_server_read),
(gst_tcpserversink_handle_select),
(gst_tcpserversink_set_property), (gst_tcpserversink_get_property),
(gst_tcpserversink_init_send), (gst_tcpserversink_close):
* gst/tcp/gsttcpserversink.h:
Added multifdsink, made tcpserversink a subclass of fdsink, removed
one of the locks, added recovery policy to multifdsink.
2004-06-26 16:49:42 +00:00
Thomas Vander Stichele
a45f29c44a fix videorate decision, add latency offset to v4l
Original commit message from CVS:
fix videorate decision, add latency offset to v4l
2004-06-26 15:58:35 +00:00
Thomas Vander Stichele
e7ec8bcb7a fix debugging
Original commit message from CVS:
fix debugging
2004-06-26 15:43:55 +00:00
Thomas Vander Stichele
ae7d2f8c56 fix wrong offsets
Original commit message from CVS:
fix wrong offsets
2004-06-25 18:50:31 +00:00
Thomas Vander Stichele
42d83d0474 make provided clock run in sync
Original commit message from CVS:
make provided clock run in sync
2004-06-25 17:11:32 +00:00
Wim Taymans
078ad9c68b gst/tcp/gsttcpserversink.*: Serversink rewrite. Really do non blocking writes to clients and maintain an internal que...
Original commit message from CVS:
* gst/tcp/gsttcpserversink.c: (gst_tcpserversink_class_init),
(gst_tcpserversink_init), (gst_tcpserversink_handle_server_read),
(gst_tcpserversink_client_remove),
(gst_tcpserversink_handle_client_read),
(gst_tcpserversink_client_queue_data),
(gst_tcpserversink_client_queue_caps),
(gst_tcpserversink_client_queue_buffer),
(gst_tcpserversink_handle_client_write),
(gst_tcpserversink_queue_buffer),
(gst_tcpserversink_handle_clients), (gst_tcpserversink_thread),
(gst_tcpserversink_chain), (gst_tcpserversink_set_property),
(gst_tcpserversink_get_property), (gst_tcpserversink_init_send),
(gst_tcpserversink_close):
* gst/tcp/gsttcpserversink.h:
Serversink rewrite. Really do non blocking writes to clients and
maintain an internal queue to handle slower clients while not
disturbing fast clients.
2004-06-25 17:06:51 +00:00
Thomas Vander Stichele
ccdfac8a3b don't override offset and offset_end
Original commit message from CVS:
don't override offset and offset_end
2004-06-25 13:05:11 +00:00
Iain Holmes
cd0d806b11 Add name=source to the wavparse pipeline
Original commit message from CVS:
Add name=source to the wavparse pipeline
2004-06-25 11:57:25 +00:00
Johan Dahlin
e8e6b9cb8d ext/theora/theoraenc.c (theora_enc_chain): Call gst_pad_try_set_caps instead of gst_pad_set_explicit_caps so the stre...
Original commit message from CVS:
* ext/theora/theoraenc.c (theora_enc_chain): Call
gst_pad_try_set_caps instead of gst_pad_set_explicit_caps so the
streamheader caps are set correctly.
2004-06-24 16:48:17 +00:00
Thomas Vander Stichele
2972c88fd7 respect minimum bitrate
Original commit message from CVS:
respect minimum bitrate
2004-06-24 15:51:24 +00:00
Thomas Vander Stichele
2fc9f6605d fix sample rate range
Original commit message from CVS:
fix sample rate range
2004-06-24 15:44:53 +00:00
Thomas Vander Stichele
b7aa3e7e7e resolve ambiguities
Original commit message from CVS:
resolve ambiguities
2004-06-24 14:56:21 +00:00
Wim Taymans
1bb09c4352 ext/alsa/: Use alsa trigger_tstamp to get the timestamp of the first sample in the buffer for more precise sync. Some...
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_start), (gst_alsa_xrun_recovery):
* ext/alsa/gstalsa.h:
* ext/alsa/gstalsasrc.c: (gst_alsa_src_init),
(gst_alsa_src_update_avail), (gst_alsa_src_loop):
Use alsa trigger_tstamp to get the timestamp of the first
sample in the buffer for more precise sync. Some cleanups.
2004-06-24 12:53:17 +00:00
Wim Taymans
796529c197 gst/: Added some logging, fixed an overflow bug in videorate.
Original commit message from CVS:
* gst/audiorate/gstaudiorate.c: (gst_audiorate_link),
(gst_audiorate_init), (gst_audiorate_chain),
(gst_audiorate_set_property), (gst_audiorate_get_property):
* gst/videorate/gstvideorate.c: (gst_videorate_class_init),
(gst_videorate_chain):
Added some logging, fixed an overflow bug in videorate.
2004-06-24 12:45:27 +00:00
Benjamin Otte
ee5531f7cd ext/kio/Makefile.am: fix for builddir != srcdir and distcheck
Original commit message from CVS:
* ext/kio/Makefile.am:
fix for builddir != srcdir and distcheck
2004-06-24 03:19:07 +00:00
Benjamin Otte
814688a52b don't include -enumtypes.[ch] or -marshal.[ch] files in the disted tarball.
Original commit message from CVS:
* gst-libs/gst/colorbalance/Makefile.am:
* gst-libs/gst/mixer/Makefile.am:
* gst-libs/gst/play/Makefile.am:
* gst-libs/gst/tuner/Makefile.am:
* gst/tcp/Makefile.am:
* sys/dxr3/Makefile.am:
don't include -enumtypes.[ch] or -marshal.[ch] files in the disted
tarball.
Also add all *.list files that were missing.
* Makefile.am:
add a distcheck hook to ensure the above doesn't happen again.
2004-06-24 01:43:54 +00:00
David I. Lehn
befab00bf3 ext/Makefile.am: s/DTS_DIR=dvdread/DTS_DIR=dts/
Original commit message from CVS:
* ext/Makefile.am: s/DTS_DIR=dvdread/DTS_DIR=dts/
2004-06-24 01:16:02 +00:00
Colin Walters
ba89543936 m4/Makefile.am: Distribute gst-fionread.m4.
Original commit message from CVS:
2004-06-23  Colin Walters  <walters@redhat.com>

* m4/Makefile.am: Distribute gst-fionread.m4.
2004-06-23 19:41:37 +00:00
Thomas Vander Stichele
a05795b7e4 back to dev
Original commit message from CVS:
back to dev
2004-06-23 18:21:43 +00:00
Wim Taymans
e56c174f8d ext/alsa/: Add clock to alsasrc. Take new capture timestamp when restarting after an overrun. Split up some functions...
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_change_state), (gst_alsa_start),
(gst_alsa_xrun_recovery):
* ext/alsa/gstalsa.h:
* ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event),
(gst_alsa_sink_loop), (gst_alsa_sink_get_time):
* ext/alsa/gstalsasrc.c: (gst_alsa_src_init),
(gst_alsa_src_get_time), (gst_alsa_src_update_avail),
(gst_alsa_src_loop):
Add clock to alsasrc. Take new capture timestamp when
restarting after an overrun. Split up some functions between
alsasrc ans alsasink.
2004-06-23 18:08:26 +00:00
Thomas Vander Stichele
96c2a15318 merge back from release
Original commit message from CVS:
merge back from release
2004-06-23 16:57:16 +00:00
Wim Taymans
13377326ca gst/audiorate/gstaudiorate.c: Implement sample dropping and notify
Original commit message from CVS:
* gst/audiorate/gstaudiorate.c: (gst_audiorate_class_init),
(gst_audiorate_init), (gst_audiorate_chain),
(gst_audiorate_set_property), (gst_audiorate_get_property):
Implement sample dropping and notify
2004-06-23 11:06:10 +00:00
Wim Taymans
01226c6e8d ext/theora/theoraenc.c: Some cleanups, make sure the timestamps are correct.
Original commit message from CVS:
* ext/theora/theoraenc.c: (gst_theora_enc_class_init),
(theora_enc_sink_link), (theora_buffer_from_packet),
(theora_push_packet), (theora_enc_chain):
Some cleanups, make sure the timestamps are correct.
2004-06-22 16:29:20 +00:00
Wim Taymans
148c90439a ext/alsa/: Cleanups, take queued samples into account when reporting the time.
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_get_time), (gst_alsa_clock_update),
(gst_alsa_change_state), (gst_alsa_update_avail),
(gst_alsa_xrun_recovery):
* ext/alsa/gstalsa.h:
* ext/alsa/gstalsasrc.c: (gst_alsa_src_loop):
Cleanups, take queued samples into account when reporting
the time.
2004-06-22 12:01:33 +00:00
Wim Taymans
c09d2389f5 gst/videorate/gstvideorate.c: Initialize the property as well.
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_videorate_class_init),
(gst_videorate_init):
Initialize the property as well.
2004-06-22 11:57:22 +00:00
Wim Taymans
4d9cb8e1bd gst/videorate/gstvideorate.c: Add property to make videorate silent.
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_videorate_class_init),
(gst_videorate_init), (gst_videorate_chain),
(gst_videorate_set_property), (gst_videorate_get_property):
Add property to make videorate silent.
Add property to prefer new frames over old ones.
2004-06-22 11:19:46 +00:00
Zaheer Abbas Merali
2a70ca9944 sys/osxvideo/Makefile.am: Workaround so that the osxvideo .so file gets linked with the
Original commit message from CVS:
2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali.org>

* sys/osxvideo/Makefile.am:
Workaround so that the osxvideo .so file gets linked with the
2004-06-22 10:28:05 +00:00
Zaheer Abbas Merali
ca0525fa6e sys/osxaudio/Makefile.am: Workaround so that the osxaudio .so file gets linked with the
Original commit message from CVS:
2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali.org>

* sys/osxaudio/Makefile.am:
Workaround so that the osxaudio .so file gets linked with the
2004-06-22 10:00:53 +00:00
Zaheer Abbas Merali
0e7069c2cb configure.ac: Whoops, my fault...fixed build issues
Original commit message from CVS:
2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali.org>

* configure.ac:
Whoops, my fault...fixed build issues
2004-06-22 06:27:37 +00:00
Zaheer Abbas Merali
ee158654d5 configure.ac: Add objective-c support if running in Darwin/Mac OS X
Original commit message from CVS:
2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali.org>

* configure.ac:
Add objective-c support if running in Darwin/Mac OS X
* sys/Makefile.am:
* sys/osxvideo:
* sys/osxvideo/Makefile.am:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
Add osxvideosink, a cocoa-based osx video sink
2004-06-22 00:21:51 +00:00
Jan Schmidt
818b452ea7 ext/dvdnav/gst-dvd: Grab the gconf key from the right spot
Original commit message from CVS:
* ext/dvdnav/gst-dvd: Grab the gconf key from the right spot
* gst/debug/gstnavseek.c: (gst_navseek_init),
(gst_navseek_segseek), (gst_navseek_handle_src_event),
(gst_navseek_chain):
* gst/debug/gstnavseek.h: Add 's', 'e' and 'l' keypresses to navseek
to define the start,end and loop parameters of a segment seek.
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_init),
(gst_videotestsrc_get_event_masks),
(gst_videotestsrc_handle_src_event), (gst_videotestsrc_get):
* gst/videotestsrc/gstvideotestsrc.h:
Add seeking support to videotestsrc
Initialise the timestamp_offset variable.
2004-06-18 22:32:44 +00:00
Wim Taymans
1ea7b04126 ext/sidplay/gstsiddec.cc: Fix negotiation and set correct end offset.
Original commit message from CVS:
* ext/sidplay/gstsiddec.cc:
Fix negotiation and set correct end offset.
2004-06-18 11:46:32 +00:00
Thomas Vander Stichele
aabfd87d93 read caps in connect
Original commit message from CVS:
read caps in connect
2004-06-17 18:20:43 +00:00
Thomas Vander Stichele
cc145719cd notify; don't overlimit
Original commit message from CVS:
notify; don't overlimit
2004-06-17 17:07:50 +00:00
Thomas Vander Stichele
b72439823e add autoprobe option fixes use try_capture
Original commit message from CVS:
add autoprobe option
fixes
use try_capture
2004-06-17 17:06:24 +00:00
Thomas Vander Stichele
718f2ddec0 run as finalize, not dispose
Original commit message from CVS:
run as finalize, not dispose
2004-06-17 14:15:23 +00:00
Wim Taymans
a48818210d ext/alsa/: Make the xrun code timestamp and offset the buffers correctly. moved the clock to the base class, use alsa...
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_init), (gst_alsa_dispose),
(gst_alsa_get_time), (gst_alsa_xrun_recovery):
* ext/alsa/gstalsa.h:
* ext/alsa/gstalsaclock.c: (gst_alsa_clock_get_type):
* ext/alsa/gstalsasrc.c: (gst_alsa_src_init), (gst_alsa_src_loop),
(gst_alsa_src_change_state):
* ext/alsa/gstalsasrc.h:
Make the xrun code timestamp and offset the buffers correctly.
moved the clock to the base class, use alsa methods to get time.
Do correct timestamping on outgoing buffers.
2004-06-17 14:10:21 +00:00
Wim Taymans
7face56b42 gst/audiorate/: Added an audiorate converter that fills in gaps.
Original commit message from CVS:
* gst/audiorate/Makefile.am:
* gst/audiorate/gstaudiorate.c: (gst_audiorate_get_type),
(gst_audiorate_base_init), (gst_audiorate_class_init),
(gst_audiorate_link), (gst_audiorate_init), (gst_audiorate_chain),
(gst_audiorate_set_property), (gst_audiorate_get_property),
(gst_audiorate_change_state), (plugin_init):
Added an audiorate converter that fills in gaps.
2004-06-17 13:45:50 +00:00
Johan Dahlin
c163b09cc4 ext/tcp/*: Revert Zaheer changes, to make things actually work again.
Original commit message from CVS:
* ext/tcp/*: Revert Zaheer changes, to make things actually work again.
2004-06-17 09:10:57 +00:00
Wim Taymans
ae8739f761 sys/v4l/: Added a copy mode to v4lsrc where it will output a copied version of its internal hardware buffer.
Original commit message from CVS:
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_get):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_sync_mode_get_type),
(gst_v4lsrc_class_init), (gst_v4lsrc_init), (gst_v4lsrc_get_fps),
(gst_v4lsrc_get), (gst_v4lsrc_set_property),
(gst_v4lsrc_get_property):
* sys/v4l/gstv4lsrc.h:
Added a copy mode to v4lsrc where it will output a copied version
of its internal hardware buffer.
Fix the wrong FLAG_SET usage. The flags are integers, not bits, you
can't | them.
2004-06-16 15:07:58 +00:00
Wim Taymans
ac4b3f4718 sys/oss/gstosssrc.c: Timestamp fixes.
Original commit message from CVS:
* sys/oss/gstosssrc.c: (gst_osssrc_get):
Timestamp fixes.
2004-06-16 10:48:04 +00:00
Wim Taymans
bb64d50ef8 sys/v4l/: Added a sync mode enum property to control v4lsrc timestamp method
Original commit message from CVS:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_sync_mode_get_type),
(gst_v4lsrc_class_init), (gst_v4lsrc_init), (gst_v4lsrc_get_fps),
(gst_v4lsrc_get), (gst_v4lsrc_set_property),
(gst_v4lsrc_get_property):
* sys/v4l/gstv4lsrc.h:
* sys/v4l/v4l-overlay_calls.c: (gst_v4l_set_overlay):
Added a sync mode enum property to control v4lsrc timestamp method
Removed the use-fixed-fps property and moved functionality in
the enum.
Don't error on an error value from v4l-conf, it might not always
be a real error.
2004-06-16 10:13:51 +00:00