Commit Graph

123 Commits

Author SHA1 Message Date
Martin Pulec
fe1e4c8d1d Libavcodec: added support for 12-bit RGB 2019-06-13 14:31:28 +02:00
Martin Pulec
23137ca4b6 Libavcodec: added support for 10-bit RGB 2019-06-13 14:31:28 +02:00
Martin Pulec
6569548e32 Lavc: support for BGR0 and GBRP 2019-06-13 14:31:28 +02:00
Martin Pulec
b32356cd29 Lavc: support for 10-bit YCbCr with NVENC
+ fixed a warning
2019-06-13 14:31:28 +02:00
Martin Pulec
6cbdcbd82a Lavc: fixed an infinite loop 2019-06-13 14:31:28 +02:00
Martin Pulec
a14b81e41d Lavc nvenc: fallback RC is CBR 2019-06-13 14:31:28 +02:00
Martin Pulec
3caa8496e5 Lavc: fixed hard-coded UYVY BPS 2019-06-13 14:31:20 +02:00
Martin Pulec
35703188b1 Lavc: select libx264rgb for RGB formats 2019-06-13 14:01:50 +02:00
Martin Pulec
680364d5d1 Lavc: select internal format more sensibly
Now it takes into account also codec bit depth (if offered by the
encoder).
2019-06-13 14:01:50 +02:00
Martin Pulec
79531ceacf Lavc: codec ordering to a separate function 2019-06-13 14:01:50 +02:00
Martin Pulec
fd869ea034 Lavc: table for pixfmt conversions 2019-06-13 14:01:50 +02:00
Martin Pulec
d4dded81ca Video codec: fixed some warnings 2019-06-07 13:44:33 +02:00
Martin Pulec
59f4183df7 Lavc: use libx264 params also for libx264rgb 2019-05-30 11:38:18 +02:00
Martin Pulec
879d557810 Lavc: fixed unset linesizes 2019-05-30 11:38:17 +02:00
Martin Piatka
1f56d139a1 Video compress: lavc: Decode to v210 with memcpy only if input is v210 2019-04-08 13:37:11 +02:00
Martin Piatka
f15ed9c5bd Video compress: lavc: Fix segfault when pixfmt unsupported 2019-04-08 13:06:36 +02:00
Martin Pulec
bf979a1c56 Lavc: allow RGB for libx264rgb
* when codecs supports pixel format natively, it is now passed directly
* also when no conversion is needed, data aren't memcpied anymore
2019-03-29 15:04:05 +01:00
Martin Piatka
835239498d Separate async frame and async tile APIs 2019-03-13 15:00:05 +01:00
Martin Pulec
071bc9b3ad Libavcodec: support for AV1 2019-03-01 14:04:05 +01:00
Martin Pulec
c76512df6b lavc: pretty print 2019-03-01 14:03:16 +01:00
Martin Pulec
dafc6f48af Lavc: added cmath header (compile fix)
+ reorder headers
2019-02-22 16:38:32 +01:00
Martin Pulec
9f6048e144 Added RFC 2435 compliant RTP JPEG transport
Compliant JPEGs can be now sent with SDP or RTSP.
2018-12-17 10:37:53 +01:00
Martin Pulec
3f8d00391f Libavcodec: added HuffYUV and FFV1 2018-11-13 15:13:21 +01:00
Martin Piatka
1e2f38c97c Rewrite video_frame callbacks to be set by decoders 2018-09-12 23:29:08 +02:00
Martin Pulec
eacade34e9 Lavc: warn if we cannot set CRF/CQP 2018-08-22 11:23:09 +02:00
Martin Pulec
60cab503ec Libavcodec: use new API for iterating codecs 2018-08-22 11:23:09 +02:00
Martin Pulec
d7827ea014 Copyright isn't license
Get entirely rid of licensing stuff - we do not explicitly license
UltraGrid.
2018-08-15 13:29:51 +02:00
Martin Pulec
30e76180ff Libavcodec QSV: set intra-refresh by default 2018-07-03 09:46:31 +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 Piatka
4dfe336949 hwaccel: Split code into more files, compile each hwaccel independently 2018-05-16 14:19:24 +02:00
Martin Pulec
c71ad1760a Libavcodec: fixed crash when VAAPI init fails 2018-01-08 15:21:38 +01:00
Martin Pulec
098383cfd9 Lavc: H.264 - use ultrafast for >1080p30 2018-01-08 15:21:38 +01:00
Martin Pulec
78602d9715 Lavc: changed preset selection 2018-01-08 15:21:38 +01:00
Martin Pulec
84b5e18667 Libavcodec 58 compat 2018-01-02 09:57:47 +01:00
Martin Pulec
85d5faf4a7 Libavcodec: fixed pkt->size == 0 (crash in export)
This fixes a crash in video_export.c on assertion data_len != 0.
2017-09-21 10:34:12 +02:00
Martin Pulec
0d6f2a3ca9 Libavcodec: get rid of multiple cpu_count
Was duplicitly in state_video_compress_libav and setparam_param.
2017-06-21 10:12:14 +02:00
Martin Piatka
af8c478a38 SSE vectorisation for to_nv12 and yuv420p_to_yuv422 2017-06-20 12:55:14 +02:00
Martin Piatka
747f230024 VAAPI hw accelerated encoding support 2017-06-13 14:27:14 +02:00
Martin Pulec
f6aa52e426 Libavcodec: show info which codec is not supported
Show info which UltraGrid codec is not supported - has no transcoding to
libavcodec native pixel formats.
2017-06-05 11:00:57 +02:00
Martin Pulec
7c2730237b Libavcodec: hot-fixed initialization of params
Parameters were initialized after being used.
2017-05-22 17:08:23 +02:00
Lukas Rucka
98943bf56d Compilation compatibility fix - use std::isnan instead of isnan (broken gcc c++11 support) 2017-04-05 22:24:56 +02:00
Martin Pulec
2894c313a2 Better input value check for bitrates and MTU
* better check values' boundries
* for MTU and traffic shapper also check if there are reasonable values
  (eg. for the cases when they are interchanged by mistake)
2017-03-15 16:45:47 +01:00
Martin Pulec
8a537bedde Libavcodec: changed one warning 2017-02-24 14:37:53 +01:00
Martin Pulec
feae858c65 Validate optional commandline parameters 2017-02-23 16:30:43 +01:00
Martin Pulec
1c02c5e8b0 New way of documenting additional params (--param)
All parameters can now be listed with '--params help'.
2017-02-20 11:27:30 +01:00
Martin Pulec
4950bf95e8 Libavcodec: small cleanups
* denote which identifiers are 8-bit
* simplify pixel format conversions lookup in decoder
* if encoder could not have been initialized, writes for which pixel
  format (useful for NVENC where HW may not support all pixel formats)
2017-02-15 10:18:30 +01:00
Martin Pulec
c76b4f95e9 Libavcodec: experimental support for 10-bit 2017-02-15 10:17:59 +01:00
Martin Pulec
0bff18d80f Libavcodec enc.: make functions static 2017-02-15 10:16:07 +01:00
Martin Pulec
541f5727d7 Libavcodec: use CBR for QSV 2017-02-15 10:12:51 +01:00
Martin Pulec
9c0d08526a Libavcodec NVENC: disable spatial AQ by default
AQ requires more computational power from decoder. Currently NVENC from
libavcodec uses only one slice, therefore the decoder isn't much
parallelized. Consequently, the use of AQ can be the difference if the
decoder is sufficiently powerful to decode the stream or not.
2017-01-26 14:55:16 +01:00