Na LAME som natrafil poΦas m⌠jho h╛adania po Internete. Zaujφmali ma kompresnΘ programy pre mp3 a mojimi kritΘriami bola kvalita skomprimovanΘho zvuku a bezplatnΘ pou₧φvanie; plati¥ $500 a viac za profesionßlne programy, to je na moje archφvne ·Φely prive╛a. Doposia╛ som pou₧φval Bladeenc, ktor² je sφce zadarmo, ale v²sledn² zvuk bol zlej kvality, a to aj pri ve╛mi vysok²ch bitrate. PoΦas h╛adania som r²chlo objavil LAME, a ke∩₧e som sa chcel dozvedie¥ viac, preΦφtal som si o ≥om zaujφmavΘ informßcie.
MPEG layer 3 kompresn² engine LAME asi poznß mnoho z vßs kv⌠li jeho r²chlosti, vysokej kvalite v²slednΘho zvuku a najmΣ v∩aka dostupnosti -je celkom zadarmo, a to dokonca legßlne zadarmo :o) Ve╛a u₧φvate╛ov ho pou₧φva celkom samozrejme i bez toho, aby o ≥om v⌠bec vedeli. PreΦo vÜak ob╛·benß hackerskß sluΦka v jeho nßzve tvrdφ, ₧e L.AM.E. nie je mp3 enkodΘr? ╚o a kto sa skr²va za t²mto kvalitn²m kusom k≤du?
LAME zaΦφnalo ako GPL patch voΦi demonÜtraΦnΘmu zdrojßku ISO dist10, aby sa vyhlo prßvnym problΘmom voΦi dr₧ite╛ovi patentu, Fraunhoffer Gesselschaft. Nebol to ani z∩aleka pou₧ite╛n² mp3 kompresor, nemalo zmysel ho ani kompilova¥. V mßji 2000 boli odstrßnenΘ poslednΘ zvyÜky p⌠vodnΘho ISO k≤du a LAME sa stal plne LGPL zdrojov²m k≤dom pre mp3 kompresor. LAME vÜak naozaj nie je mp3 kompresor. Mo₧no vßs to prekvapφ, ale LAME je v skutoΦnosti v²ukovß pom⌠cka sl·₧iaca ako ukß₧ka mp3 k≤dovania. Je to open-source projekt s cie╛om vytvori¥ lepÜφ model na bßze opensource, zahα≥aj·ci vylepÜen· psychoakustiku, noise shaping i r²chlos¥. Je to sk⌠r intelektußlny a programßtorsk² projekt, ktor² nie je urΦen² komuko╛vek a pre masovΘ Üφrenie; distribuuje sa iba ako zdrojov² k≤d, Φi₧e potrebujete ovlßda¥ C kompiler, ak z neho chcete zφska¥ spustite╛n² program. Napriek tomu sa vÜak jeho skompilovanß podoba vyskytuje u mno₧stva programov a teÜφ sa ve╛kej ob╛ube.
Prvotn²m zßkladom ·spechu LAME, polo₧en²m v roku 1999, je psychoakustick² model gpsycho, vyvinut² ako dokonalejÜia nßhrada p⌠vodnΘho ISO modelu. Nesk⌠r bol implementovan² eÜte vyspelejÜφ model od chlapφka menom Naoki Shibata (dostupn² parametrom -nspsytune). Prßve v dobre navrhnutom modeli je nutn² predpoklad ·speÜnΘho zvlßdnutia pokroΦil²ch technφk, ako VBR, ABR a joint stereo (JS). Po vyrieÜenφ modelu sa zaΦali snahy o vylepÜenie programovej Φasti demonÜtraΦnΘho enkodΘra. V prvom rade snahy a vysok· kvalitu zvuku, v druhom rade o optimßlnu r²chlos¥ kompresie. Boli vyvinutΘ novΘ postupy zaobchßdzania s variabiln²m tokom (VBR), ktor²ch implementßcia v LAME priniesla asi prv² pou₧ite╛n² VBR -ve╛a predt²m dostupn²ch enkodΘrov produkovala pri variabilnom toku takmer nepou₧ite╛nΘ v²sledky (napr.Xing). Implementßcia VBR v LAME je na vynikaj·cej ·rovni a je je to jedna z najsilnejÜφch strßnok LAME, preto₧e umo₧≥uje ve╛mi kvalitn² zvuk pri priemerne asi 170kbps. Aj pri ni₧Üφch tokoch funguje VBR korektne a v∩aka optimßlnym psychoakustick²m krivkßm jeho prφtomnos¥ ani nepostrehnete. LAME rozliÜuje dva parametre kvality. Prv²m je absol·tny parameter Q, ktor² mß vplyv na zlo₧itos¥ algoritmov a teda na r²chlos¥ kompresie, ale nie na ve╛kos¥ s·boru. Ak mßte na kompresiu dos¥ Φasu, oplatφ sa pou₧i¥ najvyÜÜiu kvalitu -LAME je i tak dos¥ r²chly. Q zahα≥a hodnoty 0 a₧ 9 kde 0 znamenß najvyÜÜiu kvalitu. Pri VBR poznß LAME eÜte osobitn² parameter VBR kvality, oznaΦovan² V, ktor² zase rozhoduje len o prφpustnej hladine skreslenia pri zvolenej psychoakustickej krivke, Φi₧e udßva nßroΦnos¥ a ovplyv≥uje v prvom rade toky, ktorΘ si LAME bude vybera¥. Mß teda zßsadn² vplyv na ve╛kos¥ s·boru. VBR kvalita mß takisto stupne 0 a₧ 9, priΦom 9 znamenß najvΣΦÜie prφpustnΘ skreslenie, Φi₧e najni₧Üφ tok a opΣ¥ najni₧Üiu kvalitu (ako pri Q). V=0 udßva najvyÜÜiu kvalitu, kedy sa priemern² tok m⌠₧e vyÜplha¥ i na 256kbps a vyÜÜie, tvorcovia vÜak udßvaj·, ₧e VBR s priemerom 256kbps neznamenß kvalitnejÜφ zvuk ne₧ konÜtantn² tok (CBR) 256kbps. Svoju ·lohu tu zohrßva tzv.bit reservoir a z tohto d⌠vodu nemß zmysel dßva¥ V=0, nanajv²Ü V=1. Tvorcovia to myslia vß₧ne a nastavenie High Quality (-h) znamenß to istΘ ako V=2.
Pri VBR je samozrejme mo₧nΘ eÜte ohraniΦi¥ najni₧Üφ a najvyÜÜφ prφpustn² tok. V t²chto dvoch parametroch je vhodnΘ necha¥ LAME Φo najvΣΦÜiu vo╛nos¥, preto₧e tieto okrajovΘ hodnoty bud· volenΘ len vo chvφ╛ach, ke∩ to LAME bude pova₧ova¥ za skutoΦne potrebnΘ (aby splnil nßroky danΘ parametrom V). Ak chceme dosiahnu¥ menÜφ s·bor, radÜej treba ovplyv≥ova¥ VBR kvalitu a inΘ parametre, ne₧ ohraniΦenia prφpustn²ch tokov. Pri v²bere tokov treba dba¥ aj na to, aby stanovenß spodnß a hornß hranica VBR spolu so vzorkovacou frekvenciou nahrßvky spadali do prφpustn²ch hodn⌠t aspo≥ jednej verzie MPEG -v opaΦnom prφpade LAME vyhlßsi chybu a skonΦφ. PrφpustnΘ hodnoty s· uvedenΘ v tabulce:
Verze |
MPEG-1 Layer 3 |
MPEG-2 Layer 3 |
MPEG-2.5 Layer 3 |
Frekvence (kHz) |
32, 48, 44.1 |
16, 24, 22.05 |
8, 12, 11.025 |
Nitrßte (kbps) |
32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320 |
8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 144, 160 |
RozÜφrenφm funkΦnosti VBR je ABR (average bitrate). K²m u VBR rozhoduj· Φisto parametre kvality VBR a ∩alÜie doplnkovΘ parametre, ak² bude v²sledn² tok, u ABR je mo₧nΘ napevno stanovi¥ ₧iadan² priemern² tok a LAME musφ poΦas k≤dovania odhadn·¥, ako mß s pridelenou kapacitou zaobchßdza¥ tak, aby sa pokia╛ mo₧no voÜiel do stanovenΘho priemeru. Dosiahnut² tok sa sφce mßlokedy presne zhoduje so zadan²m, ale vΣΦÜinou je aspo≥ blφzko. Ak nevyhovuje, pom⌠₧e zada¥ extrΘmnejÜφ tok. Naprφklad ak sme chceli 128kbps a v²sledok mß ABR 136kbps, tak zadßme tentoraz 120 kbps a uvidφme, ako si s t²m LAME poradφ. ABR je sk⌠r vo╛ba pre ve╛mi nφzke toky (okolo 100 kbps a ni₧Üie), kedy u₧ ani V hodnoty 9 nedßva dostatoΦne nφzky tok. Kompresia je pomalÜia ne₧ pri kvalitou riadenom VBR, preto₧e LAME sa musφ zaobera¥ aj odhadovanφm toku. Pri ve╛mi nφzkych tokoch (pod 80kbps) sa u₧ Φasto oplatφ necha¥ nahrßvku aj prevzorkova¥ na ni₧Üiu vzorkovaciu frekvenciu, napr.32 alebo 22.05kHz prφpadne previes¥ ju zo stereo na mono re₧im. Dosiahnutß (ne)kvalita bude Φasto lepÜia ne₧ pri vysokej vzorkovacej frekvencii. Zßle₧φ na konkrΘtnej nahrßvke a experimentßtori si to iste radi vysk·Üaj· :o)
╧alÜφm ve╛mi dobre implementovan²m parametrom je joint stereo. Tßto vo╛ba je Ütandardnß a znamenß, ₧e pri stereo nahrßvke bude LAME osobitne k≤dova¥ len tie Φasti spektra, ktorΘ s· pre jednotlivΘ kanßly odliÜnΘ. SpoloΦnΘ frekvencie sa k≤duj· len raz, Φo Üetrφ tok Φi₧e zlepÜuje kompresn² pomer. K²m u niektor²ch in²ch kodekov (Fraunhoffer a najmΣ Xing) bola implementßcia joint sterea Φasto ve╛mi zlß a na zvuku sa nepriaznivo odrß₧ala predovÜetk²m problΘmami v stereo separßcii, pri LAME rozdiel medzi joint stereom a skutoΦn²m stereom naozaj len ¥a₧ko rozoznßte. NavyÜe ak LAME pri k≤dovanφ zistφ, ₧e pou₧φvanie joint sterea je momentßlne nev²hodnΘ, automaticky k≤duje dan· nßroΦn· Φas¥ v normßlnom stereu, a ke∩ po₧iadavky opΣ¥ poklesn·, vrßti sa k ·spornejÜiemu joint stereu.
CRC k≤d sa do mp3 pridßva kv⌠li detekcii a ΦiastoΦnej oprave ch²b, vzniknut²ch napr.pri prenose Internetom. Takto upraven· mp3 by mal by¥ prehrßvacφ program schopn² prehra¥ korektne aj pri miernom poÜkodenφ, alebo aspo≥ poÜkodenie zisti¥ a ohlßsi¥. Ak ste pri niektorom inom kompresore sk·Üali pou₧i¥ CRC a skonΦili ste pri prehrßvanφ s podstatne horÜφm zvukom ne₧ bez CRC checking, tak pri LAME vßm to nehrozφ. LAME koneΦne sprßvne implementuje vytvßranie CRC k≤du a pri prehrßvanφ takto oÜetrenß mp3 nestrßca na kvalite, resp.iba do tej miery, o ko╛ko je znφ₧en² u₧itoΦn² tok kv⌠li pridanΘmu CRC k≤du.
LAME poznß nieko╛ko typov ATH kriviek. ATH znamenß Audible Treshold of Hearing a krivka znßzor≥uje, ak² citliv² je ╛udsk² sluch na skreslenia pri jednotliv²ch frekvancißch. Pod╛a tejto ätoleranΦnejô krivky sa enkodΘr riadi a pri zle navrhnutej krivke by mohol kompresor pova₧ova¥ za nepoΦute╛nΘ takΘ skreslenie, ktorΘ v skutoΦnosti poΦute╛nΘ je a mß nepriazniv² vplyv na posluchßΦovo vnφmanie nahrßvky. Z p⌠vodnej krivky oznaΦovanej ako ätyp 0ô boli po mnoh²ch posluchov²ch testoch odvodenΘ novΘ krivky typu 1 a 2 a r3mix.net pridal vlastn· odvoden· krivku typu 3 (dostupn· cez parameter -athtype3), ktorß je asi najnßroΦnejÜia a navyÜe zara∩uje filter pre frekvencie nad 19kHz. To je ∩alÜia vec, ktor· LAME dokß₧e -je tu mo₧nos¥ äodreza¥ô frekvencie od stanovenΘho prahu. Jeden interval stanovuje filter vynechßvaj·ci nφzke frekvencie po stanoven² prah, druh² zase vysokΘ od stanovenΘho pravu. Zßmer je jasn² -ak vieme, ₧e v nahrßvke sa danΘ frekvencie vyskytuj· len minimßlne, alebo nebude podstatn² rozdiel po ich odrezanφ, tak m⌠₧eme uÜetri¥ nieko╛ko kb priestoru, najmΣ u vyÜÜφch frekvenciφ, ktorΘ s· na kapacitu nßroΦnejÜie. Prakticky neÜkodnΘ by malo by¥ odrezanie 18.5 kHz a vyÜÜie, preto₧e len mßlo ╛udφ dokß₧e zachyti¥ takΘto vysokΘ zvuky. Ak patrφte medzi nßroΦn²ch, tak povedzme od 19kHz. Ani Φist² CD signßl nevyu₧φva rozsah a₧ do 22.05kHz a v aparat·rach sa be₧ne nachßdza dolnopriepustn² filter s prahom 20kHz. NepoΦute╛nΘ frekvencie sa neoplatφ k≤dova¥, lebo zaberaj· ve╛a miesta a m⌠₧u sp⌠sobi¥ zbytoΦnΘ vyplytvanie toku a ni₧Üiu v²sledn· kvalitu ne₧ by bola bez nich.
Zaujφmavou schopnos¥ou LAME je aj pou₧φvanie krßtkych blokov, ktorΘ umo₧≥uje lepÜie vyu₧φva¥ vysokΘ toky pri nßroΦn²ch pasß₧ach. Krßtke bloky vÜak nie s· v s·lade s p⌠vodnou ISO Üpecifikßciou a prehrßvaΦe to nemusia korektne prehrßva¥. Pri s·kromnom pou₧itφ a sprßvnom prehrßvaΦi to sφce nemusφ vadi¥, ale ak uva₧ujete o Üφrenφ svojich mp3 nahrßvok, tak radÜej vyu₧ite vo╛bu n·tenej kompatibility s ISO. S·bor bude trochu vΣΦÜφ, ale p⌠jde prehra¥ ka₧dΘmu. A o to predsa ide. Podobnou mo₧nos¥ou je nezßvislß ve╛kos¥ blokov pre ╛av² a prav² kanßl. Platφ pre ≥u to istΘ.
Ako to vyzerß s kvalitou zvuku? Aj pri zßkladnom nastavenφ je ve╛mi dobrß. Po zoznßmenφ sa s parametrami a urΦitom experimentovanφ som si naÜiel svoje ob╛·benΘ nastavenia a m⌠₧em pod╛a svojich subjektφvnych sk·senostφ poveda¥, ₧e LAME hrß lepÜie ako Fraunhoffer, priΦom Bladeenc s Xingom nechßva ∩aleko vzadu. Pod╛a niektor²ch nßzorov je dokonca lepÜφ ne₧ Ogg Vorbis. Ide o subjektφvne nßzory na kvalitu zvuku a ka₧d² Φitate╛ s nßroΦn²m sluchom a dostatoΦne kvalitn²m vybavenφm si asi svojho favorita vyberie sßm.
LAME sa ovlßda ako program pre prφkazov² riadok, Φi₧e pomocou parametrov. VΣΦÜina pou₧φvate╛ov LAME sa vÜak s prφkazov²m riadkom nikdy nestretne, preto₧e s enkodΘrom komunikuj· prostrednφctvom front-end aplikßciφ, kde si ₧iadanΘ parametre pohodlne änaklikaj·ô pomocou myÜi, zvolia cie╛ovΘ s·bory a stlaΦia äzßzraΦnΘô tlaΦidlo ENCODE. Front-end sa postarß o prevod stlaΦen²ch virtußlnych prepφnaΦov do podoby parametrov prφkazovΘho riadku a prenechß vÜetku prßcu enkodΘru. Front-end aplikßcie s· vynikaj·ci vynßlez, preto₧e mno₧stvo ╛udφ by nedokßzalo zada¥ svoje po₧iadavky pomocou prφkazovΘho riadku, a aj pre t²ch, ktorφ schopnφ s·, je to pomocou myÜi pohodlnejÜie. TienistΘ strßnky s· dve. Prvou je, ₧e front-end Φasto sprφstup≥uje iba nieko╛ko parametrov a z∩aleka nepokr²va skutoΦn² potencißl LAME. Jeden z mßla front-endov, ktor² bol skutoΦne d⌠sledn², je Razor, ktor² sa pre svoju komplexnos¥ stal mojφm najob╛·benejÜφm. Dokß₧e napr.zobrazova¥ histogram zast·penia tokov pri VBR, ktor² m⌠₧e pom⌠c¥ pri optimalizovanφ nastavenφ -ak sa to ätlaΦφô na niektor· stranu, je to znamenie, ₧e treba zmeni¥ kvalitu alebo posun·¥ hraniΦnΘ toky.
Utajovanie parametrov pred u₧φvate╛mi je vo front-endoch mo₧no motivovanΘ jednoduchos¥ou ovlßdania, ale myslφm, ₧e prφstup k nim by u₧φvate╛ mal ma¥ v₧dy, aspo≥ v nejakom od╛ahlom zapadnutom sub-menu. Druhou tienistou strßnkou je, ₧e nie ka₧d² si pri pou₧φvanφ uvedomφ, ₧e skutoΦnß sila nespoΦφva vo front-end aplikßcii, ale v motore, ktor²m je k≤dovacφ engine. U₧φvate╛ si be₧ne pamΣtß nßzov front-endu, ale o kompresore, ktor² vytvorφ z wav vyt·₧en· empΘtrojku, Φasto ani netuÜφ.
In², eÜte jednoduchÜφ sp⌠sob pou₧itia LAME, spoΦφva v jednoduchom drag-and-drop ·kone: äuchopi¥ô ₧elanΘ s·bory a äpusti¥ô ich do ikony programu lame.exe
Je takisto mo₧nΘ prepoji¥ LAME s CD utilitami, naprφklad so skvel²m Exact Audio Copy. Jednoducho nßjdete cestu na disku, kam ste LAME stiahli, zadßte kompresnΘ parametre a prevod CDDA do mp3 m⌠₧e zaΦa¥.
Linux: andromeda, cd2mp3, rip, avifile, Grip, jbm2, Krabber, Mp3Maker, dekagenc, ripperX, T.E.A.R., xtunes |
Mac: DropMP3, RaviLAME |
Windows: CDex, Lamedrop, LAMEX, m3w, outlame, RazorLame, WinLama, WinLAME |
╧alej napr.: ALF, dBpowerAMP, EnLAMEr, EAC, LameBatch, LAMEr, RipTrax, SecondSpin, vbLamer, WORM MP3 Encoder, ZLURP |
PreΦo ma LAME nato╛ko zaujal, ke∩ existuje viacero kodekov pre kompresiu mp3? Iste aj preto, ₧e je najlepÜφ spomedzi bezplatne dostupn²ch, dokonca v mnoh²ch oh╛adoch predΦφ aj profesionßlne komerΦnΘ kodeky, ako napr. Fraunhoffer. NajzaujφmavejÜia je vÜak jeho OpenSource podstata -LAME je ukß₧kou, ₧e nezßvislß OpenSource komunita je schopnß nielen dobre programova¥, ale omnoho viac -dokß₧e uskutoΦni¥ samostatn² vedeck² v²skum a na jeho ·speÜn²ch v²sledkoch postavi¥ mimoriadne vydaren² produkt. Prßve tßto okolnos¥ robφ z LAME omnoho viac ne₧ len mp3 enkodΘr. Hoci bud·cnos¥ formßtu mp3 je kv⌠li patentov²m problΘmom neistß, LAME ostane eÜte nadlho d⌠kazom ₧ivotaschopnosti OpenSource filozofie.
Odkazy:
www.lame.org
a
lame.sourceforge.net û domovskß
strßnka
www.r3mix.net
a
www.mp3-converter.com - ╧alÜie
informßcie o mp3 a linky
home.wanadoo.nl/~w.speek û posluhov² test pre nßroΦn² sluch