android版本webrtc使用ffmpeg 解码h264编译报错

1, android studio使用ffmpeg解码h264编译报错:

复制代码
third_party/ffmpeg/ffmpeg_internal/videodsp.o: in function `ff_prefetch_aarch64':
(.text+0x10): relocation truncated to fit: R_AARCH64_CONDBR19 against symbol `ff_prefetch_aarch64' defined in .text section in obj/third_party/ffmpeg/ffmpeg_internal/videodsp.o

2,查看相关代码

复制代码
third_party/ffmpeg/libavcodec/aarch64/videodsp.S

#include "libavutil/aarch64/asm.S"

function ff_prefetch_aarch64, export=1
        subs            w2,  w2,  #2
        prfm            pldl1strm, [x0]
        prfm            pldl1strm, [x0,  x1]
        add             x0,  x0,  x1,  lsl #1
        b.gt            X(ff_prefetch_aarch64)
        ret
endfunc

3,原因:由于链接器如何将部分分配到地址空间造成的

4,修改以下文件

third_party/ffmpeg/libavcodec/aarch64/videodsp.S:

复制代码
#include "libavutil/aarch64/asm.S"

function ff_prefetch_aarch64, export=1
        subs            w2,  w2,  #2
        prfm            pldl1strm, [x0]
        prfm            pldl1strm, [x0,  x1]
        add             x0,  x0,  x1,  lsl #1
        b            X(ff_prefetch_aarch64)
1:
        ret
endfunc
相关推荐
行墨1 小时前
Jetpack Compose 深入浅出(二)——基础组件Text
android
雨白3 小时前
深入理解协程的运作机制 —— 调度、挂起与性能
android·kotlin
沐怡旸3 小时前
【Android】Android系统体系结构
android
namehu4 小时前
React Native 应用性能分析与优化不完全指南
android·react native·ios
xqlily4 小时前
Kotlin:现代编程语言的革新者
android·开发语言·kotlin
HelloBan4 小时前
如何正确去掉SeekBar的Thumb和按压效果
android
木易 士心4 小时前
Android EventBus 源码解析:设计模式、原理与实现
android
ClassOps5 小时前
源码阅读 LeakCanary
android
用户2018792831675 小时前
为啥现在 Android App 不用手动搞 MultiDex 了?
android
fouryears_234175 小时前
如何将Vue 项目转换为 Android App(使用Capacitor)
android·前端·vue.js