ffmpeg 继续学习 -- ARM优化-- AArch64

1、FFmpeg发布3.0系列

最近ffmpeg的版本更新加快,目前出现 3.0.2 release版本。名称是“爱因斯坦” 

FFmpeg 3.0.2 "Einstein"

3.0.2 was released on 2016-04-28. It is the latest stable FFmpeg release from the 3.0 release branch, which was cut from master on 2016-02-14.

It includes the following library versions:


2、tools下面有个调整moov atom次序的工具

 * This utility rearranges a Quicktime file such that the moov atom
 * is in front of the data, thus facilitating network streaming.

3、libavcodec下有个aarch64的文件夹

h264dsp_init_aarch64.c文件中定义基于ARM 64位架构指令集的汇编优化加速
目前没有看到HEVC的加速代码

av_cold void ff_h264dsp_init_aarch64(H264DSPContext *c, const int bit_depth,
                                     const int chroma_format_idc)
{
    int cpu_flags = av_get_cpu_flags();

    if (have_neon(cpu_flags) && bit_depth == 8) {
        c->h264_v_loop_filter_luma   = ff_h264_v_loop_filter_luma_neon;
        c->h264_h_loop_filter_luma   = ff_h264_h_loop_filter_luma_neon;
        c->h264_v_loop_filter_chroma = ff_h264_v_loop_filter_chroma_neon;
        if (chroma_format_idc <= 1)
        c->h264_h_loop_filter_chroma = ff_h264_h_loop_filter_chroma_neon;

        c->weight_h264_pixels_tab[0] = ff_weight_h264_pixels_16_neon;
        c->weight_h264_pixels_tab[1] = ff_weight_h264_pixels_8_neon;
        c->weight_h264_pixels_tab[2] = ff_weight_h264_pixels_4_neon;

        c->biweight_h264_pixels_tab[0] = ff_biweight_h264_pixels_16_neon;
        c->biweight_h264_pixels_tab[1] = ff_biweight_h264_pixels_8_neon;
        c->biweight_h264_pixels_tab[2] = ff_biweight_h264_pixels_4_neon;

        c->h264_idct_add        = ff_h264_idct_add_neon;
        c->h264_idct_dc_add     = ff_h264_idct_dc_add_neon;
        c->h264_idct_add16      = ff_h264_idct_add16_neon;
        c->h264_idct_add16intra = ff_h264_idct_add16intra_neon;
        if (chroma_format_idc <= 1)
            c->h264_idct_add8   = ff_h264_idct_add8_neon;
        c->h264_idct8_add       = ff_h264_idct8_add_neon;
        c->h264_idct8_dc_add    = ff_h264_idct8_dc_add_neon;
        c->h264_idct8_add4      = ff_h264_idct8_add4_neon;
    }
}



你可能感兴趣的:(FFMPEG,H.265,arm,armv8,arch64)