PTT推薦

Re: [閒聊] 電腦的獨立聲霸卡怎麼不是主流了?

看板C_Chat標題Re: [閒聊] 電腦的獨立聲霸卡怎麼不是主流了?作者
Oswyn
(Oswyn)
時間推噓24 推:24 噓:0 →:10

: 推 twodahsk: 2b實在是太明顯了,好比YT的首播跟實際影片音質就不一樣 06/04 14:44: → twodahsk: 我好幾次聽YT的THE FIRST TAKE首播就會碰到某些細節很不 06/04 14:45: → twodahsk: 明顯的問題...聽後來放出的實際影片就不會 06/04 14:46: → twodahsk: 不過YT首播的好像是144?不是很懂,我只講講自己的經驗 06/04 14:48
4滴,不過直播應該是 140
這個原因很複雜,從我這個外人從外部觀察
主因是 YouTube 工程師懂寫程式,但並沒有深入了解數據、編碼、音質間的交互影響

原先水管只是用戶上傳影片,觀眾播放影片的平台,Audio/Video 問題相對單純
在導入直播(Live Streaming)後問題變複雜了
但水管在 Audio 這塊只是以水管邏輯簡單處理,不如 Video 用心

※ 以下內容主要只關注 Audio coding format/encoding 問題,忽略 Video...
只看 HD↑的預設 Stereo audio format,不管低解析 Video's 低碼率 audio
眾知,44.1 kHz 是聲音數位化後的折衷選擇,配影片還是 48 kHz 比較好

經過初期,YouTube Video 的預設 Audio 編碼最終選擇了
48 kHz Opus (VBR)<=160 Kbpsopus(251)

但引進直播後,直播 Live Stream 的 Audio 編碼預設卻一國兩制選擇了
44.1 kHz AAC(LC) 128 Kbpsaac(140)

這有一些好處,AAC 的 Real-time encoding low-latency
這也是為什麼藍牙耳機一般都支援AAC
44.1 kHz 也比 48 kHz 數據少,能更快處理、更快傳送,這同樣也能減少直播延遲
從旁觀者的角度來看,水管應該是為了壓低 min-直播延遲才做了這個怪選擇

但這造成有兩種預設播放格式

BUT Live Stream 的實況直播完後,能被轉成 Archive live streams 回放
影片勢上傳的 Video(含預上傳)現在也能開啟為 Live 變成 Streaming 播放

所以一般來說
直播主實況直播完 aac(140) 會被轉成 opus(251) 及其它格式的直播存檔
影片勢上傳完檔也會被轉成預設的 opus(251)aac(140) 及其它格式

影響很大的一點是上傳的音質
有損 Encoder 基本上都是,餵越精確的數據,計算出越優的結果
輸入無損或高碼率的數據,會得出較佳的結果
無損&高碼率數據,包含更多的S訊號,較少的N噪聲D失真
低碼率包含更多的失真與噪聲,這些失真與噪聲會被當成輸入訊號進行計算


THE FIRST TAKE 應該都是預先上傳,開啟預定倒數首播
所以首播倒數完,開始播放的音聲格式會是 aac(140) 128 Kbps
因為首播算是直播 不管是否檔已上傳都是算直播,預設會選 aac(140) 128 Kbps 播放
首播離線或等一會F5更新後,才打開播放的會是 opus(251) 160 Kbps 因為變成是播影片

不管上傳者或直播者,上傳或直播到水管的音質再好
Live&首播 模式的預設就是 aac(140) 128 Kbps,有沒有道理?水管邏輯就是如此

所以影片上傳音質佳的話,首播會是殘廢的,要重播的音質才會正常
這也解釋去年星街TFT之亂除音源出問題外,為什有些人覺得重新播放會跟首播聽來不同

※ 線上追番也是同樣

●1A 木棉花在水管的首播 aac(140) 128 Kbps
https://i.imgur.com/sf3Ro9Z.png

圖 電腦的獨立聲霸卡怎麼不是主流了?

○1B 同集差不多時間點的播放 opus(251) 160 Kbps
https://i.imgur.com/n4LVeQ6.png
圖 電腦的獨立聲霸卡怎麼不是主流了?

●2A 另一個例子的首播 aac(140) 128 Kbps
https://i.imgur.com/WLe3Do3.png
圖 電腦的獨立聲霸卡怎麼不是主流了?
○2B 對照 opus(251) 160 Kbps
https://i.imgur.com/TnVsgcd.png
圖 電腦的獨立聲霸卡怎麼不是主流了?

1B vs ○2B 明顯壓縮品質不同,opus(251) 160 Kbps 砍掉了 20 kHz 以上的數據
但 ○1B 保留了更多底噪(數據完整性), 16 kHz 以下的底噪也更一致

所以雖然 aac(140) 128 Kbps 砍掉了 16 kHz 以上的數據
但 ●1A 16 kHz 以下的完整性明顯比 ●2A 要好很多(有非常多不平順的塊狀)



不管 TFT 或是木棉花新番,上面都是上傳的檔案品質還不錯的例子
只要上傳的是無損高碼率有損,Sample rate 是 44.1、48 or 96 kHz 都不會是大問題

但糟糕的狀況是上傳或直播的音質不佳(碼率低)
一般影響最大的是直播,因為直播的預設是 aac(140) 128 Kbps 碼率很低

●兔兔族長今天的直播 aac(140) 128 Kbps
https://i.imgur.com/Jr3CvX7.png

圖 電腦的獨立聲霸卡怎麼不是主流了?
16 kHz 以上空空,以下很扎實
所以族長上傳的音質應該不差,但被水管的碼率限制給砍掉了

○東巴昨天的存檔 opus(251) 160 Kbps
https://i.imgur.com/EypTjpt.png

圖 電腦的獨立聲霸卡怎麼不是主流了?
16~20 kHz 看起來有東西,但都是垃圾(16 kHz 以下也有但已經跟訊號混在一起)
可明顯分辨 16 kHz 處斷頭,以上的東西跟以下完全沒有連續性與一體性

這些都是跟訊號相關的失真,沒有包含聲音、樂理相關的訊號
訊號強、這些失真就強,訊號弱、這些失真就跟著弱,跟著跳的 Aliasing Artifact

WHY? 在觀察、比對過無數的 YouTube Live & Archive 的音頻資料

個人無責任推測 Archive 轉檔的 SourceLive 的 aac(140) 128 Kbps 存檔
而不是直播者的原始上傳數據,也不知道原始上傳音頻有沒有留檔

從外部看最大的可能是,實況直播下線後 YouTube 會在在後台立刻開始批次轉檔
AAC to Opus encoder,內建的 SRC(Sample rate Converter) 應該是低音質的效率型
在 Source 低碼率的狀況下,低品質的 44.1 to 48 kHz SRC 加上轉碼
產生了一層貫通全頻的失真噪聲

所以 Live Streaming 跟 TFT 的狀況相反,重播的 Archive 音質變差
但要說嚴重也還好,峰值 -85 dB 上下,平均 -100 dB 左右
聆聽環境跟設備不錯影響才會明顯,不然這些東西並不突出
只是這個問題也能發現,YouTube 對音質這塊沒什在關心,有聲不會嗶嗶啵啵就及格了

不過如果是烤肉面的話,個人會建議直播的音檔最好抓 aac(140) 128 Kbps
而不是帳面碼率(混入失真)比較高的 opus(251) 160 Kbps


追實況的視聽者 追存檔&沒追到實況直播的視聽者
編碼轉檔
直播勢 Live ──→ aac(140) 128 Kbps ─→ opus(251) 160 Kbps(存檔在直播區)
※ aac(140) to opus(251) 轉爛
追首播的視聽者
轉檔
影片勢上傳檔案─→ aac(140) 128 Kbps 一般&沒追到實況首播的視聽者
轉檔
└────────────→ opus(251) 160 Kbps(存檔在影片區)
※ 通常音質比首播好

--
人間五十年、化天のうちを比ぶれば、夢幻の如くなり
^,,,^ 一度生を享け、滅せぬもののあるべきか
(ω)\m/

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.208.68 (臺灣)
PTT 網址

devidevi06/04 21:09先推,不然被笑說看不懂,我也是這麼想的

cjejvm06/04 21:10看不懂但我大受震撼,原來直播的音質這麼差哦

128 Kbps 就真的鳥鳥,寧願支援 8K Ultra HD 也不願意加一點在音質

sasmwh56106/04 21:11我也是這麼想的

palapalanhu06/04 21:18看不懂

kuninaka06/04 21:18推專業文

logstar1106/04 21:20所以同樣都是預上傳的直播 yt後台就是把所有codec都先

logstar1106/04 21:20壓好 然後再根據直播或是一般狀況給你type嗎?

logstar1106/04 21:20原本看完文章誤以為是140先壓一次 結束後存成251時又壓

把它分成

真的直播

,跟預上傳後

再開直播

兩種方式會比較好分 但不管什麼方式,只要是

直播模式

就會是 140 為預設播放 而預上傳是從上傳檔再轉成 YouTube 需要的各種格式 所以上傳的品質好結果就不會太差 而直播的存檔,怎麼看都是從直播的 140 存檔轉的,所以品質好不了

logstar1106/04 21:30好 感謝 另外想問 像真的直播這種原檔就很差的狀況

logstar1106/04 21:30ytdlp這類的預設best參數 有辦法判斷到這些嗎?

沒辦法,youtube-dl 的 best 會選碼率高的

(只看格式)

phoenixzro06/04 21:32理解成直播、首播和存檔會不會比較好分

也可以 因為直播首播都是 140,一般播放跟存檔是 251,主要預設只有這兩種 所以我才從格式去分

emptie06/04 21:32學到了

labbat06/04 21:39不要拿youtube的索引來講好不,那都是會變動的

Audio format 很少變動的啦,251、140 已經很久了

tomalex06/04 21:42(′・ω・‵) 懶人包是看重播比較好嗎

如果是歌的影片像是 MV、TFT 之類的 也就是點那個頻道最後會存在

影片區

的,重播的音質一般會比首播的 AAC 好

spfy06/04 21:46是換個平價的耳機當作沒這回事 看直播一起聊 (′‧ω‧‵)

extemjin06/04 21:47所以抓水管的影片音訊要抓opus比較好?

存檔在

直播區

的,aac 140 會比較乾淨

tomalex06/04 21:48(′・ω・‵) 主要是問 像是動畫頻道這種 我都看隔天的

tomalex06/04 21:48平常歌的影片應該都是聽普通上傳的

普通上傳通常都是

影片區

像木棉花 所以只想看一遍,又沒要跟著刷字幕就沒必要追首播

logstar1106/04 21:48了解 感謝

roseritter06/04 22:00

abadjoke06/04 22:19果然跟我想的一樣

※ 在本文末補個示意圖

dsa371706/04 22:35聲音的部分太複雜了,128跟320都有分不出來的情況

dsa371706/04 22:35與其去處理那個不如抓個可以接受的下限就好

現在的問題就是下限抓太爛 有損的期望值會是 256 Kbps,這是大多數人分不出跟無損差異的碼率 如果直播至少是 160 Kbps 就算了,但目前是 128 Kbps 有點爛 YT 128 Kbps 的 encoder preset 為了碼率 low-pass filter 設在 16 kHz Video 都上看 4K、8K 了,以現今的標準來看實在有點寒酸

chang1248w06/04 23:34用1080p以上的用戶多,還是用破爛發聲器的用戶多

chang1248w06/04 23:34此誠難題

其實提昇音質也就幾十最多一百初 Kbps 跟影片比起來根本 negligible 也不是什麼巨大成本(攤手 而且直播的存檔是被轉爛的 160 Kbps 還不如直接放 128 Kbps,也不讓人手動選真的是邏輯死去 害我看個 3D Live 重播還要開 foobar 才能選音源

dogluckyno106/04 23:51推推

yys31006/04 23:59

PS. 2020-03-01 時 Opus 251 的直播存檔 20 kHz 以下都還是有效

https://www.youtube.com/watch?v=FZnG1t34wCs

2020-10-19 年底的 Opus 251 直播存檔就變成 16 kHz 以上都是失真

https://www.youtube.com/watch?v=JNmmnB4bP0M

rick91706/05 03:29推專業文

zasx15963206/05 04:38趕快推以免被發現看不懂

skylightwen06/05 06:01

A5Watamate06/05 10:44懶人包:存檔音質較高 快去刷播放次數

Streaming Archive 的音質比較差哦(^_-)-☆

weibo77606/05 12:51好凶狠的專業文

twodahsk06/05 13:23嘩,我只是說說自己經驗,沒想到有真強者回文XDDD

twodahsk06/05 13:23太感謝了

※ 編輯: Oswyn (220.136.208.68 臺灣), 06/05/2024 17:32:54