exoplayer3 ffmpeg 扩展库编译 aar,导入集成

这篇具有很好参考价值的文章主要介绍了exoplayer3 ffmpeg 扩展库编译 aar,导入集成。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

exoplayer3 ffmpeg 扩展库编译 aar,导入集成。

已经编译完成的aar:https://download.csdn.net/download/mhhyoucom/88086822

编译项目方法:
github下载项目:https://github.com/google/ExoPlayer

FFmpeg 模块提供 ,它使用 FFmpeg 进行解码 并且可以呈现以各种格式编码的音频。

要使用该模块,您需要克隆此 GitHub 项目并依赖其 本地模块。有关执行此操作的说明,请参阅顶级自述文件。该模块不是通过谷歌的Maven存储库提供的 。

此外,还需要手动构建 FFmpeg 库,以便 可以将 FFmpeg 二进制文件捆绑在 APK 中:

设置以下外壳变量:
cd “


FFMPEG_MODULE_PATH=“$(pwd)/extensions/ffmpeg/src/main”

下载安卓 NDK 并在 shell 变量中设置其位置。 此构建配置已在 NDK r21 上进行了测试。

NDK_PATH=“

设置主机平台(对于 Mac OS X,请使用“darwin-x86_64”):

HOST_PLATFORM=“linux-x86_64”

获取 FFmpeg 并签出相应的分支。我们不能保证 与所有版本的 FFmpeg 兼容。我们目前推荐版本 4.2:

cd “” &&
git clone git://source.ffmpeg.org/ffmpeg &&
cd ffmpeg &&
git checkout release/4.2 &&
FFMPEG_PATH=“$(pwd)”

配置要包含的解码器。请参阅支持的格式页面 可用解码器的详细信息,以及它们支持的格式。

ENABLED_DECODERS=(vorbis opus flac)
在 FFmpeg 模块目录中添加指向 FFmpeg 源代码的链接。jni
cd “KaTeX parse error: Expected 'EOF', got '&' at position 27: …ULE_PATH}/jni" &̲& \ ln -s "FFMPEG_PATH” ffmpeg

执行以构建 、 和 的 FFmpeg。如果需要构建,可以编辑脚本 不同的架构:build_ffmpeg.sharmeabi-v7aarm64-v8ax86x86_64

cd “KaTeX parse error: Expected 'EOF', got '&' at position 27: …ULE_PATH}/jni" &̲& \ ./build_ffm…{FFMPEG_MODULE_PATH}” “ N D K P A T H " " {NDK_PATH}" " NDKPATH""{HOST_PLATFORM}” “${ENABLED_DECODERS[@]}”

如何使用:

导入java类。

public class PluginRenderFactory extends DefaultRenderersFactory {
    /**
     * @param context A {@link Context}.
     */
    public PluginRenderFactory(Context context) {
        super(context);
    }

    @Override
    protected void buildAudioRenderers(Context context, int extensionRendererMode, MediaCodecSelector mediaCodecSelector, boolean enableDecoderFallback, AudioSink audioSink, Handler eventHandler, AudioRendererEventListener eventListener, ArrayList<Renderer> out) {
        out.add(new FfmpegAudioRenderer(eventHandler, eventListener, audioSink));
        super.buildAudioRenderers(context, extensionRendererMode, mediaCodecSelector, enableDecoderFallback, audioSink, eventHandler, eventListener, out);
    }


}

exoplayer初始化时候设置进入:

DefaultRenderersFactory renderersFactory = new PluginRenderFactory(context)
                .setExtensionRendererMode(DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON);
        mPlayer = new ExoPlayer.Builder(context).setRenderersFactory(renderersFactory).build();

编译集成完毕文章来源地址https://www.toymoban.com/news/detail-612499.html

到了这里,关于exoplayer3 ffmpeg 扩展库编译 aar,导入集成的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • NDK交叉编译FFmpeg安卓编译ffmpeg

    编译工具下载 参考这个:https://blog.csdn.net/gaoliang0/article/details/81913291 或者官网 NDK编译工具下载: https://developer.android.google.cn/ndk/downloads?hl=zh-cn 官网老版本: https://github.com/android/ndk/wiki/Unsupported-Downloads 或者从我的百度网盘: 链接:https://pan.baidu.com/s/1FEtM6mVNgER_DvC2myHB5Q?pwd=28l9 提

    2024年02月08日
    浏览(41)
  • 谷歌浏览器打包扩展程序和导入扩展程序

    需求: 由于FQ限制,无法使用谷歌商店,现需将已安装的谷歌浏览器插件打包,发给其他人的电脑,加载该插件。 一、打包扩展程序 (1)打开谷歌浏览器 - 点击右上方设置按钮 - 更多工具 - 扩展程序(或直接输入:chrome://extensions/),得到下图: (2)图中“捕捉网页截图”

    2024年02月04日
    浏览(49)
  • FFmpeg开发笔记(七)欧拉系统编译安装FFmpeg

    FFmpeg支持Linux、macOS、Windows、Android等操作系统,其中Linux系列包括Ubuntu、Debian、Mint、CentOS、RHEL、Fedora等分支。FFmpeg官网的编译入口地址为 https://trac.ffmpeg.org/wiki/CompilationGuide,在这里可以找到FFmpeg对各系统的编译说明。更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到

    2024年03月23日
    浏览(43)
  • FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass

    ​ libass是一个适用于ASS和SSA格式(Advanced Substation Alpha/Substation Alpha)的字幕渲染器,支持的字幕类型包括srt、ass等,凡是涉及到给视频画面添加字幕,均需事先集成libass。 《FFmpeg开发实战:从零基础到短视频上线》一书的“7.3.1  Linux环境安装libass”介绍了如何在Linux环境给

    2024年04月27日
    浏览(42)
  • 三.ffmpeg 集成av1

    copy from zhujiamin 一、介绍 FFmpeg4.2支持AV1、AVS2等视频编码格式,但本身并不包含解码器,需要自己集成。集成的编解码器要避开GPL开源协议(–enable-gpl),因此不能用x264、AVS2等编解码器 我在研究FFmpeg升级时,寻找能提升多媒体系统表现力的新特性,发现FFmpeg支持的基于BSD协

    2023年04月24日
    浏览(40)
  • ffmpeg 编译android mac环境编译 或者centos

    ndk版本:ndk21 (可使用android studio内部下载的ndk) /Users/XXXX/Library/Android/sdk/ndk/21.4.7075529 ffmpeg下载  ffmpeg6.0 1:git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg 2:或者直接点击下面按钮下载 http://ffmpeg.org/releases/ffmpeg-6.0.tar.xz 环境和资源都准备好了之后,接下来就是准备编译脚本。这里面说

    2024年02月09日
    浏览(59)
  • 【FFmpeg】在 Mac OS 中编译 FFmpeg 源码 ① ( homebrew 安装 | 通过 gitee 源安装 homebrew | 安装 FFmpeg 编译所需的软件包 )

    在 Mac 系统中 homebrew 是一款 软件包管理工具 , 可以 轻松的 安装 / 卸载 / 更新 / 查看 / 搜索 软件包 , 可以简单方便地对软件包进行管理 , 无需用户 处理 复杂的依赖关系 问题 ; homebrew 是 基于 Git 的仓库 的 , 用户 跟踪 和 获取最新版本的软件包 ; homebrew 的 默认安装位置是 /u

    2024年04月13日
    浏览(60)
  • FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx

    ​ MP4是最常见的视频封装格式,在《FFmpeg开发实战:从零基础到短视频上线》一书的“1.2.3  自行编译与安装FFmpeg”介绍了如何给FFmpeg集成x264和x265两个库,从而支持H.264和H.265两种标准的编解码。 视频的封装格式除了古老的MP4和ASF之外,还有较新的WebM格式,该格式的音频编

    2024年04月08日
    浏览(39)
  • FFmpeg开发笔记(十)Linux环境给FFmpeg集成vorbis和amr

    ​ FFmpeg内置了aac音频格式,在《FFmpeg开发实战:从零基础到短视频上线》一书的“5.2.2  Linux环境集成mp3lame”又介绍了如何给FFmpeg集成mp3格式,常见的音频文件除了这两种之外,还有ogg和amr两种格式也较常用。其中ogg格式的编解码依赖于libogg和libvorbis,而amr格式的编解码依赖

    2024年04月08日
    浏览(56)
  • FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx

    ​ MP4是最常见的视频封装格式,在《FFmpeg开发实战:从零基础到短视频上线》一书的“1.2.3  自行编译与安装FFmpeg”介绍了如何给FFmpeg集成x264和x265两个库,从而支持H.264和H.265两种标准的编解码。 视频的封装格式除了悠久的MP4和ASF之外,还有较新的WebM格式,该格式的音频编

    2024年04月13日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包