git.libav.org Git - libav.git/rss log

Libav master git repository

http://git.libav.org/?p=libav.git;a=summary

Les articles publiés sur le site

  • openssl : Support version 1.1.0.

    9 octobre 2016, par Matt Oliver
    openssl: Support version 1.1.0.
    
    Further simplifications by Martin Storsjö, to minimize the
    diff.
    
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] configure
    • [DBH] libavformat/tls_openssl.c
  • arm : vp9 : Add NEON itxfm routines

    8 octobre 2016, par Martin Storsjö
    arm: vp9: Add NEON itxfm routines
    
    This work is sponsored by, and copyright, Google.
    
    For the transforms up to 8x8, we can fit all the data (including
    temporaries) in registers and just do a straightforward transform
    of all the data. For 16x16, we do a transform of 4x16 pixels in
    4 slices, using a temporary buffer. For 32x32, we transform 4x32
    pixels at a time, in two steps of 4x16 pixels each.
    
    Examples of relative speedup compared to the C version, from checkasm:
                             Cortex       A7     A8     A9    A53
    vp9_inv_adst_adst_4x4_add_neon:     3.39   5.83   4.17   4.01
    vp9_inv_adst_adst_8x8_add_neon:     3.79   4.86   4.23   3.98
    vp9_inv_adst_adst_16x16_add_neon:   3.33   4.36   4.11   4.16
    vp9_inv_dct_dct_4x4_add_neon:       4.06   6.16   4.59   4.46
    vp9_inv_dct_dct_8x8_add_neon:       4.61   6.01   4.98   4.86
    vp9_inv_dct_dct_16x16_add_neon:     3.35   3.44   3.36   3.79
    vp9_inv_dct_dct_32x32_add_neon:     3.89   3.50   3.79   4.42
    vp9_inv_wht_wht_4x4_add_neon:       3.22   5.13   3.53   3.77
    
    Thus, the speedup vs C code is around 3-6x.
    
    This is mostly marginally faster than the corresponding routines
    in libvpx on most cores, tested with their 32x32 idct (compared to
    vpx_idct32x32_1024_add_neon). These numbers are slightly in libvpx's
    favour since their version doesn't clear the input buffer like ours
    do (although the effect of that on the total runtime probably is
    negligible.)
    
                               Cortex       A7       A8       A9      A53
    vp9_inv_dct_dct_32x32_add_neon:    18436.8  16874.1  14235.1  11988.9
    libvpx vpx_idct32x32_1024_add_neon 20789.0  13344.3  15049.9  13030.5
    
    Only on the Cortex A8, the libvpx function is faster. On the other cores,
    ours is slightly faster even though ours has got source block clearing
    integrated.
    
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavcodec/arm/Makefile
    • [DBH] libavcodec/arm/vp9dsp_init_arm.c
    • [DBH] libavcodec/arm/vp9itxfm_neon.S
  • emms : Give apriv_emms_yasm() a more general name

    8 octobre 2016, par Diego Biurrun
    emms: Give apriv_emms_yasm() a more general name
    
    • [DBH] libavutil/x86/emms.asm
    • [DBH] libavutil/x86/emms.h
  • build : Add VSX-OBJS to SUBDIR_VARS

    8 octobre 2016, par Diego Biurrun
    build: Add VSX-OBJS to SUBDIR_VARS
    
    The variable needs to be reset for each subdirectory.
    
    • [DBH] Makefile
  • build : Drop duplicate asm recipe

    8 octobre 2016, par Diego Biurrun
    build: Drop duplicate asm recipe
    
    And move the asm recipe to the top-level Makefile next to the other
    local pattern rules for .o files.
    
    • [DBH] Makefile
    • [DBH] library.mak
    • [DBH] tests/checkasm/x86/Makefile