Commit Graph

6574 Commits

Author SHA1 Message Date
Martin Pulec
0bb204fdc8 video decoder: count dropped frames
Count dropped frames from display. It was broken from some time point
and the count of dropped frames was always 0.

+ make some things prettier (alphabetic order, one-line assignment)
2022-09-22 10:00:20 +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
740e58aa7d DeckLink cap.: small reindent
return early if error
2022-09-21 16:30:03 +02:00
Martin Pulec
eda74a8069 DeckLink cap.: notice if enabled stream is stereo 2022-09-21 15:23:18 +02:00
Martin Pulec
cf95a317c4 DeckLink cap.: prefix mesages with MOD_NAME 2022-09-21 15:23:17 +02:00
Martin Pulec
5b88d241ce DeckLink cap.: remove unneeded messages
those doesn't tell anything particularly interesting, merely spam output
2022-09-21 15:23:17 +02:00
Martin Pulec
fee71447b2 Doxyfile: updated skeleton
updated skeleton with current Doxygen (1.9.3)
2022-09-21 15:23:17 +02:00
Martin Pulec
2090f17b9c testcard: tiling is broken
Tiling is not working since image pattern rewrite.
2022-09-21 15:23:17 +02:00
Martin Pulec
0a5a38d218 CI ARM: shallow clone of FFmpeg
Saves time and space.

+ added the branch to the clone command (otherwise it won't be known in
  the shallow clone)
2022-09-21 15:23:17 +02:00
Martin Pulec
8e5f306004 Doxygen: added build* exclude 2022-09-21 15:23:17 +02:00
Martin Pulec
a27f816395 DeckLink cap: warn if 3d req but not detected
Warn in VideoInputFormatChanged also if 3d was requested but not
detected (before only the opposite case was handled).
2022-09-21 15:23:17 +02:00
Martin Pulec
d958bf03a4 DeckLink cap: VideoInputFormatChanged - print flags
print what has changed
2022-09-21 15:23:17 +02:00
Martin Pulec
3f91d4a97c DeckLink cap.: refactorized init
Moved individual device initialization into device_state::init.
2022-09-21 15:23:17 +02:00
Martin Pulec
1551e9f967 DeckLink cap.: replace rang occurences 2022-09-21 15:23:17 +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
d7bd504eb1 DeckLink cap.: init - small improvements 2022-09-21 15:23:16 +02:00
Martin Piatka
2450e8dea9 CI: update rpi ffmpeg patch
Patch is from https://github.com/RPi-Distro/ffmpeg

The newest patch for 4.3.4 doesn't compile on buster because of
undefined V4L2_CID_CODEC_STATELESS_BASE
2022-09-21 14:03:05 +02:00
Martin Piatka
6c71113a0c profile_timer: Fix move constructor 2022-09-20 16:35:54 +02:00
Martin Pulec
031e5be285 CI: use GH api instead of taking it from HTML
similarly to previous commit
2022-09-20 12:11:19 +02:00
Martin Pulec
4eb8f32cd1 AppImage: fixed obtaining mkappimage
GH now uses AJAX API on web so that the link is no longer there in HTML.
2022-09-20 12:11:18 +02:00
Martin Pulec
c73b29a9f1 fixed CIDs 400280 and 400282 2022-09-20 08:39:21 +02:00
Martin Pulec
eeec7d3ded testcard: inverted audio status in info 2022-09-19 14:47:17 +02:00
Martin Pulec
d5728f5669 testcard uv_plane: set default level to 0.5 2022-09-19 14:34:24 +02:00
Martin Pulec
08aac6798d testcard uv_plane: fixed compution of level 2022-09-19 14:34:08 +02:00
Martin Pulec
4eba4b81ba lavc: remove hint to install libavcodec-extra
libavcodec-extra still exists but H.264/HEVC is already in non-extra
package while -extra contains only some exotic audio codecs and thus the
message is most likely not relevant and may be confusing.

+ do not print the error message there at all -- already printed more
  specific message in get_av_codec
2022-09-19 10:02:04 +02:00
Martin Pulec
78939c21d9 log_msg: switch order of TERM_RESET and '\n'
see also f4f7b0c4
2022-09-19 09:34:14 +02:00
Martin Pulec
8eaa08505f Spout sender: updated to 2.007 API
no need to pass size on init
2022-09-19 09:21:06 +02:00
Martin Pulec
293e71c96b fixed missing condition in previous commit
fixes GH-254
2022-09-19 09:20:40 +02:00
Martin Pulec
257c3c3100 transmit: rewritten packet splitting
Start lines of uncompressed video only on packet start otherwise in
adverse combination of source and display pixfmts, signal may be broken,
eg. packet start in the middle of dst pixfmt block. Steps to reproduce:

    uv -t testcard:size=14x2:codec=Y216 -d gl -m 180!  # GL uses v210

In first packet - first 56 B of first line was decoded, than 40 B of the
second line (10 pixels). But 10 pixels from second line was consumed
while v210 block size is 6 pixels, therefore the next packet started in
midst of second v210 block on second line.
2022-09-16 16:01:11 +02:00
Martin Pulec
229e9015a0 transmit.cpp: small rewrite 2022-09-16 16:01:11 +02:00
Martin Pulec
801a66d9b8 transmit.cpp: prevent infinite loop
When packat size is too low (< 180 IPv6 or 160 IPv4 - 96 B + headers),
looping in an infinite loop occured.

Steps to reproduce:

    uv -t testcard -m 150!
2022-09-16 16:01:11 +02:00
Martin Pulec
d87f3665ac CI use simplier names to upload artifacts
- avoided spaces in names and CI and build keywords
2022-09-16 16:01:07 +02:00
Martin Piatka
248b8cf9aa nat-helper: Don't run interactively 2022-09-16 15:09:42 +02:00
Martin Piatka
680febe38c acap/jack: Replace sleeping with a semaphore 2022-09-16 13:47:53 +02:00
Martin Piatka
4c87521fda acap/jack: Sleep if ring empty 2022-09-16 13:45:24 +02:00
Martin Pulec
9e05d26226 SPOUT->Spout cap. renamed messages
Now Spout uses rather only first letter capital.
2022-09-15 16:16:22 +02:00
Martin Pulec
b4bf67d2a1 Spout: removed device= option
Removed device index option - it was a bit needless and without that,
the Spout receiver can be started without options to connect to first
sender that occurs.

+ some cleanup
2022-09-15 16:14:06 +02:00
Martin Pulec
ad201e287e Spout: use SpoutLibrary
use C-compatible SpoutLibrary

+ partially migrate to 2.007
2022-09-15 16:04:28 +02:00
Martin Pulec
e6e41e41bc NDI cap.: use generic indicator 2022-09-15 15:47:48 +02:00
Martin Pulec
1a8e9a9b7f configure: do not require GL for Spout
At least Spout capture doesn't need OpenGL directly.
2022-09-15 14:27:25 +02:00
Martin Pulec
e351f182cd CI: use SpoutLibrary build 2022-09-15 14:27:22 +02:00
Martin Pulec
eb94b81cec NDI cap.: extra_ips hints 2022-09-15 10:59:52 +02:00
Martin Pulec
6988c6ab06 NDI cap.: replaced rang formatting 2022-09-15 10:59:40 +02:00
Martin Pulec
630b9d6e11 NDI cap.: convert_P216_Y216 - use stride
Do not ignore input stride from NDI since it may not be equal to
linesize.
2022-09-15 10:59:40 +02:00
Martin Pulec
31b0aa258c NDI cap.: fixed interlaced capture
Fixed conversions of interlaced signal

+ convert_BGRA_RGBA, convert_P216_Y216 - move width before the loop
2022-09-15 10:59:40 +02:00
Martin Pulec
f4f7b0c426 Logger: switch order of TERM_RESET and '\n'
If logged message ends with '\n', put TERM_RESET before it (it prevents
keeping the color if someone writes to stderr directly).
2022-09-15 10:59:40 +02:00
Martin Pulec
1ae4457729 NDI cap.: get_matching_source removed assert
Removed needless assert - obviosly the code would work correctly even if
nr_sources <= 0 (returning nullptr).
2022-09-15 08:17:43 +02:00