Commit Graph

1947 Commits

Author SHA1 Message Date
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
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
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
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
be7cb8e536 RTP: fixed computing of packet hdr offset
Fixed computing of packet header offset in rtp_packet. The former
version didn't work for 64-bit MSW build.
2018-04-24 09:59:32 +02:00
Martin Pulec
013a7ee849 RTSP: remove deprecated bzero() 2018-04-24 09:59:32 +02:00
Martin Pulec
dfcd5a1084 Platform pipe: tiny change 2018-04-24 09:59:32 +02:00
Martin Pulec
d30fb765a8 Control: report stats for audio 2018-04-24 09:59:32 +02:00
Martin Pulec
fbe4c514d5 Added SPOUT 2018-04-24 09:59:32 +02:00
Martin Pulec
213c2b5d58 Double framerate: proper timing can be disabled 2018-04-24 09:59:32 +02:00
Martin Pulec
9bd7ecc18b Added build date to version 2018-04-24 09:59:32 +02:00
Martin Pulec
fb07611894 DeckLink: fixed warnings 2018-04-24 09:59:32 +02:00
Martin Pulec
e35a973ff4 JPEG: moved to new merged GPUJPEG
* removed throughput optimizing gpujpeg_encoder_input_copy_image().
  Looks like there is only a little benefit of this - reenable if needed
  (using gpujpeg_encoder_input_set_gpu_image()).
* updated GPUJPEG submodule
2018-04-24 09:59:32 +02:00
Martin Pulec
ee476ef29c GL: use PBO for texture uploads
This improves performance/throughput since the driver usually makes
a copy when using client-side pixel transfers (see
https://www.khronos.org/opengl/wiki/Pixel_Buffer_Object#Uploads).
2018-04-24 09:59:32 +02:00
Martin Piatka
d649fd9025 GL: hwaccel fix compile warnings 2018-04-05 12:22:18 +02:00
Martin Piatka
43a8d730e9 libavcodec: Fix compilation with older versions of ffmpeg 2018-04-04 14:43:09 +02:00