Commit Graph

73 Commits

Author SHA1 Message Date
Martin Pulec
00bb07667f Libavcodec: opt to enable interlaced DCT (H.264) 2017-01-23 19:01:52 +01:00
Martin Pulec
e7673158f2 Libavcodec: added VP9 2017-01-18 11:13:24 +01:00
Martin Pulec
666850b638 Libavcodec NVENC: Adjust parameters to recommended
Use settings recommended by NVIDIA for low-latency setups.
2017-01-04 15:00:35 +01:00
Martin Pulec
24c0c93075 Libavcodec: try different pix. formats for encoder
This fixes problem when hevc_nvenc reports YUV444 although device
doesn't support it (eg. Maxwell NVIDIA cards) and thus avcodec_open2()
fail. From now, different pixel formats are examined and used if open is
successful (YUV420 in this case).
2017-01-04 13:14:22 +01:00
Martin Pulec
8f46a8bb4d Libavcodec: fixed x264/x265 ban in BSD build
Use of libx264/libx265 is forbidded even if given with 'encoder' option.
On the other hand, alternative encoders are allowed for H.264/H.265 in
BSD build.
2016-10-27 16:00:39 +02:00
Martin Pulec
020d9e24a0 Libavcodec: use zerolatency for NVENC 2016-10-12 16:41:18 +02:00
Martin Pulec
1559345727 Libavcodec: use regex to match encoder names
* use regex to match encoder names - this is mainly due to often NVENC
  encoders' renaming (nvenc, nvenc_h264, h264_nvenc)
* do not enforce AV_PIX_FMT_NV12 for NVENC anymore, instead there is a
  generic command-line parameter (lavc-use-codec) to allow user select
  one desired encdoer pixel format.
* set default preset for h264_qsv/hevc_qsv to medium - it is implicit
  but to be consistent with other similar encoders
2016-10-10 20:44:37 +02:00
Martin Pulec
eae680fe85 Libavcodec: use tune zerolatency for x265
x265 supports only single tune parameter (in opposite to x264, where we
currently use "zerolatency,fastdecode").
2016-10-10 20:44:37 +02:00
Martin Pulec
47d1cb4014 Libavcodec: removed deprecated functions (encoder)
+ fixed leaked codec in audio
+ fixed warnings in codec listing (--audio-codec help)
2016-10-10 20:44:37 +02:00
Martin Pulec
d774026e78 Libavcodec: updated default presets for H.264/HEVC
Use following default presets:
* x264 - veryfast (very good performance)
* x265 - ultrafast (best performance, H.265 is still a bit demanding)
* nvenc - llhq (low-latency high-quality)
2016-10-06 09:18:31 +02:00
Martin Pulec
86eb848b2c Libavcodec: fixed avcodec_free_context compat
+ compute bitrate tolerance differently (now it is at most 6 frames)
2016-08-01 14:19:19 +02:00
Martin Pulec
6bd457cee6 Libavcodec: compat
+ fixed some mess in configure.ac
2016-07-26 15:06:04 +02:00
Martin Pulec
6ced9a57f6 Lavd: removed some deprecated functions
+ fixed leaked AVCodecContext
2016-06-29 10:36:55 +02:00
Martin Pulec
6ffaff45ff Lavc: toggle flag for interlaced 2016-06-28 17:33:24 +02:00
Martin Pulec
ef9d3a2585 Lavc: get rid of custom setting for libx264/5
Superfast preset should be ok for both and the actual setting was a bit
messy.
2016-06-28 17:33:24 +02:00
Martin Pulec
61b3b3ac56 Lavc: added CRF and CQP RC options for libx264/5
+ use CRF by default for libx264 and libx265
2016-05-02 17:12:07 +02:00
Martin Pulec
5c73f6827a Lavc: fixed libx265 2016-04-29 14:07:30 +02:00
Martin Pulec
2c377ed616 Libavcodec: set delay to 0 for NVENC
The delay lasting about 1 sec was introduced in some version of
libavcodec so we manually set it to 0 frames.
2016-04-28 14:49:53 +02:00
Martin Pulec
a9266d3f60 Libavcodec: do not use deprecated av_free_packet 2016-03-14 11:33:42 +01:00
Martin Pulec
4fa90b6ac1 Lavc: allow arbitrary option to be passet to coder 2016-01-28 19:17:03 +01:00
Martin Pulec
efd11441a9 Lavc: removed intra refresh for NVENC
Now, intra refresh is enabled only for libx264/libx265 since libavcodec
doesn't populate this setting to the real encoder.
2016-01-28 16:23:41 +01:00
Martin Pulec
d005105e7a Lavc: remove some duplicite code 2016-01-28 15:23:29 +01:00
Martin Pulec
1fca971de0 Lavc: initial support for QSV 2016-01-26 16:04:46 +01:00
Martin Pulec
6badd143f5 Video compress: added Async API 2016-01-13 11:22:03 +01:00
Martin Pulec
573ca2428b Libavcodec: small fix 2015-12-15 16:58:28 +01:00
Martin Pulec
83c9421b4a Fixed some Coverity issues 2015-10-19 11:31:10 +02:00
Martin Pulec
7c67d8090d Libavcode 53 compat 2015-09-28 10:53:17 +02:00
Martin Pulec
60d3a7d20b Fixed unused variable from previous commit 2015-09-27 14:24:43 +02:00
Martin Pulec
c7d9f659c0 Do not report nvenc in capabilities 2015-09-27 14:15:26 +02:00
Martin Pulec
201a72bb16 Video compress: use new module API 2015-09-22 17:22:41 +02:00
Martin Pulec
87fd061e53 Libavcodec capabilities: report nvenc if available 2015-09-18 16:11:04 +02:00
Martin Pulec
40abd1d403 Video compress: change API for querying caps 2015-09-18 15:27:11 +02:00
Martin Pulec
e7cdd9d14c Lavc: show frame sizes only in debug mode 2015-09-08 19:49:39 +02:00
Martin Pulec
100683c983 Warning about some potentialy broken modules 2015-08-31 11:11:04 +02:00
Martin Pulec
0e075bbb43 Display correct bps in caps for uncompressed 2015-08-27 16:13:31 +02:00
Martin Pulec
2cc6aab0e2 Added possibility to send message synchronously
+ in capabilities list, given bitrate is computed according to the
  detected capture format (provided that '-t' argument is given)
2015-08-25 17:05:23 +02:00
Martin Pulec
7ef57dd9ab Libavcodec: support for nvenc_hevc 2015-07-31 11:32:21 +02:00
Martin Pulec
89371aa17e Libavcodec: default thread mode is now slice.
This applies mainly for MJPEG, other codecs (like H.264) have its
own settings.
2015-07-31 11:32:21 +02:00
Martin Pulec
485310d5b9 Libavcodec: do not require codec spec
Do not require codec specification when user explicitly sets encoder.

+ multiple improvements
2015-07-31 11:32:21 +02:00
Martin Pulec
d0e035509a Libavcodec: improve help and logging 2015-07-31 11:32:21 +02:00
Martin Pulec
425672678a Libavcodec: use compat macro globally (also in dec) 2015-07-14 17:03:30 +02:00
Martin Pulec
5aaa411463 Libavcodec: compile with older versions (missing HEVC type) 2015-07-14 16:50:07 +02:00
Milos Liska
84d2f805e7 H.265 code fixes and cleanup 2015-07-14 13:56:31 +02:00
Milos Liska
66e7261cf3 Initial H.265 support. Needs further review. 2015-07-14 10:41:55 +02:00
Martin Pulec
625b5adc0f Rewritten logging a bit
Use logger + levels of verboseness.
2015-07-10 16:42:26 +02:00
Martin Pulec
9ddc6c8c76 Keyboard control - show help + control verbosity 2015-07-10 16:42:26 +02:00
Martin Pulec
1df0c31824 Libavcodec: support for NVENC
+ few small lavc improvements
2015-07-07 16:52:47 +02:00
Martin Pulec
9d0e2ebab3 Libavcodec: updated bitrates 2015-07-01 17:17:34 +02:00
Martin Pulec
f0dd94e0ae Libavcodec: small fix 2015-06-30 11:42:48 +02:00
Martin Pulec
8ee625ff89 Libavcodec: change default thread mode to none 2015-06-24 13:51:21 +02:00