HarmonyOS 是否有C++ native层读取音频文件并在上层进行播放的例子

如何在底层使用C++读取pcm的文件,并将读取到的音频流流式传输到ArkTS层并进行播放,需要边读边播放,不是一次读取完再数据全部上抛。

HarmonyOS
2025-01-09 13:49:27
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

ArkTS调用native方法再回调参考示例:

uint8_t *ReadArraybuffer() {
    uint8_t *buffer = new uint8_t[1024];
    memset(buffer, 2, 1024);
    return buffer;
}
void ToFin(napi_env env, void *finalize_data, void *finalize_hint) { free(finalize_hint); }
static napi_value GetArraybuffer(napi_env env, napi_callback_info info) {
    uint8_t *buffer = ReadArraybuffer();
    napi_value result;
    napi_status status;
    status = napi_create_external_arraybuffer(env, buffer, 1024, ToFin, buffer, &result);
    if (status != napi_ok) {
        napi_throw_error(env, nullptr, "Failed to create external ArrayBuffer");
        delete[] buffer;
        return nullptr;
    }
    return result;
}
分享
微博
QQ
微信
回复
2025-01-09 16:54:55
相关问题
HarmonyOS 播放本地音频文件
843浏览 • 1回复 待解决
怎么读取本地音频文件列表?
6742浏览 • 1回复 待解决
HarmonyOS raw音频文件读取转为字节流
245浏览 • 1回复 待解决
AVPlayer实现音频播放c++侧)
1775浏览 • 1回复 待解决
通过Native 调用c++实现文本绘制
1501浏览 • 1回复 待解决
c++处理promise例子
240浏览 • 1回复 待解决
HarmonyOS C++如何读取指定路径文件
333浏览 • 1回复 待解决