For cameras/drivers that don't support e.g. VIDIOC_G_PARM we'd end up without
a framerate and would try to divide by 0, causing run-time warnings and all
frames to be timestamped with 0, which makes sinks that sync against the clock
drop them, causing 'hangs' (observed with the pwc driver and a Logitech QuickCam
Pro 4000). So if we do not know the framerate, simply don't adjust the
timestamps. Fixes#591451.
Clear format list and probed caps when going to NULL so if a new device
is set we'll probe the formats again instead of using previously
detected ones. Fixes bug #591747.
It seems to cause strange occasional high latencies (almost 200ms) when dequeuing buffers from _buffer_alloc(). It is simpler and seems to work much better to dqbuf from the same thread that is queuing the next buffer.
This also does the following changes:
(1) pull the bufferpool code out into gstv4l2bufferpool.c, and make a
bit more generic so it can be used both for v4l2src and v4l2sink
(2) move some of the device probing/configuration/caps stuff into
gstv4l2object.c so it does not have to be duplicated between
v4l2src and v4l2sink
Fixes bug #590280.
The v4l2 driver for USB webcams on OpenSolaris does not support select()
calls. Detect when select() fails, and skip polling the device afterward,
which restores the pre 0.10.14 behaviour on OpenSolaris.
Signed-off-by: Jan Schmidt <thaytan@noraisin.net>
We need a cast here for pointer arithmetic to work correctly, but some
MSVC versions don't seem to like 'byte', so use guint8 here. Hopefully
fixes#585361.
Fix the setting of toggle switches on some broken audio drivers which
report that no audio ports are settable by ignoring the mod_port field
there.
Add some debug statements.
Fix a FIXME now that Good relies on a new enough gst-plugins-base.
Use new audio mixer flags added in Base 0.10.23 to expose flags and options
on the SunAudio devices.
Fixes: #583593
Patch By: Brian Cameron <brian.cameron@sun.com>
Patch By: Garrett D'Amore <garrett.damore@sun.com>
Use GstPoll to wait for the fd of the video device to become readable before
trying to capture a frame. This speeds up stopping v4l2src a lot as it no
longer has to wait for the next frame, especially when capturing with low
framerates or when the video device just never generates a frame (which seems a
common issue for uvcvideo devices)
Fixes bug #563574.
sort_by_frame_size is declared static and only used inside
an ifdef, so use the same ifdef to define the function. Fixes#572185
Signed-off-by: David Schleef <ds@schleef.org>
Remove non-embedded mode. Embed mode becomes default and only mode.
embed property is retained for binary compatibility.
Added autorelease pools around all objc functions that might be called
from a non-main thread.
Ensure we create the ringbuffer segment size as a multiple of the
bytes per sample (fixes 6-channel output).
Reset the segoffset when acquiring the ringbuffer, so we don't retain
a bogus offset when caps change.
Original commit message from CVS:
* sys/osxaudio/Makefile.am:
Link against CoreServices (needed for osx 10.4) and fix up the linker
flags. Fixes#567853.
Original commit message from CVS:
* sys/osxaudio/Makefile.am:
osxaudio plugin now requires AudioUnit framework, so link against that.
Clean up tabs v spaces while I'm there.
Original commit message from CVS:
Patch by: Sascha Hauer <s dot hauer at pengutronix dot de>
Luotao Fu <l dot fu at pengutronix dot de>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure),
(gst_v4l2_get_caps_info):
Add support for grayscale v4l2 devices. Fixes bug #566616.
Original commit message from CVS:
Patch by: Justin Karnegas <justin@affinix.com> and
Michael Smith <msmith@songbirdnest.com>
* sys/osxaudio/gstosxaudio.c:
* sys/osxaudio/gstosxaudioelement.c:
* sys/osxaudio/gstosxaudioelement.h:
* sys/osxaudio/gstosxaudiosink.c:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxaudio/gstosxaudiosrc.c:
* sys/osxaudio/gstosxaudiosrc.h:
* sys/osxaudio/gstosxringbuffer.c:
* sys/osxaudio/gstosxringbuffer.h:
Rewrite osxaudio to work more flexibly and more reliably, using a
different abstraction layer of coreaudio that is the recommended way of
doing low-level audio I/O on OSX.
Fixes byg #564948.
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_open):
Set the mixer fd before calling ioctl() on it. Fixes bug #563414.
Original commit message from CVS:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Handle video window resizing more correctly, avoiding crashes when
embedding the window and resizing it.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size), (sort_by_frame_size),
(gst_v4l2src_probe_caps_for_format):
Turns out we don't always get the frame sizes in a predefined
order from lowest to highest resolution, so let's just sort the
list by frame size once we've queried the possible resolutions
rather than assume any particular order. Fixes probed caps for
the camera in my HP2133 mini notebook and makes v4l2src default
to a decent size.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_format_get_rank):
Guard more uncommon formats with ifdefs so that we can compile on older
versions.
Original commit message from CVS:
* sys/ximage/gstximagesrc.c: (gst_ximage_src_start),
(gst_ximage_src_stop), (gst_ximage_src_ximage_get):
Stop leaking the cursor image.
Unref the last_ximage and the cached cursor image on shutdown.
Fixes#551570.
Original commit message from CVS:
* sys/v4l2/gstv4l2object.h:
Getting the Class from an instance is not just a matter of casting it to
the class struct but it involves calling G_OBJECT_GET_CLASS on the
instance. Fixes#549784.
Original commit message from CVS:
* configure.ac:
Fix libs for linking directsound.
* sys/directsound/gstdirectsoundsink.c:
Fix buffer sizing to prevent racing the ringbuffer at startup.
Add volume property.
Original commit message from CVS:
* sys/osxaudio/gstosxaudiosink.c:
(gst_osx_audio_sink_select_device):
* sys/osxaudio/gstosxaudiosrc.c:
(gst_osx_audio_src_create_ringbuffer),
(gst_osx_audio_src_select_device):
* sys/osxaudio/gstosxringbuffer.c: (gst_osx_ring_buffer_acquire):
Fix the build on macosx.
Original commit message from CVS:
* sys/osxaudio/Makefile.am:
* sys/osxaudio/gstosxaudio.c:
* sys/osxaudio/gstosxaudiosink.c:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxaudio/gstosxaudiosrc.c:
* sys/osxaudio/gstosxaudiosrc.h:
* sys/osxaudio/gstosxringbuffer.c:
* sys/osxaudio/gstosxringbuffer.h:
Rewrite caps setting and ring buffer initialisation.
Previously we never told CoreAudio what format we were going to send it,
so it only worked due to luck, and not at all on some hardware.
Now we explicitly advertise what formats the hardware supports, and then
configure the selected one correctly.
Original commit message from CVS:
* sys/v4l2/gstv4l2object.c:
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/gstv4l2src.h:
* sys/v4l2/v4l2_calls.c:
* sys/v4l2/v4l2src_calls.c:
Fix memory leaks. Small code cleanups : No need for empty _init(). No
need to memset instance structures. Some more FIXME's.
Original commit message from CVS:
Patch by: Filippo Argiolas <filippo dot argiolas at gmail dot com>
* sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_set_norm_and_notify):
v4l2src doesn't have a property named "norm" so don't try to notify
about changes to that property. The "norm" property and related
code are commented out currently. Fixes bug #549090.
Original commit message from CVS:
Patch by: Mike Ruprecht <cmaiku at gmail dot com>
* sys/v4l2/gstv4l2object.c: (gst_v4l2_class_probe_devices):
Reprobe devices again instead of taking a cached list as new
devices could've been plugged in. Fixes bug #549062.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc,
gst_directdraw_sink_bufferpool_clear):
Fix two more buffer ref leaks.
Original commit message from CVS:
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas at tandberg com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_show_frame):
Fix buffer ref leak.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure),
(gst_v4l2_get_caps_info):
Add S910 and PWC formats with a low priority.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_format_get_rank),
(gst_v4l2src_probe_caps_for_format):
Add more debugging.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_query):
Properly set the maximum latency value, in the same way it is done in
v4lsrc.
* sys/v4l2/v4l2src_calls.c:
Simplify fraction equality check, no need to use GValues for this.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_query):
Add warning messages stating exactly why the latency query failed.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture):
In some cases, the negotiated framerate might be the default one which
is already set internally. But we still need to mark it down in fps_n
and fps_d so that the latency query can happen properly.
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* ext/esd/gstesd.c: (plugin_init):
* ext/flac/gstflac.c: (plugin_init):
* ext/shout2/gstshout2.c: (plugin_init):
* ext/wavpack/gstwavpack.c: (plugin_init):
* sys/oss/gstossaudio.c: (plugin_init):
* sys/v4l2/gstv4l2.c: (plugin_init):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822).
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format):
When outputting a pad template range for the size, include a framerate
range too, to avoid 'not a real subset of template caps' errors.
Original commit message from CVS:
Patch by: Daniel Drake <dsd at gentoo dot org>
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture),
(gst_v4l2src_get_nearest_size):
Try progressive video if interlaced fails. Fixes bug #541956
and the usage of v4l2src on OLPC.
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c::
Don't include unused gstv4l2xoverlay.h. Fixes build
in case where X11 headers are not installed.
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_get_volume),
(gst_sunaudiomixer_ctrl_set_volume):
Improvements for the SunAudio mixer by handling mute as no gain
for tracks that have a gain property but no mute property.
Fixes bug #536067.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_negotiate):
Improve negotiation a bit more by picking the smallest possible
resolution that is larger than the resolution specified in the
first caps entry of the peer caps. Fixes bug #536994.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init),
(gst_v4l2src_fixate), (gst_v4l2src_negotiate):
Provide a custom negotiation function to make sure to pick the highest
possible framerate and resolution. Fixes bug #536646.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format):
Fix potential caps leak.
If we can't get the framerate with an ioctl, try to get it with the
current norm. Fixes#520092.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size):
If we fail to get the frame intervals, simply don't touch the framerates
on the template caps instead of discarding the format. See #520092.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm dot com dot hk>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure),
(gst_v4l2_get_caps_info):
Add NV12, NV21 and bayer support. See #520092.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Don't include the gstv4l2xoverlay.h header as the XOverlay support
isn't implemented at all yet and this requires X headers to be
installed. Fixes bug #533264.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw):
Do IDirectDrawClipper_SetHWnd() if the window ID has already been
set after creating the clipper.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame):
Added checking of surface lost case after an unsuccessful
IDirectDrawSurface7_Lock() call.
If surface is lost, return GST_FLOW_OK.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame,
WndProc, gst_directdraw_sink_window_thread):
Improved Windows message loop and fixed window destruction issue.
When the window which DirectDraw is rendering to is destroyed, the
render/show_frame function will return GST_FLOW_ERROR.
Partially fixes#520885.
Original commit message from CVS:
patch by: Haakon Sporsheim <haakon.sporsheim at tandberg com>
* sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_set_caps):
Fixed mid stream resolution change bug, the offscreen surface is now
released when set_caps is called.
Partially fixes#520885.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Make it so that gst_directdraw_sink_buffer_alloc uses the right
width/height.
Especially when looking through the pool of buffers, make sure that
the width/height of caps is used instead of the already negotiated
dimensions.
For example if a buffer with different caps is requested, i.e.
higher resolution, the caller would get a buffer with the old
dimensions and thus corrupt the heap.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Clear the flags on recycled buffers from buffer_alloc.
Partially fixes#520885.
The right fix this time.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Reverting previous commit, it had it all mixed up, was for a different
patch (major automation screw-up). Sorry!
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c
(gst_directdraw_sink_buffer_alloc):
Clear the flags on recycled buffers from buffer_alloc.
Partially fixes#520885.
Original commit message from CVS:
* sys/oss/gstosshelper.c: (gst_oss_helper_rate_check_rate):
* sys/oss/gstosssink.c: (gst_oss_sink_reset):
* sys/oss/gstosssrc.c: (gst_oss_src_reset):
More logging when probing (see #518474), some comments in _reset().
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_get_volume),
(gst_sunaudiomixer_ctrl_set_volume):
* sys/sunaudio/gstsunaudiomixertrack.c: (gst_sunaudiomixer_track_new):
Fix up the mixer tracks to use a volume range of 0-255, which is what
the sun audio API uses. This simplifies the code and avoids rounding
errors. Fixes#524593.
Original commit message from CVS:
Based on patch by: William M. Brack <wbrack at mmm com hk>
* sys/v4l2/v4l2src_calls.c: (fractions_are_equal),
(gst_v4l2src_set_capture):
Check whether the device supports setting the framerate before
trying to set it and then posting a warning or error if it doesn't
work (#516649, #520092). Also compare fractions more correctly.
Original commit message from CVS:
2008-03-18 Andy Wingo <wingo@pobox.com>
* sys/osxvideo/osxvideosink.m
(gst_osx_video_sink_osxwindow_destroy)
(gst_osx_video_sink_osxwindow_new): Actually set a lock on the
task, whoopdee.
(cocoa_event_loop): Pacify the taymans by upping the usleepage to
2 ms.
Original commit message from CVS:
2008-03-18 Andy Wingo <wingo@pobox.com>
* sys/osxvideo/osxvideosink.m (gst_osx_video_sink_osxwindow_destroy)
(gst_osx_video_sink_osxwindow_new, cocoa_event_loop):
* sys/osxvideo/osxvideosink.h (struct _GstOSXVideoSink): If we
need to run an event loop, do so in a task instead of assuming
that there will be a GMainLoop. Fixes#523134.
Original commit message from CVS:
Patch by: William M. Brack <wbrack at mmm com hk>
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size),
(gst_v4l2src_probe_caps_for_format):
Make sure the probed frame sizes are reversed in the resulting
caps also when using V4L2_FRMSIZE_STEPWISE (so they end up
highest resolution first); also remove unused variable.
(Partly fixes#520092)
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw skynet be>
* sys/oss/gstosssrc.c: (gst_oss_src_init), (gst_oss_src_getcaps),
(gst_oss_src_close):
* sys/oss/gstosssrc.h:
Cache probed caps, so _get_caps() during recording doesn't cause
ioctl calls which may disrupt the recording (fixes#521875).
Original commit message from CVS:
* sys/ximage/gstximagesrc.c:
Initialise variables when opening the X display rather
than in _start(), as the display can be opened before that.
Fixes: #515985
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2_buffer_class_init), (gst_v4l2_buffer_pool_finalize),
(gst_v4l2_buffer_pool_class_init):
Chain up the finalize functions. Fixes bug #515984.
Original commit message from CVS:
* sys/ximage/ximageutil.c:
Chain up in the finalize function for our custom
buffer sub-class.
Patch by: Sebastian Dröge <slomo@circular-chaos.org>
Fixes: #515706
Original commit message from CVS:
* sys/ximage/gstximagesrc.c:
Free allocated Damage memory before closing our connection to the
X server. Fixes: #515706
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Treat ENOTTY (driver does not implement ioctl) the same as
EINVAL since it implies there are no available standards.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format),
(gst_v4l2src_get_nearest_size):
Replace gst_v4l2src_get_size_limits with 2 calls to new function
gst_v4l2src_get_nearest_size, and get it to use VIDIOC_S_FMT to
probe if the driver does not support VIDIOC_TRY_FMT for whatever
reason, and if we aren't yet actively capturing.
* sys/v4l2/v4l2src_calls.h:
Remove replaced function declaration.
Original commit message from CVS:
* configure.ac:
Detect video4linux headers on Solaris too.
* sys/v4l2/gstv4l2colorbalance.h:
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/v4l2_calls.c:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2_buffer_new):
Make v4l2 build on Solaris.
Patch by: Brian Cameron <brian.cameron at sun dot com>
Fixes: #510505
Original commit message from CVS:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* sys/osxvideo/osxvideosink.h:
Revert previous change caused by a file that got stuck on an old
revision.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxvideo/osxvideosink.h:
Managed to resolve most unused declarations. Filed a bug for one left.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_extract_picture_buffer):
* gst/id3demux/id3v2frames.c: (parse_picture_frame):
Generate the image-type values correctly. Leave them out of the caps
when outputting a "preview image" tag, since it only makes sense
to have one of those - the type is irrelevant.
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_open):
If we can, mark the mixer multiple open when we use it, in case
(for some reason) the process wants to open it again elsewhere.
Original commit message from CVS:
2008-01-05 Julien Moutte <julien@fluendo.com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_set_window_id),
(gst_directdraw_sink_set_caps),
(gst_directdraw_sink_change_state),
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_draw_borders),
(gst_directdraw_sink_show_frame),
(gst_directdraw_sink_setup_ddraw),
(gst_directdraw_sink_window_thread),
(gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create): Make sure we create our
internal window only when we need it. That will give a chance to
the application to get the prepare-xwindow-id bus message. Draw
black borders when keeping aspect ratio. Handle the case where
our
rendering window disappears (closed or errors) like other sinks
do. Various 80 columns fixes, improve state change order. That
element could need some more love.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_loop):
* gst/wavparse/gstwavparse.c: (gst_wavparse_chain):
* sys/ximage/gstximagesrc.c: (composite_pixel):
Fix 'xyz may be used uninitialized' compiler warnings caused
by broken g_assert_not_reached() macro in GLib-2.15.x (it's
not really nice to abort in any case). Fixes#505745.
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list):
Init some structs to zero before we pass them to ioctl, which
avoids valgrind warnings. Also fix a small memory leak.
Original commit message from CVS:
* sys/oss/gstosshelper.c:
Verify that the format returned after the ioctl is the one
we requested. It is valid for the ioctl to succeed while
substituting an alternate 'supported' sample format.
Original commit message from CVS:
* sys/oss/gstossaudio.c: (plugin_init):
* sys/oss/gstosssink.c: (gst_oss_sink_open):
* sys/oss/gstosssrc.c: (gst_oss_src_open):
Post decent (and translated) error message when we can't
open the audio device for some reason.
Original commit message from CVS:
* sys/oss/gstosssink.c:
* sys/oss/gstosssrc.c:
Allow the AUDIODEV environment variable to redirect us
to a different default OSS device, like sunaudiosink does
on Solaris (makes audio play automatically on SunRays).
Original commit message from CVS:
2007-11-20 Julien MOUTTE <julien@moutte.net>
* ext/taglib/gsttaglibmux.c: (gst_tag_lib_mux_render_tag),
(gst_tag_lib_mux_adjust_event_offsets):
* gst/qtdemux/qtdemux.c: (qtdemux_parse_theora_extension):
* sys/osxaudio/Makefile.am:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m: Fix build on Mac OS X 10.5
Original commit message from CVS:
Always copy buffers by default (handle safer with bugged drivers) and added a property to make it possible to use mmap effectively (no copy if possible) when application wants to. Fixes: #480557.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format):
If VIDIOC_ENUM_FRAMESIZES is defined (= recent kernel), but the
corresponding ioctl() call fails even though the driver claims to
support this format, just fall back to the pre-2.6.19 kernel
routine that creates caps with suitable height and width ranges
(see #448278).
Original commit message from CVS:
patch by: Yun Zheng Hu
* sys/osxaudio/gstosxaudiosrc.c:
Use default input device instead of default output device and
only memcpy actual available bytes.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame):
Fixes "v4l2src ! queue ! xvimagesink". The queue ask for buffer too
early. It is temporary until we find something better.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2src_grab_frame):
Add some more debug info. Generate an error when we run out of buffers
for some reason. See #480557.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/v4l2src_calls.c:
When probing the formats and sizes a camera supports, make
sure the best ones (highest resolution, prefered format)
end up at the beginning of the probed caps and the less
desirable ones at the end. This is important because the
order within the caps matters for things like fixation and
negotiation, ie. what format is chosen in the end.
With recent kernels, the current probing code will end up
querying the supported sizes from lowest resolution to
highest resolution, adding them to the probed caps in that
order, resulting to v4l2src fixating to the lowest possible
resolution if downstream does not express a size preference.
Also make up a somewhat random ranking of prefered output
formats for the same reason. Fixes#485828.
Original commit message from CVS:
* ext/gconf/gstgconfaudiosink.c:
Fix warning when building without debug.
* sys/oss/gstossmixertrack.c:
Use const like in alsamixertrack.c (fixes warnings).
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size):
Fix framerate detection code some more.
Handle the case where there is a weird step in the stepwise framerates.
Don't overwrite the min interval with the framerate, use a temp variable
instead.
Use max in the Continuous framerate intervals instead of step, which is
1 according to the docs. Fixes#475424.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size):
Don't overwrite our GValue with 0 but instead use the previously
computed value. Fixes#471823 some more.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/gstv4l2src.h:
* sys/v4l2/v4l2src_calls.c:
Implement LATENCY queries in the crudest way possible so I don't
have to use sync=false any longer when testing with videosinks.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c:
(gst_v4l2src_probe_caps_for_format_and_size):
Add some more debugging in the framerate function.
Iterate stepwise framerate up to and _including_ the max and if nothing
was added to the list, add a dummy 0/1 to 100/1 framerate so that we
don't end up with an empty list.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2_get_caps_info),
(gst_v4l2src_set_caps), (gst_v4l2src_get_mmap):
Restructure the setcaps function so that we can also compute the
expected GStreamer output size of the video frames.
Set frame_byte_size correctly so that read-based devices have a chance
of working correctly.
When grabbing a frame, discard frames that are not of the expected size.
Some cameras don't output the right framesize for the first buffer.
Try only a couple of times to get a valid frame, else error out.
* sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities),
(gst_v4l2_fill_lists), (gst_v4l2_get_input):
Add some more debug info when scanning the device.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_new),
(gst_v4l2_buffer_pool_new), (gst_v4l2_buffer_pool_activate),
(gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame),
(gst_v4l2src_set_capture), (gst_v4l2src_capture_init):
Add some more debug info when dequeing a frame.
Original commit message from CVS:
Patch by: Alexander Eichner <alexeichi@yahoo.de>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init):
Use define here.
* sys/v4l2/gstv4l2tuner.c:
(gst_v4l2_tuner_set_frequency_and_notify):
Don't touch the property - its still disabled.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format),
(gst_v4l2src_grab_frame), (gst_v4l2src_get_size_limits):
* sys/v4l2/v4l2src_calls.h:
Improve fallback format negotionation. Fixes#451388
Original commit message from CVS:
* configure.ac:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/waveform/Makefile.am:
Make sure to dist everything needed for win32 builds.
Original commit message from CVS:
2007-06-12 Andy Wingo <wingo@pobox.com>
* sys/v4l2/v4l2src_calls.c (gst_v4l2_buffer_finalize)
(gst_v4l2_buffer_class_init, gst_v4l2_buffer_get_type)
(gst_v4l2_buffer_new): Behave more like ximagesink's buffers, with
finalization and resuscitation. No longer public.
(gst_v4l2_buffer_pool_finalize, gst_v4l2_buffer_pool_init)
(gst_v4l2_buffer_pool_class_init, gst_v4l2_buffer_pool_get_type)
(gst_v4l2_buffer_pool_new, gst_v4l2_buffer_pool_activate)
(gst_v4l2_buffer_pool_destroy): Make the pool follow common
miniobject semantics, and be threadsafe.
(gst_v4l2src_queue_frame): Remove this function, as we just call
the ioctls directly in the two places where we queue buffers.
(gst_v4l2src_grab_frame): Return a flowreturn and fill the buffer
directly.
(gst_v4l2src_capture_init): Use the new buffer_pool_new function
to allocate the pool, which also preallocates the GstBuffers.
(gst_v4l2src_capture_start): Call buffer_pool_activate instead of
queueing the frames directly.
* sys/v4l2/gstv4l2src.h (struct _GstV4l2BufferPool): Make this a
real MiniObject instead of rolling our own refcounting and
finalizing. Give it a lock.
(struct _GstV4l2Buffer): Remove one intermediary object, having
the buffers hold the struct v4l2_buffer directly.
* sys/v4l2/gstv4l2src.c (gst_v4l2src_set_caps): Pass the caps to
capture_init so that it can set them on the buffers that it will
create.
(gst_v4l2src_get_read): For better or for worse, include the
timestamping and offsetting code here; really we should be using
bufferalloc though.
(gst_v4l2src_get_mmap): Just make grab_frame return one of our
preallocated, mmap'd buffers.
Original commit message from CVS:
Patch by: daniel fischer <dan at f3c dot com>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_start),
(gst_ximage_src_get_caps):
Actually use the display_name property so that we can dump any
available X display. Fixes#445905.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_class_init):
Rename the keep-aspect-ratio property to force-aspect-ratio to make
it consistent with xvimagesink and ximagesink.
Original commit message from CVS:
2007-06-06 Andy Wingo <wingo@pobox.com>
* sys/v4l2/v4l2src_calls.c (gst_v4l2src_probe_caps_for_format)
(gst_v4l2src_probe_caps_for_format_and_size): Only probe for
format and size if the ioctls are defined; should fix compilation
on Linux < 2.16.19.
Original commit message from CVS:
2007-06-05 Andy Wingo <wingo@pobox.com>
* sys/v4l2/gstv4l2src.c (gst_v4l2src_start, gst_v4l2src_stop): Add
some useless comments.
* sys/v4l2/v4l2src_calls.c (gst_v4l2src_capture_init): Don't queue
frames before calling STREAMON, that might leave them in a state
where they can't be dequeued if we go back to NULL without calling
STREAMON, according to the docs.
(gst_v4l2src_capture_start): Enqueue buffers here instead, right
before we call STREAMON.
(gst_v4l2src_capture_deinit): Remove crack to work around dequeue
failures. (For me this code hung.) The pool refcounting is still
crack; added a note to that effect.
Original commit message from CVS:
2007-05-30 Andy Wingo <wingo@pobox.com>
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/gstv4l2object.c (gst_v4l2_object_new): Revert some
unintended changes.
Original commit message from CVS:
2007-05-30 Andy Wingo <wingo@pobox.com>
* sys/v4l2/v4l2src_calls.h:
* sys/v4l2/v4l2src_calls.c (gst_v4l2src_fill_format_list): Store
the format list in the order that the driver gives it to us.
(gst_v4l2src_probe_caps_for_format_and_size)
(gst_v4l2src_probe_caps_for_format): New functions, fill GstCaps
based on the capabilities of the device.
(gst_v4l2src_grab_frame): Update for object variable renaming.
(gst_v4l2src_set_capture): Update to be strict in its parameters,
as in the set_caps below.
(gst_v4l2src_capture_init): Update for object variable renaming,
and reflow.
(gst_v4l2src_capture_start, gst_v4l2src_capture_stop)
(gst_v4l2src_capture_deinit): Update for object variable renaming.
(gst_v4l2src_update_fps, gst_v4l2src_set_fps)
(gst_v4l2src_get_fps): Remove; these functions don't have much
meaning outside of an atomic set_caps method.
(gst_v4l2src_buffer_new): Don't set buffer duration, it is not
known.
* sys/v4l2/gstv4l2tuner.c (gst_v4l2_tuner_set_channel): Remove
call to update_fps; not sure about this change.
(gst_v4l2_tuner_set_norm): Work around the fact that for the
moment we don't have an update_fps_func.
* sys/v4l2/gstv4l2src.h (struct _GstV4l2Src): Don't put v4l2
structures in the object, just store what we need. Do store the
probed caps of the device. Don't store the current frame rate.
* sys/v4l2/gstv4l2src.c (gst_v4l2src_init): Remove the
update_fps_function, for now. Update for new object variable
naming.
(gst_v4l2src_set_property, gst_v4l2src_get_property): Update for
new object variable naming.
(gst_v4l2src_v4l2fourcc_to_structure): Rename from ..._to_caps.
(gst_v4l2_structure_to_v4l2fourcc): Rename from ...caps_to_....
(gst_v4l2src_get_caps): Rework to probe the device for supported
frame sizes and frame rates.
(gst_v4l2src_set_caps): Rework to be strict in the given
parameters: if someone asks us to have a certain size and rate,
that is what we configure.
(gst_v4l2src_get_read): Update for object variable naming. Don't
leak buffers on short reads.
(gst_v4l2src_get_mmap): Update for object variable naming, and add
comments.
(gst_v4l2src_create): Update for object variable naming.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_show_frame),
(gst_directdraw_sink_check_primary_surface),
(gst_directdraw_sink_check_offscreen_surface),
(EnumModesCallback2), (gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create):
* sys/directdraw/gstdirectdrawsink.h:
Fix more warnings when compiling with MingW (#439914).
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
Remove directsoundsink property doc as this sink use the mixer
interface now.
* docs/plugins/gst-plugins-bad-plugins.interfaces:
Add interfaces implemented by Windows sinks.
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Remove directsoundsink property and implement the mixer interface.
* win32/vs6/gst_plugins_bad.dsw:
* win32/vs6/libgstdirectsound.dsp:
Update project files.
* gst-libs/gst/dshow/gstdshow.cpp:
* gst-libs/gst/dshow/gstdshow.h:
* gst-libs/gst/dshow/gstdshowfakesink.cpp:
* gst-libs/gst/dshow/gstdshowfakesink.h:
* gst-libs/gst/dshow/gstdshowfakesrc.cpp:
* gst-libs/gst/dshow/gstdshowfakesrc.h:
* gst-libs/gst/dshow/gstdshowinterface.cpp:
* gst-libs/gst/dshow/gstdshowinterface.h:
* win32/common/libgstdshow.def:
* win32/vs6/libgstdshow.dsp:
Add a new gst library which allow to create internal Direct Show
graph (pipelines) to wrap Windows sources, decoders or encoders.
It includes a DirectShow fake source and sink and utility functions.
* sys/dshowsrcwrapper/gstdshowaudiosrc.c:
* sys/dshowsrcwrapper/gstdshowaudiosrc.h:
* sys/dshowsrcwrapper/gstdshowsrcwrapper.c:
* sys/dshowsrcwrapper/gstdshowsrcwrapper.h:
* sys/dshowsrcwrapper/gstdshowvideosrc.c:
* sys/dshowsrcwrapper/gstdshowvideosrc.h:
* win32/vs6/libdshowsrcwrapper.dsp:
Add a new plugin to wrap DirectShow sources on Windows.
It gets data from any webcam, dv cam, micro. We could add
tv tunner card later.
Original commit message from CVS:
* docs/plugins/Makefile.am:
Also look for .m (objectivec) files.
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* sys/osxvideo/osxvideosink.m:
Add documentation for element and properties.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_finalize),
(gst_directdraw_sink_buffer_alloc),
(gst_directdraw_sink_get_ddrawcaps),
(gst_directdraw_sink_surface_create):
Bunch of small fixes: remove static function that doesn't exist;
declare another one that does; printf format fix; use right macro
when specifying debug category; remove a bunch of unused variables;
#if 0 out an unused chunk of code (partially fixes#439914).
Original commit message from CVS:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Remove the event-loop-in-separate-thread modifications, because MacOSX
is $#@(*%$# ! For those wondering, the event handling needs to be done
in the main thread after all..
Original commit message from CVS:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Fix a stupid #if vs #ifdef bug. Should use the proper colorspace now.
Use a separate thread/task for the cocoa event_loop, else it wouldn't
stop.
Original commit message from CVS:
* configure.ac:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save
and restore the various flags in the directdraw/directsound
detection section. Apparently improves cross-compiling for win32
with mingw32 under some circumstances (#437539).
Original commit message from CVS:
Patch by: Eric Anholt
* sys/ximage/gstximagesrc.c (gst_ximage_src_open_display,
gst_ximage_src_ximage_get):
Use union of all damage between frames to make it faster.
Fixes bug #342463.
Also fix crasher when cursor is at bottom right of window.
Original commit message from CVS:
* sys/ximage/gstximagesrc.c (gst_ximage_src_start,
gst_ximage_src_ximage_get):
* sys/ximage/gstximagesrc.h (last_ximage):
When using Damage actually keep the last frame, and not assume
that the buffer we get already has the last frame on it.
Copy the cursor over if we specify a non-zero start x and
start y.
Original commit message from CVS:
Patch by: jerry tan <jerry dot tan at sun dot com>
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open):
remove the call of ioctl (fd, AUDIO_MIXER_MULTIPLE_OPEN), it is the
application's responsibility to make sure it open the device once.
Remove a careless error if AUDIODEV is set. Fixes#392620.
Original commit message from CVS:
* sys/osxvideo/osxvideosink.m:
Emit 'have-ns-view' message when working in embedded mode. The message
will contain a pointer to the newly created NSView.
Original commit message from CVS:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Fix leaks when running a NSApp.
Accept any kind of resolutions.
Works in fullscreen. Can maximize.
Only thing left before being able to move this to -good is documentation
and embedded window support.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Handle display mode changes during playback.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_index):
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame):
Printf format fixes; also add some missing quotes in translated
strings. Fixes#416728 and #416727.
Original commit message from CVS:
* sys/sunaudio/gstsunaudio.c: (plugin_init):
* sys/sunaudio/gstsunaudiomixertrack.c:
(gst_sunaudiomixer_track_new):
Actually translate sunaudio mixer track labels instead of just
marking the strings as translatable (#377306); clean up weird
label string mapping code that serves no apparent purpose. Also
set the 'untranslated-label' property when creating mixer tracks
if the GstMixerTrack base class supports this.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/sunaudio.c: (GST_START_TEST),
(sunaudio_suite):
Very minimalistic unit test for sunaudiomixer element (compiles, but not
actually tested on a system where sunaudiomixer is available).
Original commit message from CVS:
2007-03-01 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_open_display):
Error out correctly when getting xcontext fails.
Original commit message from CVS:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Disable the cocoa event loop since it's a huge memory leak. Should only
matter if the sink isn't used within an NSApp (which has already got
a coca event loop).
Remove all unused code.
Original commit message from CVS:
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Remove include of unused headers.
* sys/waveform/gstwaveformplugin.c:
* sys/waveform/gstwaveformsink.c:
* sys/waveform/gstwaveformsink.h:
* win32/vs6/libgstwaveform.dsp:
Add a new waveform plugin which includes an audio sink
element using the WaveForm win32 API.
* win32/MANIFEST:
Add the new project file form waveform plugin.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_grab_frame), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init):
Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO,
fixes#407369
Original commit message from CVS:
* sys/directdraw/gstdirectdrawplugin.c:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Prepare the plugin to move to good:
Remove unused/untested code (rendering to an extern surface,
yuv format rendering).Use GST_(DEBUG/*)_OBJECT macros
Rename all functions from gst_directdrawsink to gst_directdraw_sink.
Add gtk doc section
Fix a bug in gst_directdraw_sink_show_frame, memcpy line by line
respecting destination surface stride.
* sys/directsound/gstdirectsoundplugin.c:
* sys/directsound/gstdirectsoundsink.c:
* sys/directsound/gstdirectsoundsink.h:
Prepare the plugin to move to good:
Rename all functions from gst_directsoundsink to gst_directsound_sink.
Add gtk doc section
* win32/common/config.h.in:
* win32/MANIFEST:
Add config.h.in
Original commit message from CVS:
* Makefile.am:
Add win32 MANIFEST
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Clear unused code and add comments.
Remove yuv from template caps, it only supports RGB
actually.
Implement XOverlay interface and remove window and fullscreen
properties.
Add debug logs.
Test for blit capabilities to return only the current colorspace if
the hardware can't blit for one colorspace to another.
* sys/directsound/gstdirectsoundsink.c:
Add some debugs.
* win32/MANIFEST:
Add VS7 project files and solution.
* win32/vs6/gst_plugins_bad.dsw:
* win32/vs6/libgstdirectdraw.dsp:
* win32/vs6/libgstdirectsound.dsp:
* win32/vs6/libgstqtdemux.dsp:
Update project files.
Original commit message from CVS:
* configure.ac:
Activate monoscope when building with --enable-experimental. Fix
--enable-external configure switch description.
* sys/sunaudio/gstsunaudiomixer.c: (gst_sunaudiomixer_base_init):
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_dispose):
Help gst-indent.
Original commit message from CVS:
* configure.ac:
Check for an Objective C compiler
* sys/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Port of osxvideo plugin to 0.10. Do NOT consider 100% stable !
Fixes#402470
Original commit message from CVS:
* gst/multipart/multipartmux.c: (gst_multipart_mux_collected):
* sys/ximage/ximageutil.c: (ximageutil_check_xshm_calls):
Use G_GSIZE_FORMAT in print statements for portability.
Fixes build on macosx.
Original commit message from CVS:
* sys/v4l2/gstv4l2object.c:
(gst_v4l2_object_install_properties_helper),
(gst_v4l2_object_set_property_helper),
(gst_v4l2_object_get_property_helper), (gst_v4l2_set_defaults):
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init),
(gst_v4l2src_init), (gst_v4l2src_set_property),
(gst_v4l2src_get_property), (gst_v4l2src_set_caps):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_grab_frame), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init), (gst_v4l2src_capture_start),
(gst_v4l2src_capture_deinit):
Fix EIO handing when capturing. Add new property to specify the number of
buffers to enque (and remove the borked num-buffers usage).
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directsound/Makefile.am:
* sys/directsound/gstdirectsoundsink.c:
(gst_directsoundsink_reset):
Add directsoundsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392638). Also simplify DirectDraw check a bit.
* tests/check/elements/.cvsignore:
Fix CVS ignore for neonhttpsrc test binary.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
Add directdrawsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392313).
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame),
(gst_directdrawsink_setup_ddraw),
(gst_directdrawsink_surface_create):
Comment out some unused things and fix some printf format issues in
order to avoid warnings when buildling with MingW (#392313).
Original commit message from CVS:
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_prepare):
Ignore the buffer_time the sound device reports. Turns out it is
sometimes completely bogus and we're better off without it.
Original commit message from CVS:
* sys/sunaudio/gstsunaudiomixerctrl.c:
* sys/sunaudio/gstsunaudiosrc.c:
Use the sunaudio debug category.
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_finalize),
(gst_sunaudiosink_class_init), (gst_sunaudiosink_init),
(gst_sunaudiosink_set_property), (gst_sunaudiosink_get_property),
(gst_sunaudiosink_open), (gst_sunaudiosink_close),
(gst_sunaudiosink_prepare), (gst_sunaudio_sink_do_delay),
(gst_sunaudiosink_write), (gst_sunaudiosink_delay),
(gst_sunaudiosink_reset):
* sys/sunaudio/gstsunaudiosink.h:
Uses the sunaudio debug category for all debug output
Implements the _delay() callback to synchronise video playback better
Change the segtotal and segsize values back to the parent class
defaults (taken from buffer_time and latency_times of 200ms and 10ms
respectively)
Measure the samples written to the device vs. played.
Keep track of segments in the device by writing empty eof frames, and
sleep using a GCond when we get too far ahead and risk overrunning the
sink's ringbuffer.
Fixes: #360673
Original commit message from CVS:
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_reset):
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open),
(gst_sunaudiosrc_reset):
Implement reset functions to unblock the src/sink more quickly on
state change requests.
Patch by: Padraig O'Briain <padraig dot obriain at sun dot com>
Original commit message from CVS:
* sys/sunaudio/gstsunaudiomixer.c:
(gst_sunaudiomixer_change_state):
Construct the correct mixer device name when the AUDIODEV env var
is set.
Patch by: Jerry Tan <jerry.tan at sun dot com>
Fixes: #383596
Original commit message from CVS:
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open):
Apply patch to open the mixer control and set the MULTIPLE_OPEN
ioctl. On solaris, the mixer device doesn't need opening non-blocking
- it can be opened by multiple processes by default, but needs the ioctl for multiple opens within 1 process.
Patch by: Jerry Tan <jerry.tan at sun dot com>
Fixes: #349015
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_queue_frame), (gst_v4l2src_grab_frame),
(gst_v4l2src_get_capture), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init), (gst_v4l2src_buffer_finalize):
cleanup the error message a bit more
Original commit message from CVS:
Patch by: Sergey Scobich <sergey dot scobich at gmail com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_window_thread),
(gst_directdrawsink_create_default_window):
* sys/directdraw/gstdirectdrawsink.h:
* sys/directsound/gstdirectsoundsink.c:
Wait until the window is created before using it; guard unistd.h
includes with HAVE_UNISTD_H. (#366523)
* win32/vs8/libgstdirectdraw.vcproj:
* win32/vs8/libgstdirectsound.vcproj:
Update project files.
Original commit message from CVS:
Patch by: Fredrik Persson <frepe at broadband net>
* sys/v4l2/gstv4l2tuner.c:
* sys/v4l2/gstv4l2tuner.h:
Fix _set_channel(): remove useless g_object_notify() for "channel"
property that doesn't exist any longer and therefore now also
useless redirect (#338818).
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_oss_sink_prepare):
Some drivers do not support unsetting the non-blocking flag once the
device is opened. In those cases, close/open the device in
non-blocking mode. Fixes#362673.
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_fps),
(gst_v4l2src_get_fps):
dear stefan, framespersecond is not frameperiod, reverting but adding
comment
Original commit message from CVS:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_fps),
(gst_v4l2src_get_fps):
Numerator is numerator and denominator is denominator. Say that aloud
5 times and retry after next beer.
Original commit message from CVS:
* configure.ac:
* sys/Makefile.am:
add build stuff for v4l2, needs --enable-experimental until
the last bits are resolved
Original commit message from CVS:
* sys/v4l2/gstv4l2object.c:
(gst_v4l2_object_install_properties_helper):
comment out the properties that are already part of the tuner
interface.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_all_caps),
(gst_v4l2src_get_caps):
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Framerate can be 0/1 too.
Init framerate to 0/1 before querying it so that we can detect
devices that don't know about a framerate.
Add some more debugging info.
Original commit message from CVS:
Patch by: Darren Kenny <darren dot kenny at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_build_list):
Set the output track as the MASTER so that the gnome-settings-daemon
keybindings for changing the volume using the keyboard works.
Fixes#356142.
Original commit message from CVS:
2006-08-04 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/ximageutil.c: (ximageutil_xcontext_get):
Fix rgb masks when recording in < 24bpp.
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun com>
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_open):
Open source with O_NONBLOCK (#349015).
Original commit message from CVS:
* sys/ximage/gstximagesrc.c: (gst_ximage_src_class_init):
Document newly-added properties properly, so that there is a
'Since: 0.10.4' in the plugin docs. Convert some property
names into canonical GObject style (GObject will do that
internally anyway).
Original commit message from CVS:
* sys/directsound/gstdirectsoundsink.h:
* sys/directsound/gstdirectsoundsink.c:
Add an attenuation property that will directly attenuate the
directsound buffer.
Change the size of the directsound secondary buffer to a half second.
Add more debug logs.
Add a lock to protect dsound buffer write access.
Fix a bad implementation of reset.
* sys/directsound/gstdirectdrawsink.c:
* sys/directsound/gstdirectdrawsink.h:
Add a keep_aspect_ratio property.
Do not use overlay if not supported.
Add more debug logs.
Remove overwrite of WM_ERASEBKGND message handling. It was not
redrawing border when keep_aspect_ratio was enabled.
* win32/common/config.h:
update version waiting an auto-generated config.h
Original commit message from CVS:
Patch by: Martin Szulecki
* sys/v4l2/gstv4l2object.c: (gst_v4l2_object_get_property_helper):
If "device-name" is requested and the device is not
open, try to temporarily open it to obtain this
information (#342494).
Original commit message from CVS:
2006-07-14 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get),
(gst_ximage_src_get_caps), (gst_ximage_src_class_init):
Fix segfault when moving mouse pointer to the bottom right corner.
Original commit message from CVS:
2006-07-09 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get),
(gst_ximage_src_set_property), (gst_ximage_src_get_property),
(gst_ximage_src_get_caps), (gst_ximage_src_class_init),
(gst_ximage_src_init):
* sys/ximage/gstximagesrc.h:
Fix use-damage property to actually work :)
Add startx, starty, endx, endy properties so screencasts other than full
screen ones can work.
Original commit message from CVS:
2006-07-08 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get),
(gst_ximage_src_set_property), (gst_ximage_src_get_property),
(gst_ximage_src_class_init), (gst_ximage_src_init):
* sys/ximage/gstximagesrc.h:
Add use_damage property to offer ability to choose whether to use
XDamage or not.
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_build_list):
Move "Monitor" slider to input tab so it works more like
sdtaudiocontrol, which is what people on Solaris are used
to using for their mixer program (#346259).
Original commit message from CVS:
2006-06-29 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get):
Fix hypothetical crash.
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun dot com>
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_prepare):
Do not modify the ports value. If the user has turned off the
built-in speakers, then we should not reset it in the prepare
function, since this causes the built-in speakers to turn
back on anytime the user changes a track in totem, rhythmbox,
etc. (#346066).
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun dot com>
* sys/sunaudio/Makefile.am:
* sys/sunaudio/gstsunaudio.c: (plugin_init):
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_build_list), (gst_sunaudiomixer_ctrl_new),
(gst_sunaudiomixer_ctrl_list_tracks),
(gst_sunaudiomixer_ctrl_get_volume),
(gst_sunaudiomixer_ctrl_set_volume),
(gst_sunaudiomixer_ctrl_set_mute),
(gst_sunaudiomixer_ctrl_set_record):
* sys/sunaudio/gstsunaudiomixerctrl.h:
* sys/sunaudio/gstsunaudiomixertrack.c:
(gst_sunaudiomixer_track_init), (gst_sunaudiomixer_track_new):
* sys/sunaudio/gstsunaudiomixertrack.h:
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_dispose),
(gst_sunaudiosrc_base_init), (gst_sunaudiosrc_class_init),
(gst_sunaudiosrc_init), (gst_sunaudiosrc_set_property),
(gst_sunaudiosrc_get_property), (gst_sunaudiosrc_getcaps),
(gst_sunaudiosrc_open), (gst_sunaudiosrc_close),
(gst_sunaudiosrc_prepare), (gst_sunaudiosrc_unprepare),
(gst_sunaudiosrc_read), (gst_sunaudiosrc_delay),
(gst_sunaudiosrc_reset):
* sys/sunaudio/gstsunaudiosrc.h:
Add a SunAudio source plugin.
Support stereo and right/left channel gain in the mixer plugin.
Support the RECORD flag so that you can switch between line-input and
microphone in gnome-volume-control.
Code cleanups like using an enumerator for track number instead of an
integer. Fixes#344923.
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_create):
Set caps on outgoing buffers.
* sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init):
Comment out unused global instance variable.
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun dot com>
* sys/sunaudio/gstsunaudiomixerctrl.c:
(gst_sunaudiomixer_ctrl_open), (gst_sunaudiomixer_ctrl_build_list),
(gst_sunaudiomixer_ctrl_new), (gst_sunaudiomixer_ctrl_set_volume),
(gst_sunaudiomixer_ctrl_set_mute):
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_class_init),
(gst_sunaudiosink_init), (gst_sunaudiosink_prepare),
(gst_sunaudiosink_write):
Attached find a patch that fixes a number of bugs with the SunAudio mixer
plugin and fixes#344101:
1. The gst_sunaudiomixer_ctrl_build_list kept appending the same 3 tracks onto
the tracklist causing gnome-volume-control's preferences dialog to be messed
up and would core dump if you checked/unchecked any item.
2. We weren't previously setting the MUTE flag properly. Fixing this makes
gnome-volume-control work better.
3. Now we properly define the input track to be GST_MIXER_TRACK_INPUT and
the monitor to be GST_MIXER_TRACK_OUTPUT, so that makes gnome-volume-control
look better.
Also some minor cleanup in gstsunaudiosink.c.
Original commit message from CVS:
Some changes proposed by wingo in bug #338818 (but not everything yet). Patch from Martin Rubli to fix framerate detection.
Original commit message from CVS:
2006-04-28 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/osxaudio/gstosxaudiosink.c:
(plugin_init):
Register osxaudiosrc to the plugin.
* sys/osxaudio/gstosxaudiosrc.c:
(gst_osx_audio_src_osxelement_do_init),
(gst_osx_audio_src_base_init), (gst_osx_audio_src_class_init),
(gst_osx_audio_src_init), (gst_osx_audio_src_set_property),
(gst_osx_audio_src_get_property),
(gst_osx_audio_src_create_ringbuffer), (gst_osx_audio_src_io_proc),
(gst_osx_audio_src_osxelement_init):
* sys/osxaudio/gstosxaudiosrc.h:
Port of osxaudiosrc to 0.10.
* sys/osxaudio/Makefile.am:
Add osxaudiosrc
Original commit message from CVS:
* sys/oss/Makefile.am:
* sys/oss/common.h:
* sys/oss/gstosssink.c: (gst_oss_sink_init), (gst_oss_sink_open),
(gst_oss_sink_prepare), (gst_oss_sink_unprepare):
* sys/oss/gstosssrc.c: (gst_oss_src_prepare),
(gst_oss_src_unprepare):
- the user-visible error strings were in the wrong category
- and the messages were not marked for translation
- which is actually a good thing, because they were exactly
the kind of message you would never want anyone to see
- the macros were using variables that didn't exist in the macro
arguments
- and they were obviously copied from each other and then modified
- so a common header makes sense
Original commit message from CVS:
2006-04-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* ext/amrwb/amrwb-code/Makefile.am:
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc),
(gst_ximagesrc_create), (gst_ximagesrc_set_property):
Typo fix, s/XFree86/X11 and added doc blurb saying that it fixates to
25fps
Original commit message from CVS:
2006-04-07 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc),
(composite_pixel), (gst_ximagesrc_ximage_get),
(gst_ximagesrc_create), (gst_ximagesrc_set_property):
Fix typo, C++ style comments and other small cleanups
Original commit message from CVS:
Patch by: Brian Cameron <brian dot cameron at sun dot com>
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_init),
(gst_sunaudiosink_prepare), (gst_sunaudiosink_write):
* sys/sunaudio/gstsunaudiosink.h:
Use spec->segsize and spec->segtotal in the prepare function
to initialise the ring buffer instead of using the buffer-time
property (#337421).
Original commit message from CVS:
2006-03-31 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/ximagesrc/ximagesrc.c: (composite_pixel),
(gst_ximagesrc_ximage_get), (gst_ximagesrc_set_property),
(gst_ximagesrc_get_caps), (gst_ximagesrc_class_init):
* sys/ximagesrc/ximagesrc.h:
* sys/ximagesrc/ximageutil.c: (ximageutil_xcontext_get):
* sys/ximagesrc/ximageutil.h:
Fix ximagesrc so a) the cursor doesnt trail and b) there are no
yellow rectangles with the cursor
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Older kernels don't seem to have this particular v4l2 format,
so comment out until this gets fixed properly (and make
buildbots happy).
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_base_init),
(gst_v4l2src_class_init):
Initialization of the debugging category should be as early as possible,
moving it from _class_init() to beginning of _base_init().
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_capture_init),
(gst_v4l2src_buffer_pool_free):
g_atomic_int_set is only available in glib-0.10, use gst_atomic_int_et
instead.
Original commit message from CVS:
* sys/v4l2/gstv4l2element.h:
Remove tim's addition of "_stdint.h" since it doesn't make the PPC
buildbot happy.
I will just use the same comment Ronald used when he added these lines:
Yet Another Hack (tm) for kernel header borkedness.
Original commit message from CVS:
* sys/directdraw:
* sys/directsound:
sinks are now using GST_RANK_PRIMARY to be used with autodectection
* win32/vs6:
project files updated to fix some bugs
* win32/vs7:
* win32/vs8:
vs7 and vs8 project files added
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_oss_sink_class_init),
(gst_oss_sink_init), (gst_oss_sink_finalise):
Free the device name string when finalised.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* sys/sunaudio/gstsunaudiomixerctrl.c:
* sys/sunaudio/gstsunaudiosink.c: (gst_sunaudiosink_init):
Export functions that are needed in other parts of the code,
makes the mixer actually work; adjust magic minimum buffer-time
value from 3ms to 5ms to work around stuttering during mp3
playback (#327765).
Original commit message from CVS:
add Sun Audio plugin. Verified that nothing breaks and that make check works.
Don't think the docs gets properly built yet, but I don't understand exactly how to enable that.
Original commit message from CVS:
* sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init),
(gst_oss_mixer_element_get_property),
(gst_oss_mixer_element_change_state):
Add 'device-name' property and fix state change function.
Original commit message from CVS:
* configure.ac:
Update comment in OSS includes check.
* sys/oss/gstossdmabuffer.c:
* sys/oss/gstosshelper.c:
* sys/oss/gstossmixer.c:
* sys/oss/gstossmixertrack.c:
* sys/oss/gstosssink.c:
* sys/oss/gstosssrc.c:
* sys/oss/oss_probe.c:
Don't assume the OSS soundcard.h include is always in
the sys/ directory. Instead, use the existing defines
from config.h to include the right file. Fixes
compilation on OpenBSD 3.8 (#323718).
Original commit message from CVS:
* sys/oss/gstosssrc.c: (gst_oss_src_prepare):
Set bytes_per_sample correctly (is not always 4, but
depends on width and number of channels).
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_oss_sink_prepare):
Fix playback of mono streams (bytes_per_sample should be set
from the sample width and the number of channels negotiated,
and not just be set to 4) (#317338)
Original commit message from CVS:
2005-08-28 Andy Wingo <wingo@pobox.com>
* Updates for two-arg init from GST_BOILERPLATE.
* ext/ladspa/gstsignalprocessor.c (gst_signal_processor_init): Use
the second arg for the class, because G_OBJECT_GET_CLASS (self)
returns the wrong thing.
(gst_signal_processor_add_pad_from_template): Make pads of the
right type.
* ext/ladspa/gstladspa.c (gst_ladspa_class_get_param_spec): Make
writable param specs G_PARAM_CONSTRUCT so default values work.
(gst_ladspa_init): Use the second arg for the class.
Original commit message from CVS:
2005-08-23 Andy Wingo <wingo@pobox.com>
* sys/oss/gstosssrc.c (gst_oss_src_open): Set the device-name
property after opening the mixer.
Original commit message from CVS:
2005-08-23 Andy Wingo <wingo@pobox.com>
* sys/oss/gstosssrc.c:
* sys/oss/gstosssrc.h: Easy to implement a mixer, eh...
Original commit message from CVS:
2005-08-23 Andy Wingo <wingo@pobox.com>
* sys/oss/gstossmixerelement.h:
* sys/oss/gstossmixerelement.c: Added mixer element like
alsamixer.
* sys/oss/Makefile.am:
* sys/oss/gstossaudio.c: Register the ossmixer element.
Original commit message from CVS:
2005-08-23 Andy Wingo <wingo@pobox.com>
* sys/oss/gstossmixer.h:
* sys/oss/gstossmixer.c: Refactored to be more like alsamixer.
* sys/oss/gstossmixertrack.h:
* sys/oss/gstossmixertrack.c: Split out from gstossmixer.[ch],
like gstalsamixer.
* sys/oss/gstosssrc.c:
* sys/oss/gstosssink.c: Where before we used a gstosselement
object as a helper library, now just call functions from
gstosshelper.
* sys/oss/gstosshelper.h:
* sys/oss/gstosshelper.c: Made a real library. Removed
propertyprobe for now, should add it back later.
* sys/oss/gstosselement.h:
* sys/oss/gstosselement.c: Removed, we don't have a shared base
class.
* sys/oss/gstosshelper.c (gst_oss_helper_probe_caps): Search
higher-to-lower, makes 16 bit appear earlier in the caps, which
makes it preferred.
Original commit message from CVS:
2005-08-08 Andy Wingo <wingo@pobox.com>
* sys/oss/gstosssink.c (gst_oss_sink_open, gst_oss_sink_close)
(gst_oss_sink_prepare, gst_oss_sink_unprepare): Update for newer
audiosink api.
* ext/raw1394/gstdv1394src.c (gst_dv1394src_get_property)
(gst_dv1394src_set_property): Style. All about the style.
* ext/esd/esdsink.c (gst_esdsink_getcaps): Return specific caps
only if in READY or higher (i.e., if _open() has been called.)
(gst_esdsink_open, gst_esdsink_close, gst_esdsink_prepare)
(gst_esdsink_unprepare): Update for audiosink changes.
(gst_esdsink_change_state): Die!
Original commit message from CVS:
2005-08-04 Andy Wingo <wingo@pobox.com>
* sys/oss/gstossaudio.c (plugin_init): Second-class citizen.
* gst/videobox/gstvideobox.c (gst_video_box_get_size): Update for
API changes.
* configure.ac (DEFAULT_AUDIOSINK, DEFAULT_VIDEOSINK): Set to
autoaudiosink and autovideosink.
Original commit message from CVS:
2005-07-01 Jan Schmidt <thaytan@mad.scientist.com>
* configure.ac:
* ext/mad/Makefile.am:
* sys/oss/Makefile.am:
Roll gstreamer-interfaces-0.9.pc into gstreamer-plugins-base-0.9.pc
Original commit message from CVS:
* Makefile.am:
* ext/Makefile.am:
* sys/Makefile.am:
Make my automake version shut up about undefined variables
* gst/goom/gstgoom.c:
GstAdapter moved to base objects.
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_class_probe_devices):
Kick the hell out of gcc for not warning me about a symbol conflict.
Original commit message from CVS:
* sys/v4l/gstv4lelement.c: (gst_v4l_iface_supported):
* sys/v4l2/gstv4l2element.c: (gst_v4l2_iface_supported):
g_assert() can be a macro, don't use #ifdef inside it.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* sys/oss/gstosselement.c: (gst_osselement_probe_caps):
* sys/oss/oss_probe.c: (main):
Check for mono/stereo support (similar to samplerate probing),
fixes#159433. Also add missing copyright header to oss_probe.c.
Original commit message from CVS:
2004-11-11 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* sys/v4l2/gstv4l2element.c: (gst_v4l2_iface_supported):
Fix compilation if HAVE_XVIDEO is not defined
Original commit message from CVS:
* sys/oss/gstosssrc.c: (gst_osssrc_get_time), (gst_osssrc_get),
(gst_osssrc_src_query):
* sys/oss/gstosssrc.h:
OK, so people want offset in DEFAULT. This time, actually fix all
cases.
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_getcaps):
Add FPS properly.
Original commit message from CVS:
* sys/v4l2/gstv4l2element.c: (gst_v4l2element_get_property):
Flag typo.
* sys/v4l2/v4l2_calls.c: (gst_v4l2_set_defaults):
No warnings.
Original commit message from CVS:
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_getcaps):
Correct caps negotiation
* gst/volume/gstvolume.c: (volume_chain_float),
(volume_chain_int16):
Modify debug output to be little more informative
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_destroy):
Add XSync calls after detaching from the shared memory segment to
avoid a crash.
Original commit message from CVS:
Patch from Gernot Ziegler <gz@lysator.liu.se> rewriting the
GL sink plugin. (Bug #147302)
* configure.ac: Test for OpenGL
* sys/Makefile.am: Use test for OpenGL
* sys/glsink/Makefile.am:
* sys/glsink/glimagesink.c: rewrite
* sys/glsink/glimagesink.h: rewrite
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data):
mp42/mp43 (no caps) exist too.
* gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps):
Set pixel_width/height; we've got them in-caps.
* gst/typefind/gsttypefindfunctions.c: (plugin_init):
* gst/wavparse/gstwavparse.c: (plugin_init):
Both are valid primary.
* sys/oss/gstossmixer.c:
Remove i18n hack and enable translations.
Original commit message from CVS:
* sys/oss/gstosssink.c:
* sys/oss/gstosssrc.c:
advertise correct template caps - we indeed do non-native endianness
and 8bit audio has no endianness
* sys/ximage/ximagesink.c: (gst_ximagesink_getcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_getcaps):
avoid (wrong) duplications in getcaps function and return
template caps
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
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
Original commit message from CVS:
* configure.ac: OSS portability
* ext/arts/gst_arts.c: idem
* sys/oss/gstosselement.c: idem
* sys/oss/gstossmixer.c: idem
* sys/oss/gstosssink.c: idem
* sys/oss/gstosssrc.c: idem
* sys/oss/oss_probe.c: idem
- check for soundcard.h in different places for some BSD
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event),
(gst_qtdemux_handle_sink_event), (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (qtdemux_dump_mvhd),
(qtdemux_parse_trak):
* gst/qtdemux/qtdemux.h:
Bitch. Also known as seeking, querying & co.
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_chain),
(gst_osssink_change_state):
* sys/oss/gstosssink.h:
Resyncing is for weenies, this hack is no longer needed and was
broken anyway (since it - unintendedly - always leaves resync to
TRUE).
Original commit message from CVS:
* gst-libs/gst/tuner/tunerchannel.h:
- add a freq_multiplicator field to make the conversion
between internal frequency unit and Hz
* sys/v4l/gstv4lelement.c:
* sys/v4l2/gstv4l2element.c:
- change default video device to /dev/video0
* sys/v4l/v4l_calls.c:
* sys/v4l2/v4l2_calls.c:
- we only expose frequency to the user in Hz instead of
bastard v4lX unit (either 62.5kHz or 62.5Hz)
Original commit message from CVS:
fourth batch :
remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc
(in gst-plugins/sys/ this time)
Original commit message from CVS:
* sys/osxaudio/Makefile.am: New OS X audio plugin by Zaheer Merali
* sys/osxaudio/gstosxaudio.c:
* sys/osxaudio/gstosxaudioelement.c:
* sys/osxaudio/gstosxaudioelement.h:
* sys/osxaudio/gstosxaudiosink.c:
* sys/osxaudio/gstosxaudiosink.h:
* sys/osxaudio/gstosxaudiosrc.c:
* sys/osxaudio/gstosxaudiosrc.h:
Original commit message from CVS:
* configure.ac: Add sunaudio
* examples/Makefile.am: make gstplay depend on gconf
* gst/ffmpegcolorspace/gstffmpegcodecmap.c: Remove c99-isms
* gst/ffmpegcolorspace/imgconvert.c: (build_rgb_palette),
(convert_table_lookup), (img_convert): remove c99-isms
* gst/ffmpegcolorspace/imgconvert_template.h: make a constant
unsigned, to fix a warning on Solaris
* gst/mpeg1sys/systems.c: bcopy->memcpy
* gst/rtjpeg/RTjpeg.c: (RTjpeg_yuvrgb8): bcopy->memcpy
* sys/Makefile.am: Add sunaudio
Original commit message from CVS:
* ext/shout2/gstshout2.c:
use application/ogg instead of application/x-ogg (patch by Patrick
Guimond, fixes#142432)
* sys/oss/gstosselement.c: (gst_osselement_reset),
(gst_osselement_sync_parms):
don't set fragment size unless specified
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps):
Missing break, detected by Daniel Gazard <daniel.gazard@free.fr>.
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_sync_parms),
(gst_osselement_rate_probe_check),
(gst_osselement_rate_check_rate), (gst_osselement_rate_add_rate):
get rid of \n in debug output
Original commit message from CVS:
* configure.ac:
* sys/v4l2/gstv4l2element.h:
Workaround for missing struct v4l2_buffer declaration in Suse 9
and Mandrake 10 linux/videodev2.h header file (#135919).
Original commit message from CVS:
* sys/oss/gstosselement.c: (gst_osselement_probe_caps),
(gst_osselement_rate_check_rate):
probe caps correctly for sound cards that only support one format
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_class_probe_devices):
* sys/oss/gstosselement.c: (gst_osselement_class_probe_devices):
Don't block during probing...
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_get_time),
(gst_osssink_chain), (gst_osssink_change_state):
Latest fixes for A/V sync, audio playback and such. This is about
all... MPEG playback issues are mostly related to the async build-
up of MPEG files, I cannot fix that. Use basicgthread to solve it.
Original commit message from CVS:
* ext/divx/gstdivxdec.c:
Downgrade priority. We prefer ffdec_mpeg4.
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps), (gst_faad_srcconnect),
(gst_faad_chain), (gst_faad_change_state):
Fix capsnego. Doesn't work for some sounds because we don't have
a 5:1 to stereo element.
* ext/xvid/gstxvid.c: (plugin_init):
Add priority.
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_chain),
(gst_osssink_change_state):
Add discont handling.
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_chain):
And another caller that couldn't handle delay < 0 (unsigned
integer overflow). Video now continues playing on an audio
buffer underrun, and the clock continues working. Audio still
stalls.
Original commit message from CVS:
* sys/oss/gstosssink.c: (gst_osssink_get_delay),
(gst_osssink_get_time):
get_delay() may return values lower than 0. In those cases, we
should not actually cast to *unsigned* int64, that will break
stuff horribly. In my case, it screwed up A/V sync in movies
in totem rather badly.
Original commit message from CVS:
2004-02-29 Christophe Fergeau <teuf@gnome.org>
* sys/oss/gstosselement.c: (gst_osselement_probe),
(device_combination_append), (gst_osselement_class_probe_devices):
* sys/oss/gstosselement.h:
Reworked enumeration of oss dsps and mixers so that gst-mixer works
on my system using alsa oss emulation, fixes bug #135597
Original commit message from CVS:
2004-02-05 Benjamin Otte <in7y118@public.uni-hamburg.de>
* ext/alsa/gstalsa.c: (gst_alsa_change_state):
be sure to stop the clock when going to paused
* sys/oss/gstosssink.c: (gst_osssink_change_state):
reset number of transmitted when going to ready.
fixes#132935
2004-02-05 Charles Schmidt <cschmidt2@emich.edu>
reviewed by Benjamin Otte
* ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list):
extract track count (fixes#133410)
Original commit message from CVS:
2004-01-27 Benjamin Otte <in7y118@public.uni-hamburg.de>
* sys/oss/gstosssink.c: (gst_osssink_sink_query):
use gst_element_get_time to get correct time
Original commit message from CVS:
2004-01-22 Ronald Bultje <rbultje@ronald.bitfreak.net>
* sys/oss/gstosselement.c: (gst_osselement_class_probe_devices):
Fix the ossmixer case where we shouldn't open /dev/dsp* because
it might block operations (which is bad for a mixer).