Nirbheek Chauhan
c427860a20
wasapi: Don't open the device in get_caps()
...
We can just return the template caps till the device is opened when
going from READY -> PAUSED. This fixes a CRITICAL when calling
ELEMENT_ERROR before the ringbuffer is allocated.
Also fixes a couple of leaks in error conditions.
https://bugzilla.gnome.org/show_bug.cgi?id=794611
2018-04-09 17:28:11 +05:30
Nirbheek Chauhan
b7653925db
wasapi: Only use audioclient3 when low-latency
...
Causes glitches on very slow CPU machines or VMs, and our
out-of-the-box experience should be good.
https://bugzilla.gnome.org/show_bug.cgi?id=794497
2018-04-06 23:11:18 +05:30
Nirbheek Chauhan
41a4a8fe0d
wasapi: Don't derive device period from latency time
...
This seems to cause glitches on devices with low CPU availability,
such as virtual machines. Maybe even actual machines under high load.
https://bugzilla.gnome.org/show_bug.cgi?id=794497
2018-04-06 23:11:11 +05:30
U. Artie Eoff
275d754156
msdk: fix plugin load on implementations with only HW support
...
We can't assume that MSDK always supports SW implementation
on all platforms. Thus, msdk_is_available should check for
ANY implementation.
https://bugzilla.gnome.org/show_bug.cgi?id=794991
2018-04-04 17:31:14 -08:00
Nirbheek Chauhan
fc989ce544
wasapi: Squelch warning about %x and HRESULT
...
HRESULT is always a 32-bit value, as is guint.
2018-04-04 18:36:38 +05:30
Nirbheek Chauhan
affb0182c6
wasapisrc: Implement loopback recording
...
Now, when you set loopback=true on wasapisrc, the `device` property
should refer to a sink (render) device for loopback recording.
If the `device` property is not set, the default sink device is used.
2018-04-04 01:12:23 +05:30
Tim-Philipp Müller
f7352ecc5c
msdk: fix meson syntax
2018-04-03 19:22:01 +01:00
Sreerenj Balachandran
e4b4f09496
msdk: vpp : Add frame rate control
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 11:10:20 -08:00
Sreerenj Balachandran
c0ea4bdafb
msdk: vpp : Add force-aspect-ratio property
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:39:45 -08:00
Sreerenj Balachandran
fb8c536393
msdk: Add more scaling filter algorithms
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:39:35 -08:00
Sreerenj Balachandran
51b6345dc4
msdk: vpp: Add support for horizontal and vertical mirroring
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:39:24 -08:00
Sreerenj Balachandran
108c8fde7f
msdk: vpp: Add detail/edge enhancement tuning
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:39:13 -08:00
Sreerenj Balachandran
93c5dd2478
msdk: vpp: Add ProAmp(colorbalance) support
...
Added Hue, Saturation, Brightness and Contrast tuning support.
Fixme: Add GstColorBalanceInterface support
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:39:02 -08:00
Sreerenj Balachandran
f5a3d3d799
msdk: vpp: Add deinterlacing support
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:38:52 -08:00
Sreerenj Balachandran
36e81744d1
msdk: vpp:Add more filters
...
-- Add Denoise
-- Add Rotation
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:38:41 -08:00
Sreerenj Balachandran
d3d89f02b3
msdk: Add VPP element
...
https://bugzilla.gnome.org/show_bug.cgi?id=793705
2018-04-03 10:38:19 -08:00
Hyunjun Ko
35b6411d4d
msdk: dec: rename the function to what it means more exactly.
...
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-04-02 15:55:55 -08:00
Hyunjun Ko
90491d889a
msdk: allocator: libva: check if it's already using dmabuf when mapping
...
As long as we negotiate the "DMABuf" capsfeatures for now, map can't be
working. So we need to confirm not to do it if using DMABuf memory.
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-04-02 15:49:32 -08:00
Daeseok Youn
faa892fb48
nvbaseenc: fix build warnings with HAVE_NVENC_GST_GL
...
fix following error:
gstnvbaseenc.c: In function ‘gst_nv_base_enc_set_context’:
gstnvbaseenc.c:451:17: error: unused variable ‘nvenc’ [-Werror=unused-variable]
GstNvBaseEnc *nvenc = GST_NV_BASE_ENC (element);
^
https://bugzilla.gnome.org/show_bug.cgi?id=794896
2018-04-02 19:42:15 +01:00
Nirbheek Chauhan
29c785ef28
decklink: Fix MinGW warnings due to MSVC-specific pragmas
...
https://bugzilla.gnome.org/show_bug.cgi?id=794652#c7
2018-03-31 11:16:38 +05:30
Hyunjun Ko
cdc591dbc0
msdkdec: use dmabuf if possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:06:40 -08:00
Hyunjun Ko
ea92da6e54
msdk: dmabuf support
...
This patch includes:
1\ Implements MsdkDmaBufAllocator and allocation of msdk dmabuf memroy.
2\ Each msdk dmabuf memory include its own msdk surface kept by GQuark.
3\ Adds new option GST_BUFFER_POOL_OPTION_MSDK_USE_DMABUF
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:06:05 -08:00
Hyunjun Ko
5df06545ef
msdk: adds new function to get dmabuf information from surface.
...
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:05:16 -08:00
Hyunjun Ko
bd8ffcb29d
msdk: allocator: get dmabuf handle during allocation if required
...
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:04:28 -08:00
Hyunjun Ko
c3438b5a0f
msdk: generalize the parameter of msdk video memory functions
...
There needs to be generalized for the parameter from
GstVideoMsdkVideoMemory to GstMemory.
Thus we can call these functions if using DMABuf memory.
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:03:00 -08:00
Hyunjun Ko
762eb97092
msdk: specify the way to find a proper cached response by request
...
The current way to find proper response by just comparing request's
value is wrong. We need to compare the size of a frame and the
number of suggested frames.
Refer to the sample in https://github.com/Intel-Media-SDK/samples .
https://bugzilla.gnome.org/show_bug.cgi?id=793707
2018-03-30 11:02:26 -08:00
Paul Kocialkowski
a53019068d
kmssink: Add support for the Allwinner DRM driver (sun4i-drm)
...
This adds the sun4i DRM driver to the list of DRM drivers in kmssink.
The driver allows displaying video in either the main plane or an
overlay plane.
https://bugzilla.gnome.org/attachment.cgi?bugid=794839
2018-03-30 09:16:39 -04:00
Sreerenj Balachandran
e40dc51fcd
msdk: dec: remove framerate field from sink caps template
...
Removes unessential field framerate for decoder so that negotiation
works even if framerate is not provided from upstream.
https://bugzilla.gnome.org/show_bug.cgi?id=789752
2018-03-29 13:06:41 -08:00
Hyunjun Ko
1955ffed3f
msdk: dec: set framerate to the driver only if provided
...
For example, if framerate 0/1 is provided from upstream, the driver
fails to configure and complain about it.
We can let it go and make the driver assuming framerate itself.
https://bugzilla.gnome.org/show_bug.cgi?id=789752
2018-03-29 12:41:48 -08:00
Hyunjun Ko
0eaf3bdcd9
msdk: h265dec: remove framerate field from sink caps template
...
Removes unessential field framerate for decoder so that negotiation
works even if framerate is not provided from upstream.
https://bugzilla.gnome.org/show_bug.cgi?id=789752
2018-03-29 12:40:34 -08:00
Sreerenj Balachandran
f1f148fe7c
msdk: Don't set extended coding options for JPEG encode
...
MJPEG doesn't have support for extended coding options
https://bugzilla.gnome.org/show_bug.cgi?id=793873
2018-03-29 11:56:19 -08:00
Nirbheek Chauhan
90f6e6c097
decklink: Use g_thread_new instead of g_thread_create
...
It's deprecated, and causes a build failure in Cerbero because we pass
-DG_DISABLE_DEPRECATED.
2018-03-27 12:51:19 +05:30
Takeshi Sato
beab2ee4dc
decklink: fix initialization fails in windows binary
...
There is no log of gst_decklink_com_thread () which initializes COM.
The initialization part is not valid with #ifdef MSC_VER.
Windows binaries are built with gcc.
As with other codes, it was avoidable by setting it to G_OS_WIN32
instead of MSC_VER.
https://bugzilla.gnome.org/show_bug.cgi?id=794652
2018-03-27 12:04:05 +05:30
Nirbheek Chauhan
a08d333e56
wasapi: Print the hresult hex value on error
...
This helps figure out precisely what error enum value was returned,
which can be necessary when the description is too generic
2018-03-27 12:02:21 +05:30
Sebastian Dröge
1b3b3677cc
shmsink: Fix compilation with latest GLib
...
g_object_ref() forwards its arguments type.
gstshmsink.c: In function ‘gst_shm_sink_allocator_alloc_locked’:
/usr/include/glib-2.0/gobject/gobject.h:512:32: error: passing argument 3 of ‘gst_memory_init’ from incompatible pointer type [-Werror=incompatible-pointer-types]
#define g_object_ref(Obj) ((__typeof__(Obj)) (g_object_ref) (Obj))
^
gstshmsink.c:292:45: note: in expansion of macro ‘g_object_ref’
gst_memory_init (memory, params->flags, g_object_ref (self), NULL,
^~~~~~~~~~~~
2018-03-20 16:16:19 +02:00
Tim-Philipp Müller
1da3cd56a0
wasapi: try to satisfy both mingw and msvc
...
Fix-up for previous commit, hopefully.
2018-03-18 14:13:52 +00:00
Nicolas Dufresne
9387a936b5
kmssink: Add Amlogic upstreamer DRM driver support
...
Amlogic Upstream driver is named meson, not to be confuse with the build
system.
2018-03-18 09:50:51 -04:00
Tim-Philipp Müller
ca4cbaef24
wasapi: fix indentation
2018-03-17 23:52:31 +00:00
Tim-Philipp Müller
ec5c3cb714
wasapi: fix unresolved symbol linker error with vs2017 on win10
...
ERROR: unresolved external symbol PKEY_AudioEngine_DeviceFormat
Apparently the order of the header includes matters, and initguid.h
must be included first. Let's hope this doesn't break anything on
the other toolchains.
https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ceff4e2d-8f63-4ab6-b09b-fdac65d62a80/pkeyaudioenginedeviceformat-link-error?forum=windowspro-audiodevelopment
2018-03-17 23:48:13 +00:00
Hyunjun Ko
52f669bf43
msdk: libva: remove unnecessary code and comments
...
https://bugzilla.gnome.org/show_bug.cgi?id=794276
2018-03-13 14:21:40 -08:00
Hyunjun Ko
6547b638c5
msdk: adds new debug category
...
https://bugzilla.gnome.org/show_bug.cgi?id=794276
2018-03-13 14:20:50 -08:00
Hyunjun Ko
443b3c98fa
msdk: fix typo
...
https://bugzilla.gnome.org/show_bug.cgi?id=794276
2018-03-13 14:18:23 -08:00
Wang,Fei
0c69867d52
msdk: Fix the I420 video format support
...
Make sure I420 surface mapping works as expected by using
YV12 format and swap U/V plane's offset and pitches.
https://bugzilla.gnome.org/show_bug.cgi?id=793865
2018-03-13 13:54:17 -08:00
Nirbheek Chauhan
16b9e1e444
wasapi: Minor fixes for debug logging
2018-03-10 18:54:59 +05:30
Nirbheek Chauhan
1019537344
meson: Add deviceprovider changes to directsoundsrc
...
These were missed when they were added to Makefile.am
2018-03-10 18:54:59 +05:30
Nirbheek Chauhan
a2f5485893
wasapi: Guard IAudioClient2 structs and enums
...
These are already defined in the audioclient.h provided by the latest
MinGW headers, and the existing #ifndef were obviously wrong.
https://bugzilla.gnome.org/show_bug.cgi?id=794197
2018-03-10 18:54:59 +05:30
Tim-Philipp Müller
c2bcc2711a
meson: fix build when msdk is not found
2018-03-09 23:59:16 +00:00
Sreerenj Balachandran
bdbc1d0bef
msdk: Fix the misspelled file name in meson build
2018-03-09 10:33:22 -09:00
Emilio Pozuelo Monfort
898e01fe29
wasapi: ship audioclient3 header in tarballs
...
https://bugzilla.gnome.org/show_bug.cgi?id=794197
2018-03-09 11:42:13 +00:00
Hyunjun Ko
4918430858
msdk: enc: fix missing some frames to be encoded
...
There was not handling the end of encoding sequence in encoder.
This patch does drain any remaining internal streams while decoder
already does this.
Document says:
"To mark the end of the encoding sequence, call this function with a
NULL surface
pointer. Repeat the call to drain any remaining internally cached
bitstreams—one
frame at a time—until MFX_ERR_MORE_DATA is returned."
https://bugzilla.gnome.org/show_bug.cgi?id=793236
2018-03-08 11:39:25 -09:00