爱意满满的作品展示区。
isofew

写了个 Frida 脚本来翻转左右声道(安卓原生音频 OpenSL ES)

  •  
  •   isofew · Mar 13, 2020 · 2228 views
    This topic created in 2283 days ago, the information mentioned may be changed or developed.

    故事起因是给 Razer 手机买了个 JungleCat,接上后发现它的方位刚好和 GeForce Now 的音频方位是反着的(左控制器在手机顶部但左声道却在下面),就很别扭。

    于是研究了下,发现 GeForce Now 是用 OpenSL ES 原生直接播放音频。目的应该是为了减少延迟,结果就声道方位固定,不能随着手机旋转了,细节还是不够扎实。

    我没找到左右声道接线配置,可能是在 ROM 里,所以打算直接注入一段代码交换左右声道的缓冲数组。

    剩下的问题就是这个库的函数都是通过界面提供的,函数地址每次创建都不同,所以需要先跟踪界面创建的调用,找到地址,再注入代码到缓冲入队的函数上。

    分享下这个小脚本,希望能帮到有类似需求的人(虽然可能不多哈哈)。

    https://github.com/isofew/AudioSwap

    2 replies    2020-03-13 10:12:55 +08:00
    kneep
        1
    kneep  
       Mar 13, 2020 via iPhone
    frida 是不 root 手机就可以实现此类功能吗?
    isofew
        2
    isofew  
    OP
       Mar 13, 2020 via Android
    @kneep 不 root 的话要把 frida-gadget 打包进 apk 我是已经 root 了就懒得麻烦了 也怕被当成外挂封了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2888 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 49ms · UTC 14:50 · PVG 22:50 · LAX 07:50 · JFK 10:50
    ♥ Do have faith in what you're doing.