2010-01-28 62 views
0

我負責一箇舊的BASIC程序,需要改變以激活特定按鍵上的麥克風錄音。我無法找到如何。BASIC - 在按鍵上激活麥克風錄音?

任何人在這裏能夠擺脫任何光線?

感謝您的任何幫助。

編輯:我很確定它最初是爲GW-BASIC編寫的。

+3

我有一種感覺,會有一個平臺特定的答案。如果不知道您使用的是哪個平臺和哪個BASIC實現,則無法給出這樣的答案。 – spender 2010-01-28 09:54:59

+0

@spender - 我在windows上,我很確定它最初是爲GW-BASIC編寫的。 – Galwegian 2010-01-28 10:00:02

+0

你需要哪部分,「激活麥克風錄音」或「在特定按鍵上?」後者很容易,但前者在GW-BASIC中相當困難。 – ChrisV 2010-01-28 13:42:45

回答

1

由於聽起來你沒有寫過任何音頻代碼,我的建議是你不要嘗試從GW-BASIC記錄。沒有用於訪問聲卡的內置功能(SOUND和BEEP不計數,因爲它們與PC揚聲器一起使用),發送SoundBlaster控制代碼在Windows中最好不可靠。使用輔助的Windows本機程序進行記錄。對於BASIC代碼,你將不得不輪詢鍵盤。示例:

100 PRINT "Press any key to continue" 
110 A$ = INKEY$ 
120 IF A$ = "" THEN GOTO 110 
130 IF A$ = CHR$(1) THEN GOSUB 1000 
140 PRINT "Rest of code goes here..." 
1000 ' Ctrl+A triggered the microphone 
1010 PRINT "Starting microphone recording." 
1020 SHELL "otherprg --startrecording" 
1030 RETURN 

替換您的首選密鑰代碼。如果您使用INPUT,那麼有一種方法 - KEY語句? - 使您的選擇功能鍵插入文本。當按下功能鍵時,使用KEY插入CHR $(2)+ CHR $(13)(^ B plus Enter),然後在每個INPUT調用中使用INSTR掃描CHR $(2)的結果,並分支到需要的麥克風代碼。

但是,如果您使用INPUT讀取數字,這仍然不起作用。嚴重的是,除非麥克風錄音箱受到了極大的限制,否則你會爲自己設置一個可怕的代碼,而這些代碼通常只能工作。

編輯:而這一切都是滑冰最大的問題:GW-BASIC是單一任務。當你從麥克風錄音時,你無法在節目的其他地方做真正的工作,反之亦然。

+0

@ChrisV - 感謝你的回答,芽。 – Galwegian 2010-01-28 16:56:12