Michael Olbrich
53da901cc9
v4l2: always generate video info from caps
...
In the past gst_video_info_from_caps() only video/x-raw. Now it also
supports other video/* and image/* formats.
With this patch the format won't be GST_VIDEO_FORMAT_UNKOWN and
gst_v4l2_buffer_pool_set_config() handles strides correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=699570
2013-05-03 13:14:58 +02:00
Michael Olbrich
1e777ede92
v4l2: try to allocate new buffers with VIDIOC_CREATE_BUFS if needed
...
If max_buffers is 0 then an arbitrary number of buffers (currently 4) is
allocated. If this is not enough v4l2src starts copying buffers.
With this patch VIDIOC_CREATE_BUFS is used to allocate a new buffer. If
this fails v4l2src falls back to copying buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=699447
2013-05-03 11:18:04 +02:00
Andoni Morales Alastruey
bb980775f8
osxvideosink: fix setting window handle after transition
...
The destroyed flag was not reset properly and it's also not needed
as we can check osxwindow != NULL
2013-05-02 14:03:43 +02:00
Michael Olbrich
eebe5fc70d
v4l2: fix and cleanup VIDIOC_EXPBUF handling
...
clear the struct, and provide a correct error message
https://bugzilla.gnome.org/show_bug.cgi?id=699337
2013-05-01 15:40:55 +02:00
Philipp Zabel
4d3f6850ca
v4l2: handle return value -ENOTTY for unimplemented VIDIOC_G_PARM
...
Newer kernels return -ENOTTY, older kernels return -EINVAL if the ioctl
is not implemented. With this patch, GStreamer handles both cases.
https://bugzilla.gnome.org/show_bug.cgi?id=698825
2013-05-01 15:34:50 +02:00
Michael Olbrich
bf3a0b7e37
v4l2: fix broken boolean expression to detect non-frame buffers
...
https://bugzilla.gnome.org/show_bug.cgi?id=699294
2013-04-30 11:47:09 +02:00
Michael Olbrich
d4126ff986
v4l2: also poll for output devices
...
Note that the V4L2 API defines that for output devices POLLOUT
indicates that a buffer is ready to be dequeued.
https://bugzilla.gnome.org/show_bug.cgi?id=698992
2013-04-27 09:31:29 +01:00
Philipp Zabel
fd0123800c
v4l2: fix copying of encoded buffers
...
The existence of a GstVideoFormatInfo does not guarantee, that
the buffer contains video frames, so the format must be checked.
Also, for encoded buffers the length is variable and must be set.
https://bugzilla.gnome.org/show_bug.cgi?id=698949
2013-04-26 15:36:49 +02:00
Michael Olbrich
3466796f10
v4l2: add support for mpeg4 and H.263
...
https://bugzilla.gnome.org/show_bug.cgi?id=698826
2013-04-26 14:26:15 +02:00
Philipp Zabel
305023fe9d
v4l2: handle ENODATA return value for VIDIOC_ENUMSTD
...
In kernel v3.7-rc1, VIDIOC_ENUMSTD returns ENODATA if the current input
does not support the STD API.
https://bugzilla.gnome.org/show_bug.cgi?id=698827
2013-04-25 15:40:59 +02:00
Michael Olbrich
2e80c0d2c0
v4l2: bufferpool: reset buffer size in release_buffer
...
The buffer might still be in use elsewhere when dequeuing buffers for
outputs.
https://bugzilla.gnome.org/show_bug.cgi?id=698822
2013-04-25 12:34:24 +02:00
Michael Olbrich
8f9cc96a69
v4l2: bufferpool: remove unused includes
...
The hacks that needed these are long gone.
https://bugzilla.gnome.org/show_bug.cgi?id=698821
2013-04-25 11:30:48 +01:00
Todd Agulnick
a30634a248
osxaudio: Use gst_audio_channel_positions_to_mask() to create mask
...
https://bugzilla.gnome.org/show_bug.cgi?id=698807
2013-04-25 09:57:26 +02:00
Todd Agulnick
e7710c2655
osxaudio: Remove unused code
2013-04-25 09:56:57 +02:00
Diogo Carbonera Luvizon
0a7d4afc1b
v4l2: save the format correctly
...
If TRY_FMT is not implemented, gst_v4l2_object_get_nearest_size will
use S_FMT and will change the device's operation mode. To save the
old device mode we need to set the type field or else it will fail
to save the previous format.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685209
2013-04-24 16:00:24 +02:00
Sebastian Dröge
3230182a61
osxaudio: Include gstaudioringbuffer.h to fix compilation in 1.0
2013-04-18 09:37:30 +02:00
Philippe Normand
d352201a34
osxaudiosink: channel-mask configuration fixes
...
Set channel-mask according to sink's layout in case of stereo layout.
Also initialize and reset the mask when an unrecognized channel is detected.
https://bugzilla.gnome.org/show_bug.cgi?id=698224
2013-04-18 09:16:19 +02:00
Olivier Crête
b5a9ed20e1
v4l2src: Disable renegotiation in the negotiate method
...
This way, we don't block the initial negotiation.
Thanks to Jeremy Whiting for doing all the testing.
https://bugzilla.gnome.org/show_bug.cgi?id=695981
2013-04-17 17:04:11 -04:00
Olivier Crête
3340baa374
Revert "v4l2: disable renegotiation"
...
This reverts commit d1b26e1d59
.
This causes the initial negotiation to never happen if a reconfigure
event is received after gst_base_src_start_complete() but before the loop
starts.
https://bugzilla.gnome.org/show_bug.cgi?id=695981
2013-04-17 17:02:08 -04:00
Sebastian Dröge
27248393e4
osxaudio: Fix merge conflicts
2013-04-17 20:24:48 +02:00
Sebastian Dröge
2b1f967101
osxaudioringbuffer: First check the type, then cast
2013-04-17 09:52:14 +02:00
Takashi Nakajima
ce5246ed71
osxaudio: use GST_IS_OSX_AUDIO_SINK in ring buffer.
2013-04-17 09:52:14 +02:00
Takashi Nakajima
efda79b084
osxaudio: call set_channel_positions() in osxaudioringbuffer acquire()
2013-04-17 09:52:14 +02:00
Todd Agulnick
c2c85a094a
osxaudio: use GST_AUDIO_INFO_* accessors
...
Changes include the following:
* Update classname references
* Replace GST_BOILERPLATE_FULL with G_DEFINE_TYPE
* Use new GstAudioInfo struct and methods
* Use new buffer memory allocation scheme
Conflicts:
sys/osxaudio/gstosxaudioringbuffer.c
2013-04-17 09:52:13 +02:00
Todd Agulnick
ed94ef79f9
osxaudio: adjust for changes to glib mutex api.
2013-04-17 09:52:13 +02:00
Takashi Nakajima
09e980d2c9
osxaudio: try to fix up according to Sebastian's comments
2013-04-17 09:52:13 +02:00
Philippe Normand
ab64837bf2
osxaudio: build fixes
...
Enable the osxaudio plugin build in configure.ac and fix some
include directive order issues.
2013-04-17 09:52:13 +02:00
ted-n
d5d53ec611
osxaudio: fix layout for osxaudiosrc
2013-04-17 09:52:13 +02:00
ted-n
b217b6fdfb
osxaudio: port to v.1.0
2013-04-17 09:52:13 +02:00
Andoni Morales Alastruey
baa23d314d
osxvideosink: fix segfault accessing osxwindow when not set yet
2013-04-16 14:54:06 +02:00
Sebastian Dröge
b0b0557c48
gst: Add better support for static plugins
2013-04-15 15:54:11 +02:00
Josep Torra
0d6602eaaf
osxaudio: Fixes error: "GST_LEVEL_DEFAULT" redefined
2013-04-15 08:41:34 +02:00
Josep Torra
220a9ff102
osxaudio: fixes implicit declaration of function 'getpid'
2013-04-15 08:41:28 +02:00
Todd Agulnick
a30476497f
osxvideo: include pthread.h to fix compiler warning
...
https://bugzilla.gnome.org/show_bug.cgi?id=697303
2013-04-05 09:34:23 +01:00
Wim Taymans
14300e5805
v4l2: free all queued buffers
...
Don't just loop over the first num_queued buffers but loop over
all the buffers and check if they need to be freed. It is possible that
not all buffers are queued and then the entry in our array will be NULL.
Those buffers that are not queued were freed in stop().
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696651
2013-04-03 11:14:41 +02:00
Wim Taymans
0dfc88d893
v4l2: improve debug
2013-04-03 11:14:41 +02:00
Tim-Philipp Müller
60302a57a4
v4l2: fix printf format compiler warning in debug message
2013-04-02 23:36:22 +01:00
Sebastian Dröge
78acb51dc8
directsoundsink: Check for a subset instead of non-empty intersection in accept-caps
2013-03-26 14:44:36 +01:00
Sebastian Dröge
4f58287aca
directsoundsink: Properly handle the filter caps in get_caps()
2013-03-26 14:40:16 +01:00
Sebastian Dröge
0265b0f6a3
directsoundsink: Don't unnecessarily get the parent class in class_init
...
The trampoline generated by G_DEFINE_TYPE does that already.
2013-03-26 14:40:16 +01:00
Bastien Nocera
8e633d2059
v4l2: fix compilation against newer kernel headers as on FC19
2013-03-18 14:59:35 +00:00
Andoni Morales Alastruey
c853d8dac0
osxaudio: add support for iOS using the RemoteIO AudioUnit
2013-03-08 12:13:56 +01:00
Andoni Morales Alastruey
9621074006
osxaudio: add a façade for the CoreAudio API
2013-03-08 12:13:55 +01:00
Benjamin Gaignard
e29ab42922
v4l2: Add support of dmabuf
...
v4l has add a new IOCTL to export a buffer by using dmabuf.
This patch allow to use this new IOTCL if it has been defined in videodev2.h
I introduce a new IO mode (GST_V4L2_IO_DMABUF) to enable this way of working.
https://bugzilla.gnome.org/show_bug.cgi?id=693826
2013-02-19 12:57:07 +01:00
Benjamin Gaignard
59e583b59f
v4l2: don't check stride for encoded formats
...
Don't try to check the stride for encoded formats. Some drivers output
something != 0 and then we don't want to fail on that.
2013-02-15 16:23:23 +01:00
Alexey Chernov
63235d1054
osxvideosink: Make GstNavigation key input events in osxvideosink compatible with x(v)imagesink ones
2013-01-31 11:44:22 +01:00
Olivier Crête
a31649e357
ximagesrc: Set the pixel aspect ratio correctly in the caps
2013-01-23 21:35:25 -05:00
Sjoerd Simons
00eed11d6a
v4l2: Re-enable prepare-format emission
...
With the port to gstreamer 1.0 the prepare-format signal stopped being
emitted. Start emitting this again for use in uvch264src. While there
change the emission to include the caps for extra flexibility instead of
fource, width, height.
https://bugzilla.gnome.org/show_bug.cgi?id=692042
2013-01-23 21:06:16 -05:00
Alexey Chernov
a8fe984d65
osxvideosink: Fix crash in osxvideosink with external window output
2013-01-16 11:43:56 +01:00
Alexey Chernov
77fde4b8ba
osxvideosink: Make GstGLView propagate input events to its parent view
...
Fixes bug #691832
2013-01-16 11:38:16 +01:00
Robert Krakora
ad2f74afbc
v4l2: Also handle the new ENOENT return value of VIDIOC_QUERYCTRL
...
https://bugzilla.gnome.org/show_bug.cgi?id=691098
2013-01-04 10:04:26 +01:00
Tim-Philipp Müller
644c939fcb
oss4sink: notify "volume" property on open to make apps query initial volume
...
The initial volume might not be the property default, so
emit a notify on the volume property to make apps get
an up-to-date reading of the current volume.
https://bugzilla.gnome.org/show_bug.cgi?id=631053
2012-12-25 16:52:19 +00:00
Koop Mast
0bcf8ecd93
v4l2: Teach where the videodev2.h header lives on freebsd.
...
https://bugzilla.gnome.org/show_bug.cgi?id=690233
2012-12-17 11:17:01 +01:00
Руслан Ижбулатов
fc81ddc8ee
directsound, waveform: fix compilation errors caused by circular includes
...
https://bugzilla.gnome.org/show_bug.cgi?id=690124
2012-12-12 22:42:51 +00:00
Sebastian Dröge
0726b71ceb
ext/sys: Fix some compilation errors caused by circular includes
2012-12-12 17:35:04 +00:00
Alexey Chernov
d4622c974f
osxvideosink: Fix resizing the Cocoa window on receiving new caps
...
Fixes bug #689732 .
2012-12-10 11:45:10 +00:00
Tim-Philipp Müller
527c218533
v4l2src: link against -lrt for clock_gettime()
...
Need to explicitly link against -lrt for clock_gettime(), which
we don't get in the libs any more, because core moved the
gmodule-no-export-2.0 bit into Requires.Private.
Not required for newer glibc, but for older ones, so check for that.
2012-11-30 23:18:12 +00:00
Tim-Philipp Müller
e672123621
v4l2: remove unused define
2012-11-25 16:05:11 +00:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Michael Smith
b04b1b5089
meta info: threadsafe registration using g_once
2012-10-03 10:51:45 -07:00
Sjoerd Simons
5d1ed54814
v4l2src: handle latency query before setting up the bufferpool
...
Fixes crash if no bufferpool is set up yet.
https://bugzilla.gnome.org/show_bug.cgi?id=684430
2012-09-20 13:49:42 +01:00
Arun Raghavan
c9821d31f8
osxaudiosink: Specify endianness in IEC 61937 payloading
...
Corresponds to an API change in gst-plugins-base. This needs to be fixed
to query the expected byte order using appropriate API.
https://bugzilla.gnome.org/show_bug.cgi?id=678021
2012-09-19 09:18:19 +05:30
Arun Raghavan
333d568ec7
directsoundsink: Specify endianness in IEC 61937 payloading
...
DirectSound expects native endian byte order.
https://bugzilla.gnome.org/show_bug.cgi?id=678021
2012-09-19 09:18:19 +05:30
Mark Nauwelaerts
3a7b7efe99
replace _get_caps_reffed with _get_caps
2012-09-14 17:55:16 +02:00
Wim Taymans
e6ce9c226f
v4l2: remove unused properties
2012-09-13 10:56:27 +02:00
Wim Taymans
d1b26e1d59
v4l2: disable renegotiation
...
We can't yet wait for the bufferpool to DRAIN before starting renegotiation so
disable it for now.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682770
2012-09-11 15:41:10 +02:00
Mark Nauwelaerts
fd162372f1
directsoundsink: port to the new GLib thread API
2012-09-11 12:54:41 +02:00
Wim Taymans
497ff16355
update for audio base src api change
2012-09-10 11:32:25 +02:00
Wim Taymans
d154743949
v4l2: remove unused code.
2012-09-06 10:43:52 +02:00
Tim-Philipp Müller
4bb52bbadf
docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert
2012-08-27 21:20:30 +01:00
Martin Ertsaas
7fcbf88ced
osxvideosink: Make osxvideosink use the non-deprecated threading api from glib.
...
https://bugzilla.gnome.org/show_bug.cgi?id=682446
2012-08-22 11:09:55 +01:00
Huacai Chen
05d4f81834
v4l2: make gst_v4l2_fill_lists() adapt to kernel 3.3+
...
When do v4l2_ioctl() with VIDIOC_ENUMINPUT fails on some devices,
kernels before 3.3.0 return EINVAL, but newer kernels return ENOTTY.
This patch make those devices work well on kernel 3.3+.
Related kernel commit:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commit;h=07d106d0a33d6063d2061305903deb02489eba20
Signed-off-by: Huacai Chen <chenhc@lemote.com>
Signed-off-by: Rui Wang <wangr@lemote.com>
Signed-off-by: Jie Chen <chenj@lemote.com>
2012-08-21 23:09:33 +01:00
Matthias Clasen
9f2aa8d47f
v4l2: fix build with recent kernels, the v4l2_buffer input field was removed
...
This was unused apparently and removed in the kernel in commit:
From 2b719d7baf490e24ce7d817c6337b7c87fda84c1 Mon Sep 17 00:00:00 2001
From: Sakari Ailus <sakari.ailus@iki.fi>
Date: Wed, 2 May 2012 09:40:03 -0300
Subject: [PATCH] [media] v4l: drop v4l2_buffer.input and V4L2_BUF_FLAG_INPUT
Remove input field in struct v4l2_buffer and flag V4L2_BUF_FLAG_INPUT which
tells the former is valid. The flag is used by no driver currently.
https://bugzilla.gnome.org/show_bug.cgi?id=681491
Conflicts:
sys/v4l2/gstv4l2bufferpool.c
2012-08-09 08:40:33 +01:00
Tim-Philipp Müller
787c314ec3
Silence some 'variable may be used uninitialized' compiler warnings
...
When compiling with -DG_DISABLE_ASSERT
2012-08-08 11:31:59 +01:00
Andoni Morales Alastruey
6b7f165190
osxvideosink: add a better detection for the main run loop
2012-08-06 10:59:09 +02:00
Xavi Artigas
ec2e962323
directsoundsink: Do not overwrite the DS buffer when testing for AC3 support
...
https://bugzilla.gnome.org/show_bug.cgi?id=680706
Conflicts:
sys/directsound/gstdirectsoundsink.c
2012-08-06 10:59:01 +02:00
Wim Taymans
2052cabdc4
fix for allocator API changes
2012-07-09 16:28:41 +02:00
Wim Taymans
16b8e2d171
update for query api changes
2012-07-06 11:50:50 +02:00
Wim Taymans
8eadb9c12c
update for query api changes
2012-07-06 11:26:46 +02:00
Wim Taymans
77813e67e1
update for allocation query changes
2012-07-06 11:05:11 +02:00
Руслан Ижбулатов
b64849550d
directsoundsink: Fix query function implementation; more debugging
2012-07-04 19:54:55 +02:00
Руслан Ижбулатов
dc2ce73a3e
directsoundsink: Fix spec stuff in directsoundsink
2012-07-04 19:54:55 +02:00
Andoni Morales Alastruey
c38fa466c3
directsoundsink: fix access to invalid pointer in set_volume
2012-07-04 19:54:55 +02:00
Sebastian Dr=C3=B6ge
f72a55319d
directsoundsink: Fix caps leaks
2012-07-04 19:54:55 +02:00
Andoni Morales Alastruey
1c6d1bd29a
directsoundsink: fix acceptcaps check
2012-07-04 19:54:55 +02:00
Andoni Morales Alastruey
ed8ad7bffe
directsoundsink: use helper function to check for spdif formats
2012-07-04 19:54:55 +02:00
Andoni Morales Alastruey
a9dff8adb9
directsoundsink: add support for DTS
2012-07-04 19:54:55 +02:00
Andoni Morales Alastruey
e815d08342
directsoundsink: force 48000 kHz force AC-3 over spdif
2012-07-04 19:54:51 +02:00
Andoni Morales Alastruey
7d64e16b30
directsoundsink: add support for ac-3 over spdif
2012-07-04 19:54:43 +02:00
Tim-Philipp Müller
b2b3de569a
osxvideosink: default to force-aspect-ratio=true
2012-06-29 11:51:30 +01:00
Wim Taymans
56690cf021
v4l2: improve debug
2012-06-26 13:19:02 +02:00
Wim Taymans
77f33e591f
Revert "v4l2: free kernel buffers before allocating new ones"
...
This reverts commit 1b09bc609a
.
Seems to make libv4l2 complain, maybe because we call REQBUFS with 0 buffers
before we allocated buffers.
2012-06-26 13:02:13 +02:00
Wim Taymans
1b09bc609a
v4l2: free kernel buffers before allocating new ones
...
See https://bugzilla.gnome.org/show_bug.cgi?id=670257
2012-06-26 12:07:47 +02:00
Wim Taymans
9fd4af2164
v4l2src: improve debug
2012-06-26 12:07:29 +02:00
Wim Taymans
f4e3ae65ab
v4l2: setup strides and offsets for all planes
2012-06-26 11:14:59 +02:00
Josep Torra
d2c6cc3a39
osxaudiosink: respect the prefered channel layout
...
In OSX is allowed to configure the default audio output device,
prefered channel layout and speaker positions through the tool
"Audio MIDI Setup".
2012-06-19 12:55:37 +01:00
Josep Torra
59191412eb
osxaudiosink: Add support for SPDIF output
...
A big refactoring to allow passthrough AC3/DTS over SPDIF.
Several random cleanups and minor fixes.
2012-06-14 08:46:34 +02:00
Hans de Goede
b9676944bb
v4l2object: Don't probe UVC devices for being interlaced
...
UVC devices are never interlaced, and doing VIDIOC_TRY_FMT on them
causes expensive and slow USB IO, so don't probe them for interlaced.
This shaves 2 seconds of the startup time of cheese with a Logitech
Webcam Pro 9000.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677722
2012-06-11 11:23:34 +02:00
Wim Taymans
f65495d405
update for audio api change
2012-06-08 10:11:12 +02:00
Thiago Santos
44d010277c
osxvideo: straightforward port to 0.11
2012-06-05 17:53:58 -03:00