2014-02-25 77 views
0

有沒有辦法在Ubuntu中確定是否有設備插入音頻和麥克風插孔?如何以編程方式確定設備是否連接到音頻插孔?

我搜索了這個,我發現的所有答案都與檢測插頭或拔下插頭的動作有關。我需要知道是否有可能確定設備是否已連接。原因是我們做了大量的自動化測試,我們的一些測試依賴於連接到機器上的設備。我們希望我們的測試足夠聰明以檢測設備或沒有,以便他們可以相應地進行操作。

如果有解決方案,我最終希望將它移植到OS X和Windows,如果可能的話。

感謝

回答

1

假設你真的是音頻插孔,而不是USB設備:這些都是純機械/電氣連接和音頻硬件設置不報到東西是否連接與否。

您可以嘗試監視麥克風上的音頻並查看是否存在背景噪音信號。之後,您可以嘗試通過揚聲器播放音調或一組音調,並查看麥克風是否拾取它們。 (如果這是耳機,可能不會,但是對於你的測試環境,你應該能夠指定什麼設備被連接起來。)但除了那種「嘗試看看」之外,我認爲你運氣不好。

+0

你會錯的。實際上,許多編解碼器可以測量連接到音頻輸入和輸出的設備的阻抗,而無需在音頻插座中額外添加一對觸點。在用戶空間中獲取信息的任何標準方式肯定(並且可能仍然)缺失。我已經看到支持它的Linux編解碼器驅動程序,但對檢測到的事件無能爲力。 – marko

+0

有點令人驚訝,但有趣。答案仍然歸結爲「除非你想在駕駛員層面上工作,或者在實際水平上進行測試,否則你不能」,儘管如此。 – keshlam

相關問題