示例#1
0
void bufaddcomplex(buf_s *b, complex double val)
{
    double i, r;
    
    r = creal(val);    
    if(EQ0((i = cimag(val)))) {
        bufadddouble(b, r);
    }
    else {
        if(!EQ0(r)) {
            bufaddc(b, '(');
            bufadddouble(b, r);
            if(i > 0)
                bufaddstr(b, " plus ", sizeof(" plus ")-1);
            if(EQ1(i)) {
                bufaddc(b, 'i');
            }
            else if(EQN1(i)) {
                bufaddstr(b, "-i", sizeof("-1")-1);
            }
            else {
                bufadddouble(b, i);
                bufaddc(b, 'i');
            }
            bufaddc(b, ')');
        }
        else {
            if(EQ1(i)) {
                bufaddc(b, 'i');
            }
            else if(EQN1(i)) {
                bufaddstr(b, "-i", sizeof("-1")-1);
            }
            else {
                bufadddouble(b, i);
                bufaddc(b, 'i');
            }
        }
    }
}
示例#2
0
    default:
        return RT_ERROR;
    }
    codec_send(r06);
    codec_send(r07);

#if !CODEC_MASTER_MODE
    codec_sr_new = sr;
#endif

    return RT_EOK;
}

FINSH_FUNCTION_EXPORT(vol, Set volume);
FINSH_FUNCTION_EXPORT(eq1, Set EQ1(Cut-off, Gain, Mode));
FINSH_FUNCTION_EXPORT(eq2, Set EQ2(Center, Gain, Bandwidth));
FINSH_FUNCTION_EXPORT(eq3, Set EQ3(Center, Gain, Bandwidth));
FINSH_FUNCTION_EXPORT(eq4, Set EQ4(Center, Gain, Bandwidth));
FINSH_FUNCTION_EXPORT(eq5, Set EQ5(Cut-off, Gain));
FINSH_FUNCTION_EXPORT(eq3d, Set 3D(Depth));
FINSH_FUNCTION_EXPORT(sample_rate, Set sample rate);

static rt_err_t codec_open(rt_device_t dev, rt_uint16_t oflag)
{
#if !CODEC_MASTER_MODE
    /* enable I2S */
    I2S_Cmd(CODEC_I2S_PORT, ENABLE);
#endif

    return RT_EOK;