Browse Source

avcodec/fraps: Use cached bitstream reader

This proved beneficial for performance: For the sample [1] the number
of decicycles in one decode call decreased from 155851561 to 108158037
for Clang 10 and from 168270467 to 128847479 for GCC 9.3. For x86-32
compiled with GCC 9.3 and run on an x64 Haswell the number increased
from 158405517 to 202215769, so that the cached bitstream reader is only
enabled if HAVE_FAST_64BIT is set. These values are the average of 10
runs each looping five times over the input.

[1]: samples.ffmpeg.org/ffmpeg-bugs/trac/ticket2593/fraps_flv1_decoding_errors.avi

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
tags/n4.4
Andreas Rheinhardt 5 years ago
parent
commit
a162e78cd5
1 changed files with 3 additions and 0 deletions
  1. +3
    -0
      libavcodec/fraps.c

+ 3
- 0
libavcodec/fraps.c View File

@@ -31,6 +31,9 @@
* Version 2 files support by Konstantin Shishkov
*/

#include "config.h"

#define CACHED_BITSTREAM_READER HAVE_FAST_64BIT
#define UNCHECKED_BITSTREAM_READER 1
#include "avcodec.h"
#include "get_bits.h"


Loading…
Cancel
Save