⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 audriv.h

📁 MIDI解码程序(用VC编写)
💻 H
字号:
/*    TiMidity++ -- MIDI to WAVE converter and player    Copyright (C) 1999-2002 Masanao Izumo <mo@goice.co.jp>    Copyright (C) 1995 Tuukka Toivonen <tt@cgs.fi>    This program is free software; you can redistribute it and/or modify    it under the terms of the GNU General Public License as published by    the Free Software Foundation; either version 2 of the License, or    (at your option) any later version.    This program is distributed in the hope that it will be useful,    but WITHOUT ANY WARRANTY; without even the implied warranty of    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    GNU General Public License for more details.    You should have received a copy of the GNU General Public License    along with this program; if not, write to the Free Software    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA*/#ifndef ___AUDRIV_H_#define ___AUDRIV_H_#ifndef Bool#define Bool int#endif#ifndef False#define False 0#endif#ifndef True#define True 1#endifextern char audriv_errmsg[BUFSIZ];/* エラ〖が券栏した眷圭は·エラ〖メッセ〖ジが肋年されますˉ * 赖撅瓢侯している眷圭は·恃构されませんˉ *//* オ〖ディオの掐叫蜗黎を绩す猛 */enum audriv_ports{    AUDRIV_OUTPUT_SPEAKER,    AUDRIV_OUTPUT_HEADPHONE,    AUDRIV_OUTPUT_LINE_OUT};extern Bool audriv_setup_audio(void);/* オ〖ディオの介袋步を乖いますˉ * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern void audriv_free_audio(void);/* audio の稿借妄を乖いますˉ */extern Bool audriv_play_open(void);/* audio を遍琳脱に倡き·いつでも audriv_write() により遍琳材墙な * 觉轮にしますˉ贷に倡いている眷圭はなにも乖いませんˉ * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern void audriv_play_close(void);/* 遍琳脱にオ〖プンされた audio を誓じますˉすでに誓じている * 眷圭はなにも乖いませんˉ */extern long audriv_play_stop(void);/* 遍琳を篓郝に匿贿し·匿贿木涟のサンプル眶を手しますˉ * audriv_play_stop() の钙び叫しによって·audio は誓じますˉ * audio が贷に誓じている眷圭に audriv_play_stop() を钙び叫した眷圭は 0 を * 手しますˉ * エラ〖の眷圭は -1 を手しますˉ */extern Bool audriv_is_play_open(void);/* audio が遍琳でオ〖プンされている眷圭は True, * 誓じている眷圭は False を手しますˉ */extern Bool audriv_set_play_volume(int volume);/* 遍琳不翁を 0 × 255 の认跋柒で肋年しますˉ0 は痰不·255 は呵络不翁ˉ * 0 踏塔は 0·255 を亩える猛は 255 に霹擦ˉ * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern int audriv_get_play_volume(void);/* 遍琳不翁を 0 × 255 柒で评ますˉ0 は痰不·255 は呵络不翁ˉ * 己窃すると -1 を手し·そうでない眷圭は 0 × 255 柒の不翁を手しますˉ */extern Bool audriv_set_play_output(int port);/* audio の叫蜗黎 port を回年しますˉport には笆布のどれかを回年しますˉ * *     AUDRIV_OUTPUT_SPEAKER	スピ〖カに叫蜗ˉ *     AUDRIV_OUTPUT_HEADPHONE	ヘッドホンに叫蜗ˉ *     AUDRIV_OUTPUT_LINE_OUT	ラインアウトに叫蜗ˉ * * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern int audriv_get_play_output(void);/* audio の叫蜗黎 port を评ますˉ * 己窃すると -1 を手し·喇根すると笆布のいずれかの猛を手しますˉ * *     AUDRIV_OUTPUT_SPEAKER	スピ〖カに叫蜗ˉ *     AUDRIV_OUTPUT_HEADPHONE	ヘッドホンに叫蜗ˉ *     AUDRIV_OUTPUT_LINE_OUT	ラインアウトに叫蜗ˉ * */extern int audriv_write(char *buff, int n);/* audio に buff を n バイト尸萎し哈みますˉ * audriv_set_noblock_write() で润ブロックˇモ〖ドが肋年された * 眷圭は·この簇眶の钙び叫しは篓郝に借妄が手りますˉ * 手り猛は悸狠に萎し哈まれたバイト眶であり·润ブロックˇモ〖ドが肋年 * されている眷圭は·苞眶 n より警ない眷圭がありますˉ * 己窃すると -1 を手し·喇根すると·悸狠に萎し哈まれたバイト眶を手しますˉ */extern Bool audriv_set_noblock_write(Bool noblock);/* noblock に True を回年すると·audriv_write() 钙び叫しでブロックしませんˉ * False を回年すると·デフォルトの觉轮に提しますˉ * 借妄に喇根すると True を·己窃すると False を手しますˉ */extern int audriv_play_active(void);/* 遍琳面なら 1·遍琳面でないなら 0, エラ〖なら -1 を手しますˉ */extern long audriv_play_samples(void);/* 附哼遍琳面のサンプル疤弥を手しますˉ */extern long audriv_get_filled(void);/* オ〖ディオバッファ柒のバイト眶を手します。 * エラ〖の眷圭は -1 を手します。 */extern const long *audriv_available_encodings(int *n_ret);/* マシンがサポ〖トしているすべての射规步リストを手しますˉn_ret には * その硷梧の眶が·手されますˉ射规步をあらわす年眶猛は * aenc.h 柒に年盗されている猛ですˉ * 手り猛は free してはなりませんˉ */extern const long *audriv_available_sample_rates(int *n_ret);/* マシンがサポ〖トしているすべてのサンプルレ〖トのリストを手しますˉ * 手り猛のサンプルレ〖トは你い界にならんでいますˉ * n_ret にはその硷梧の眶が·手されますˉ * 手り猛は free してはなりませんˉ */extern const long *audriv_available_channels(int *n_ret);/* マシンがサポ〖トしているすべてのチャネル眶のリストを手しますˉ * n_ret にはその硷梧の眶が·手されますˉ * 手り猛は free してはなりませんˉ */extern Bool audriv_set_play_encoding(long encoding);/* audio 遍琳箕の射规步数及を回年しますˉ * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern Bool audriv_set_play_sample_rate(long sample_rate);/* audio 遍琳箕のサンプルレ〖トを回年しますˉ * 喇根した眷圭は True を·己窃した眷圭は False を手しますˉ */extern Bool audriv_set_play_channels(long channels);/* 遍琳脱のチャネル眶を肋年しますˉ * 己窃すると False を手し·喇根すると True を手しますˉ */extern void (* audriv_error_handler)(const char *errmsg);/* NULL でなければ·エラ〖が券栏した眷圭钙び叫されますˉ */extern void audriv_wait_play(void);/* CPU パワ〖を喜锐しないようにするために·办箕弄に匿贿しますˉ*/#endif /* ___AUDRIV_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -