| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Use framerate to estimate duration of buffers.
Fixes #590362
|
|
|
|
|
|
|
|
|
|
| |
Old videodevice2.h kernel headers used ioctl stuff without
including ioctl.h, making compilation fail on older systems.
Note: Including ioctl.h here is only a workaround for old kernel
headers, should be removed once everybody has new enough headers.
Fixes bug #597867.
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
|
|
|
|
|
| |
libv4l2 already uses this flag, even on Linux kernel versions
before 2.6.32.
|
| |
|
|
|
|
| |
Fixes bug #593764.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
int range
Fixes #560033.
|
| |
|
|
|
|
| |
They require special build flags and are not useful in general.
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Enumerate v4l2 devices using gudev if available.
Fixes bug #583640.
|
|
|
|
| |
This fixes valgrind warnings.
|
|
|
|
|
| |
This allows to query the device in READY. Before one need to switch it to PAUSED
and that also starts streaming.
|
|
|
|
|
| |
Remove newlines inserted by gst-indent once. Remove unused var from instance
struct. Add comments. Add another #define for default property value.
|
|
|
|
| |
Fixes bug #582715.
|
|
|
|
| |
This will include the latency changes also in the mmap case.
|
|
|
|
|
|
| |
cff3f46760eac74c9bbd7a36aca44fedf327424b
V4l2src is under sys and does not exists/run under windows anyway.
|
| |
|
|
|
|
|
| |
Gratuitous micro-optimisation - prepend to lists and reverse them, rather
than appending to them each time.
|
|
|
|
| |
Do not add w=0 | h=0. When we can't get a framerate add fraction range.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Only compile the code for the YVYU format when the format is actually defined.
Spotted by tmatth on IRC.
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
Add YVYU format to the caps. We don't have anything to handle these caps yet,
though.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
The majority of the examples doe not use -0.10 and this will also help us to maintain the docs.
|
|
|
|
| |
Link to properties. Correct titles for examples. Fix examples.
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
|
| |
more sense.
Original commit message from CVS:
* sys/v4l2/gstv4l2src.c:
Remove () from translateable string, so that it makes more sense.
|
|
|
|
|
|
|
|
|
|
|
| |
#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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Original commit message from CVS:
* sys/v4l2/gstv4l2.c:
Give it a primary rank for autovideosrc.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
_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.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|