Esempio n. 1
0
int dtap_change_effect(ao_wrapper_t *wrapper, int id)
{
    audio_effect_t *ae = (audio_effect_t *)wrapper->ao_priv;
    __android_log_print(ANDROID_LOG_INFO, TAG, "change audio effect from: %d to %d \n", ae->ap.para.item, id);
    dt_lock(&ae->lock);
    ae->ap.para.item = id;
    dtap_update(&ae->ap);
    dtap_init(&ae->ap);
    dt_unlock(&ae->lock);
    return 0;
}
Esempio n. 2
0
int dtap_process(dtap_context_t *ctx, dtap_frame_t *frame)
{

    if(!ctx->inited)
        dtap_init(ctx);
    dtap_lock(&mutex); 
    ap_wrapper_t *wrapper = ctx->wrapper;
    wrapper->process(ctx, frame);
    dtap_unlock(&mutex); 
    return 0;
}
Esempio n. 3
0
static int ao_opensl_init(dtaudio_output_t *aout, dtaudio_para_t *para) {
    if (Open(aout) == -1)
        return -1;
    Start(aout);

#ifdef ENABLE_DTAP
    ao_wrapper_t *wrapper = aout->wrapper;
    audio_effect_t *ae = (audio_effect_t *)malloc(sizeof(audio_effect_t));
    wrapper->ao_priv = ae;
    ae->ap.para.samplerate = para->samplerate;
    ae->ap.para.channels = para->channels;
    ae->ap.para.data_width = para->data_width;
    ae->ap.para.type = DTAP_EFFECT_EQ;
    ae->ap.para.item = EQ_EFFECT_NORMAL;
    dtap_init(&ae->ap);
    dt_lock_init(&ae->lock, NULL);
#endif
    return 0;
}