Re: [討論] bit error 小測試

作者: Oswyn (Oswyn)   2020-07-14 03:54:31
※ 引述《nm662644 (六月的伊利)》之銘言:
: 之前看到板上先進的討論有感而發,便用matlab模擬bit error的情況作了幾個檔案
: 模擬方式為對隨機的取樣點(0~3秒內)各聲道中隨機挑1bit翻轉。
: 檔案內有九個音訊檔,第一個是原始檔。
: 第二個到第九個為經模擬的檔案,然而有個檔案與原始檔無異。
: https://reurl.cc/ZO6Mk6
: 還請各位先進賜教
: #10:20小更新一下檔案,除原始檔長度以外無任何異動
一般 DAC 發現傳輸錯誤(各種原因),造成奇偶檢測不過關的狀況
通常 DAC 會沿用最後一次的正常數據,而不是直接使用有問題的數據
因為實時流在發生錯時無法重傳,沿用最後一次的正常數據傷害小
所以傳輸錯誤多半不會有上述實驗的狀況發生
https://imgur.com/uISIPwT
截個 AKM AK4113 的文檔內容示例
(Audio) Frame=音頻幀,由兩個 sub-frame(2 channel) 組成
sub-frame 發生 Parity Error, Bi-phase Error or Frame Length Error 時
AK4113 會用 last normal sub-frame data 繼續輸出直到錯誤解除
也就是"插入"最後一個沒有出錯的值
但也有的 DAC 在收到連續錯誤時會直接靜音(不輸出),總之怎麼應對傳輸錯誤各家不同
不過應該不太有 DAC 會直出錯誤數據就是了,因為這多半會很糟,比重複插入還糟
但 DAC 本身也有可能產生 Offset & Gain Error 等錯誤,有的廠商會在 Spec 中標示
其錯誤率
補充
DAC 常用的處理錯誤方式"插入/跳過"
https://imgur.com/4HWtZMU
圖1:要傳輸的原始信號
https://imgur.com/v6ogFLh
圖2:插入示例1
https://imgur.com/0z7uqMv
圖3:插入示例2
https://imgur.com/uJthghq
圖4:跳過示例1
https://imgur.com/rFVNLPy
圖5:跳過示例2
作者各舉了不明顯與明顯的例子,詳細解答請參照下方原始 link (英文)
https://bit.ly/2WgR5Oz
Typical Errors in Digital Audio: Part 5 – What time is it there?
@earfluff and eyecandy
再補充一下
由於現在 DAC 幾乎都仰賴 Overampling,所以圖3的狀況會產生類似過衝的結果
所以圖3比起圖2除了看起來明顯外,聽起來會更明顯
※ 手殘眼殘打錯
錯誤的採樣點發生在波形的什麼位置,是會影響結果聽起來明不明顯的
作者: yohsiatai (yohsiahsuan)   2020-07-14 04:21:00
推~
作者: djboy (雞尾酒)   2020-07-14 06:46:00
認真讀書,推。
作者: iamala (it depends)   2020-07-14 06:57:00
感謝分享
作者: nm662644 (六月的伊利)   2020-07-14 07:52:00
其實我的本意是討論訊源端的情況。另外single parity bit應該沒辦法處理超過一個位元翻轉的情況?
作者: goldie (阿良)   2020-07-14 08:33:00
推直接看 DAC 晶片的 datasheet感謝分享,學習了!若發生偶數數量 bit 錯誤,1 bit 的 parity bit 應該是無能為力偵側出這種錯誤了!
作者: martinlin77 (mar)   2020-07-14 09:02:00
我文組請問假如是傳一串01 的數字,1個bit是0變1嗎
作者: djboy (雞尾酒)   2020-07-14 09:06:00
這讓我想起一句老話:AV永遠不sync,但是AV也永遠sync。
作者: justagame (各種加班)   2020-07-14 09:08:00
@martinlin77 是喔欸不對 問底層的話應該還有無法辨識吧...
作者: martinlin77 (mar)   2020-07-14 09:20:00
一般電腦的資料 0變成1 真的可以嗎?
作者: justagame (各種加班)   2020-07-14 09:24:00
電腦是經過層層糾錯上來維持正確性的 電路非常底層 /_\
作者: nm662644 (六月的伊利)   2020-07-14 09:46:00
的確要發生如此的壞情況的機率非常低,我只是好奇這種巧合是如何作用的聽感上的?
作者: justagame (各種加班)   2020-07-14 10:05:00
我只是在回'為什麼電腦資料可以出錯'的問題而已 XD
作者: biaw (blue note)   2020-07-14 10:07:00
其實你的示意圖有點不精確 一個frame通常都有一些長度 例如跨了8ms之類的 所以裡面已經有很多sample了 也就是說如果是高頻的話一個frame裡面已經有好幾個cycle了 我想重複上一個frame的意義是這麼短的時間區間裡面 音訊的頻率組成本來就不該有太大的變化吧 不管是語音或是各種音樂
作者: m9172250 (bahpomet)   2020-07-14 10:25:00
01正確跟聽感差異好像很多人一直把這兩個綁在一起去想
作者: biaw (blue note)   2020-07-14 10:43:00
不是因為最有道理 而是因為那是最容易想像的吧
作者: krrvincent (krr)   2020-07-14 11:03:00
現在不就在討論聽感差異的來源嗎
作者: djboy (雞尾酒)   2020-07-14 11:29:00
這網站作者真的強,B&Q任職,AES學術研討會。他對 jitter的的文章也很有趣,下面是結論的連結。https://reurl.cc/ZO6dWa 。而且他做了很多實際的測試,像是用B&O的wireless powerlink無干擾下 24bit/48Khz/24小時/11天,都沒有1bit錯。
作者: nm662644 (六月的伊利)   2020-07-14 11:47:00
就我自己的印象在合乎規範的器材下,data jitter的確上千小時都可能不會發生一次
作者: djboy (雞尾酒)   2020-07-14 11:48:00
最特別的,是他認為,即使是同步傳輸(即DAC的clock是受到source端影響),也是不重要的(或是影響極微小)。前題是:此一source端的影響要在標準之內。至於標準是啥,我還沒有看到;文章實在太多了~~~Oswyn大大,就麻煩了 xd
作者: nm662644 (六月的伊利)   2020-07-14 11:52:00
幾乎絕大部分的DAC都有PLL,我想的確是影響不大。
作者: lll156k1529 (吃雞腿)   2020-07-14 11:54:00
推專業
作者: vericool   2020-07-14 13:07:00
作者: StNeverRush (circlehuang)   2020-07-14 15:11:00
推推 學習學習
作者: martinlin77 (mar)   2020-07-14 15:37:00
推推推
作者: goldie (阿良)   2020-07-14 17:43:00
推推
作者: jim543000 (玄黃無極)   2020-07-14 21:06:00
可是有114ee不懂什麼是阻抗匹配 程度真的很差
作者: chickengod (雞大俠)   2020-07-14 22:49:00
作者: bh2142 (瀕臨絕種的Emacser)   2020-07-14 23:12:00
作為114CS我感到一點點的羞恥

Links booklink

Contact Us: admin [ a t ] ucptt.com