Mi egész típusú használják MP3 adatkereteit?

szavazat
0

Írok egy univerzális olvasó program különböző bináris formátumot Rust részeként egy személyes projekt. Elkezdtem kutatja a fájl szerkezetét MP3 fájlokat. Ahogy én látom, az MP3 fájl szerkezete áll fejléc és az adatok kereteket. Minden fejléc váz meta információt az eljárás adatkeretben. Itt van egy rajz , és egy lista a megengedett értékek MP3 header keretek általam hivatkozik.

Megértem a formátum az MP3 fejléc. Saját zavart, vagy az információ hiánya, körülveszi MP3 adatkereteit. Nem úgy tűnik, hogy megtalálja a forrást, amely meghatározza, hogy milyen egész típusú minták vannak kódolva, mint az adatok keret része egy MP3 fájlt. Vajon 8 bites, 16 bites, 32 bites, aláírt, független, stb?

A legjobb tudok gondolni az, hogy egy kombinációja a mintavételi frekvencia frekvencia és bitráta számítja ki, hogy minden egyes minta méretét kell. Ez azonban nem határozza meg, ha minden minta egy aláírt vagy előjel nélküli egész.

Nem próbálom dekódolni ezeket a fájlokat, csak próbálom értelmezni őket. Már volt egy meglepően nehéz ezeket az információkat. Bármilyen információ vagy hasznos valaki tud nyújtani lenne nagy népszerűségnek örvend.

A kérdést 13/01/2020 22:00
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
2

Bár ez nem kapcsolódik .mp3 önmagában nem potenciálisan néhány hasznos információt Will C. Pirkle könyvének tervezése audio effekt plugin a C ++ .

Azt tárgyalja a mód, ahogyan a .wav audio formátum tárolja ezt az információt. Használ aláírt egész kezdve -32.768 a 32.767. Ez jelenti egy sor 2 ^ 16 bipoláris formátumban, ahol a kitevőt megfelel a bit-mélység (leggyakrabban 16 vagy 24).

A másik fontos dolog megjegyezni, hogy míg a fázis inverzió egy közös dolog a sok audio alkalmazások, nincs megfelelő egész szám megfordításával -32.768. Ennek ellensúlyozására is gyakori, hogy kezelje az értéke -32.768 -32.767 mint. Ez csak akkor számít, bár ha használja a 0 értéket a feldolgozás, amely legtöbbször ez a helyzet. Egyébként lehetne terjeszteni a felső határ 32.768.

Ő nem azt állítják, hogy ez sokkal gyakoribb a hangfeldolgozó alkalmazások foglalkozni lebegőpontos számok sem között 0.0f és 1.0f vagy -1.0f és 1.0f. Ennek az az oka, hogy mivel a összeadás és a szorzás pedig közös műveleteket DSP, elkerüljük túlcsorduló, hogy a tartomány, ha használjuk ezeket a lebegő pontokat. A bipoláris integer formátumban, ez túl könnyű megtalálni a két számot, ami egy termék vagy összeget ezen a tartományon kívül. Tartományban -1.0f hogy 1.0f bármely két szám mindig olyan terméket eredményez, ami még mindig az e tartományon belül. Sajnos, még mindig kívül elővigyázatosságot igényel, de mi ...

Sajnálom, nincs több információra .mp3s konkrétan, de talán ez még mindig lehetne éleslátó.

Sok szerencsét!

Válaszolt 14/01/2020 18:02
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more