0
我試圖從調制解調器錄製音頻輸入,我已經設法通過TAPI API進行調用。如何在C#中使用MciSendString選擇音頻設備進行錄製
我可以使用MciSendString進行錄製,但不知道如何選擇調制解調器作爲音頻輸入設備(此刻它默認選擇聲卡)。
我也可以使用TAPI命令記錄,但我似乎無法得到它的工作:
任何幫助,將不勝感激。
我試圖從調制解調器錄製音頻輸入,我已經設法通過TAPI API進行調用。如何在C#中使用MciSendString選擇音頻設備進行錄製
我可以使用MciSendString進行錄製,但不知道如何選擇調制解調器作爲音頻輸入設備(此刻它默認選擇聲卡)。
我也可以使用TAPI命令記錄,但我似乎無法得到它的工作:
任何幫助,將不勝感激。
你必須首先檢測所有設備,然後你可以從那裏選擇它。該代碼是VB.Net,但你應該能夠很容易地翻譯它。我認爲,事件處理程序在您的案例中不是必需的。
找到所有TAPI的設備:
Private Sub New()
fTapi = New TAPI3Lib.TAPI()
fTapi.Initialize()
fTapi.EventFilter = TAPI_EVENT.TE_CALLNOTIFICATION Or TAPI_EVENT.TE_CALLINFOCHANGE Or TAPI_EVENT.TE_CALLHUB
AddHandler fTapi.Event, AddressOf internalTapiHandler
devices = New List(Of Device)()
For Each addr As ITAddress In CType(fTapi.Addresses, ITCollection)
devices.Add(New Device(fTapi, addr))
Next
End Sub
您還可以檢查wheter該設備是音頻設備:
Public ReadOnly Property isAudioDevice() As Boolean
Get
Return (addr.State = ADDRESS_STATE.AS_INSERVICE) And (CType(addr, ITMediaSupport).MediaTypes And TapiConstants.TAPIMEDIATYPE_AUDIO) = TapiConstants.TAPIMEDIATYPE_AUDIO
End Get
End Property
從那裏,你可以去與其他示例代碼。
請注意,由於時間問題,我沒有測試它。無論如何希望這有助於。
問候
我已經試過了,並沒有拿起「USRobotics 56K * USB調制解調器5637)作爲在音頻,正是我試圖做甚至可能嗎?就像我說的,我可以撥出電話,掛斷電話,做基本的位,但似乎無法獲得任何其他工作。我已經閱讀過,對於錄製的ActiveX可以處理它,或者我需要一個PCI語音卡,將電話線接入並將讓我直接訪問通過卡進行錄音的功能? – silverzx
也許您需要固件更新?產品主頁聲明自FW 1.2.23版(http://www.usr-emea.com/support/ s-prod-template.asp?loc = grmy&prod = 5637) - >鏈接到DataSheet:http://support.usr.com/download/datasheets/modem/5637/5637-ds.pdf – ELIZA