Nullpinter

Nullpinter

Across the Great Wall we can reach every corner in the world.
github

自動化處理Amazon Music文件MD5不一致問題

當你從某些特殊渠道拿到 Amazon Music 的音頻文件的時候,你會發現其 Hi-Res FLAC 文件 md5 與其他平台售賣版本不同,這是因為其前面有空採樣。因此只需去除空採樣即可達到 "Bit Perfect"。故寫這一腳本自動化處理具有錯誤 md5 的文件。

# 本代碼根據Apache 2.0許可證發布。
# 作者:nptr
$files = Get-ChildItem -Recurse -Filter *.flac | Select-Object FullName, BaseName
$files | ForEach-Object {
    $fullName = $_.FullName
    $fileName = $_.BaseName
    Write-Host 處理中 $fileName
    $flag = metaflac --show-tag=BP $fullName
    $res = metaflac --show-sample-rate $fullName
    $skip = 0
    switch ($res) {
        44100 { $skip = 286 }
        48000 { $skip = 312 }
        96000 { $skip = 624 }
        192000 { $skip = 1248 }
        Default { $skip = 0 }
    }
    if ($flag -ne "BP=1") {
        Write-Host SampleRate: $($res / 1000)kHz,跳過 $skip
        if ($skip -ne 0) {
            flac -8 --skip=$skip -f $fullName
            metaflac --set-tag=BP=1 $fullName
        }
    }
    else {
        Write-Host 跳過 $fileName
    }
}

用到了 PowerShell7 以及 metaflac,相信聰明的你能夠解決這兩個問題。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。