你的位置:首頁 > 測試測量 > 正文

LTspice音頻WAV文件:使用立體聲和加密語音消息

發(fā)布時間:2020-04-03 來源:ADI公司 Simon Bramble,高級現場應用工程師 責任編輯:wenwei

【導讀】LTspice可用于生成WAV文件作為電路仿真的輸出,也可用于導入WAV文件來激勵電路仿真。大量文檔記載單聲道WAV文件可用作LTspice中的輸入,而LTspice可用于生成WAV輸出。本文詳細說明如何使用LTspice音頻WAV文件生成不太為人所知的立體聲語法(以及更高的通道計數)。
 
提問:能否通過LTspice音頻WAV文件利用立體聲數據和加密語音消息?
 
回答:假如音樂是愛情的食糧,那么就仿真吧。
 
本非常見問題解釋如何使用LTspice®音頻WAV文件生成立體聲語法(以及更高的通道計數)。
 
LTspice可用于生成WAV文件作為電路仿真的輸出,也可用于導入WAV文件來激勵電路仿真。大量文檔記載單聲道WAV文件可用作LTspice中的輸入,而LTspice可用于生成WAV輸出。本文詳細說明如何使用LTspice音頻WAV文件生成不太為人所知的立體聲語法(以及更高的通道計數)。
 
LTspice擁有許多超級功能,但它處理音頻文件的能力是令人印象較深刻的功能之一。雖然在計算機屏幕上看到逼真的電路令人著迷,但是創(chuàng)建一個可以在LTspice之外播放的聲音文件則能夠讓工程師以另一種感測方式來評估仿真。使用單聲道 LTspice音頻WAV文件的相關文檔非常完備。本文對立體聲(或更多通道)展開討論,并說明如何從LTspice音頻WAV文件導出立體聲數據,以及如何將立體聲數據導入LTspice音頻WAV文件。它還闡述了WAV文件的一些使用技巧和訣竅,使讀者能夠進一步利用WAV文件。
 
生成立體聲WAV文件
 
首先,從單聲道信號生成立體聲波形文件。圖1顯示的電路生成1 V、1 kHz正弦波,并將其分成兩個通道,從而在兩個通道之間交替?zhèn)鬏斝盘?mdash;—在CH1和CH2之間以2秒間隔切換1 kHz信號音。
 
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖1.在本仿真中,在CH1和CH2之間以2秒間隔切換1 kHz正弦波。生成的兩通道信號導出到一個音頻WAV文件中。
 
命令.wave “C:export.wav” 16 44.1k V(CH1) V(CH2)以16位分辨率對每個通道進行數字化處理,以44.1 kSPS速率進行采樣,并將生成的音頻數據存儲在C:export.wav中。在上述命令中,在采樣速率之后列出的每個信號在WAV文件中都生成自己的通道數據。LTspice可在單個LTspice音頻WAV文件中存儲多達65,535個通道——只需根據需要將信號附加到上述命令即可。
 
默認情況下,LTspice的.wave命令將列出的第一個通道數據另存為左音頻通道,將列出的第二個通道數據另存為右音頻通道。在這種情況下,當通過媒體播放器播放export.wav時,無論電路節(jié)點命令規(guī)則如何,CH1都將被讀取為左通道,CH2將被讀取為右通道。請注意,默認情況下,CH1和CH2在.wav文件中分別存儲為通道0和通道1,這對于讀取下面討論的文件至關重要。
 
導出的這個立體聲音頻文件可用于激勵圖2所示的另一個電路,該電路使用export.wav中的兩個通道,作為信號輸入。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖2.export.wav中的兩個立體聲通道用于激勵兩個獨立電路。
 
電壓源V1和V2照常放置,然后按住CTRL鍵并右鍵單擊每個電壓源,顯示元件屬性編輯器(如圖3所示),來分配export.wav中的電壓信號。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖3.export.wav中的立體聲信號用作圖2電路的輸入。這是V1的分配,值設置為從export.wav中拉出通道0。
 
如上所述,首次生成LTspice音頻WAV文件時,多達65,535個通道可數字化為一個WAV文件——只需在.wave命令的末尾附加任意多個通道即可。記住,默認情況下,LTspice將第一個通道命名為通道0,將下一個通道命名為通道1,以此類推。在這種情況下,由圖1仿真生成的export.wav將電壓V(CH1)存儲為通道0,將V(CH2)存儲為通道1。要使用電壓源播放這些通道,請在該電壓源的值行中指定.wav文件和通道。這種情況下:
 
● 要指示V1回放圖1的V(CH1):wavefile=“C:export.wav” chan=0
● 要指示V2回放圖1的V(CH2):wavefile=“C:export.wav” chan=1
 
音頻分離
 
從理論上講,通過媒體播放器播放export.wav應在完全通過左揚聲器(或耳機)播放1 kHz信號音2秒鐘和通過右揚聲器播放2秒鐘之間切換。盡管如此,仍然無法保證立體聲完全分離,這取決于播放過程中使用的媒體播放器的質量。
 
通過筆記本電腦播放export.wav顯示,在示波器上測量時約30%的左通道出現在右通道上,如圖4所示。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖4.左(黃色)通道顯示,在筆記本電腦上播放時約30%饋入右(藍色)通道。
 
在(2000年時代)手機上播放相同的文件會得到一個更加分離的結果,顯示沒有可感知的串擾,但是在最大音量下會有輕微的失真,如圖5所示。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖5.2000年的手機顯示沒有串擾,但在最大音量下會失真。
 
在后來2018年時代的手機上重復這個實驗,結果顯示沒有可感知的串擾,但有一個完整的1 V峰值信號和很小的失真,如圖6所示。請注意,所繪示波器曲線圖的靈敏度為500 mV/div。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖6.后來一代手機在串擾、失真和振幅方面表現出更好的性能。
 
在所有三個平臺上使用相同的文件,結果顯示LTspice可以生成能夠完全分離的WAV文件,但最終的回放在很大程度上取決于播放器音頻級的質量。
 
語音加密
 
圖7中的電路顯示了語音加密的基本方法,就是使用隨機數序列加密音頻信號,然后解密。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖7.使用隨機電壓源加密/解密音頻文件。
 
文件voice.wav包含原始音頻。Excel電子表格用于生成變化周期為100 µs的隨機數序列。結果復制到名為random.txt的文本文件中。random.txt的摘錄如圖8所示。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖8.使用Excel生成并保存到文本文件中的隨機電壓。
 
該文件用于使用LTspice中的分段線性(PWL)電壓源 生成隨機變化的電壓V(RAND)。
 
使用行為電壓源B1將V(RAND)添加到語音信號中。然后將輸出乘以V(RAND),并將結果發(fā)送到encrypt.wav文件。收聽encrypt.wav發(fā)現,原始音頻幾乎無法感知。
 
圖9顯示了LTspice圖窗口的原始語音、加密語音和解密語音信號。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖9.原始、加密和解密語音信號的輸出。
 
然后使用第二個行為電壓源解密原始音頻信號,并將結果發(fā)送到decrypt.wav文件。
 
從差分電壓源生成WAV文件
 
.wave命令的語法不允許數字化差分電壓。但是,使用行為電壓源(B1)可輕松解決此問題,如圖10所示。
 
LTspice音頻WAV文件:使用立體聲和加密語音消息
圖10.從差分電壓創(chuàng)建WAV文件。
 
行為電壓源(B1)輸出電壓等于V(OUT1) – V(OUT2),這可以按常用方式在.wave命令中使用,如圖所示。
 
事實上,行為電壓源函數中的變量可以包括電路中的任何電壓或電流,并且可以使用LTspice的任何數學函數控制這些變量。然后,可以通過正常方式將最終結果導出到LTspice音頻WAV文件。
 
LTspice是一個功能強大的仿真器,但其仿真結果不必包含在LTspice內。使用.wave命令,LTspice可以導入、操作和導出音頻文件,以便在媒體播放器上播放。
 
作者簡介
 
Simon Bramble于1991年畢業(yè)于倫敦布魯內爾大學,擁有電氣工程和電子學學位,專門從事模擬電子器件和電源工作。他的職業(yè)生涯主要從事模擬電子器件工作,就職于凌力爾特(現為ADI公司的一部分)。聯系方式:simon.bramble@analog.com。
 
 
推薦閱讀:
 
看懂MOSFET產品說明書,第4部分 —— 脈沖電流額定值
PCB面積總是不夠用?教你一個好辦法
談物聯網在農牧業(yè)中的應用
精密SAR模數轉換器的前端放大器和RC濾波器設計
看懂MOSFET數據表,第3部分—連續(xù)電流額定值
要采購揚聲器么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉