使用立体声和加密语音消息

simon bramble
ltspice可用于生成wav文件作为电路仿真的输出,以及导入wav文件以激励电路仿真。有据可查的是,单声道wav文件可以用作ltspice的输入,而ltspice可用于产生wav输出。本文详细介绍了如何使用ltspice音频wav文件来实现不太知名的立体声语法(以及更高的通道数)。
ltspice有许多超能力,但它对音频文件的处理是其更令人印象深刻的天赋之一。虽然看到电路在计算机屏幕上栩栩如生令人着迷,但创建可在ltspice之外播放的声音文件使工程师能够使用另一种感觉来评估仿真。使用单声道ltspice音频wav文件是有据可查的。本文将讨论扩展到立体声(或更多通道),并展示如何通过wav文件从ltspice导出立体声数据并将其导入ltspice。它还说明了 wav 文件的一些提示和技巧,这些提示和技巧将使读者能够进一步利用 wav 文件。
生成立体声 wav 文件
让我们从单声道信号生成立体声波文件开始。图1显示了一个电路,该电路产生1 v、1 khz正弦波并将其分成两个通道,在它们之间交替传输信号——1 khz音调在ch2和ch1之间以2秒的间隔切换。
图1.在此仿真中,1 khz正弦波在ch1和ch2之间以两秒的间隔切换。生成的双声道信号将导出到音频 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命令将列出的第一个通道保存为左侧音频通道,将第二个通道保存为右侧音频通道。在这种情况下,当导出时.wav通过媒体播放器播放时,ch1 将读取为左通道,ch2 将读取为右通道,而不管电路节点命名约定如何。请注意,默认情况下,ch1 和 ch2 分别存储为 chan 0 和 chan 1,存储在.wav文件中,这对于读取下面讨论的文件非常重要。
此导出的立体声音频文件可用于激励另一个电路,如图2所示,该电路使用导出的两个通道.wav作为信号输入。
图2.导出的两个立体声通道.wav用于激励两个独立的电路。
电压源v1和v2照常放置,然后按住ctrl键并右键单击每个电压源来分配来自输出.wav电压信号,显示组件属性编辑器,如图3所示。
图3.来自输出.wav的立体声信号用作图2电路的输入。下面是 v1 的分配,其值设置为从导出.wav中提取通道 0。
如上所述,当首次生成ltspice音频wav文件时,多达65,535个通道可以数字化为一个wav文件,只需将任意数量的通道附加到.wave命令的末尾即可。请记住,默认情况下,ltspice将第一个通道命名为通道0,下一个通道命名为通道1,依此类推。在这种情况下,导出.wav(由图1中的仿真生成)将电压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
音频分离
从理论上讲,通过媒体播放器播放导出.wav应该在完全通过左扬声器(或耳机)播放 1 khz 音调两秒钟和通过右扬声器播放两秒钟之间切换。然而,不能保证完全的立体声分离,这取决于播放过程中使用的媒体播放器的质量。
通过笔记本电脑播放导出时.wav,显示大约 30% 的左通道出现在右通道上,如图 4 所示。
图4.在笔记本电脑上播放时,左侧(黄色)通道显示右侧(蓝色)通道的大约 30% 馈通。
在移动电话听筒上播放相同的文件(大约在2000年)上,得到的结果更加分离,没有可察觉的串扰,但在最大音量下有轻微的失真,如图5所示。
图5.2000年的手机没有串扰,但在最大音量下失真。
在2018年以后的手机上重复实验,没有可察觉的串扰,峰值信号为1 v,失真非常小,如图6所示。请注意,示波器图是以500 mv/div的灵敏度拍摄的。
图6.后代手机在串扰、失真和振幅方面表现出明显更好的性能。
所有三个平台上都使用了相同的文件,表明ltspice正在生成完全分离的wav文件,但最终的播放在很大程度上取决于播放器音频舞台的质量。
语音加密
图7中的电路显示了语音加密的基本方法,该方法使用随机数序列对音频信号进行加密,然后进行解密。
图7.使用随机电压源加密/解密音频文件。
文件语音.wav包含原始音频。excel电子表格用于生成具有100 μs变化周期的随机数序列。结果将复制到名为 random.txt 的文本文件中。随机.txt的摘录如图 8 所示。
图8.使用 excel 生成并保存在文本文件中的随机电压。
该文件用于使用ltspice中的分段线性(pwl)电压源生成随机变化的电压v(rand)。
v(rand)使用行为电压源b1添加到语音信号中。然后将输出乘以 v(rand),并将结果发送到加密.wav文件。收听加密.wav显示原始音频几乎无法感知。
图9显示了ltspice绘图窗口中的原始语音、加密语音和解密语音信号。
图9.输出原始、加密和解密的语音信号。
然后使用第二个行为电压源解密原始音频信号,并将结果发送到文件解密.wav。
从差分电压源生成 wav 文件
.wave命令的语法不允许差分电压的数字化。但是,使用行为电压源可以轻松克服这一点,如图10所示。
图 10.从差分电压创建 wav 文件。
行为电压源输出的电压等于 v(out1) – v(out2),可以在 .wave 命令中以如下所示的常规方式使用。
实际上,行为电压源功能内的变量可以包括电路中的任何电压或电流,并且可以使用ltspice的任何数学函数来操纵这些变量。然后,最终结果可以以正常方式导出到ltspice音频wav文件。
ltspice是一个功能强大的模拟器,但其结果不必包含在ltspice中。使用.wave命令,ltspice可以导入,操作和导出音频文件,以便在媒体播放器上播放。


Cellebrite破解iPhone和Mac为执法部门提供帮助
华为荣耀V9的颜值只能用一个词形容,闭月羞花,美到让人害怕!
第7代iPodTouch疑似曝光 没有刘海体积略大于iPhone8
「最强盘点」15种医疗机器人,你了解几种?
第三次里程碑:Mini/Micro LED激活LED产业,一场硬仗来临
使用立体声和加密语音消息
凌安无线科技致力于为您提供大数据时代的便捷享受
日本地震致海缆故障 国内运营商启动预案抢修
集成温度传感器μPC616及其应用
商业银行怎样去部署人工智能
利用模拟开关切换视频
FireflyRK3288的摄像头模组介绍
萤火学堂视频课程之-RS485总线设计技巧
西门子PLC S7-1200系列CPU固件更新办法分享
拆机看看华为路由器的天线与滤波器
Linux 系统中僵尸进程
基于tp4057的锂电池充电-输出板
固定式气体检测仪对比便携式气体检测仪有哪些区别?
英飞凌推出全新高性能FPGA电源开发平台
斐波那契数列的实现方式