- 31 Mar, 2019 1 commit
-
-
Lynne authored
Its only used in the encoder and in CELT's PVQ.
-
- 04 Dec, 2017 2 commits
-
-
Rostislav Pehlivanov authored
This should save quite a bit of space if either has been disabled for size reasons. Could just check if the encoding flag is set during runtime on every single location, however the overhead of branch misses would somewhat decrease performance. Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
Rostislav Pehlivanov authored
No point in having the same code twice to do exactly the same thing. Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
- 18 Aug, 2017 1 commit
-
-
Ivan Kalvachev authored
Explanation on the workings and methods used by the Pyramid Vector Quantization Search function could be found in the following Work-In-Progress mail threads: http://ffmpeg.org/pipermail/ffmpeg-devel/2017-June/212146.html http://ffmpeg.org/pipermail/ffmpeg-devel/2017-June/212816.html http://ffmpeg.org/pipermail/ffmpeg-devel/2017-July/213030.html http://ffmpeg.org/pipermail/ffmpeg-devel/2017-July/213436.htmlSigned-off-by:
Ivan Kalvachev <ikalvachev@gmail.com>
-
- 16 May, 2017 1 commit
-
-
Rostislav Pehlivanov authored
Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
- 14 Apr, 2017 1 commit
-
-
Rostislav Pehlivanov authored
Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
- 14 Feb, 2017 3 commits
-
-
Rostislav Pehlivanov authored
This marks the first time anyone has written an Opus encoder without using any libopus code. The aim of the encoder is to prove how far the format can go by writing the craziest encoder for it. Right now the encoder's basic, it only supports CBR encoding, however internally every single feature the CELT layer has is implemented (except the pitch pre-filter which needs to work well with the rest of whatever gets implemented). Psychoacoustic and rate control systems are under development. The encoder takes in frames of 120 samples and depending on the value of opus_delay the plan is to use the extra buffered frames as lookahead. Right now the encoder will pick the nearest largest legal frame size and won't use the lookahead, but that'll change once there's a psychoacoustic system. Even though its a pretty basic encoder its already outperforming any other native encoder FFmpeg has by a huge amount. The PVQ search algorithm is faster and more accurate than libopus's algorithm so the encoder's performance is close to that of libopus at zero complexity (libopus has more SIMD). The algorithm might be ported to libopus or other codecs using PVQ in the future. The encoder still has a few minor bugs, like desyncs at ultra low bitrates (below 9kbps with 20ms frames). Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
Rostislav Pehlivanov authored
This is meant to be applied on top of my previous patch which split PVQ into celt_pvq.c and made opus_celt.h Essentially nothing has been changed other than renaming CeltFrame to CeltBlock (CeltFrame had absolutely nothing at all to do with a frame) and CeltContext to CeltFrame. 3 variables have been put in CeltFrame as they make more sense there rather than being passed around as arguments. The coefficients have been moved to the CeltBlock structure (why the hell were they in CeltContext and not in CeltFrame??). Now the encoder would be able to use the exact context the decoder uses (plus a couple of extra fields in there). FATE passes, no slowdowns, etc. Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
Rostislav Pehlivanov authored
A huge amount can be reused by the encoder, as the only thing which needs to be done would be to add a 10 line celt_icwrsi, a wrapper around it (celt_alg_quant) and templating the ff_celt_decode_band to replace entropy decoding functions with entropy encoding. There is no performance loss but in fact a performance gain of around 6% which is caused by the compiler being able to optimize the decoding more efficiently. Signed-off-by:
Rostislav Pehlivanov <atomnuker@gmail.com>
-
- 10 Mar, 2014 1 commit
-
-
Anton Khirnov authored
The values of {FLT,DBL}_{MAX,MIN} macros on some systems (older musl libc, some BSD flavours) are not exactly representable, i.e. (double)DBL_MAX == DBL_MAX is false This violates (at least some interpretations of) the C99 standard and breaks code (e.g. in vf_fps) like double f = DBL_MAX; [...] if (f == DBL_MAX) { // f has not been changed yet [....] }
-
- 30 Aug, 2013 1 commit
-
-
Thilo Borgmann authored
-
- 17 May, 2011 1 commit
-
-
Mans Rullgard authored
This builds the float and fixed-point versions of dct32 separately instead of #including the file in dct.c and mpegaudiodec.c. Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 19 Mar, 2011 1 commit
-
-
Mans Rullgard authored
Signed-off-by:
Mans Rullgard <mans@mansr.com>
-
- 09 Sep, 2010 1 commit
-
-
Måns Rullgård authored
Instead of defining functions in per-arch header files included by the main cpu.c, define them normally and call them from the generic one. Originally committed as revision 25084 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 08 Sep, 2010 1 commit
-
-
Stefano Sabatini authored
function and rename it to av_get_cpu_flags(). Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 22 Dec, 2008 1 commit
-
-
Diego Biurrun authored
It contains optimizations that are not specific to i386 and libavutil uses this naming scheme already. Originally committed as revision 16270 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 12 Aug, 2008 1 commit
-
-
Loren Merritt authored
c is 1.9x faster than previous c (on various x86 cpus), sse is 1.6x faster than previous sse. Originally committed as revision 14698 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 09 May, 2008 1 commit
-
-
Diego Biurrun authored
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 08 May, 2008 1 commit
-
-
Ramiro Polla authored
typedef x86_reg as the appropriate size and use it instead. Originally committed as revision 13081 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 16 May, 2007 1 commit
-
-
Ronald S. Bultje authored
include paths in the source files. mostly from a patch by Ronald S. Bultje, rbultje ronald.bitfreak net Originally committed as revision 9034 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 07 Oct, 2006 1 commit
-
-
Diego Biurrun authored
and fix GPL/LGPL version mismatches. Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 18 Aug, 2006 1 commit
-
-
Loren Merritt authored
2.5% faster fft, 0.5% faster vorbis. Originally committed as revision 6023 to svn://svn.ffmpeg.org/ffmpeg/trunk
-
- 08 Mar, 2006 1 commit
-
-
Zuxy Meng authored
Patch by Zuxy Meng, zuxy <<dot>> meng >>at<< gmail <<dot>> com Minor non-functional diff-related fixes by me. Originally committed as revision 5125 to svn://svn.ffmpeg.org/ffmpeg/trunk
-