Matthew Waters
0842187e6e
nvdec: Rely on upstream's value for interlace-mode with hevc
...
The nvdec API doesn't seem to produce interlacing information with hevc
streams so rely on upstreams value for interlace-mode
2018-12-12 21:21:57 +00:00
Haihao Xiang
88586b4149
msdk: change the wait time for encoder and vpp
...
In MSDK samples, the wait time for encoder, decoder and vpp is
300000. Let's set the wait time to the same value in msdk plugin
2018-12-12 17:24:00 +00:00
Haihao Xiang
51dc388783
msdk: correct the error message
...
It is VPP session instead of Encoder session
2018-12-12 17:24:00 +00:00
Haihao Xiang
718b7d0b5d
msdk: check the created context against NULL pointer
...
gst_msdk_context_new_with_parent() may return NULL
2018-12-12 17:24:00 +00:00
Haihao Xiang
801189c02f
msdk: decrease the reference count of object
...
Otherwise there are reference leaks if failed to clone or join a
mfx session
2018-12-12 17:24:00 +00:00
Haihao Xiang
43e5eaeda1
msdk: assign the returned value to status variable
...
Othervise the subsequent check will use the stale value of status
variable
2018-12-12 17:24:00 +00:00
Xiang, Haihao
9a9e01a1a5
msdkh265enc: output main-10 bitstream if the input is P010_10LE
...
Tested on KBL using the following command:
gst-launch-1.0 videotestsrc num_buffers=100 ! video/x-raw,format=P010_10LE ! \
msdkh265enc ! filesink location=a.hevc
This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/829
2018-12-12 09:00:13 +00:00
Xiang, Haihao
9711a21008
msdkh265enc: add P010_10LE to the sink pad template
2018-12-12 09:00:13 +00:00
Xiang, Haihao
ba1f162401
msdkh265enc: re-add the sink pad template
...
We will add more profiles in the sink caps of msdkh265enc, so let
msdkh265enc re-add the sink pad template. Note this change doesn't
impact any capability
2018-12-12 09:00:13 +00:00
Xiang, Haihao
f45d5dc8bc
msdkenc: handle P010_10LE input format
...
Note it is up to each codec to support P010_10LE format
2018-12-12 09:00:13 +00:00
Xiang, Haihao
506835a484
msdkenc: use macro GST_VIDEO_INFO_FORMAT if possible
2018-12-12 09:00:13 +00:00
Matthew Waters
59c5ae2817
decklink: calculate the decklink output time from the internal clock
...
Fixes the time calculations when dealing with a slaved clock (as
will occur with more than one decklink video sink), when performing
flushing seeks causing stalls in the output timeline, pausing.
Tighten up the calculations by relying solely on the internal time
(from the internal clock) for determining when to schedule display
frames instead attempting to track pause lengths from the external
clock and converting to internal time. This results in a much easier
offset calculation for choosing the output time and ensures that the
clock is always advancing when we need it to.
This is fixup to the 'monotonically increasing output timestamps' goal
in: bf849e9a69
2018-12-12 13:29:32 +11:00
Matthew Waters
b907187ade
androidmedia: also install java sources
...
As needed by our ndk-build integration
2018-12-07 07:46:27 +00:00
Naveen Cherukuri
936f89a0d5
kmssink: Avoiding get_property to take ownership of object members
...
Double free will happen if application frees string retuned by _get_property
2018-12-04 12:23:48 +01:00
Xiang, Haihao
0e7e425bb9
msdk: add missing breaks
2018-12-03 07:09:56 +00:00
Xiang, Haihao
a1aae3fd92
msdk: fix the wrong operator
...
The condition is for video memory only, so the operator should be
& instead of |
2018-12-03 07:09:56 +00:00
Tim-Philipp Müller
2b8659a3ef
meson: build opencv and ipcpipeline examples
...
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/576
2018-11-29 12:29:50 +00:00
Jordan Petridis
1f562870ee
Run gst-indent through the files
...
This is required before we enabled an indent test in the CI.
https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33
2018-11-28 14:18:26 +00:00
Xiang, Haihao
b0d22f8cb4
msdk: remove unnecessary assignment
...
CodecProfile will be set in MFXVideoDECODE_DecodeHeader() to match
the input stream. Setting the hard-coded profile here will mislead
user that msdkh265dec supports a special profile only.
2018-11-26 16:47:17 +00:00
Xiang, Haihao
b38f8d301c
msdk: update the sink and src caps of msdkh265dec
...
Now hevc 10bit video can be decoded correctly, so update the sink
and src caps accordingly.
This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/720
2018-11-26 16:47:17 +00:00
Xiang, Haihao
2b0923842a
msdk: set right BitDepth and Shift for P010 mfx frame
...
BitDepth is 10 and Shitf must be set to 1 when creating P010 mfx
frame in MSDK
2018-11-26 16:47:17 +00:00
Xiang, Haihao
fda4918cc8
msdk: don't use hard-coded video format
...
Some codecs may support varied formats, e.g. HEVC may support NV12
and P010_10LE etc
2018-11-26 16:47:17 +00:00
Xiang, Haihao
27ab7fb40f
msdk: adjust the RT format for P010 surface
...
According to VA API, VA_RT_FORMAT_YUV420_10 is expected for P010
surface
2018-11-26 16:47:17 +00:00
Xiang, Haihao
eeb58f64c2
msdk: create VA_FOURCC_P010 surface from dmabuf
2018-11-26 16:47:17 +00:00
Xiang, Haihao
7d58424611
msdk: VA_FOURCC_P010 frame lock
...
P010 and NV12 have the same layout, so we may reuse the code in
gst_msdk_frame_lock()
2018-11-26 16:47:17 +00:00
Xiang, Haihao
f72c825194
msdk: map MFX_FOURCC_P010 to VA_FOURCC_P010
2018-11-26 16:47:17 +00:00
Xiang, Haihao
dc070a8306
msdk: make sure the surface data is set for GST_VIDEO_FORMAT_P010_10LE
...
P010_10LE and NV12 have the same layout, so we may reuse the code.
2018-11-26 16:47:17 +00:00
Haihao Xiang
54451b7303
msdk: map GST_VIDEO_FORMAT_P010_10LE to MFX_FOURCC_P010
2018-11-26 16:47:17 +00:00
Xiang, Haihao
1d97a6f00e
msdk: add an assert in gst_msdk_frame_lock() for unhandled formats
...
We will add support for more formats, e.g. P010, Adding an assert
here may catch the error early
2018-11-26 16:47:17 +00:00
Haihao Xiang
1c0160513b
msdk: use separate src caps for msdkh265dec
...
We will add more formats in the src caps of msdkh265dec, so let
msdkh265dec uses separate src caps. Note it doesn't change any
capability
2018-11-26 16:47:17 +00:00
Xiang, Haihao
1bfd1b2bf9
msdk: Make sure a variable is initialized when it is used
...
Previously alloc_info is initialized when both thiz->initialized
and thiz->allocation_caps are true, but only thiz->initialized is
checked when alloc_info is used.
2018-11-26 16:13:44 +00:00
Xiang, Haihao
38cf42f90f
msdk: Close fd handle
...
Otherwise it will result in resource leak if mem == NULL
2018-11-26 16:13:44 +00:00
Matthew Waters
d67d866eb9
decklink: fixup internal time tracking over buffering pauses
...
Instead of relying on buffers after a state change to PLAYING to always start
from 0, track the amount of time we have spent outside playing but not changed
state to PAUSED.
2018-11-26 17:57:45 +11:00
Seungha Yang
d2e87e6a31
meson: Fix Windows CUDA dependency check
...
Python returns 'None' string for unknown environment
2018-11-26 11:31:06 +09:00
Seungha Yang
d3a6eb7977
nvh265enc: Fix email address typo
2018-11-25 23:31:37 +00:00
Seungha Yang
c75907d23c
nvenc: Fix undefined reference build error on MSVC and CUDA 9.1
2018-11-25 23:31:37 +00:00
Seungha Yang
3cd1d0c7bc
nvenc: Fix MSVC build error C2121
2018-11-25 23:31:37 +00:00
Seungha Yang
6bf5ba993d
nvenc: Add meson build with Windows support
...
Note that, since Nvidia does not provide nvEncodeAPI.lib file,
find_library() couldn't be used for build on Windows.
This patch changes to load nvEncodeAPI(64).dll or libnvidia-encode.so
in runtime
2018-11-25 23:31:37 +00:00
Seungha Yang
6051c47bfe
nvdec: Add meson build with Windows support
2018-11-25 23:31:37 +00:00
Seungha Yang
4e314d6f80
nvdec: Drop dynlink interface and use NVIDIA CODEC SDK instead
...
dynlink_* was introduced since CUDA Toolkit 9.x but it's deprecated from 10.0.
Instead of using #ifdef hack, shipping nvidia headers of NVIDA CODEC SDK
can make build/code simple
2018-11-25 23:31:37 +00:00
Seungha Yang
67a84254ae
nvdec/nvenc: Shipping NVIDA Codec SDK headers
...
Add cuvidec.h, nvcuvid.h and nvEncodeAPI.h of NVIDIA Codec SDK 8.2.16
2018-11-25 23:31:37 +00:00
Víctor Manuel Jáquez Leal
09dbe83e5d
msdk: don't declare headers in meson
...
This partially reverts commit 0bae648353
.
The compiler tells ninja the header dependency, then there is
no need to add them explicity.
2018-11-23 17:10:24 +01:00
Víctor Manuel Jáquez Leal
0bae648353
msdk: declare headers in meson
2018-11-23 13:50:20 +01:00
Wangfei
409d4ff30e
msdkdec: move output-order out of decode bass class.
...
Since output-order is a deprecated attribute, move it out of decode
bass class and configure it in each sub decoder class who need it.
https://bugzilla.gnome.org/show_bug.cgi?id=796853
2018-11-23 12:26:40 +00:00
Víctor Manuel Jáquez Leal
eaa1bd93e8
msdk: add support for open sourced MediaSDK
...
MediaSDK has been released as open source [1], but the directories
where it installs its files, are different from the binary only
distribution.
This patch adds to the libraries path the directory /lib. Also it
is defined in meson if the include directory has the mfx/ prefix,
something that is already handled in autotools.
1. https://github.com/Intel-Media-SDK/MediaSDK
2018-11-22 17:31:58 +01:00
Seungha Yang
b44d2702ca
meson: Fix invalid keyword warning
...
"required" keyword is not a valid argument for has_header()
WARNING: Passed invalid keyword argument "required".
WARNING: This will become a hard error in the future.
2018-11-13 09:02:21 +00:00
Sebastian Dröge
1d0d395b5c
decklinkvideosink: Cast result of bitwise-or of multiple enum values to the enum again
...
In C++ the bitwise-or results in an int, and ints are not implicitely
cast to enums.
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/25#note_78122
2018-11-13 10:02:57 +02:00
Nirbheek Chauhan
09f814a00a
d3dvideosink: Remove unused variable
...
Fixes a compiler warning.
2018-11-13 09:55:56 +05:30
Sebastian Dröge
96490b83a4
decklinkvideosink: Add support for outputting closed captions
2018-11-12 14:10:03 +00:00
Jochen Henneberg
15fc39c296
avdtputil: Remove dead code
...
These function are not used at all, using them together with the
transport-volume property from avdtpsrc may end up in a binding loop so
we better remove the functions.
2018-11-12 08:00:26 +00:00