Go to file
Martin Storsjö 575e31e931 arm: vp9lpf: Implement the mix2_44 function with one single filter pass
For this case, with 8 inputs but only changing 4 of them, we can fit
all 16 input pixels into a q register, and still have enough temporary
registers for doing the loop filter.

The wd=8 filters would require too many temporary registers for
processing all 16 pixels at once though.

Before:                          Cortex A7      A8     A9     A53
vp9_loop_filter_mix2_v_44_16_neon:   289.7   256.2  237.5   181.2
After:
vp9_loop_filter_mix2_v_44_16_neon:   221.2   150.5  177.7   138.0

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-02-24 00:03:09 +02:00
avbuild build: Add version numbers to "Requires" entries in pkg-config files 2016-12-28 17:41:54 +01:00
avtools build: Move cli tool sources to a separate subdirectory 2017-02-21 16:10:51 +01:00
compat compat/atomics: add typecasts in atomic_compare_exchange_strong() 2016-12-08 15:53:58 -05:00
doc build: Separate logic for building examples from that for building avtools 2017-02-21 16:10:51 +01:00
libavcodec arm: vp9lpf: Implement the mix2_44 function with one single filter pass 2017-02-24 00:03:09 +02:00
libavdevice build: Generate pkg-config files from Make and not from configure 2016-12-22 12:30:54 +01:00
libavfilter vf_deinterlace_vaapi: Create filter buffer after context 2017-02-17 23:20:39 +00:00
libavformat matroskaenc: factor ts_offset into block timecode computation 2017-02-21 14:20:31 -07:00
libavresample Mark some arrays that never change as const. 2017-02-01 10:42:59 +01:00
libavutil aarch64: Add parentheses around the offset parameter in movrel 2017-02-16 09:56:11 +02:00
libswscale swscale-test: const correctness for pointer variable 2017-01-24 13:03:57 +01:00
presets
tests mkv: Update the seek test to match 5d3953a5dc 2017-02-22 10:15:00 +01: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 travis: Enable OSX integration 2015-11-17 16:51:00 +01:00
Changelog vaapi_encode: Add VP8 support 2017-01-30 23:03:46 +00:00
configure configure: Restructure the way check_pkg_config() operates 2017-02-20 20:16:05 +01:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
INSTALL
LICENSE Remove the legacy X11 screen grabber 2016-07-29 19:03:10 +02:00
Makefile build: Move cli tool sources to a separate subdirectory 2017-02-21 16:10:51 +01:00
README
README.md doc: Add travis badge 2015-09-14 00:19:08 +02:00
RELEASE Make the RELEASE file match with the most recent tag 2016-10-14 13:52:51 -04:00

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.