Commit Graph

108 Commits

Author SHA1 Message Date
Thomas Menari
92539b8a60 [decklink] fix 3D warning logic
This is a re-implementation of commit 57f215b554 to support the case that you
have a single device but multiple tiles, using 3D mode, as well as the case
where you have multiple non-3D devices and multiple tiles.
2020-04-16 11:18:06 -07:00
Martin Pulec
31d80b34b9 Video display: run mainloop only if needed
Do not run the display worker in the main thread if not needed.

This would allow to run a custom mainloop (eg. from Syphon) while being able
to run a display that doesn't need to be run in the main thread.
2020-04-14 10:52:54 +02:00
Martin Pulec
9c692d8301 Fixed next couple of Coverity issues 2019-11-13 16:56:45 +01:00
Martin Pulec
4c71573a89 Fixed first series of Coverity bugs 2019-11-09 17:20:37 +01:00
Martin Pulec
3fa1a0d718 DeckLink disp.: fixed 2 leaks 2019-11-05 17:35:46 +01:00
Martin Pulec
33ffea4b53 DeckLink disp.: fixed leaks
On UltraStudio Pro (for USB 3) it caused that
IDeckLinkOutput::DoesSupportVideoMode failed starting the playback.
2019-11-05 11:14:14 +01:00
Martin Pulec
e76b832e7b DeckLink: small fix 2019-09-19 11:22:49 +02:00
Martin Pulec
5235027134 DeckLink disp.: moved opt parsing to settings_init
+ modernized a bit
2019-09-16 11:58:44 +02:00
Martin Pulec
738ac7ae23 DeckLink disp.: show usage if no drivers
Shows basic usage even if the drivers are not installed.

+ removed one level of indention in display_decklink_init() in the
  part of parsing options
2019-09-16 11:39:34 +02:00
Martin Pulec
1c8e70e93e DeckLink disp.: improved help 2019-06-14 08:55:07 +02:00
Martin Pulec
9438d20181 DeckLink: multiple changes
* replaced the duplex option with the profile
* half-duplex remains to allow user to use a profile with the maximal
  number of independent IOs
* prefixed DEFAULT and KEEP macros with BMD_OPT_ + moved to common hearder
* added bmd_read_fourcc() and use wherever possible (some of previous
  implementations had incorrectly used max instead of min for memcpy and
  didn't zero-initialized the union)
2019-06-14 08:55:07 +02:00
Martin Pulec
f625f8529f DeckLink: correctly set duplex mode for quad-link
Correctly set the duplex mode for quad-link (implies
bmdProfileOneSubDevicesHalfDuplex).

* changed the duplex options
+ slightly modified usage
2019-06-14 08:55:07 +02:00
Martin Pulec
4151df3d90 DeckLink disp.: print used device
+ moved the common code for querying name to a common file
2019-06-14 08:55:07 +02:00
Martin Pulec
47c0d66393 DeckLink disp.: query mode support after changes
Query if display mode is supported after applying changes that may
influence the availability of modes (link-mode, duplexness,
subsampling).
2019-06-13 14:01:50 +02:00
Martin Pulec
ecab2ea98e DeckLink disp.: correct duplex mode for quad-link 2019-06-13 14:01:50 +02:00
Martin Pulec
37981b1154 Various fixes 2019-05-30 11:38:17 +02:00
Martin Pulec
1828d44da5 DeckLink disp.: only report supported codecs
Only report an output codec if a device supports it.
2019-05-22 10:33:42 +02:00
Martin Pulec
bf729f32e2 DeckLink: fixes 2019-04-24 14:49:16 +02:00
Martin Pulec
d09d91d965 DeckLink: compat with API 11.0 2019-04-24 14:49:12 +02:00
Martin Pulec
84db815331 DeckLink disp.: set square split only if supported
Set bmdDeckLinkConfigQuadLinkSDIVideoOutputSquareDivisionSplit only on
device supporting quad-link SDI.
2019-03-22 10:19:16 +01:00
Martin Piatka
25e6f31662 video_display_info: probe: pass function ptr to deleter func 2019-03-15 13:00:59 +01:00
Martin Piatka
b18115d54e Decklink: Fix codec prefercence 2019-03-01 14:08:00 +01:00
Martin Pulec
3aa85b5869 DeckLink: try deduce implicit parameters
Try to select reasonable default parameters if user didn't select
any:
* quad-link for 8K
* single-link otherwise
* half-duplex for quad-link
2019-03-01 14:04:05 +01:00
Martin Pulec
83aa3c1b88 DeckLink disp.: use Quad-link SDI Square Division
Use Quad-link SDI Square Division by default which causes the output is
normally tiled (1st left-upper, 2nd right-upper etc.). In absence of
this setting, the picture will be spatially split to 2x2 blocks - each
pixel goes to its own tile.
2019-03-01 14:04:05 +01:00
Martin Pulec
1823dfb8de DeckLink: again modify output 2019-02-22 16:38:32 +01:00
Martin Pulec
143ee51050 DeckLink disp.: set subsampling
Without explicit subsampling setting RGB formats were output as 4:2:2
YCbCr.
2019-01-21 11:51:28 +01:00
Martin Pulec
dd9ffe9e1b DeckLink disp.: pretty print 2019-01-21 11:51:23 +01:00
Martin Pulec
881d9f815e DeckLink: use common UV<->BMD pix fmt mapping
+ 10-bit RGB (R10k) is now supported for the display (the pixel format
  was formerly missing)
2019-01-17 10:51:46 +01:00
Martin Pulec
cab584a630 DeckLink: option to set half-/full-duplex
+ set half-duplex automatically for quad-link (DeckLink 8K Pro)
2018-10-08 16:23:30 +02:00
Martin Pulec
69b28c247d DeckLink disp.: help - print available packings 2018-09-17 15:25:43 +02:00
Martin Pulec
57f215b554 DeckLink disp.: warn if 3D not enabled 2018-09-14 11:35:21 +02:00
Martin Piatka
1e2f38c97c Rewrite video_frame callbacks to be set by decoders 2018-09-12 23:29:08 +02:00
Martin Pulec
4a5bc75e1e DeckLink disp.: fixed output audio channels
Fixes the bug that limited the maximal number to 2.
2018-08-24 14:30:55 +02:00
Martin Pulec
fb07611894 DeckLink: fixed warnings 2018-04-24 09:59:32 +02:00
Martin Pulec
3d14c8f68e DeckLink disp.: fixed single-/dual-/quad-link
The previously used FourCC had wrong endianity, used enum member
instead. Also removed related old compatibility code.
2017-10-11 14:10:34 +02:00
Martin Pulec
2a990f695d Small fixes 2017-09-05 10:11:22 +02:00
Martin Pulec
649882d972 DeckLink: renamed audioConsumerLev. to audio_level 2017-06-21 10:12:14 +02:00
Martin Pulec
6a1ee06b48 Fixed another Coverity bugs 2017-03-22 13:44:17 +01:00
Martin Pulec
f47597dd89 Fixed bugs reported by Coverity 2017-03-03 18:07:18 +01:00
Martin Pulec
c16a74d135 MSW: compat
Cleared mainly harmless warnings.
2017-02-15 10:19:12 +01:00
Martin Pulec
a4ae392dff DeckLink disp.: use low-latency mode by default 2017-02-15 10:02:24 +01:00
Martin Pulec
6391458921 DeckLink disp.: print list of output conversions 2017-02-06 17:18:45 +01:00
Martin Pulec
9c5b45acc4 DeckLink disp.: compat 2016-11-25 11:25:11 +01:00
Martin Pulec
dcb9a29826 DeckLink disp.: print timecode in verbose mode
+ fixed early timecode deallocation
2016-11-24 17:34:49 +01:00
Martin Pulec
162aba0fa2 DeckLink: updated Windows SDK 2016-11-15 17:12:35 +01:00
Martin Pulec
f6606058cf DeckLink: support for Level A 3G-SDI
* for supported devices, allow use of Level A 3G-SDI on playback
* updated Linux and macOS SDKs
2016-11-15 15:41:00 +01:00
Martin Pulec
f210acdd0a DeckLink disp.: enable audio after video
This is a workaround for situations when the sound falls silent if video
is enabled after audio.
2016-11-02 10:55:29 +01:00
Martin Pulec
2db29c3707 DeckLink disp.: small improvement 2016-10-10 20:44:37 +02:00
Martin Pulec
37999c083d DeckLink disp.: refactorize a bit
* improved error handling
* some reconfiguration fixes
2016-07-26 15:06:11 +02:00
Martin Pulec
e0bfedbd14 DeckLink disp.: set field flicker removal to false
This solves the problem with swapped fields in low latency mode.
2016-06-28 17:33:24 +02:00