Commit Graph

54 Commits

Author SHA1 Message Date
Martin Pulec
297593889e DeckLink: improved profile help
print also descriptions and affected devices
2023-04-13 14:04:31 +02:00
Martin Pulec
9eeff27085 DeckLink cap,disp: print display mode flags
print all known display mode flags, not only 3D support
2023-04-11 11:52:17 +02:00
Martin Pulec
4fe552f225 use common com_[un]initialize 2023-02-24 16:06:42 +01:00
Martin Pulec
8df499ffac merged utils/hresult to utils/windows
These 2 files are relatively small and coherent.

+ fixed hresult_to_str not returning anything on RPC_E_CHANGED_MODE
2023-02-24 15:00:00 +01:00
Martin Pulec
39af5e01df moved CoInitialize stuff outside bmd_common
this code may be useful in general
2023-02-24 14:48:07 +01:00
Martin Pulec
96778ce782 decklink_initialize: print textual represenation of error 2023-02-24 13:23:25 +01:00
Martin Pulec
50655d4dbc blackmagic_api_version_check: use decklink_[un]initialize 2023-02-24 12:02:32 +01:00
Martin Pulec
c1d6bb84b0 DeckLink: continue if CoInit fails on diff. mode 2023-02-24 12:02:32 +01:00
Martin Pulec
73176ea568 bmd_hresult_to_string: common COM errors handling
Factor out common errors to hresult.h header. If not running on Windows,
use that subset. Vice versa use hresult_to_str directly because it can
catch more Windows-specific errors.
2023-02-24 12:02:31 +01:00
Martin Pulec
48ddd23ae1 blackmagic_common.cpp profiles: fixed notification
CID 401453
2022-10-21 08:18:39 +02:00
Martin Pulec
2e5dc112df blackmagic_common.cpp: missing return 2022-09-26 11:51:18 +02:00
Martin Pulec
19e8d968bf DeckLink cap./disp.: check profile for 3D
Verify if active profile is compatible with 3D mode - if not, suggest profile
change.
2022-09-22 08:19:07 +02:00
Martin Pulec
a4da8b6b5c DeckLink: wait for profile activation
profiles are not applied immediately so wait for completition
2022-09-21 16:30:10 +02:00
Martin Pulec
d9207b97a3 DeckLink cap.: Co[Un]Initialize call changes
Called in constructor/desctructor.

+ create_decklink_iterator: call CoUninitialize if
  CoCreateInstance(CLSID_CDeckLinkIterator...) fail
2022-09-21 15:23:17 +02:00
Martin Pulec
1973687c7d Revert "create_decklink_iterator: removed coinit parameter"
This reverts commit b71e55e3cb544ea8eec77d3f721cd9c82b2fcd65.
2022-09-21 15:23:17 +02:00
Martin Pulec
3960aef0c3 create_decklink_iterator: removed coinit parameter
CoInitializeEx can be called multiple times returning S_FALSE so there
is no point to differentiate whether or not to call.

+ call CoUninitialize if CoCreateInstance(CLSID_CDeckLinkIterator...) fails
2022-09-21 15:23:16 +02:00
Martin Pulec
5aca271708 DeckLink disp.: audio connection name to separate func 2022-08-17 17:27:43 +02:00
Martin Pulec
144997a2d8 DeckLink: display warning that R10k is now limited 2022-08-17 17:27:43 +02:00
Martin Pulec
65557d112d get rid of rang.hpp dependency through color_out.h
Removed indirect dependency on rang.hpp through color_out.h. Now only
remaining dependencies on rang.hpp are direct.

+ fixed escape sequence for foreground magenta
2022-08-17 17:24:34 +02:00
Martin Pulec
227488af99 DeckLink: convert R10k from/to limited range
BMD uses limited range for R10k codec (in opposite to UltraGrid), thus
input/output conversion is deployed.
2022-08-12 12:04:10 +02:00
Martin Pulec
443d6aacf2 blackmagic_common.h->hpp: contains only C++ funcs
The header contains only C++ linked functions thus mark it as such.
2022-08-11 17:17:24 +02:00
Martin Pulec
dc826b52ce added BMD_STR->std::string func
+ use it in recent code
2022-07-20 14:23:04 +02:00
Martin Pulec
9388b33f20 bmd_hresult_to_string: print also error code 2022-07-20 14:23:04 +02:00
Martin Pulec
8e12a29ddf DeckLink cap.: supress IDeckLinkDisplayMode::GetName fail
For a reason, this sometime fail resulting to following error:

    [DeckLink capture] set_display_mode_properties: out of memory

+ release_bmd_api_str: NOOP if nullptr passed (can be now the case since
  the code is more permissive)
2022-07-20 14:23:04 +02:00
Martin Pulec
fd18e33c20 clang: suppress a warning 2022-03-22 14:40:56 +01:00
Martin Pulec
39785a6058 BMD: implement get_bmd_api_str_from_cstr abstraction 2022-03-22 14:40:56 +01:00
Martin Pulec
eae4c79844 DeckLink disp.: set signal as progressive (not-PsF)
Set signal as progressive (not-PsF) by default - previously the value
was not touched which may be a bit misleading when DeckLink outputs
actually interlaced signal.

Issue warning that the option is set and keep user opt out from setting
this value.
2022-01-20 09:27:30 +01:00
Martin Pulec
1b3b27eb7c Updated copyright dates for modified files 2021-11-08 15:43:14 +01:00
Ben Roeder
cf2764750a fix type o found to find 2021-10-07 14:20:26 +01:00
Martin Pulec
80651114af DeckLink: fixes
- mac/Win compile fixes
- fixed freeze introduced by c1a1f83b when there is no signal
2020-07-30 23:05:48 +02:00
Martin Pulec
730d634631 DeckLink disp.: added HDR option 2020-07-30 14:57:52 +02:00
Martin Pulec
a08a0900c7 DeckLink: pad FourCC shorter than 4 with spaces
This allows to pass "pal" instead of "pal ".
2019-11-09 21:52:29 +01:00
Martin Pulec
31d9809fcd Updated documentation
Updated authors, copyright to 3-clause BSD (where possible) and file-level Doxygen
2019-11-09 13:47:11 +01: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
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
ecab2ea98e DeckLink disp.: correct duplex mode for quad-link 2019-06-13 14:01:50 +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
2363415f90 CoInitializeEx COINIT_MULTITHREADED everywhere 2019-04-08 17:36:33 +02:00
Ben Roeder
4e8af6d56c removed double http from url 2018-09-10 21:57:33 +01:00
Martin Pulec
d43f8bcf3f DeckLink cap.: opt to disable/enable passthrough 2018-05-07 10:47:15 +02:00
Martin Pulec
fb07611894 DeckLink: fixed warnings 2018-04-24 09:59:32 +02:00
Martin Pulec
6463067e6f Small configure/build fixes
* allow build without DeckLink
* added missing library to DirectShow
* fixed missing -ldl if X11 support is build
2018-02-01 14:34:49 +01:00
Martin Pulec
1988466762 DeckLink: improved string handling 2016-11-25 11:41:13 +01:00
Martin Pulec
a1a63d66b5 DeckLink: multiple changes
* fixed CoInitialize/CoUninitalize pairing (for MSW)
* print version in -t decklink:help and -d decklink:help
2016-05-02 17:12:10 +02:00
Martin Pulec
9f0e8d4c47 DeckLink: correctly uninitialize COM 2016-01-19 16:04:37 +01:00
Martin Pulec
b7127d43b5 Decklink: MSW compilation fix 2015-12-09 17:33:11 +01:00
Martin Pulec
f739e35d81 Decklink: move common parts to shared source 2015-12-09 17:18:53 +01:00
Martin Pulec
dc1f2861b6 Remove some notes that are no more relevant 2014-10-17 16:46:51 +02:00
Martin Pulec
06affa3248 Value initialize class with () not {}
Fixes problems with GCC 4.6
2014-09-17 10:12:42 +02:00