Commit Graph

5215 Commits

Author SHA1 Message Date
Martin Pulec
aea78bc1b9 format_from_in_bps, format_to_out_bps - improved
Use the templated loaders for format_from_in_bps and format_to_out_bps.
2021-08-06 14:55:41 +02:00
Martin Pulec
66fda1ae23 Audio sender: fixed always resampling
The signal was always due to incorrect condition. This would not be a
problem if sample rate matches codec supported rate (then it will be a
noop) but as a side effect, the signal is always converted to 16-bit
range (resampler uses that).
2021-08-06 14:01:00 +02:00
Martin Pulec
9987999b19 Export audio: store 8-bit samples as uint8 2021-08-06 11:49:22 +02:00
Martin Pulec
6853dbc0af AppImage: do not print path to firejail to console 2021-08-06 11:47:11 +02:00
Martin Pulec
c2fed1f0c7 Audio testcard: option for frequency 2021-08-06 11:40:43 +02:00
Martin Pulec
5901bd6b3e wav_reader: add read function and use it 2021-08-06 11:32:12 +02:00
Martin Pulec
bdfb8dbeb2 Lavcd audio: convert from/to uint8 2021-08-06 11:31:27 +02:00
Martin Pulec
4c85bcf56c Lavd audio: use float2int in place 2021-08-06 11:16:36 +02:00
Martin Pulec
53770ce327 Audio utils: improved prototypes + docu 2021-08-06 11:12:17 +02:00
Martin Pulec
4f9a69d4f0 calculate_rms: improved and polished
Rewrite using the new templates to avoid custom code and increase
performance.
2021-08-06 11:06:48 +02:00
Martin Pulec
5065c79f81 GL,SDL2: avoid using hardcoded array bounds
This could be error prone when one element is removed and the template
parameter is not decreased which leads to excess zero element. This
could lead to unexpected behavior that may not be easy to detect.
2021-08-06 11:05:07 +02:00
Martin Pulec
d1350e62fa Audio decoder: fixed get_avg_volume call
Third parameter semantics has changed.
2021-08-05 20:27:40 +02:00
Martin Pulec
c18e106095 audio dec: compute vol only if out chan is mixed from more ins
This has performance benefits. Moreover non-mixed channels are not
touched even if the level would exceed the threshold.
2021-08-05 09:28:57 +02:00
Martin Pulec
47d1fe1301 Channel map: refactor + fixed a leak
Arrays pointed by map were not freed
2021-08-05 09:28:57 +02:00
Martin Pulec
7e08f36a93 Audio scale: compute scale fix
Do not increase audio level on low volume - this is needless and
increases pointlessly noise (bug #25).
2021-08-05 09:28:56 +02:00
Martin Pulec
112114b03f GL disp.: multiple changes
- initialize window directly with specified size (either splash or
fixed_size)
- do not call glutReshapeWindow on FS (not always colaesced now, is it
needed?)
- glutDisplayFunc - display last rendered frame
2021-08-05 09:28:56 +02:00
Martin Pulec
5dca905197 GL: moved some code
Moved some code to more appropriate location.
2021-08-05 09:28:56 +02:00
Martin Pulec
1fe5d8af1f Fixed parsing of log level debug2 2021-08-05 09:28:55 +02:00
Martin Pulec
4cc3e442b1 Added strdupa compat 2021-08-05 09:28:52 +02:00
Martin Pulec
4dce7d3a87 get_avg_volume: improved performance 2021-08-05 08:53:11 +02:00
Martin Pulec
7510652dd6 Audio performance measurements
Added DEBUG_TIMER_START and DEBUG_TIMER_STOP to debug.h to for
performance measurements. If DEBUG is not defined, the code is not
compiled (doesn't impose any runtime overhead).
2021-08-04 11:01:22 +02:00
Martin Pulec
465e5e8855 Video decoder: reported_statistics_cumul lock free
After removing CoUniverse-related reporting, most of the work is done
from single thread, except of FEC statistics, that is however replaced
by atomic vars which is sufficient here.
2021-08-04 11:01:22 +02:00
Martin Pulec
627f5064f9 Video decoder: small missing frames computation fix
Use the macro + fix off-by-one error
2021-08-04 11:01:22 +02:00
Martin Pulec
8ba70ca0d4 Get rid of most reporting through control socket
This was originally for CoUniverse/UltraGridAfco - both of them are
inactive now so removing that because it may unnecesarily cause some
overhead.

Audio statistics are kept since those are used by the GUI.
2021-08-04 11:01:14 +02:00
Martin Pulec
1585781243 Merge pull request #170 from Martin-Bela/master
Fix bug that causes deadlock when program quits
2021-08-04 08:54:04 +02:00
Martin Beľa
a26c4d8cf0 Fix bug that causes deadlock when program quits
+ refactor: store display keybindings as compile-time constants
2021-08-03 16:46:49 +02:00
Martin Pulec
2865ea8a4c keycontrol_send_key(): improved doxy documentation 2021-08-02 15:13:58 +02:00
Martin Pulec
1fba84828a WAV reader: better handling unsupported fmt len 2021-08-02 15:04:27 +02:00
Milos Liska
7872d550d6 Updated splashscreen
- Also added xcf source
2021-07-29 15:04:17 +02:00
Martin Pulec
d86a70a561 Pretty-print audio scale help 2021-07-28 15:58:54 +02:00
Martin Pulec
e8ea2a89c3 Audio testcard: WAV reading fixes
Fixed incorrectly computed len.
2021-07-28 15:50:36 +02:00
Martin Pulec
583324f1f5 WAV: support for extensions
Supported PCM GUID.
2021-07-28 15:50:34 +02:00
Martin Pulec
ad64f77f86 Video decoder cumulative stats: updates
To be in sync with audio (reporting interval 30 sec).

+ small improvements - do the printing in main thread
+ better encapslulation
2021-07-27 16:13:24 +02:00
Martin Pulec
96844d7119 Audio: periodically display cumulative statistics 2021-07-27 16:13:24 +02:00
Martin Pulec
b4999a53d1 Embedded audio: use 'acap.' instead of slightly misleading 'SDI' 2021-07-27 16:13:05 +02:00
Martin Pulec
1fbdb737b4 GitHub CI [Linux]: use updated SDL2 build to fix issues 2021-07-27 11:32:34 +02:00
Martin Pulec
a595f76f66 SDL2: missing SDL_INIT_VIDEO in SDL_Init 2021-07-22 16:45:32 +02:00
Martin Pulec
60975b5e06 SDL2: print available display indices in help 2021-07-22 16:43:06 +02:00
Martin Pulec
951db95e36 Removed some old LDGM data
This reduces sources size by a great deal - matrices occupied some
33 MBs.

Seems useless - matrices are should be perhaps reconstructed by
matrix-gen but seem incompatible with current version (doesn't
have k/m/c header).

The scripts are not compatible with current version (and used data/
is missing).
2021-07-22 10:08:38 +02:00
Martin Pulec
b9c6d2b78d GitHub CI [Mac]: run checks before signing
It is unsure whether wrong bundle would be signed and if not, the
problem may not be easy to find.
2021-07-21 16:10:45 +02:00
Martin Pulec
6ad5c5adf2 File cap: options for queue len and thread type/count 2021-07-21 14:59:46 +02:00
Martin Pulec
eb7977c8d8 GitHub CI [Linux, FFmpeg]: build rav1e
+ do not use yasm for SVT - nasm-mozilla (nasm 2.14) installed in
this commit is sufficient
2021-07-21 14:56:24 +02:00
Martin Pulec
6a27ce5ad6 File cap.: use FF_THREAD_FRAME | FF_THREAD_SLICE
The latency doesn't matter much here and it allows some files to decode
realtime that were not able to before.
2021-07-21 13:37:27 +02:00
Martin Pulec
b121b087d1 File cap.: use queue for video frames 2021-07-20 15:57:48 +02:00
Martin Pulec
5286918f14 GitHub CI: support for NDI 5
macOS and Linux would still compile with NDI 4, Windows requires NDI 5
now.
2021-07-20 14:10:48 +02:00
Martin Pulec
2e3a78ff0f Configure/make: use realpath with python if cmd not avail 2021-07-20 09:43:57 +02:00
Martin Pulec
f4f7fa3431 GitHub CI [Win]: do not use hardcoded NDI ver 2021-07-20 09:15:34 +02:00
Martin Pulec
e6fd7c6af3 Use libraspberrypi-dev instead of cloning from GitHub 2021-07-19 15:54:46 +02:00
Martin Pulec
4484ab418d GitHub CI [armhf]: build own SDL2 with KMSDRM 2021-07-19 15:54:42 +02:00
Martin Pulec
3702ab3504 GitHub CI [Mac]: check - hide also Frameworks
This will ensure that local frameworks (eg. VideoMaster) aren't directly
referenced.
2021-07-19 14:12:01 +02:00