Commit Graph

2949 Commits

Author SHA1 Message Date
Martin Pulec
6a088ff70c CMPTO J2K: added detection 2018-07-18 22:01:07 +02:00
Martin Pulec
e31b662016 CMPTO J2K: Add initial 1 GB mem limit 2018-06-29 11:29:25 +02:00
Martin Pulec
e58935d9ae CMPTO J2K dec: poison pill should have OK status 2018-06-28 21:37:39 +02:00
Martin Pulec
923920cf26 CMPTO J2K enc: use placement new
It is a bit prettier - we don't use pointer to pointer to (shared)
pointer but only pointer to (shared) pointer instead ;)
2018-06-28 21:37:39 +02:00
Martin Pulec
e9e537e632 CMPTO J2K dec: make limits configurable
Queue len and number of in-decoder frames can now be tuned + warn if
there are multiple dropped frames (user then can extend queues).
2018-06-28 21:37:34 +02:00
Martin Pulec
e279b62f4e CMPTO J2K dec: limit also decoder 2018-06-28 20:07:40 +02:00
Martin Pulec
0006f83f0c CMPTO J2K enc: limit number of encoder frames
Limit total number of frames encoder can have.
2018-06-28 19:53:10 +02:00
Martin Pulec
854aa4ab51 CMPTO J2K enc: make a bit prettier 2018-06-27 22:59:41 +02:00
Martin Pulec
1689273641 CMPTO J2K enc: Added option to control pool size 2018-06-27 22:55:36 +02:00
Martin Pulec
16946f9d52 CMPTO J2K enc.: use pool
Use pool and memcpy to keep frames put to encoder. Usually capturer
is able to keep at most 1 frame which is unsuitable for J2K encoder
which needs to process more frames at time to keep a good throughput.
2018-06-27 22:44:05 +02:00
Martin Pulec
f4a4e3b8a6 Video frame pool: option to constrain pool size 2018-06-27 22:44:05 +02:00
Martin Pulec
6d49e2ca67 CMPTO J2K enc.: fail on wrong option 2018-06-27 22:44:05 +02:00
Martin Pulec
35fa068d4a CMPTO J2K: rebranded from J2K 2018-06-27 22:43:53 +02:00
Martin Pulec
791f119e75 J2K: make available tile count option 2018-06-27 14:34:46 +02:00
Martin Pulec
6682d6c8da J2K dec.: fixes 2018-06-27 14:34:46 +02:00
Martin Pulec
660b70a7f0 J2K enc.: fixed computation of bitrate 2018-06-27 14:34:46 +02:00
Martin Pulec
bef1c7dd71 J2K: small fixes 2018-06-27 14:34:46 +02:00
Martin Pulec
6ef4c2488d J2K: allow to use multiple CUDA devices
+ options to limit memory used by encoder/decoder
2018-06-27 14:34:46 +02:00
Martin Pulec
8aa57526f8 J2K compress: better handle error
Previous behavior (passing poison pill) was incorrect and would lead to
halt compressing queue without exiting UltraGrid. Now errors are
dismissed and we try to continue with further frames.
2018-06-27 14:34:46 +02:00
Martin Pulec
cd35ad7700 J2K compress: added usage 2018-06-27 14:34:46 +02:00
Martin Pulec
51fe6f45f7 J2K compress: better fix encode error 2018-06-27 14:34:46 +02:00
Martin Pulec
eb121beb0c J2K: compile only if explicitly enabled 2018-06-27 14:34:46 +02:00
Martin Pulec
63c637b68e J2K compress: check all cmpto calls 2018-06-27 14:34:46 +02:00
Martin Pulec
5d45bada24 J2K compress: use async API 2018-06-27 14:34:46 +02:00
Martin Pulec
36c97b3147 J2K initial implementation 2018-06-27 14:34:46 +02:00
Martin Pulec
abc593e7e3 Libavcodec NVENC: changed default RC
The former caused pulsing and is deprecated. The current one doesn't
make frames of the exactly same size (I-frames are bigger).
2018-06-27 14:33:46 +02:00
Martin Pulec
0c2c9c86c7 Video decoders: fixed FEC with invalid key
Fixed when there is a FEC and encryption with an invalid key given which
caused segfaults. This is because no valid packet was decoded, therfore
buffer was not allocated. Solved by setting data_len to non-zero after
we got a valid packet.
2018-06-27 14:33:00 +02:00
Martin Pulec
2e04129948 Fixed compress deinitialization on startup
Fixed passing of poison pill to video compress when sender thread was
not actually started.
2018-06-27 14:32:55 +02:00
Martin Pulec
e015adaf1e DELTACAST DVI: compat with new SDK 2018-06-27 13:28:47 +02:00
Martin Pulec
63f28f5795 Reenable hwacc when possible 2018-06-07 10:36:17 +02:00
Lukas Rucka
952de50449 BUILD: Preffer QT5 qmake instead of qtselector one (+ use QtGui for dependencies) 2018-06-05 13:36:35 +02:00
Martin Pulec
35348b8166 Hwaccel: temporarily disable by default
Currently it induces dependency on VDPAU into core which is undesirable.
2018-06-04 13:17:54 +02:00
Martin Pulec
142d2d50fe Configure: fixed wrong variable name 2018-06-04 11:43:19 +02:00
Martin Pulec
0ce8e0d4c7 RTP UDP: do not pass addr len to recvfrom()
Calling recvfrom() with src_addr == NULL and addrlen != NULL is
invalid (at least in MSW).
2018-05-31 17:13:31 +02:00
Martin Pulec
b45bb22ccc RTP UDP: do not use separate thread on MSW
Do not use separate receiving thread on MSW because it causes freezes
when the thread is waiting on read() and different thread wants to
set/get different properties of the socket - eg. setsockopt(SO_RCVBUF)
or getsockname().
2018-05-31 16:41:59 +02:00
Martin Piatka
d1d42ad3de GUI: Ask user to confirm exit if UltraGrid is still running 2018-05-31 11:12:06 +02:00
Martin Piatka
13a4ed7caa GUI: Fix segmentation fault when exiting. 2018-05-31 10:52:23 +02:00
Martin Piatka
ac23c66173 GUI: Add vu meter 2018-05-30 14:03:47 +02:00
Martin Pulec
e9e3718ffa Astat tool: fixed uninitialized members 2018-05-28 15:07:05 +02:00
Martin Piatka
88304b3d38 hwaccel: Add comments 2018-05-16 14:19:24 +02:00
Martin Piatka
4dfe336949 hwaccel: Split code into more files, compile each hwaccel independently 2018-05-16 14:19:24 +02:00
Martin Pulec
d43f8bcf3f DeckLink cap.: opt to disable/enable passthrough 2018-05-07 10:47:15 +02:00
Martin Pulec
439fc895eb Audio decoders: fixed wrong cast 2018-05-03 14:52:30 +02:00
Martin Pulec
1e1017ec1a Control socket: make remote connections nonblock.
Use non-blocking socket for network connections since all sockets are
written sequentially. When one gets stuck it blocks the whole stack
(can be a case when a lot of data is produced - eg. statistics).
2018-04-24 10:51:49 +02:00
Martin Pulec
ff817bf52a RTP UDP Win: overlapped sockets only for remote
Use overlapped sockets only if not transmitting over localhost. The
reason is that sending through localhost to a socket where noone is
listening (default behaviour is to use dynamic local port when acting as
a sender) caused strange memory leaks. Disabling WSA_FLAG_OVERLAPPED
flag of WSASocket seem to solve it. Simply not using overlapped
transfers while having socket opened with that flag didn't solve the
problem, either.
2018-04-24 09:59:32 +02:00
Martin Pulec
00535744af Keyboard control: echo also carriage return (Win) 2018-04-24 09:59:32 +02:00
Martin Pulec
1e46697eee MSW: support for 64-bit CUDA 2018-04-24 09:59:32 +02:00
Martin Pulec
701f572641 Message queue: sepearate lock for messages
Trying to fix a deadlock in check_message() - possibly the lock is
already hold by another thread (trying to destroy module).
2018-04-24 09:59:32 +02:00
Martin Pulec
5e89baef70 MSW: fd_t is now SOCKET 2018-04-24 09:59:32 +02:00
Martin Pulec
064af35d5f Script to build 64b SPOUT 2018-04-24 09:59:32 +02:00