1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-03 05:10:03 +02:00
Go to file
Christophe Gisquet 7ece8b50b1 x86: simple_idct: 12bits versions
On 12 frames of a 444p 12 bits DNxHR sequence, _put function:
C:         78902 decicycles in idct,  262071 runs,     73 skips
avx:       32478 decicycles in idct,  262045 runs,     99 skips

Difference between the 2:
stddev:    0.39 PSNR:104.47 MAXDIFF:    2

This is unavoidable and due to the scale factors used in the x86
version, which cannot match the C ones.

In addition, the trick of adding an initial bias to the input of a
pass can overflow, as the input coefficients are already 15bits,
which is the maximum this function can handle.

Overall, however, the omse on 12 bits samples goes from 0.16916 to
0.16883. Reducing rowshift by 1 improves to 0.0908, but causes
overflows.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-13 15:34:32 +02:00
compat Merge commit '2830bce47e2eb29c76202f19017031ddc1f95dd3' 2015-10-10 09:45:44 +02:00
doc doc/filters: s/nb_inputs/inputs for stack filters 2015-10-12 10:56:13 -08:00
libavcodec x86: simple_idct: 12bits versions 2015-10-13 15:34:32 +02:00
libavdevice avdevice/libdc1394: add const to suppress "assignment discards const qualifier from pointer target type" warnings 2015-09-20 22:12:37 +02:00
libavfilter avfilter/af_sidechaincompress: replace FFABS with fabs 2015-10-13 09:37:18 +02:00
libavformat avformat/webvttdec: Don't stop parsing on comments 2015-10-12 22:16:12 +02:00
libavresample avresample: Remove an unused variable 2015-09-29 14:33:01 +02:00
libavutil intmath: remove av_ctz. 2015-10-11 18:03:10 -04:00
libpostproc
libswresample doc/resampler, swresample/options: use proper capitalization 2015-10-10 20:49:54 +02:00
libswscale doc/scaler, swscale/options: use proper capitalization 2015-10-10 19:32:56 +02:00
presets
tests fate: add 10bits YUV4:2:2 dnxhd test 2015-10-13 04:04:02 +02:00
tools
.gitattributes
.gitignore gitignore: ignore object file temporaries 2015-10-10 20:30:41 +02:00
.travis.yml Merge commit '1e0b8bf0b3b3b4247fb21e9839af342ae879607c' 2015-09-12 13:31:22 +02:00
arch.mak
Changelog AAC encoder: Extensive improvements 2015-10-11 17:29:50 -03:00
cmdutils_common_opts.h
cmdutils_opencl.c
cmdutils.c cmdutils: silence unused warnings under --disable-swscale, --disable-swresample 2015-10-03 19:26:09 +02:00
cmdutils.h
common.mak
configure configure: fix configure when using gcc 2015-10-11 13:25:13 -04:00
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
ffmpeg_dxva2.c
ffmpeg_filter.c Revert "Merge commit '8b830ee9a26d47b138f12a82085cdb372f407f1e'" (avconv: Do not try to configure filter outputs without streams) 2015-10-11 12:24:43 +02:00
ffmpeg_opt.c Merge commit 'b5e4f393b6757629281f58c3f3f6d55ca522ab60' 2015-09-29 15:30:48 +02:00
ffmpeg_vdpau.c
ffmpeg_videotoolbox.c build: restore videotoolbox compilation on iOS 2015-10-09 10:59:31 +02:00
ffmpeg.c ffmpeg: modify tty state when stderr is redirected 2015-10-11 17:41:15 -04:00
ffmpeg.h
ffplay.c ffplay: eliminate stream_component_close forward declaration 2015-10-12 00:07:38 +02:00
ffprobe.c ffprobe: use AV_OPT_TYPE_BOOL for writers options 2015-09-12 17:50:22 +02:00
ffserver_config.c ffserver: fix line wrapping on function decls 2015-10-04 15:58:35 -07:00
ffserver_config.h
ffserver.c ffserver: avoid leaking pathname at exit 2015-10-04 22:31:22 -07:00
INSTALL.md
library.mak
LICENSE.md avfilter: add rubberband wrapper 2015-09-20 19:54:57 +02:00
MAINTAINERS avfilter/vf_chromakey: Add chromakey video filter 2015-09-23 18:10:14 +02:00
Makefile
README.md README: replace http with https 2015-10-06 13:27:29 +02:00
RELEASE RELEASE: update to 2.8.git 2015-09-09 23:53:15 -03:00
version.sh

FFmpeg README

FFmpeg 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.
  • libswresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • ffmpeg is a command line toolbox to manipulate, convert and stream multimedia content.
  • ffplay is a minimalistic multimedia player.
  • ffprobe is a simple analysis tool to inspect multimedia content.
  • ffserver is a multimedia streaming server for live broadcasts.
  • 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

Coding examples are available in the doc/examples directory.

License

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

Contributing

Patches should be submitted to the ffmpeg-devel mailing list using git format-patch or git send-email. Github pull requests should be avoided because they are not part of our review process. Few developers follow pull requests so they will likely be ignored.