jsjj 发表于 2023-1-16 21:58:09

尝试移植qcc3086 source进qcc3071,测试无声

用qcc3071和qcc5171测试均无声音,qact看起来正常,大概是高通限制了。


PS:测试的经典蓝牙,不是LE AUDIO(qcc3086支持le audio)

usb dongle工程经典蓝牙音频和le audio只能二选一,也就是不支持双模音频。

估计高通的策略,qcc3086单独做蓝牙音频发射器(支持le audio)
qcc5181可以收发一体

O11111 发表于 2023-1-17 01:00:27

本帖最后由 O11111 于 2023-1-17 01:02 编辑

当我使用特定的hydra_os移植时,我在QCC5144上有类似的问题。用另一个移植体可以使它工作。
尝试在这里添加PanicFalse。
    /* Do not check result of configuring MTU, because this feature is licensed on some platforms, e.g. QCC3056.
       If the license check fails, it will return FALSE, but play silence. This is ok, and we should continue.
    */
    TransformConfigure(packetiser, VM_TRANSFORM_PACKETISE_MTU, codec_packet_mtu);在kymera_a2dp_source.c中应该是这样的
    PanicFalse(TransformConfigure(packetiser, VM_TRANSFORM_PACKETISE_MTU, codec_packet_mtu));如果在播放过程中会出现恐慌,请尝试另一个操作系统包(qcc517x/8x使用freeRTOS而不是hydra os)。

如果它在没有PanicFalse的情况下也能工作,那么在PanicFalse的情况下也应该能工作。
你也可以尝试使用qcc512x中的tws_packetiser来代替TransformPacketise(甚至可以把它添加到QCC517x/8x的DSP核中),或者基于https://github.com/arkq/bluez-alsa/blob/master/src/rtp.c 来实现你自己的。

jsjj 发表于 2023-1-17 12:11:49

O11111 发表于 2023-1-17 01:00
当我使用特定的hydra_os移植时,我在QCC5144上有类似的问题。用另一个移植体可以使它工作。
尝试在这里添加 ...




我想可能无法解决,应该被高通限制了,以前哪些旧的芯片高通忘记限制而已。

O11111 发表于 2023-1-17 14:24:12

jsjj 发表于 2023-1-17 12:11
我想可能无法解决,应该被高通限制了,以前哪些旧的芯片高通忘记限制而已。
...

这可能是通过绕过TransformPacketise或找到能工作的freeRTOS版本来解决的。
你可以尝试用StreamConnect和StreamDisconnect代替TransformPacketise。这将产生坏的RTP数据包,但你如果能在接收端(仅Linux)的Wireshark中看到它们,这意味着问题可能已经解决了。

jsjj 发表于 2023-1-17 17:14:44

O11111 发表于 2023-1-17 14:24
这可能是通过绕过TransformPacketise或找到能工作的freeRTOS版本来解决的。
你可以尝试用StreamConnect和 ...

这个难度太大,我不会,你可以尝试下。

纯简 发表于 2023-2-17 15:48:08

楼主厉害!研究得这么深入。

yuankan 发表于 2023-9-28 10:20:51


楼主厉害

manish12 发表于 2023-11-1 18:44:13

The host is awesome! Researched so deeply.

深圳市 发表于 2023-11-14 10:06:21

学习

晋123456 发表于 2023-11-15 10:11:22

看一看
页: [1]
查看完整版本: 尝试移植qcc3086 source进qcc3071,测试无声