Commit graph

792 commits

Author SHA1 Message Date
Stefan Kost
00ffa9c2dd v4l2src: add a function pointer for get_frame function and optimize a bit
Use a function-pointer for mmap/read, as this can't change during capture. Also
sprinkle a few G_LIKELY/UNLIKELY to improve the error-less code path.
2009-09-11 22:24:47 +03:00
Stefan Kost
1a945a32cc v4l2: log buffer copies on queue underrun in perf category
v4l2src has a slow path where it does buffer-copies when it runs out of queued
buffers. Log this to performance category to help monitoring it.
2009-09-11 22:19:23 +03:00
Stefan Kost
0a68003efe docs: fix gtk-doc warnings 2009-09-10 10:26:23 +03:00
Wim Taymans
5580571f8d whitespace fixes 2009-09-09 10:27:55 +02:00
Wim Taymans
796dec5920 v4l2src: add support for mpeg formats 2009-09-07 18:28:51 +02:00
David Schleef
55d2754098 Remove Ronald Bultje from Authors field
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
2009-09-05 20:53:10 -07:00
Sebastian Dröge
686f8376a8 v4l2: Define V4L2_FMT_FLAG_EMULATED if it's not defined yet
libv4l2 already uses this flag, even on Linux kernel versions
before 2.6.32.
2009-09-04 09:32:42 +02:00
Sebastian Dröge
0c6fba9506 v4l2: Fix stupid typo in last commit 2009-09-03 20:40:17 +02:00
Sebastian Dröge
4fda384a83 v4l2: Put emulated formats behind native formats
Fixes bug #593764.
2009-09-03 20:39:44 +02:00
Hans de Goede
10d41286d5 v4l2src: fix 'hang' with some cameras caused by bad timestamping if no framerate is available
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.
2009-08-14 13:30:31 +01:00
Filippo Argiolas
a3a61f8940 v4l2src: clear format list in READY->NULL
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.
2009-08-14 10:15:43 +02:00
Tim-Philipp Müller
9590df3c2e v4l2: fix make distcheck by disting some more headers 2009-08-11 03:08:01 +01:00
Tim-Philipp Müller
8c8e6af45b v4l2src: if max == min width/height put an int in the probed caps, not an int range
Fixes #560033.
2009-08-09 14:19:42 +01:00
Tim-Philipp Müller
6df8fb76ef osxaudiosrc: if max_channels == min_channels, use an int instead of an int range in the caps 2009-08-09 13:58:07 +01:00
Sebastian Dröge
198604c108 v4l2: Directly use GST_PTR_FORMAT for printing caps with the LOG_CAPS macro 2009-08-04 14:45:31 +02:00
Sebastian Dröge
23dbb15ff5 v4l2: Remove some OMAP specific hacks
They require special build flags and are not useful in general.
2009-08-04 09:32:07 +02:00
Rob Clark
99e2ac121d v4l2sink: change where buffers get dequeued
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.
2009-08-04 09:22:29 +02:00
Rob Clark
f19cfbda96 v4l2: Add v4l2sink element
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.
2009-08-04 09:16:56 +02:00
Elaine Xiong
085f87d85f v4l2: Fix v4l2src on OpenSolaris
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>
2009-07-19 11:42:13 +01:00
Filippo Argiolas
946c20a8ba v4l2src: optional support for device probing with gudev
Enumerate v4l2 devices using gudev if available.

Fixes bug #583640.
2009-07-13 16:16:05 +02:00
Tim-Philipp Müller
2e13b85a01 waveformsink: use 'guint8' instead of 'byte' to fix compilation with MSVC8
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.
2009-06-25 18:54:06 +01:00
Stefan Kost
5d256c201f v4l2src: set structs to zero before using them in ioctls
This fixes valgrind warnings.
2009-06-25 19:44:21 +03:00
Stefan Kost
0b475ba774 v4l2: open/close the device in READY
This allows to query the device in READY. Before one need to switch it to PAUSED
and that also starts streaming.
2009-06-22 16:24:46 +03:00
Jan Schmidt
7994f64006 sunaudio: Fix switch setting on some devices. Add debug. Fix a FIXME.
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.
2009-06-05 16:54:48 +01:00
Jan Schmidt
0fc43060e5 sunaudio: Support new flags for options and actions
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>
2009-06-05 10:47:53 +01:00
Stefan Kost
751f7fc5f8 v4l2: cleanup and commenting
Remove newlines inserted by gst-indent once. Remove unused var from instance
struct. Add comments. Add another #define for default property value.
2009-05-26 16:29:46 +03:00
Jan Schmidt
bba3e90768 Moved 'directdraw' from -good to -bad 2009-05-16 01:11:33 +01:00
James Andrewartha
2410cd7a00 Fix compiler warnings
Fixes bug #582715.
2009-05-15 15:14:52 +02:00
Edward Hervey
bd4f8576fe osxringbuffer: Run gst-indent. 2009-04-18 18:51:28 +02:00
Edward Hervey
14f715f978 ximage: Remove dead assignments.
Those variables are not read after that point.
2009-04-18 18:51:28 +02:00
Edward Hervey
0cb5b42d54 Remove trivial unused variables detected by CLang static analyzer. 2009-04-18 18:51:28 +02:00
Edward Hervey
4a9e80720a Remove unused variables in _class_init
Detected by LLVM's CLang static analyzer
2009-04-18 18:51:27 +02:00
Tim-Philipp Müller
cdeb8ebb13 sunaudio: fix broken indentation of variable declarations 2009-04-15 19:33:16 +01:00
James Andrewartha
4a74e341ec sunaudio: remove some unused variables and goto labels
Fixes #579070.
2009-04-15 19:30:11 +01:00
Stefan Kost
ad5702d492 v4l2src: move duplicated timestamping and buffer metadata code to _create()
This will include the latency changes also in the mmap case.
2009-03-25 10:08:41 +02:00
Stefan Kost
652a7fb91f v4l2src: remove win32 ifdefs introduced by commit cff3f46760eac74c9bbd7a36aca44fedf327424b
V4l2src is under sys and does not exists/run under windows anyway.
2009-03-25 10:06:48 +02:00
Stefan Kost
1d16c9cc27 v4l2src: log details if we have them, needed for #575391 2009-03-15 23:26:56 +02:00
Jan Schmidt
a32581abee v4l2src: Prepend to lists and reverse them at the end.
Gratuitous micro-optimisation - prepend to lists and reverse them, rather
than appending to them each time.
2009-03-13 15:43:52 +00:00
Stefan Kost
f86b485f3b v4l2src: fix pads, so that they are subset of template caps
Do not add w=0 | h=0. When we can't get a framerate add fraction range.
2009-03-06 21:57:53 +02:00
David Schleef
0083b9e405 Remove hardcoded definition of OBJC 2009-03-01 12:47:37 -08:00
Sjoerd Simons
b6755a7000 Wait for a frame to become available before capturing it
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.
2009-03-01 19:55:26 +01:00
LRN
27d1ef8a86 directdrawsink: Fix type mismatches
Fixes bug #573343.
2009-02-27 20:40:31 +01:00
Wim Taymans
04359c8382 Conditionally compile code for YVYU
Only compile the code for the YVYU format when the format is actually defined.
Spotted by tmatth on IRC.
2009-02-23 19:53:58 +01:00
Levente Farkas
d2fc4cb3ba v4l2src: Make sort_by_frame_size conditionally compiled
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>
2009-02-23 09:20:49 -08:00
Wim Taymans
42c8aa7abc Add YVYU format to caps
Add YVYU format to the caps. We don't have anything to handle these caps yet,
though.
2009-02-23 17:05:43 +01:00
Edward Hervey
309c651286 osxvideosink: Fix build. Fixes #571038 2009-02-10 08:43:59 +01:00
Michael Smith
b9ca852b51 osxvideosink: remove non-embedded mode and fix memory management.
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.
2009-02-05 15:53:04 -08:00
Michael Smith
555c804b7d osxaudio fixes: multichannel and changing caps.
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.
2009-02-04 16:40:13 -08:00
Brijesh Singh
74f84ae47f Fix comparison of the tuner norms
The V4L2 tuner norms that a device supports could
be a subset of some norm (e.g. NTSC instead of NTSC_M).
The comparison should be done by & instead of ==.

See http://www.linuxtv.org/downloads/video4linux/API/V4L2_API/spec-single/v4l2.html#STANDARD

Fixes bug #569820.
2009-01-30 14:42:44 +01:00
Stefan Kost
8e462968cf Remove version numbers from a few gst-launch examples.
The majority of the examples doe not use -0.10 and this will also help us to maintain the docs.
2009-01-29 11:07:59 +02:00
Stefan Kost
6335307b97 Update and add documentation for platform specific plugins (sys).
Link to properties. Correct titles for examples. Fix examples.
2009-01-29 10:12:43 +02:00
Tim-Philipp Müller
6c565d2ee1 sys/v4l2/gstv4l2src.c: Fix error code (the message string also needs love, but not today).
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_read):
Fix error code (the message string also needs love, but not today).
2009-01-20 15:33:05 +00:00
Michael Smith
b5f2a609af 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:
Link against CoreServices (needed for osx 10.4) and fix up the linker
flags. Fixes #567853.
2009-01-15 21:16:45 +00:00
Michael Smith
b7d55c18de sys/osxaudio/Makefile.am: osxaudio plugin now requires AudioUnit framework, so link against that.
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.
2009-01-13 19:04:09 +00:00
Jan Schmidt
90e9d8e0e1 sys/v4l2/gstv4l2src.c: Remove () from translateable string, so that it makes more sense.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Remove () from translateable string, so that it makes more sense.
2009-01-07 16:09:47 +00:00
Sascha Hauer
d576b9fdbe sys/v4l2/gstv4l2src.c: Add support for grayscale v4l2 devices. Fixes bug #566616.
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.
2009-01-05 12:30:40 +00:00
Justin Karnegas
17bb67f873 sys/osxaudio/: Rewrite osxaudio to work more flexibly and more reliably, using a different abstraction layer of corea...
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.
2009-01-02 20:39:34 +00:00
Brian Cameron
2020290c48 sys/sunaudio/gstsunaudiomixerctrl.c: Set the mixer fd before calling ioctl() on it. Fixes bug #563414.
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.
2008-12-07 19:22:48 +00:00
Michael Smith
e6075940b1 sys/osxvideo/osxvideosink.*: Handle video window resizing more correctly, avoiding crashes when embedding the window ...
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.
2008-11-20 23:59:07 +00:00
Tim-Philipp Müller
2e0d8e8b93 sys/v4l2/v4l2src_calls.c: Turns out we don't always get the frame sizes in a predefined order from lowest to highest ...
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.
2008-11-17 14:04:20 +00:00
Stefan Kost
b51bb31b73 sys/v4l2/gstv4l2.c: Give it a primary rank for autovideosrc.
Original commit message from CVS:
* sys/v4l2/gstv4l2.c:
Give it a primary rank for autovideosrc.
2008-11-14 15:42:32 +00:00
Fabricio Godoy
5a4565868d sys/: Fix some spelling mistakes. Fixes #556802.
Original commit message from CVS:
Patch by: Fabricio Godoy <skarllot at gmail dot com>
* sys/oss/gstosssink.c: (gst_oss_sink_open):
* sys/oss/gstosssrc.c: (gst_oss_src_open):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_mmap):
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Fix some spelling mistakes. Fixes #556802.
2008-11-13 17:45:59 +00:00
Bastien Nocera
a50de826a2 Optionally use libv4l to access v4l2 devices. Fixes bug #545033.
Original commit message from CVS:
Patch by: Bastien Nocera <hadess at hadess dot net>,
Hans de Goede <jwrdegoede at fedoraproject dot org>
* configure.ac:
* sys/v4l2/Makefile.am:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_read):
* sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities),
(gst_v4l2_fill_lists), (gst_v4l2_open), (gst_v4l2_close),
(gst_v4l2_get_norm), (gst_v4l2_set_norm), (gst_v4l2_get_frequency),
(gst_v4l2_set_frequency), (gst_v4l2_signal_strength),
(gst_v4l2_get_attribute), (gst_v4l2_set_attribute),
(gst_v4l2_get_input), (gst_v4l2_set_input):
* sys/v4l2/v4l2_calls.h:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2_buffer_finalize),
(gst_v4l2_buffer_new), (gst_v4l2_buffer_pool_finalize),
(gst_v4l2_buffer_pool_new), (gst_v4l2_buffer_pool_activate),
(gst_v4l2src_fill_format_list),
(gst_v4l2src_probe_caps_for_format_and_size),
(gst_v4l2src_probe_caps_for_format), (gst_v4l2src_grab_frame),
(gst_v4l2src_set_capture), (gst_v4l2src_capture_init),
(gst_v4l2src_capture_start), (gst_v4l2src_capture_stop),
(gst_v4l2src_get_nearest_size):
Optionally use libv4l to access v4l2 devices. Fixes bug #545033.
2008-11-04 12:32:48 +00:00
Stefan Kost
084812bffd Don't install static libs for plugins. Fixes #550851 for -good.
Original commit message from CVS:
* ext/aalib/Makefile.am:
* ext/annodex/Makefile.am:
* ext/cairo/Makefile.am:
* ext/dv/Makefile.am:
* ext/esd/Makefile.am:
* ext/flac/Makefile.am:
* ext/gconf/Makefile.am:
* ext/gdk_pixbuf/Makefile.am:
* ext/hal/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/libcaca/Makefile.am:
* ext/libmng/Makefile.am:
* ext/libpng/Makefile.am:
* ext/mikmod/Makefile.am:
* ext/pulse/Makefile.am:
* ext/raw1394/Makefile.am:
* ext/shout2/Makefile.am:
* ext/soup/Makefile.am:
* ext/speex/Makefile.am:
* ext/taglib/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/alpha/Makefile.am:
* gst/apetag/Makefile.am:
* gst/audiofx/Makefile.am:
* gst/auparse/Makefile.am:
* gst/autodetect/Makefile.am:
* gst/avi/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/equalizer/Makefile.am:
* gst/flx/Makefile.am:
* gst/goom/Makefile.am:
* gst/goom2k1/Makefile.am:
* gst/icydemux/Makefile.am:
* gst/id3demux/Makefile.am:
* gst/interleave/Makefile.am:
* gst/law/Makefile.am:
* gst/level/Makefile.am:
* gst/matroska/Makefile.am:
* gst/median/Makefile.am:
* gst/monoscope/Makefile.am:
* gst/multifile/Makefile.am:
* gst/multipart/Makefile.am:
* gst/oldcore/Makefile.am:
* gst/qtdemux/Makefile.am:
* gst/replaygain/Makefile.am:
* gst/rtp/Makefile.am:
* gst/rtsp/Makefile.am:
* gst/smpte/Makefile.am:
* gst/spectrum/Makefile.am:
* gst/udp/Makefile.am:
* gst/videobox/Makefile.am:
* gst/videocrop/Makefile.am:
* gst/videofilter/Makefile.am:
* gst/videomixer/Makefile.am:
* gst/wavenc/Makefile.am:
* gst/wavparse/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/oss/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/sunaudio/Makefile.am:
* sys/v4l2/Makefile.am:
* sys/waveform/Makefile.am:
* sys/ximage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for -good.
2008-11-04 12:28:34 +00:00
Wim Taymans
46fe1e3fa0 sys/v4l2/v4l2src_calls.c: Guard more uncommon formats with ifdefs so that we can compile on older versions.
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.
2008-10-31 10:08:50 +00:00
Edward Hervey
d0777d87fb sys/ximage/gstximagesrc.c: Fix build for systems that don't have XDamage.
Original commit message from CVS:
* sys/ximage/gstximagesrc.c: (gst_ximage_src_stop):
Fix build for systems that don't have XDamage.
2008-10-08 09:29:00 +00:00
Wim Taymans
419ede208d sys/ximage/gstximagesrc.c: Stop leaking the cursor image.
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.
2008-10-03 15:54:07 +00:00
Wim Taymans
300da1655b sys/v4l2/gstv4l2object.h: Getting the Class from an instance is not just a matter of casting it to the class struct b...
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.
2008-10-03 11:32:47 +00:00
Michael Smith
e2dbf108e6 configure.ac: Fix libs for linking directsound.
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.
2008-10-01 21:22:26 +00:00
Edward Hervey
d92f63d3ab sys/osxaudio/: Fix the build on macosx.
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.
2008-08-27 16:12:39 +00:00
Michael Smith
295457b001 sys/osxaudio/gstosxaudio.c: Oops. Revert more completely.
Original commit message from CVS:
* sys/osxaudio/gstosxaudio.c:
Oops. Revert more completely.
2008-08-27 00:08:20 +00:00
Michael Smith
2e7ea63d43 sys/osxaudio/gstosxaudio.c: Revert accidental element rename from testing.
Original commit message from CVS:
* sys/osxaudio/gstosxaudio.c:
Revert accidental element rename from testing.
2008-08-26 23:57:05 +00:00
Michael Smith
192c1b942b sys/osxaudio/: Rewrite caps setting and ring buffer initialisation.
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.
2008-08-26 21:13:08 +00:00
Stefan Kost
2ea5c05241 sys/v4l2/: Fix memory leaks. Small code cleanups : No need for empty _init(). No need to memset instance structures. ...
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.
2008-08-26 12:27:11 +00:00
Filippo Argiolas
4cefe7e944 sys/v4l2/gstv4l2tuner.c: v4l2src doesn't have a property named "norm" so don't try to notify about changes to that pr...
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.
2008-08-23 15:43:49 +00:00
Mike Ruprecht
e14c307e2d sys/v4l2/gstv4l2object.c: Reprobe devices again instead of taking a cached list as new devices could've been plugged ...
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.
2008-08-23 15:33:49 +00:00
Ole André Vadla Ravnås
f209c1be01 sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc, gst_directdraw_sink_bufferpool_clear):
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.
2008-08-21 21:56:19 +00:00
Ole André Vadla Ravnås
7f27287256 sys/directdraw/gstdirectdrawsink.c: Fix buffer ref leak.
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.
2008-08-21 15:28:09 +00:00
Wim Taymans
713e800026 sys/v4l2/gstv4l2src.c: Add S910 and PWC formats with a low priority.
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.
2008-08-21 12:12:00 +00:00
Edward Hervey
5cf61c6a80 sys/v4l2/gstv4l2src.c: Properly set the maximum latency value, in the same way it is done in v4lsrc.
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.
2008-08-13 08:33:57 +00:00
Edward Hervey
27e20eadc0 sys/v4l2/gstv4l2src.c: Add warning messages stating exactly why the latency query failed.
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.
2008-08-12 12:04:24 +00:00
Frederic Crozat
426721f717 Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822).
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).
2008-08-07 16:11:00 +00:00
Jan Schmidt
ab01993d33 sys/v4l2/v4l2src_calls.c: When outputting a pad template range for the size, include a framerate range too, to avoid ...
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.
2008-08-07 10:22:32 +00:00
Edward Hervey
4511fdb05d sys/osxvideo/osxvideosink.m: Fix minor build issues on macosx.
Original commit message from CVS:
* sys/osxvideo/osxvideosink.m:
Fix minor build issues on macosx.
Fixes #543054
2008-07-17 16:42:53 +00:00
Benoit Fouet
f2fb132b9c sys/v4l2/gstv4l2src.c: Avoid compiler warning by initialising variable to NULL (#543259).
Original commit message from CVS:
Patch by: Benoit Fouet <benoit.fouet purplelabs com>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_negotiate):
Avoid compiler warning by initialising variable to NULL (#543259).
2008-07-17 13:54:38 +00:00
Sebastian Dröge
92ed8f6a74 Don't use declarations after statements and variable length arrays.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_uri_set_uri):
* ext/speex/gstspeexenc.c: (gst_speex_enc_sink_getcaps):
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_fixate):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_probe_caps_for_format):
* tests/examples/equalizer/demo.c: (message_handler):
* tests/examples/spectrum/demo-audiotest.c: (message_handler):
* tests/examples/spectrum/demo-osssrc.c: (message_handler):
Don't use declarations after statements and variable length arrays.
2008-07-08 12:51:34 +00:00
Daniel Drake
23078b431b sys/v4l2/v4l2src_calls.c: Try progressive video if interlaced fails. Fixes bug #541956 and the usage of v4l2src on OLPC.
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.
2008-07-07 21:28:58 +00:00
Tim-Philipp Müller
45aa7f8f16 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:
* sys/v4l2/v4l2_calls.c::
Don't include unused gstv4l2xoverlay.h. Fixes build
in case where X11 headers are not installed.
2008-06-26 16:36:47 +00:00
Brian Cameron
fe573a687f sys/sunaudio/gstsunaudiomixerctrl.c: Improvements for the SunAudio mixer by handling mute as no gain for tracks that ...
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.
2008-06-10 06:52:44 +00:00
Sjoerd Simons
0f2d27525b sys/v4l2/gstv4l2src.c: Improve negotiation a bit more by picking the smallest possible resolution that is larger than...
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.
2008-06-09 08:52:04 +00:00
Bastien Nocera
d4e7ab0e8c sys/v4l2/: Fix compilation with newer GIT kernels that deprecated
Original commit message from CVS:
Patch by: Bastien Nocera <hadess at hadess dot net>
* sys/v4l2/gstv4l2vidorient.c:
* sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists):
Fix compilation with newer GIT kernels that deprecated
V4L2_CID_HCENTER and V4L2_CID_VCENTER. Fixes bug #536317.
2008-06-09 08:42:49 +00:00
Sjoerd Simons
22940c0010 sys/v4l2/gstv4l2src.c: Provide a custom negotiation function to make sure to pick the highest possible framerate and ...
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.
2008-06-04 17:39:31 +00:00
William M. Brack
61597d99e9 sys/v4l2/v4l2src_calls.c: Fix potential caps leak.
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.
2008-05-26 15:39:26 +00:00
William M. Brack
dfe8d582fc sys/v4l2/v4l2src_calls.c: If we fail to get the frame intervals, simply don't touch the framerates on the template ca...
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.
2008-05-26 15:14:55 +00:00
William M. Brack
c3bde2dc42 sys/v4l2/gstv4l2src.c: Add NV12, NV21 and bayer support. 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.
2008-05-26 14:52:51 +00:00
Sebastian Dröge
5a344798f0 sys/v4l2/gstv4l2src.c: Don't include the gstv4l2xoverlay.h header as the XOverlay support isn't implemented at all ye...
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.
2008-05-17 10:38:18 +00:00
Haakon Sporsheim
acb8ba648d sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw): Do IDirectDrawClipper_SetHWnd() if the window I...
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.
2008-05-07 15:33:52 +00:00
Haakon Sporsheim
368834ab4e sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame): Added checking of surface lost case after an uns...
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.
2008-05-07 15:28:06 +00:00
Haakon Sporsheim
dd1f932e3e sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame,
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.
2008-05-07 15:19:47 +00:00
Haakon Sporsheim
da78d8dced sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_set_caps): Fixed mid stream resolution change bug, the offscr...
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.
2008-05-07 15:09:10 +00:00
Ole André Vadla Ravnås
deab3d26ba sys/directdraw/gstdirectdrawsink.c
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.
2008-05-07 14:56:22 +00:00
Ole André Vadla Ravnås
c02e043b1f sys/directdraw/gstdirectdrawsink.c
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.
2008-05-07 14:43:39 +00:00
Ole André Vadla Ravnås
b0638c5f79 sys/directdraw/gstdirectdrawsink.c
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!
2008-05-07 14:39:45 +00:00
Ole André Vadla Ravnås
04adbf5be3 sys/directdraw/gstdirectdrawsink.c
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.
2008-05-07 13:48:28 +00:00
Thijs Vermeir
1973c62992 sys/osxvideo/cocoawindow.m: Fix compiler warnings on PPC64. Fixes bug #499318.
Original commit message from CVS:
Patch by: Thijs Vermeir <thijsvermeir at gmail dot com>
* sys/osxvideo/cocoawindow.m:
Fix compiler warnings on PPC64. Fixes bug #499318.
2008-05-06 09:33:46 +00:00
Tim-Philipp Müller
0525a5d213 sys/oss/: More logging when probing (see #518474), some comments in _reset().
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().
2008-04-08 19:49:34 +00:00
Brian Cameron
23b9485530 sys/sunaudio/: Fix up copyrights (#525860).
Original commit message from CVS:
Patch by: Brian Cameron <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudio.c:
* sys/sunaudio/gstsunaudiomixer.c:
* sys/sunaudio/gstsunaudiomixer.h:
* sys/sunaudio/gstsunaudiomixerctrl.c:
* sys/sunaudio/gstsunaudiomixerctrl.h:
* sys/sunaudio/gstsunaudiomixertrack.c:
* sys/sunaudio/gstsunaudiomixertrack.h:
* sys/sunaudio/gstsunaudiosink.c:
* sys/sunaudio/gstsunaudiosink.h:
* sys/sunaudio/gstsunaudiosrc.c:
* sys/sunaudio/gstsunaudiosrc.h:
Fix up copyrights (#525860).
2008-04-02 22:37:29 +00:00
Brian Cameron
01c237e91d sys/sunaudio/: Fix up the mixer tracks to use a volume range of 0-255, which is what the sun audio API uses. This sim...
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.
2008-03-27 09:36:58 +00:00
Edgard Lima
70ee2ee5e0 Add device-fd property to make it possible to apps to call ioctl's.
Original commit message from CVS:
Add device-fd property to make it possible to apps to call ioctl's.
2008-03-26 15:10:08 +00:00
Tim-Philipp Müller
d31a648d75 sys/v4l2/v4l2src_calls.c: Remove superfluous DEBUG macro.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture):
Remove superfluous DEBUG macro.
2008-03-25 12:39:22 +00:00
William M. Brack
e605a94e40 sys/v4l2/v4l2src_calls.c: Check whether the device supports setting the framerate before trying to set it and then po...
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.
2008-03-25 12:33:09 +00:00
Andy Wingo
f7edc0c690 sys/osxvideo/osxvideosink.m (gst_osx_video_sink_osxwindow_destroy)
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.
2008-03-18 15:03:06 +00:00
Andy Wingo
a6267f383e sys/osxvideo/osxvideosink.m (gst_osx_video_sink_osxwindow_destroy)
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.
2008-03-18 11:50:08 +00:00
William M. Brack
a6019fc0bf sys/v4l2/v4l2src_calls.c: Make sure the probed frame sizes are reversed in the resulting caps also when using V4L2_FR...
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)
2008-03-17 19:50:58 +00:00
Mark Nauwelaerts
fd1c1295dc sys/oss/gstosssrc.*: Cache probed caps, so _get_caps() during recording doesn't cause ioctl calls which may disrupt t...
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).
2008-03-11 23:12:04 +00:00
Jan Schmidt
361c3c94c3 sys/ximage/gstximagesrc.c: Initialise variables when opening the X display rather than in _start(), as the display ca...
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
2008-02-12 13:34:52 +00:00
Sebastian Dröge
d62d8d9fea sys/directdraw/gstdirectdrawsink.c: Properly chain up finalize functions. Fixes bug #515980.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c:
(gst_ddrawsurface_class_init), (gst_ddrawsurface_finalize),
(gst_directdraw_sink_finalize):
Properly chain up finalize functions. Fixes bug #515980.
2008-02-12 12:22:48 +00:00
Sebastian Dröge
45aeb687d2 sys/v4l2/v4l2src_calls.c: Chain up the finalize functions. Fixes bug #515984.
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.
2008-02-12 11:38:54 +00:00
Sebastian Dröge
bb3b6569ea sys/ximage/ximageutil.c: Chain up in the finalize function for our custom buffer sub-class.
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
2008-02-12 11:14:36 +00:00
Jan Schmidt
ababb87313 sys/ximage/gstximagesrc.c: Free allocated Damage memory before closing our connection to the
Original commit message from CVS:
* sys/ximage/gstximagesrc.c:
Free allocated Damage memory before closing our connection to the
X server. Fixes: #515706
2008-02-12 11:09:08 +00:00
Jan Schmidt
38baf136e6 sys/v4l2/v4l2_calls.c: Treat ENOTTY (driver does not implement ioctl) the same as
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.
2008-01-31 16:12:28 +00:00
Brian Cameron
a973a4f154 configure.ac: Detect video4linux headers on Solaris too.
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
2008-01-21 19:35:58 +00:00
Stefan Kost
567ec26deb Revert previous change caused by a file that got stuck on an old revision.
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.
2008-01-15 16:04:44 +00:00
Stefan Kost
04c899f757 Managed to resolve most unused declarations. Filed a bug for one left.
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.
2008-01-15 15:22:41 +00:00
Jan Schmidt
c2dddd0201 Generate the image-type values correctly. Leave them out of the caps when outputting a "preview image" tag, since it ...
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.
2008-01-11 21:08:59 +00:00
Tim-Philipp Müller
9a1a9abb9e sys/directdraw/gstdirectdrawsink.c: FALSE is not a gpointer.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdraw_sink_window_thread):
FALSE is not a gpointer.
2008-01-07 16:41:00 +00:00
Julien Moutte
7e0714b511 sys/directdraw/gstdirectdrawsink.c: Make sure we create our internal window only when we need it. That will give a ch...
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.
2008-01-05 21:20:08 +00:00
Tim-Philipp Müller
bcdeaa639b Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached() macro in GLib-2.15.x (i...
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.
2007-12-26 16:03:57 +00:00
Tim-Philipp Müller
8d0960ec26 sys/v4l2/: Init some structs to zero before we pass them to ioctl, which avoids valgrind warnings. Also fix a small ...
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.
2007-12-11 11:50:54 +00:00
Jan Schmidt
fed0fc44d4 sys/oss/gstosshelper.c: Verify that the format returned after the ioctl is the one we requested. It is valid for the ...
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.
2007-12-08 16:47:33 +00:00
Tim-Philipp Müller
915732f5b5 sys/oss/: Post decent (and translated) error message when we can't open the audio device for some reason.
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.
2007-12-07 20:07:49 +00:00
Jan Schmidt
0f1cc10947 sys/oss/: Allow the AUDIODEV environment variable to redirect us to a different default OSS device, like sunaudiosink...
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).
2007-12-07 19:29:39 +00:00
Julien Moutte
1f0a03d320 Fix build on Mac OS X 10.5
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
2007-11-20 11:41:13 +00:00
Edgard Lima
66ca1b2280 Always copy buffers by default (handle safer with bugged drivers) and added a property to make it possible to use mma...
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.
2007-11-15 12:22:10 +00:00
Tim-Philipp Müller
a597c1d4e3 sys/v4l2/v4l2src_calls.c: but the corresponding ioctl() call fails even though the driver claims to support this form...
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).
2007-11-13 17:19:13 +00:00
Tim-Philipp Müller
94c519cead sys/v4l2/v4l2src_calls.c: Fix 'unused variable' compiler warning when compiling against older kernel headers.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c:
Fix 'unused variable' compiler warning when compiling against
older kernel headers.
2007-10-26 15:03:06 +00:00
Yun Zheng Hu
de4452fce9 sys/osxaudio/gstosxaudiosrc.c: Use default input device instead of default output device and only memcpy actual avail...
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.
2007-10-23 08:38:50 +00:00
Edgard Lima
7ec35b117e sys/v4l2/v4l2src_calls.c: Fixes "v4l2src ! queue ! xvimagesink". The queue ask for buffer too early. It is temporary ...
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.
2007-10-22 19:14:08 +00:00
Wim Taymans
279fe5fac6 sys/v4l2/v4l2src_calls.c: Add some more debug info. Generate an error when we run out of buffers for some reason. See...
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.
2007-10-18 14:55:38 +00:00
Tim-Philipp Müller
a769e5e70a sys/v4l2/: When probing the formats and sizes a camera supports, make sure the best ones (highest resolution, prefere...
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.
2007-10-13 12:03:44 +00:00
Stefan Kost
dedf80a378 sys/oss/gstosshelper.c: Use GST_WARNING instead of a g_critical. This situation is not caused by the application.
Original commit message from CVS:
* sys/oss/gstosshelper.c:
Use GST_WARNING instead of a g_critical. This situation is not caused
by the application.
2007-09-23 18:57:14 +00:00
Thomas Vander Stichele
12f3a4bf68 fix header and comments
Original commit message from CVS:
fix header and comments
2007-09-22 08:12:57 +00:00
Stefan Kost
5ff86cd792 ext/gconf/gstgconfaudiosink.c: Fix warning when building without debug.
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).
2007-09-12 09:13:39 +00:00
Wim Taymans
3b78ab50ef sys/v4l2/v4l2src_calls.c: Fix framerate detection code some more.
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.
2007-09-11 15:37:55 +00:00
Wim Taymans
cd79aec473 sys/v4l2/v4l2src_calls.c: Don't overwrite our GValue with 0 but instead use the previously computed value. Fixes #471...
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.
2007-09-07 16:04:14 +00:00
Tim-Philipp Müller
7c69e90236 sys/v4l2/: Implement LATENCY queries in the crudest way possible so I don't have to use sync=false any longer when te...
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.
2007-09-05 14:43:16 +00:00
Wim Taymans
c9d0575c74 sys/v4l2/v4l2src_calls.c: Add some more debugging in the framerate function.
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.
2007-09-05 00:12:46 +00:00
Wim Taymans
b4e5796a04 sys/v4l2/gstv4l2src.c: Restructure the setcaps function so that we can also compute the expected GStreamer output siz...
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.
2007-09-04 16:40:05 +00:00
Mark Nauwelaerts
09a5687705 sys/v4l2/v4l2src_calls.c: Handle optional v4l2 ioctls gracefully.
Original commit message from CVS:
patch by: Mark Nauwelaerts <manauw@skynet.be>
* sys/v4l2/v4l2src_calls.c:
Handle optional v4l2 ioctls gracefully.
2007-08-22 08:22:50 +00:00
Stefan Kost
c1254d31e9 sys/v4l2/gstv4l2src.c: Add another example pipeline.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Add another example pipeline.
2007-07-18 11:55:13 +00:00
Alexander Eichner
e547bc5595 sys/v4l2/gstv4l2src.c: Use define here.
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
2007-07-18 11:42:33 +00:00
Stefan Kost
5d60a17f4a sys/v4l2/gstv4l2src.c: Initialize num_buffers with minimum value.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init):
Initialize num_buffers with minimum value.
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_probe_caps_for_format), (gst_v4l2src_grab_frame):
Handle frame-size query failure gracefully.
2007-07-17 11:35:29 +00:00
Jan Schmidt
93fb3e1e6a Make sure to dist everything needed for win32 builds.
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.
2007-06-14 12:14:24 +00:00
Jan Schmidt
bbcc24410d Move videocrop and osxvideo from -bad.
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/inspect/plugin-videocrop.xml:
* gst-plugins-good.spec.in:
* sys/Makefile.am:
* tests/check/Makefile.am:
* tests/icles/Makefile.am:
* tests/icles/videocrop-test.c:
Move videocrop and osxvideo from -bad.
2007-06-12 20:15:29 +00:00
Andy Wingo
34d9fcc47f Return a copy of the pool buffer if all mmap buffers have been dequeued.
Original commit message from CVS:
(gst_v4l2src_grab_frame): Return a copy of the pool buffer if all
mmap buffers have been dequeued.
2007-06-12 13:33:56 +00:00
Andy Wingo
cde8c8bdc4 sys/v4l2/v4l2src_calls.c (gst_v4l2_buffer_finalize) (gst_v4l2_buffer_class_init, gst_v4l2_buffer_get_type)
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.
2007-06-12 11:23:01 +00:00
daniel fischer
e359a41517 sys/ximage/gstximagesrc.c: Actually use the display_name property so that we can dump any available X display. Fixes ...
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.
2007-06-11 11:41:56 +00:00
Jan Schmidt
853a9f7fe9 Add DirectDraw & DirectSound plugins to the build and docs.
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* sys/Makefile.am:
* win32/MANIFEST:
Add DirectDraw & DirectSound plugins to the build and docs.
2007-06-08 17:37:02 +00:00
Jan Schmidt
01877c67b1 Rename the keep-aspect-ratio property to force-aspect-ratio to make it consistent with xvimagesink and ximagesink.
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.
2007-06-08 16:31:15 +00:00
Andy Wingo
dd803ce06c sys/v4l2/v4l2src_calls.c (gst_v4l2src_probe_caps_for_format)
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.
2007-06-06 10:19:17 +00:00
Andy Wingo
e99b73973b sys/v4l2/gstv4l2src.c (gst_v4l2src_start, gst_v4l2src_stop): Add some useless comments.
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.
2007-06-05 14:17:25 +00:00
Andy Wingo
70615818aa sys/v4l2/gstv4l2object.*: Revert some unintended changes.
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.
2007-05-30 14:57:44 +00:00
Andy Wingo
3b5f988239 sys/v4l2/v4l2src_calls.*: Store the format list in the order that the driver gives it to us.
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.
2007-05-30 14:40:53 +00:00
Vincent Torri
59e42fc5df sys/directdraw/gstdirectdrawsink.*: Fix more warnings when compiling with MingW (#439914).
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).
2007-05-24 08:35:23 +00:00
Sébastien Moutte
877b1be83a docs/plugins/gst-plugins-bad-plugins.args: Remove directsoundsink property doc as this sink use the mixer interface now.
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.
2007-05-23 22:44:12 +00:00
Edward Hervey
c65d017cc5 docs/plugins/Makefile.am: Also look for .m (objectivec) files.
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.
2007-05-22 11:03:30 +00:00
Tim-Philipp Müller
fa055153aa sys/directdraw/gstdirectdrawsink.c: Bunch of small fixes: remove static function that doesn't exist; declare another ...
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).
2007-05-20 14:59:46 +00:00
Edward Hervey
0389794224 sys/osxvideo/osxvideosink.*: Remove the event-loop-in-separate-thread modifications, because MacOSX is $#@(*%$# ! For...
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..
2007-05-17 10:59:00 +00:00
Edward Hervey
284c7f0ff9 sys/osxvideo/osxvideosink.*: Fix a stupid #if vs #ifdef bug. Should use the proper colorspace now.
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.
2007-05-17 09:41:48 +00:00
Tim-Philipp Müller
5daef8a53d Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save and restore the various flags in the directdraw/dir...
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).
2007-05-15 17:22:58 +00:00
David Schleef
1a818e4151 sys/v4l2/gstv4l2src.c: Add support for Bayer images as video/x-raw-bayer. Fixes #314160.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: Add support for Bayer images as
video/x-raw-bayer.  Fixes #314160.
2007-05-15 02:56:23 +00:00
Eric Anholt
28713ecdf1 sys/ximage/gstximagesrc.c (gst_ximage_src_open_display, gst_ximage_src_ximage_get):
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.
2007-05-11 16:11:04 +00:00
Zaheer Abbas Merali
20bc2905bb sys/ximage/gstximagesrc.c (gst_ximage_src_start, gst_ximage_src_ximage_get):
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.
2007-05-11 10:31:27 +00:00
Thomas Vander Stichele
96b4ce1692 80 char police
Original commit message from CVS:
80 char police
2007-04-29 13:56:18 +00:00
Brian Cameron
f520911b6f sys/sunaudio/: Fix and/or update copyright attributions (#430228).
Original commit message from CVS:
Patch by: Brian Cameron  <brian.cameron at sun dot com>
* sys/sunaudio/gstsunaudio.c:
* sys/sunaudio/gstsunaudiomixer.c:
* sys/sunaudio/gstsunaudiomixer.h:
* sys/sunaudio/gstsunaudiomixerctrl.c:
* sys/sunaudio/gstsunaudiomixerctrl.h:
* sys/sunaudio/gstsunaudiomixertrack.h:
* sys/sunaudio/gstsunaudiosink.c:
* sys/sunaudio/gstsunaudiosink.h:
* sys/sunaudio/gstsunaudiosrc.c:
* sys/sunaudio/gstsunaudiosrc.h:
Fix and/or update copyright attributions (#430228).
2007-04-16 21:29:40 +00:00
jerry tan
a7efc5ceb7 sys/sunaudio/gstsunaudiosrc.c: it is the application's responsibility to make sure it open the device once.
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.
2007-04-12 11:37:50 +00:00
Edward Hervey
966b66493a sys/osxvideo/osxvideosink.m: Fix previous commit, we want to pass the NSView in the message.
Original commit message from CVS:
* sys/osxvideo/osxvideosink.m:
Fix previous commit, we want to pass the NSView in the message.
2007-03-16 18:38:18 +00:00
Edward Hervey
64c3e76a84 sys/osxvideo/osxvideosink.m: Emit 'have-ns-view' message when working in embedded mode. The message will contain a po...
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.
2007-03-16 16:27:20 +00:00
Edward Hervey
31aa7717db sys/Makefile.am: Don't forget to distribute the sys/osxaudio/ directory.
Original commit message from CVS:
* sys/Makefile.am:
Don't forget to distribute the sys/osxaudio/ directory.
2007-03-15 12:05:01 +00:00
Edward Hervey
4d0df9433c Activate osxaudio in gst-plugins-good with proper build setup.
Original commit message from CVS:
* configure.ac:
* sys/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxaudio/gstosxaudio.c:
* sys/osxaudio/gstosxaudiosink.c:
(gst_osx_audio_sink_osxelement_do_init), (gst_osx_audio_sink_init),
(gst_osx_audio_sink_getcaps),
(gst_osx_audio_sink_create_ringbuffer), (plugin_init):
* sys/osxaudio/gstosxaudiosrc.c:
(gst_osx_audio_src_osxelement_do_init), (gst_osx_audio_src_init),
(gst_osx_audio_src_create_ringbuffer):
* sys/osxaudio/gstosxringbuffer.c: (gst_osx_ring_buffer_get_type),
(gst_osx_ring_buffer_class_init), (gst_osx_ring_buffer_init),
(gst_osx_ring_buffer_acquire), (gst_osx_ring_buffer_start),
(gst_osx_ring_buffer_pause), (gst_osx_ring_buffer_stop):
* sys/osxaudio/gstosxringbuffer.h:
Activate osxaudio in gst-plugins-good with proper build setup.
Add inlined documentation.
Fix debug statements
Fix ringbuffer when pausing.
Fixes #323471
2007-03-15 11:39:53 +00:00
Edward Hervey
c209a3f894 sys/osxvideo/: Fix leaks when running a NSApp.
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.
2007-03-14 16:30:19 +00:00
Sébastien Moutte
a7368fc0c6 sys/directdraw/gstdirectdrawsink.*: Handle display mode changes during playback.
Original commit message from CVS:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
Handle display mode changes during playback.
2007-03-11 22:23:04 +00:00
Tim-Philipp Müller
7236a2f8b3 Printf format fixes; also add some missing quotes in translated strings. Fixes #416728 and #416727.
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.
2007-03-10 12:30:48 +00:00
Tim-Philipp Müller
c3e99dd86c sys/sunaudio/: Actually translate sunaudio mixer track labels instead of just marking the strings as translatable (#3...
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).
2007-03-09 19:44:30 +00:00
Jan Schmidt
5ab0aa1028 sys/ximage/gstximagesrc.c: Chain up in dispose
Original commit message from CVS:
* sys/ximage/gstximagesrc.c: (gst_ximage_src_dispose):
Chain up in dispose
2007-03-04 15:28:30 +00:00
Jan Schmidt
7f83d0233b sys/ximage/gstximagesrc.c: Catch the case where no clock has been set.
Original commit message from CVS:
* sys/ximage/gstximagesrc.c: (gst_ximage_src_create):
Catch the case where no clock has been set.
2007-03-04 14:56:53 +00:00
Jan Schmidt
de1357a407 Fix a bunch of leaks shown by the newly-added states test.
Original commit message from CVS:
* ext/flac/gstflacenc.c: (gst_flac_enc_finalize):
* ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_class_init),
(gst_gconf_audio_sink_dispose), (gst_gconf_audio_sink_finalize):
* ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_base_init),
(gst_gconf_audio_src_class_init), (gst_gconf_audio_src_dispose),
(gst_gconf_audio_src_finalize), (do_toggle_element):
* ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_base_init),
(gst_gconf_video_sink_class_init), (gst_gconf_video_sink_finalize),
(do_toggle_element):
* ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_base_init),
(gst_gconf_video_src_class_init), (gst_gconf_video_src_dispose),
(gst_gconf_video_src_finalize), (do_toggle_element):
* ext/gconf/gstswitchsink.c: (gst_switch_sink_class_init),
(gst_switch_sink_reset), (gst_switch_sink_set_child):
* ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_base_init):
* ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_base_init):
* ext/shout2/gstshout2.c: (gst_shout2send_class_init),
(gst_shout2send_init), (gst_shout2send_finalize):
* gst/debug/testplugin.c: (gst_test_class_init),
(gst_test_finalize):
* gst/flx/gstflxdec.c: (gst_flxdec_class_init),
(gst_flxdec_dispose):
* gst/multipart/multipartmux.c: (gst_multipart_mux_finalize):
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_finalize):
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_finalize):
* gst/rtsp/rtspextwms.c: (rtsp_ext_wms_free_context):
* gst/rtsp/rtspextwms.h:
* gst/smpte/gstsmpte.c: (gst_smpte_class_init),
(gst_smpte_finalize):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_finalize):
* gst/udp/gstudpsink.c: (gst_udpsink_class_init),
(gst_udpsink_finalize):
* gst/wavparse/gstwavparse.c: (gst_wavparse_dispose),
(gst_wavparse_sink_activate):
* sys/oss/gstosssink.c: (gst_oss_sink_finalise):
* sys/oss/gstosssrc.c: (gst_oss_src_class_init),
(gst_oss_src_finalize):
* sys/v4l2/gstv4l2object.c: (gst_v4l2_object_destroy):
* sys/v4l2/gstv4l2object.h:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init),
(gst_v4l2src_finalize):
* sys/ximage/gstximagesrc.c: (gst_ximage_src_ximage_get):
Fix a bunch of leaks shown by the newly-added states test.
2007-03-04 13:52:03 +00:00
Wim Taymans
6ae9e04ab3 sys/sunaudio/gstsunaudiosrc.*: Remove device-name from GstSunAudioSrc. Fixes #412597.
Original commit message from CVS:
* sys/sunaudio/gstsunaudiosrc.c: (gst_sunaudiosrc_class_init),
(gst_sunaudiosrc_init), (gst_sunaudiosrc_get_property),
(gst_sunaudiosrc_open):
* sys/sunaudio/gstsunaudiosrc.h:
Remove device-name from GstSunAudioSrc. Fixes #412597.
2007-03-02 10:54:49 +00:00
Zaheer Abbas Merali
3c31633120 sys/ximage/gstximagesrc.c: Error out correctly when getting xcontext fails.
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.
2007-03-01 10:44:36 +00:00
Christian Schaller
b9820ee991 update copyright statements
Original commit message from CVS:
update copyright statements
2007-02-27 12:02:03 +00:00
Christian Schaller
83e7dadbe6 update copyright statement
Original commit message from CVS:
update copyright statement
2007-02-27 11:59:21 +00:00
Edward Hervey
a471de34bf sys/osxvideo/: Disable the cocoa event loop since it's a huge memory leak. Should only matter if the sink isn't used ...
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.
2007-02-27 11:30:19 +00:00
Edgard Lima
fff672f930 Fix segfault when oppening a radio device.
Original commit message from CVS:
Fix segfault when oppening a radio device.
2007-02-22 17:53:26 +00:00
Stefan Kost
5c1b116dc8 Fix level for multi-channel case.
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_set_caps),
(gst_level_transform_ip):
* sys/v4l2/README:
* tests/check/elements/level.c: (GST_START_TEST):
Fix level for multi-channel case.
2007-02-22 14:35:28 +00:00
Sébastien Moutte
296687a398 sys/directsound/gstdirectsoundsink.*: Remove include of unused headers.
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.
2007-02-20 21:34:00 +00:00
Stefan Kost
2d1b42029a sys/v4l2/v4l2src_calls.c: Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO, fixes #407369
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
2007-02-19 12:22:43 +00:00
Sébastien Moutte
71cf071f58 sys/directdraw/: Prepare the plugin to move to good:
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
2007-02-18 18:00:51 +00:00
Stefan Kost
77790aa2dc sys/v4l2/: More FIXME comments and messaging changes.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps),
(gst_v4l2src_get_caps):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_grab_frame), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init):
More FIXME comments and messaging changes.
2007-02-12 12:57:22 +00:00
Sébastien Moutte
4b58be7f41 Makefile.am: Add win32 MANIFEST
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.
2007-02-11 15:26:49 +00:00
Stefan Kost
e687b50f62 configure.ac: Activate monoscope when building with --enable-experimental. Fix
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.
2007-02-11 10:53:21 +00:00