voip例程(esp sip stack)是否支持OPUS?

wjstanc
Posts: 3
Joined: Sat Jan 25, 2025 2:38 pm

voip例程(esp sip stack)是否支持OPUS?

Postby wjstanc » Sat Jun 07, 2025 3:08 pm

请教个问题,我想在VOIP(esp-adf\examples\protocols\voip)里扩充编解码,
sip_service.c

Code: Select all

 esp_rtc_config_t sip_service_config = {
        .uri = uri,
        .ctx = av_stream,
        .local_addr = localIp,
        .acodec_type = RTC_ACODEC_OPUS, //RTC_ACODEC_G711A,
        .data_cb = &data_cb,
        .event_handler = _esp_sip_event_handler,
    };
voip_app.c

Code: Select all

av_stream_config_t av_stream_config = {
        .algo_mask = ALGORITHM_STREAM_DEFAULT_MASK,
        .acodec_samplerate = AUDIO_CODEC_SAMPLE_RATE,
        .acodec_type = AV_ACODEC_OPUS, //AV_ACODEC_G711A,
        .vcodec_type = AV_VCODEC_NULL,
        .hal = {
            .audio_samplerate = AUDIO_HAL_SAMPLE_RATE,
            .audio_framesize = PCM_FRAME_SIZE,
        },
    };
    av_stream = av_stream_init(&av_stream_config);
并且将esp-opus(components.espressif.com/components/78/esp-opus/versions/1.0.5)相关编解码的代码扩充了av_stream.c的相应地方;然而,发现接通voip ring后,

Code: Select all

 esp_rtc_data_cb_t data_cb = {
        .send_audio = _send_audio,
        .receive_audio = _receive_audio,
    };
sip的_receive_audio并没有被回调到, 请问当前的voip内部实现还没有支持这个opus payload回调吗? 如果要扩充opus要如何做相应调整?谢谢

Who is online

Users browsing this forum: No registered users and 1 guest