FFmpeg git repo
Go to file
Martin Storsjö 115476018d aarch64: vp9itxfm: Make the larger core transforms standalone functions
This work is sponsored by, and copyright, Google.

This reduces the code size of libavcodec/aarch64/vp9itxfm_neon.o from
19496 to 14740 bytes.

This gives a small slowdown of a couple of tens of cycles, but makes
it more feasible to add more optimized versions of these transforms.

Before:
vp9_inv_dct_dct_16x16_sub4_add_neon:    1036.7
vp9_inv_dct_dct_16x16_sub16_add_neon:   1372.2
vp9_inv_dct_dct_32x32_sub4_add_neon:    5180.0
vp9_inv_dct_dct_32x32_sub32_add_neon:   8095.7

After:
vp9_inv_dct_dct_16x16_sub4_add_neon:    1051.0
vp9_inv_dct_dct_16x16_sub16_add_neon:   1390.1
vp9_inv_dct_dct_32x32_sub4_add_neon:    5199.9
vp9_inv_dct_dct_32x32_sub32_add_neon:   8125.8

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-02-09 12:31:45 +02:00
avbuild build: Add version numbers to "Requires" entries in pkg-config files 2016-12-28 17:41:54 +01:00
compat compat/atomics: add typecasts in atomic_compare_exchange_strong() 2016-12-08 15:53:58 -05:00
doc lavc: deprecate refcounted_frames field 2017-02-01 10:47:46 +01:00
libavcodec aarch64: vp9itxfm: Make the larger core transforms standalone functions 2017-02-09 12:31:45 +02:00
libavdevice build: Generate pkg-config files from Make and not from configure 2016-12-22 12:30:54 +01:00
libavfilter Mark some arrays that never change as const. 2017-02-01 10:42:59 +01:00
libavformat Use bitstream_init8() where appropriate 2017-02-07 18:27:21 +01:00
libavresample Mark some arrays that never change as const. 2017-02-01 10:42:59 +01:00
libavutil asm: Consistently uppercase SECTION markers 2017-02-03 11:37:53 +01:00
libswscale swscale-test: const correctness for pointer variable 2017-01-24 13:03:57 +01:00
presets
tests fate: Skip the checkasm test if CONFIG_STATIC is disabled 2017-01-09 13:57:02 +02:00
tools build: Move entries related to building TOOLS to a subdirectory Makefile 2016-12-07 11:02:31 +01:00
.gitattributes
.gitignore build: Ignore generated .version files 2017-02-03 11:37:53 +01:00
.travis.yml
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog vaapi_encode: Add VP8 support 2017-01-30 23:03:46 +00:00
INSTALL
LICENSE
Makefile Replace cmdutils_common_opts.h by a macro 2017-01-12 11:42:21 +01:00
README
README.md
RELEASE
avconv.c avconv: allow -b to be used with streamcopy 2017-02-01 10:42:59 +01:00
avconv.h avconv: allow -b to be used with streamcopy 2017-02-01 10:42:59 +01:00
avconv_dxva2.c
avconv_filter.c
avconv_opt.c avconv: allow -b to be used with streamcopy 2017-02-01 10:42:59 +01:00
avconv_qsv.c
avconv_vaapi.c
avconv_vda.c
avconv_vdpau.c
avplay.c Replace cmdutils_common_opts.h by a macro 2017-01-12 11:42:21 +01:00
avprobe.c Replace cmdutils_common_opts.h by a macro 2017-01-12 11:42:21 +01:00
cmdutils.c cmdutils: update copyright year to 2017 2017-01-01 17:10:11 -05:00
cmdutils.h Replace cmdutils_common_opts.h by a macro 2017-01-12 11:42:21 +01:00
configure configure: Correctly recurse in do_check_deps() 2017-02-08 21:23:41 +01:00

README.md

Libav

Build Status

Libav is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.

Libraries

  • libavcodec provides implementation of a wider range of codecs.
  • libavformat implements streaming protocols, container formats and basic I/O access.
  • libavutil includes hashers, decompressors and miscellaneous utility functions.
  • libavfilter provides a mean to alter decoded Audio and Video through chain of filters.
  • libavdevice provides an abstraction to access capture and playback devices.
  • libavresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • avconv is a command line toolbox to manipulate, convert and stream multimedia content.
  • avplay is a minimalistic multimedia player.
  • avprobe is a simple analisys tool to inspect multimedia content.
  • Additional small tools such as aviocat, ismindex and qt-faststart.

Documentation

The offline documentation is available in the doc/ directory.

The online documentation is available in the main website and in the wiki.

Examples

Conding examples are available in the doc/example directory.

License

Libav codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.