FFmpeg git repo
Go to file
Martin Storsjö cdb1665f70 aarch64: Make transpose_4x4H do a regular transpose
Previously, ff_h264_idct_add_neon (originally in the arm version) used
a non-regular transpose in order to be able to use more instructions
that deal with registers as 128 bit register pairs. The aarch64
translation doesn't do it to the same extent, but brought along the
same structure since it was a straight translation.

This reshuffles ff_h264_idct_add_neon, bringing it closer to
the C implementation, making the transpose_4x4H macro do a regular
transpose, usable for other algorithms as well.

Previously, the third and fourth output from transpose_4x4H were
swapped, and prior to cc29d96d5a, the same inputs as well. In
addition to just swapping the outputs, also renumber the intermediate
registers for better readability (making the register order match
transpose_4x8B).

This runs with the same number of cycles as before.

Signed-off-by: Martin Storsjö <martin@martin.st>
2016-03-26 21:25:56 +02:00
compat w32pthreads: Map MemoryBarrier to __sync_synchronize on mingw 2015-10-30 20:15:11 +02:00
doc opt: Add av_opt_copy() 2016-03-24 10:34:15 +02:00
libavcodec aarch64: Make transpose_4x4H do a regular transpose 2016-03-26 21:25:56 +02:00
libavdevice testprogs: Clean up #includes 2016-03-24 19:17:23 +01:00
libavfilter vf_fade: make sure the slice end is always in the frame 2016-03-25 14:53:31 +01:00
libavformat rtpdec_jpeg: fix low contrast image on low quality setting 2016-03-26 00:15:24 +02:00
libavresample avresample: Mark avresample_buffer() as pointer to const 2015-12-14 15:16:33 +01:00
libavutil testprogs: K&R formatting cosmetics 2016-03-24 21:45:07 +01:00
libswscale cosmetics: Drop empty comment lines 2016-02-18 15:35:30 +01:00
presets
tests fate: Only run SRTP test if SRTP code is enabled 2016-03-24 19:17:23 +01:00
tools avpacket: Replace av_free_packet with av_packet_unref 2015-10-26 18:00:55 +01:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore doc: Update paths to match new examples location 2016-03-23 09:35:40 +01:00
.travis.yml travis: Enable OSX integration 2015-11-17 16:51:00 +01:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog lavfi: add an NVIDIA NPP-based scaling filter 2016-03-23 19:55:34 +01:00
INSTALL
LICENSE license: Mention that vf_interlace is GPL, not LGPL 2014-08-28 19:47:43 +02:00
Makefile configure: ObjC support 2015-11-26 10:39:15 +01:00
README doc: Add more information in the README 2014-08-16 00:49:22 +02:00
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 2014-12-01 07:51:14 -05:00
arch.mak ppc: vsx: Implement float_dsp 2015-05-31 12:07:11 +02:00
avconv.c avconv: use new encode API 2016-03-23 19:31:35 +01:00
avconv.h avconv: switch to the new BSF API 2016-03-20 08:15:01 +01:00
avconv_dxva2.c avconv_dxva2: add hevc support 2015-01-27 09:06:05 +01:00
avconv_filter.c avconv: convert to codecpar 2016-02-23 17:01:58 +01:00
avconv_opt.c avconv: switch to the new BSF API 2016-03-20 08:15:01 +01:00
avconv_qsv.c avconv: add support for Intel QSV-accelerated transcoding 2015-10-16 20:01:37 +02:00
avconv_vda.c avconv: vda: Unlock the pixel buffer once it is accessed 2015-07-09 00:10:13 +02:00
avconv_vdpau.c avconv_vdpau: use the hwcontext API to simplify code 2016-02-14 22:07:44 +01:00
avplay.c avplay: convert do codecpar 2016-02-24 10:05:43 +01:00
avprobe.c avprobe: switch to codecpar 2016-02-26 09:15:29 +01:00
cmdutils.c avconv: switch to the new BSF API 2016-03-20 08:15:01 +01:00
cmdutils.h avconv: use read_file() for reading the 2pass stats 2015-07-19 09:37:11 +02:00
cmdutils_common_opts.h
common.mak build: Drop redundant removal of compiled object files 2016-03-24 19:17:23 +01:00
configure intrax8: Add a local BlockDSPContext and initialize it 2016-03-25 15:55:49 -04:00
library.mak build: Support executable only ldflags 2014-07-21 22:18:35 +02:00
version.sh

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.