最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

使用Sound eXchange (SoX)進(jìn)行DSD、PCM格式轉(zhuǎn)換

2023-08-18 12:34 作者:Taokaka00  | 我要投稿


不是什么嚴(yán)肅的文字內(nèi)容,就考慮用點(diǎn)廢話的樣子來寫了。

一、如何遇到Sound eXchange (SoX)這個(gè)軟件的:

hifi群友推薦的博客——浴沂詠歸(ZexWoo's Blog):https://zexwoo.blog/

翻找文章的時(shí)候,有兩篇文章提到過SoX:

《重采樣與降位深指南》:https://zexwoo.blog/posts/tutorials/resampling-and-bit-depth-reduction/????里面說用SoX在降采樣率速度快,效果好。

《SACD》:https://zexwoo.blog/posts/knowledge/sacd/

當(dāng)中有一篇名叫《DSD轉(zhuǎn)PCM分析》跳轉(zhuǎn)到國外的博客——@Archimago:https://archimago.blogspot.com/,一番找尋后,里面直接提到SoX這個(gè)軟件很牛,DSD to PCM效果不輸專業(yè)付費(fèi)音頻轉(zhuǎn)換軟件的。(文章標(biāo)題太長我偷懶了):https://archimago.blogspot.com/2021/10/measurements-look-at-dsd-and-using-sox.html

好奇心滿滿的我,開始了一些嘗試。

二、SoX有什么效果

SoX是開源軟件,只有命令行,沒有GUI圖形界面。

SoX的重采樣能力很強(qiáng),轉(zhuǎn)換速度快,聽感上數(shù)據(jù)保留量較好。

SoX同時(shí)可以進(jìn)行抖動(dòng)(Dither)處理,關(guān)于44.1/48kHz采樣率還可以使用一些噪聲整形(Noise?Shaping)處理音頻數(shù)據(jù)。

SoX也可以做一些音效處理,也可以調(diào)整音量(音頻增益或音量歸一化)。

我主要是用來做格式轉(zhuǎn)換和抖動(dòng)處理的,音效方面沒怎么使用過。

介紹文章請看:https://www.jianshu.com/p/be8977de4a6b

三、SoX的使用

SoX的下載:

https://sourceforge.net/projects/sox/files/sox/

按照Archimago博客的推薦,我使用了以下兩個(gè)版本的SoX:

https://audiodigitale.eu/repo/sox/ (AVX、AVX2)

https://www.audiofaidate.org/sw/sox-dsd/ (MSVC、x86_64)

以上兩個(gè)改版支持PCM to DSD,原版只能PCM to PCM。

我使用的是AVX2版本的,具體可以用CPU-Z查看自己的CPU指令集,找適合自己CPU的。

還有一個(gè)小細(xì)節(jié)就是,原版對日文等字符的支持不佳,文件名需要更改才能正常運(yùn)行。但在改版上就沒有這個(gè)問題。
SoX的使用(全局環(huán)境的部署):參照該文章部署SoX全局環(huán)境

簡單點(diǎn)說,將SoX解壓對應(yīng)位置,將文件夾對應(yīng)路徑加入系統(tǒng)Path環(huán)境中,就完成了。

SoX的使用命令:

SoX命令原則為:sox [gopts] [[fopts] infile]... [fopts] outfile [effect [effopt]]


SoX命令介紹:

[gopts]:全局選項(xiàng),用于配置全局設(shè)置,如全局緩沖區(qū)大小、多線程等。

[[fopts] infile]...:輸入文件和相關(guān)選項(xiàng),[fopts]代表文件選項(xiàng),可以配置輸入文件的格式、采樣率等。infile代表輸入文件的路徑。

[fopts] outfile:輸出文件和相關(guān)選項(xiàng),[fopts]代表文件選項(xiàng),可以配置輸出文件的格式、采樣率等。outfile代表輸出文件的路徑。

[effect [effopt]]:SoX支持多種效果和效果選項(xiàng),可以對音頻進(jìn)行處理、轉(zhuǎn)換和調(diào)整。effect代表效果的名稱,effopt代表效果的選項(xiàng)。


一個(gè)例子:sox -S -V3 -D -G --buffer 4194304 --multi-threaded <輸入文件> -r 176.4k -b 32 -f? <輸出文件>

從左到右為:顯示轉(zhuǎn)換狀態(tài),不進(jìn)行抖動(dòng),自動(dòng)音量增益,內(nèi)存緩存為4G,啟用多線程,<輸入文件>,輸出比特率176.4K,輸出位深32位,浮點(diǎn),<輸出文件>

具體命令如下:

-r 輸出比特率,即44.1k/88.2k/176.4k/352.8k/705.6k/1411.2k(DSD轉(zhuǎn)PCM請嚴(yán)格按照44.1k計(jì)算)

-b 輸出位深,即16/24/32 (-f)。

-f 與輸出位深-b結(jié)合使用,采用浮點(diǎn)方式輸出。

DSD to PCM建議轉(zhuǎn)換參數(shù):DSD to PCM建議轉(zhuǎn)換參數(shù)

DSD64????88.2k/24

DSD128????88.2&176.4k/24

DSD256????176.4/352.8k/24

[全局]-G(--guard),即“gain -h+gain -r”,自動(dòng)計(jì)算音量增益,防止頻率被削波。

[全局]-S(--show-progress),顯示轉(zhuǎn)換狀態(tài)。默認(rèn)是隱藏的,建議加入此命令。

[全局]-D(--no-dither),即不進(jìn)行抖動(dòng)(不進(jìn)行量化失真)。

[全局]-V[1-6],顯示SoX運(yùn)行狀態(tài)。1只顯示錯(cuò)誤信息,2顯示警告,3顯示細(xì)節(jié),4-6屬于調(diào)試級別。建議加入此命令。(注意要寫成【-V3】,而非【-V 3】)

[全局]--buffer 任意數(shù)字,單位為千字節(jié)(KB)。即手動(dòng)設(shè)定使用多少內(nèi)存容量用于轉(zhuǎn)換,默認(rèn)8192KB(8MB)。與啟用多線程--multi-threaded結(jié)合使用。

(1G=1048576、2G=2097152、4G=4194304、10G=10485760、20G=20971520)

[全局]--multi-threaded,即啟用多線程。


SoX的批處理文件:

感謝ChatGPT編寫的批處理,這下終于可以解決輸入命令問題了:

舉個(gè)例子:將音頻文件轉(zhuǎn)換成88.2k/24?wav文件,轉(zhuǎn)換過程中不進(jìn)行抖動(dòng)處理。

@echo off

setlocal enabledelayedexpansion


for %%F in (*.wav *.flac *.w64 *.dff *.dsf) do (

? ? set "filename=%%~nF"

? ? set "output_filename=!filename! (88.2+24+禁dither).wav"

? ? sox -S -D -V3 --buffer 4194304 --multi-threaded "%%F" -r 88.2k -b 24 "!output_filename!"?


)

endlocal

【for %%F in (*.wav *.flac *.w64 *.dff *.dsf) do (】

%%F in?后面可以加入想要的格式,例如(*.wav *.flac *.w64 *.dff *.dsf)

【output_filename=!filename! (88.2+24+禁dither).wav】

!filename!后面可以加入想要的內(nèi)容,!filename!前面加入想要的內(nèi)容似乎會(huì)報(bào)錯(cuò)。

!filename! (88.2+24+禁dither).wav”,.wav這里可以修改為需要的格式,例如(.wav/.flac/.w64)

【sox -S -D -V3 --buffer 4194304 --multi-threaded "%%F" -r 88.2k -b 24 "!output_filename!"】

這部分是具體的命令了,請參照上文來填寫。

自己整理的批處理內(nèi)容

以上的命令全部打包上傳在123網(wǎng)盤了:

https://www.123pan.com/s/Fm0qVv-NGIl.html提取碼:KbS0

使用Sound eXchange (SoX)進(jìn)行DSD、PCM格式轉(zhuǎn)換的評論 (共 條)

分享到微博請遵守國家法律
威海市| 沾益县| 柳江县| 乐至县| 沾益县| 新建县| 鄂托克旗| 隆昌县| 始兴县| 大田县| 蓝田县| 徐汇区| 阿勒泰市| 肥城市| 庆安县| 麦盖提县| 滁州市| 调兵山市| 荃湾区| 平安县| 通河县| 息烽县| 凤城市| 北流市| 新民市| 化州市| 扎囊县| 启东市| 松桃| 仁化县| 阜康市| 花垣县| 华池县| 如东县| 开封县| 洛扎县| 澄城县| 奈曼旗| 黑水县| 建平县| 茶陵县|