亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? audio.c

?? 實時語音信號處理系統設計源碼
?? C
字號:
/*
 *  Copyright 2002 by Texas Instruments Incorporated.
 *  All rights reserved. Property of Texas Instruments Incorporated.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 */
/* "@(#) DSP/BIOS 4.80.208 12-06-02 (barracuda-l19)" */
/*
 *  ======== audio.c ========
 */

#include <std.h>

#include <pip.h>    
#include <log.h>
#include <trc.h>
#include <hst.h>

#include <string.h>     /* memset() */
#include <stdarg.h>     /* var arg stuff */

#include "dss.h"
#include "audio.h"

Int PHASE = 0;              /* number of samples of phase difference */

static Uns allocBuf(PIP_Obj *out, Uns **buf);
static Void freeBuf(PIP_Obj *out);
static Uns getBuf(PIP_Obj *in, Uns **buf);
static Void process(Uns *src, Int size, Uns *dst);
static Void putBuf(PIP_Obj *out, Uns size);
static Void writeBuf(PIP_Obj *out, Uns *buf, Uns size);

static Int loadVal = 0;
static PIP_Obj *hostPipe = NULL;

/*
 *  ======== main ========
 */
Void main()
{
    Int size;
    Uns *buf;
    
#if AUDIO_USEHST
    hostPipe = HST_getpipe(&hostOutputProbe);
#endif
    
    DSS_init();     /* Initialize codec and serial port */

    LOG_printf(&trace, "Audio example started!!\n");    

    /* Prime output buffers with silence */
    size = allocBuf(&DSS_txPipe, &buf);
    memset(buf, 0, size * sizeof (Uns));
    putBuf(&DSS_txPipe, size);

    size = allocBuf(&DSS_txPipe, &buf);
    memset(buf, 0, size * sizeof (Uns));
    putBuf(&DSS_txPipe, size - PHASE);
    
    /* Fall into BIOS idle loop */
    return;                 
}

/*
 *  ======== audio ========
 */
Void audio(PIP_Obj *in, PIP_Obj *out)
{
    Uns *src, *dst;
    Uns size;

    if (PIP_getReaderNumFrames(in) == 0 || PIP_getWriterNumFrames(out) == 0) {
        error("Error: audio signal falsely triggered!");
    }

    /* get input data and allocate output buffer */
    size = getBuf(in, &src);
    allocBuf(out, &dst);

    /* process input data in src to output buffer dst */
    process(src, size, dst);

    /* check for real-time error */
    if (DSS_error != 0) {
        LOG_printf(&trace,
            "Error: DSS missed real-time! (DSS_error = 0x%x)", DSS_error);
        loadVal -= 1;
        DSS_error = 0;
    }
    
    /* output data and free input buffer */
    putBuf(out, size);
    freeBuf(in);
}

/*
 *  ======== error ========
 */
Void error(String msg, ...)
{
    va_list va;
    va_start(va, msg);
     
    LOG_error(msg, va_arg(va, Arg));    /* write error message to sys log */
    LOG_disable(LOG_D_system);          /* stop system log */
    
    for (;;) {
        ;                               /* loop for ever */
    }
}

/*
 *  ======== load ========
 */
Void load(Arg Arg_prd_ms)
{
    static int oldLoad = 0;
    Int prd_ms = ArgToInt(Arg_prd_ms);

    /* display confirmation of load changes */
    if (oldLoad != loadVal ) {
        oldLoad = loadVal;
        LOG_printf(&trace,
            "load: new load = %d000 instructions every %d ms", loadVal, prd_ms);
        }

    if (loadVal) {
        AUDIO_load(loadVal);
    }
}

/*
 *  ======== step ========
 */
Void step(void)
{
    static Int direction = 1;

    if (loadVal > MAXLOAD) {
        direction = -1;
    }
    if (loadVal <= 0) {
        direction = 1;
    }

    loadVal = loadVal + (100 * direction);
}

/*
 *  ======== allocBuf ========
 */
static Uns allocBuf(PIP_Obj *out, Uns **buf)
{
    PIP_alloc(out);
    *buf = PIP_getWriterAddr(out);;
    return (PIP_getWriterSize(out));
}

/*
 *  ======== freeBuf ========
 */
static Void freeBuf(PIP_Obj *out)
{
    PIP_free(out);
}

/*
 *  ======== getBuf ========
 */
static Uns getBuf(PIP_Obj *in, Uns **buf)
{
    PIP_get(in);
    *buf = PIP_getReaderAddr(in);;
    return (PIP_getReaderSize(in));
}

/*
 *  ======== process ========
 */
static Void process(Uns *src, Int size, Uns *dst)
{
    Int i;
    
    for (i = size - 1; i >= 0; i--) {
        dst[i] = src[i];
    }

    /* if hostPipe is non-NULL write data to this pipe */
    if (hostPipe != NULL) {
        writeBuf(hostPipe, dst, size);
    }
}

/*
 *  ======== putBuf ========
 */
static Void putBuf(PIP_Obj *out, Uns size)
{
    PIP_setWriterSize(out, size);
    PIP_put(out);
}

/*
 *  ======== writeBuf ========
 */
static Void writeBuf(PIP_Obj *out, Uns *buf, Uns size)
{
    Uns dstSize;
    Uns *dst;
    Int i;
    
    /* allocate outBuffer for output */
    dstSize = allocBuf(out, &dst);

    /* copy data to output buffer (but not more than output buffer size) */
    for (i = (dstSize >= size) ? size : dstSize; i > 0; i--) {
        *dst++ = *buf++;
    }

    /* put buffer to output pipe */
    putBuf(out, size);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
7777女厕盗摄久久久| 成人app下载| 偷拍亚洲欧洲综合| 亚洲一区二区影院| 日韩专区一卡二卡| 五月天视频一区| 蜜臀av亚洲一区中文字幕| 蜜桃久久av一区| 麻豆极品一区二区三区| 极品少妇xxxx偷拍精品少妇| 国产在线视频不卡二| 久久er99精品| 免费成人你懂的| 一个色妞综合视频在线观看| 日韩毛片视频在线看| 中文字幕欧美区| 亚洲精品第一国产综合野| 欧美成人乱码一区二区三区| 精品入口麻豆88视频| 久久久久久电影| 中文字幕日韩av资源站| 中文字幕人成不卡一区| 亚洲午夜在线视频| 美女视频网站久久| 国产99久久久久| 91成人免费在线视频| 欧美一区二区播放| 久久婷婷国产综合国色天香 | 亚洲国产va精品久久久不卡综合| 天天影视色香欲综合网老头| 精品亚洲成a人在线观看| 成人少妇影院yyyy| 欧美伦理影视网| 国产日本欧洲亚洲| 亚洲一区影音先锋| 国产一区二区久久| 欧美日韩另类国产亚洲欧美一级| 日韩一区二区免费高清| 亚洲日韩欧美一区二区在线| 久热成人在线视频| 亚洲啪啪综合av一区二区三区| 亚洲午夜日本在线观看| 欧美aⅴ一区二区三区视频| 欧美日韩激情一区二区| 久久精品国产77777蜜臀| 秋霞电影网一区二区| www.欧美日韩国产在线| 91精品国产色综合久久ai换脸 | 一区二区三区在线观看视频 | 亚洲高清免费观看高清完整版在线观看| 老司机精品视频导航| 在线看国产一区二区| 国产亚洲1区2区3区| 天天综合天天综合色| 91啪九色porn原创视频在线观看| 欧美一级搡bbbb搡bbbb| 亚洲一区二区三区四区五区黄 | 亚洲自拍偷拍网站| 国产成人日日夜夜| 久久色在线观看| 免费黄网站欧美| 在线电影院国产精品| 一区二区在线看| 成人精品一区二区三区四区| 久久亚洲影视婷婷| 狠狠色狠狠色合久久伊人| 欧美日韩国产免费| 性做久久久久久久免费看| a美女胸又www黄视频久久| www精品美女久久久tv| 日本女优在线视频一区二区| 欧美福利电影网| 亚洲一区二区五区| 在线免费观看日本一区| 亚洲欧美电影一区二区| 99re成人在线| 玉足女爽爽91| 欧美另类videos死尸| 亚洲国产精品天堂| 色综合中文综合网| 日韩精品一区二区三区视频在线观看| 日韩精品免费专区| 在线电影院国产精品| 久久99精品久久久久久国产越南| 欧美sm美女调教| 国产一区二区三区免费观看| 国产亚洲欧洲一区高清在线观看| 国产乱码精品一区二区三区五月婷 | 亚洲国产欧美在线| 91玉足脚交白嫩脚丫在线播放| 欧美韩国日本不卡| 一本久久精品一区二区| 亚洲猫色日本管| 欧美午夜理伦三级在线观看| 五月激情综合网| 欧美高清视频一二三区 | 色综合久久九月婷婷色综合| 亚洲精选视频免费看| 欧美天堂一区二区三区| 久久国产精品99久久人人澡| 国产欧美一区二区三区网站| 97久久精品人人澡人人爽| 亚洲一区在线观看免费| 日韩精品一区在线观看| 久久国产福利国产秒拍| 日韩你懂的电影在线观看| 日韩高清在线不卡| 国产精品久久一卡二卡| 欧美日韩午夜影院| 成人国产亚洲欧美成人综合网| 日本一区二区三区四区在线视频| 99久久免费精品高清特色大片| 天堂影院一区二区| 久久精品免视看| 日韩精品一区二区三区视频播放| 成人自拍视频在线| 亚洲成人精品在线观看| 国产欧美日本一区视频| 欧美一区二视频| 国模一区二区三区白浆| 日韩视频免费观看高清在线视频| 捆绑调教美女网站视频一区| 欧美一卡2卡3卡4卡| 亚洲图片欧美综合| 欧美一级在线观看| 91视频观看视频| 国产精品一区二区视频| 欧美不卡一区二区三区四区| 91国产视频在线观看| 国产成人超碰人人澡人人澡| 视频一区欧美精品| 一级日本不卡的影视| 中文在线资源观看网站视频免费不卡 | 91福利视频网站| 成人不卡免费av| 国产一区视频在线看| 视频一区免费在线观看| 亚洲精品视频在线| 亚洲视频一区二区在线| 国产喂奶挤奶一区二区三区| 精品国产伦一区二区三区免费| 欧美日韩在线一区二区| 色呦呦日韩精品| 色94色欧美sute亚洲线路一ni| fc2成人免费人成在线观看播放| 国产一区二区福利| 久久电影国产免费久久电影| 日日夜夜免费精品| 日韩av中文字幕一区二区| 亚洲午夜激情av| 石原莉奈在线亚洲三区| 午夜久久久久久久久久一区二区| 亚洲精品日产精品乱码不卡| 亚洲欧美另类久久久精品2019| 中文字幕日本不卡| 亚洲天堂av老司机| 亚洲另类春色国产| 亚洲mv在线观看| 青青草伊人久久| 免费成人在线观看| 国产精品一区久久久久| 国产成人精品一区二区三区四区 | 欧美一区二区日韩一区二区| 91麻豆精品国产综合久久久久久| 日韩一区二区电影| 日韩精品中文字幕在线一区| 2024国产精品| 亚洲尤物在线视频观看| 天天影视网天天综合色在线播放| 亚洲一区二区视频在线观看| 蜜桃视频一区二区| 高清不卡一区二区在线| 日本久久精品电影| 欧美日韩一级二级| 久久免费国产精品| 中文字幕在线一区免费| 亚洲综合区在线| 久久国内精品自在自线400部| 国产99久久久国产精品潘金| 99国内精品久久| 91精品一区二区三区久久久久久| 国产亚洲一区二区三区在线观看| 亚洲天堂福利av| 久久精品99国产国产精| 99天天综合性| 在线电影欧美成精品| 国产日本欧美一区二区| 午夜在线成人av| 成人三级伦理片| 制服丝袜亚洲网站| 自拍偷在线精品自拍偷无码专区| 日韩中文字幕1| av午夜一区麻豆| 日韩欧美黄色影院| 一区二区三区毛片| 国产揄拍国内精品对白| 在线观看免费一区| 国产精品嫩草久久久久| 免费观看30秒视频久久| 91国偷自产一区二区开放时间|