美文网首页
FFmpeg5-音频编码

FFmpeg5-音频编码

作者: AlanGe | 来源:发表于2020-07-02 17:56 被阅读0次

一、音频编码

第一步:下载fdk_aac开发包->共用->C开发库
第二步:编写脚本->编译iOS平台下fdk_aac开发包->编译.a静态库
第三步:编译FFmpeg库->将FFmpeg和fdk_aac合并->编译.a静态库->依赖
第四步:导入项目中
注意:FFmpeg需要导入进去,fdk_aac库也需要导入到项目中
第五步:进行开发

[音频编码编译库](链接: https://pan.baidu.com/s/1TD9fODy-wOjSClBlrzZhPw) 提取码: 89bj

二、开发

  • 第一步:注册组件->编码器、解码器等等…
    av_register_all()

  • 第二步:初始化封装格式上下文
    avformat_alloc_context()

  • 第三步:打开输入文件
    avio_open()

  • 第四步:创建输出码流
    avformat_new_stream()

  • 第五步:查找音频编码器
    avcodec_find_encoder_by_name

  • 第六步:打开aac编码器
    avcodec_open2

  • 第七步:写文件头(对于某些没有文件头的封装格式,不需要此函数。比如说MPEG2TS)
    avformat_write_header()

  • 第八步:初始化音频采样数据帧缓冲区
    av_frame_alloc();

  • 第九步:创建音频压缩数据->帧缓存空间
    av_malloc();

  • 第十步:循环编码每一帧音频

  • 第十一步:将编码后的音频压缩数据写入文件中
    av_write_frame()

  • 第十二步:输入像素数据读取完毕后回调函数
    作用:输出编码器中剩余AVPacket
    flush_encoder()

  • 第十三步:写入文件尾部信息
    av_write_trailer()

  • 第十四步:释放内存,关闭编码器等等…
    avcodec_close(avcodec_context);
    av_free(av_frame);
    av_free(out_buffer);
    av_packet_free(&av_packet);
    avio_close(avformat_context->pb);
    avformat_free_context(avformat_context);
    fclose(in_file);

Demo: 04-FFmpeg音频编码

相关文章

  • FFmpeg5-音频编码

    一、音频编码 第一步:下载fdk_aac开发包->共用->C开发库第二步:编写脚本->编译iOS平台下fdk_aa...

  • swift 音频编码

    音频编码: 原始音频数据(PCM)---------------(编码)------------------ 压...

  • Android RTMP录频直播三(AAC音频编码)

    1. AAC音频编码流程 2. AAC音频编码代码

  • 六:音频编码介绍

    音频编码:就是将采集的音频数(例如PCM)压缩成为音频编码流,从而降低音频的数据传输量。目前常见的音频编码方式主要...

  • ACC编码

    ACC编码 AAC(Advanced Audio Coding,译为:高级音频编码),有损音频编码和文件格式。被设...

  • 音频技术基础

    一、音频编码调制技术 根据编码方式的不同,音频编码技术分为三种:波形编码、参数编码和混合编码。一般来说,波形编码的...

  • 视频编解码七:FFmpeg音频编码

    音频编码流程pcm->aac FFmpeg默认不包含aac音频编码器库,需要自行下载 acc音频编码器库:fdka...

  • 音频编码

    音频基础知识 PCM格式pcm是经过话筒录音后直接得到的未经压缩的数据流数据大小=采样频率采样位数声道*秒数/8采...

  • 音频编码

    音频编码和视频编码流程基本是一样的,大家可以参考视频编码来做,唯一的不同大家看demo去了解吧,这里不细说了,最关...

  • 音频编码

    一. 声音的三要素 音调.(音频).小孩>女孩>男孩 音量:声音震动幅度 音色:材质有关!谐波 . 二 .心理声学...

网友评论

      本文标题:FFmpeg5-音频编码

      本文链接:https://www.haomeiwen.com/subject/fdgrqktx.html