2013-02-14 31 views
4

我有一個的MacBook ALLUMINIUM和我想捕捉的RAW格式和輸出通過揚聲器一個RAW音頻麥克風,在標準方式,即,使用終端與標準 Unix命令和使用該標準/dev/???設備。哪個/ dev/...(設備)是Mac OS X中的麥克風和揚聲器?

所以,問題/ S:

  • 哪些設備的麥克風和揚聲器?這些都應該以/ dev開始/ ...

  • 它們是不同的,如果它們是內置或外置?哪個? (此外,他們具有的/ dev/......開始)

如果您知道還有Unix命令打印麥克風輸入接口及編寫音箱,將是加分的輸出! :)(我想從麥克風捕捉它,修改它-I了IT-,並把它修改爲揚聲器)

如果知道也OSX大會說明這將是完美! 但主要問題是哪些在項目列表中。

謝謝!

+0

你爲什麼想用生'/ dev'設備要做到這一點,爲什麼不使用的Core Audio?或者其中一個更高級別的API。 – mttrb 2013-02-14 02:53:43

+0

因爲我希望它可以很容易地轉換成linux可編譯代碼,保持速度快,因爲我想使用程序集 – axelbrz 2013-02-14 03:37:28

+0

您不需要使用程序集編寫快速代碼。地獄,你甚至不需要快速的代碼來做音頻處理。你可以用Python編寫你的代碼,而且速度會更快。 – duskwuff 2013-02-14 04:38:11

回答

4

由於@duskwuff說,你可能不會有任何的喜悅試圖訪問使用在OS X /dev設備聲音設備

如果您在您的評論說以上,你的目標是跨平臺的可移植性那麼也許PortAudio可能是一個解決方案。

從他們的主頁:

PortAudio是一個免費的,跨平臺的,開放源碼的,音頻I/O庫。 它可以讓你寫的「C」或C++,將 編譯並在許多平臺上,包括Windows操作系統,Macintosh OS X, 和Unix(OSS/ALSA)運行簡單的音頻節目。它旨在促進不同平臺上的開發人員之間的音頻交換。許多應用程序 使用PortAudio作爲音頻I/O。

在OS X上,我相信他們使用Core Audio,而在Linux上他們使用的是OSS/ALSA。

+0

完美!即使我看起來像sox,PortAudio是我需要的東西,因爲我需要快速且易於在多個平臺上使用的東西。謝謝! :) – axelbrz 2013-02-14 05:33:41

+0

值得一提的是,ALSA只提供/ dev節點以與OSS兼容。虛擬設備不是現代或高性能音頻API的工作方式。 – 2013-02-14 15:15:13

7

沒有。並非所有設備在Mac OS X上都有/dev節點,並且音頻設備不在其中。我不知道只使用「標準」終端命令來訪問音頻設備。 sox可用於安裝它,但不隨Mac OS X提供。

訪問Mac OS X上音頻設備的主要支持API是Core Audio。第三方庫,如libao,也可能暴露一個簡單的,獨立於平臺的接口,核心音頻。

+0

我下載並安裝了SoX並且正在播放它,錄製和播放聲音。無論如何,我無法做到這一點:輸入=>文件/套接字=>輸出,我該怎麼做? – axelbrz 2013-02-14 04:24:39

+3

簡單的例子:'sox -d -p | sox -p -d'。有關詳細信息,請閱讀文檔('man sox'或'sox -h')。 – duskwuff 2013-02-14 04:43:33

+0

好,非常感謝!除了--buffer之外,這個命令工作得很好!無論如何,PortAudio可以更好地處理每個緩衝區64幀的小緩衝區。謝謝! – axelbrz 2013-02-14 05:32:11

相關問題