- 15 May, 2017 4 commits
-
-
Martin Storsjö authored
In these cases, the CTTS flag is set, but no edit list is necessary. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
This reduces the need for an edit list; streams that start with e.g. dts=-1, pts=0 can be encoded as dts=0, pts=0 (which is valid in mov/mp4) by shifting the dts values of all packets forward. This avoids the need for edit lists for such streams (while they still are needed for audio streams with encoder delay). This eases conformance with the DASH-IF interoperability guidelines. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
Loads from this strictly doesn't require alignment, but specify it just for consistency with the arm version. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
clang now (in the upcoming 5.0 version) is capable of building our arm assembly without relying on gas-preprocessor, although clang/LLVM doesn't support .dn register aliases. The VC1 MC assembly was only built and used if the chosen assembler supported the .dn directives though. This was supported as long as gas-preprocessor was used. This means that VC1 decoding got a speed regression on clang 5.0, unless the user manually chose using gas-preprocessor again. By avoiding using the .dn register aliases, we can build the VC1 MC assembly with the latest clang version. Support for the .dn/.qn directives in clang/LLVM isn't actively planned, see https://bugs.llvm.org/show_bug.cgi?id=18199. This partially reverts 896a5bff. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 11 May, 2017 1 commit
-
-
Martin Storsjö authored
This is more correct. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 09 May, 2017 3 commits
-
-
Sean McGovern authored
Bug-Id: 1036 CC: libav-stable@libav.org
-
James Almer authored
It doesn't depend on hevcdec anymore. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-
James Almer authored
Based on the H264 SEI implementation. This will be mainly useful once support for SEI messages that can be used by the hevc parser are implemented, like Picture Timing. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-
- 08 May, 2017 1 commit
-
-
Martin Storsjö authored
When targeting windows, the .arch directive isn't available. So far, when building for windows, we've always used gas-preprocessor, both when using msvc's armasm and when using clang. Lately, clang/llvm has implemented the last missing piece (altmacro support) for building our assembly without gas-preprocessor. This means that we now build for arm/windows with clang without any extra compatibility layer. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 04 May, 2017 2 commits
-
-
Alexandra Hájková authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
Alexandra Hájková authored
This doesn't change the actual behaviour of the code but improves readability. Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 03 May, 2017 1 commit
-
-
Alex Converse authored
Aliased compressed AAC bytes are almost certainly not meaningful SBR data. In the wild this causes harsh artifacts switching HE-AAC streams that don't have SBR headers aligned with segment boundaries. Turning off SBR falls back to a default set of upsampling parameters that can function as a sort of error concealment. This is consistent with how the decoder handles other sorts of errors. Bug-Id: 1047 CC: libav-stable@libav.org Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
-
- 02 May, 2017 3 commits
-
-
Diego Biurrun authored
This makes the currently semi-public avpriv_aac_parse_header() function private to libavcodec and adds a proper public API function to return the parts of the ADTS header required in libavformat.
-
Luca Barbato authored
This makes the bitstream.h header leaner. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
Luca Barbato authored
Do not rely on indirectly including it from bitstream.h. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
- 01 May, 2017 1 commit
-
-
Alexandra Hájková authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 30 Apr, 2017 10 commits
-
-
Mark Thompson authored
This is something of a hack. It allocates a new hwframe context for the target format, then maps it back to the source link and overwrites the input link hw_frames_ctx so that the previous filter will receive the frames we want from ff_get_video_buffer(). It may fail if the previous filter imposes any additional constraints on the frames it wants to use as output.
-
Mark Thompson authored
Also refactor a little and improve error messages to make failure cases easier to understand.
-
Mark Thompson authored
Use the flags argument of av_hwframe_ctx_create_derived() to pass the mapping flags which will be used on allocation. Also, set the format and hardware context on the allocated frame automatically - the user should not be required to do this themselves.
-
Mark Thompson authored
-
Mark Thompson authored
Factorises out existing surface initialisation code to reuse.
-
Mark Thompson authored
Some frames contexts are not usable without additional format-specific state in hwctx. This change adds new functions frames_derive_from and frames_derive_to to initialise this state appropriately when deriving a frames context which will require it to be set.
-
Mark Thompson authored
-
Mark Thompson authored
This only supports one device globally, but more can be used by passing them with input streams in hw_frames_ctx or by deriving new devices inside a filter graph with hwmap.
-
Mark Thompson authored
If -hwaccel foo is supplied without any other device options, and the foo hwaccel is meant to have a device, try to make such a device with default parameters for the hwaccel to use.
-
Mark Thompson authored
This was left over from an earlier version which created the new packet inside the current frame structure. Now it just leaks an unused packet, so remove the allocation entirely.
-
- 28 Apr, 2017 2 commits
-
-
Anton Khirnov authored
The function currently accepts a PutBitContext and a GetBitContext, which hardcodes their sizes into the lavc ABI. Since the function is quite small and only called in a few places, the simplest solution is making it inline, thus avoiding a runtime dependency completely. Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
Martin Storsjö authored
Before: Cortex A7 A8 A9 A53 hevc_add_res_8x8_8_neon: 116.0 58.7 80.2 90.7 hevc_add_res_32x32_8_neon: 1230.0 737.5 1187.5 974.4 After: hevc_add_res_8x8_8_neon: 97.7 57.0 73.7 80.0 hevc_add_res_32x32_8_neon: 1216.0 698.7 1127.5 827.1 Signed-off-by: Martin Storsjö <martin@martin.st>
-
- 27 Apr, 2017 6 commits
-
-
Seppo Tomperi authored
Optimized by Alexandra Hájková. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Vittorio Giovara authored
request_channel_layout is a decoder option and it makes no sense to have it in a parser. This feature was needed in the past when the decoder was allowed to reuse the avctx from the demuxer. Nowadays the decoder receives only the parameters from it, already containing the real channel layout (and the correct request_channel_layout option). After initialization the decoder overwrites the channel layout with the downmixed one that is actually output, so there is no need to preserve this functionality in the parser. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
-
Vittorio Giovara authored
request_channel_layout is a decoder option and it makes no sense to have it in a parser. This feature was needed in the past when the decoder was allowed to reuse the avctx from the demuxer. Nowadays the decoder receives only the parameters from it, already containing the real channel layout (and the correct request_channel_layout option). After initialization the decoder overwrites the channel layout with the downmixed one that is actually output, so there is no need to preserve this functionality in the parser. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
-
James Almer authored
Signed-off-by: James Almer <jamrial@gmail.com>
-
James Almer authored
Signed-off-by: James Almer <jamrial@gmail.com>
-
James Almer authored
Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
-
- 26 Apr, 2017 6 commits
-
-
Mark Thompson authored
Uses the just-added ALLOW_PROFILE_MISMATCH flag.
-
Mark Thompson authored
-
Mark Thompson authored
The non-H.26[45] codecs already use this form. Since we don't currently generate I frames for codecs which support them separately to IDR, the p_per_i variable is set to infinity by default so that it doesn't interfere with any other calculation. (All the code for I frames still exists, and it works for H.264 if set manually.)
-
Vittorio Giovara authored
-
Vittorio Giovara authored
-
Vittorio Giovara authored
-