Loudness War vs. ReplayGain

A nagy (tobb hetes) zenei rendrakasom egyik folyomanya volt az, hogy vegre valahara megcsinaltam a track-jeim RG-zeset. Termeszetesen nagyjabol 100-szor annyi idom ment el ra, mint eredetileg terveztem. Mint altalaban :) Hogy mi vett ra? Ime egy tipp:

A ket track kozott 20 ev van. Eljutott a dolog az elvezhetetlen szintre. Rohejes, abszurd ez az egesz loudness war, hanyok tole. Veletlenszeru sorrend eseten allandoan a hangerogombot kellett tekergetni, mert annyira ugralt a hangero. Nyilvan a regi szamok a csondesebbek.

Na de ez meg csak a kezdete a problemanak. A masik gond az en szokasaimbol ered. Sokszor hasznalom a fajlok utolso modositasi datumat. Ha pl. ujabb zeneket akarok hallgatni, mert unom a regieket, akkor csinalok egy rendezest, es pl. az utolso 20-at behuzom. Vagy ha hazamegyek, az otthoni medialejatszora nem akarom elhurcolni a 100GB-os gyujtemenyt, hanem csak az ujakat. Szoval a lenyeg roviden, hogy szuksegem van a last modified ertekekre.

Ez eddig oke, de hogy adom hozza a RG tag-eket a fajlokhoz a timestamp modositasa nelkul? Alapesetben tag-elesre az Mp3tag-et hasznalom, es abban van is opcio a timestamp erintetlenul hagyasara, csakhogy az Mp3tag nem kepes a RG scan-re, tehat nem alkalmas a szuz fajlok "beszintezesere". Termeszetesen felvetettek mar masok is a dolgot, de nincs tervben az implementalas. Akartam regelni a forumra, hogy elsirjam, mennyire fontos lenne ez nekem is, de a regisztracio megerositese kezzel tortenik, ami egyebkent azota se jott meg, ugyhogy ez ennyiben maradt.

Oke, akkor legyen foobar2000, abban van nagyon fasza, nagyon gyors, nagyon ugyes scanner. Csakhogy ebben meg nincs opcio a timestamp megorzesere. A Hydrogenaudio-n volt rola topik, az volt a valasz, hogy ez nem lehetseges, es nem is lesz az, mert a foobar2000 sok esetben ez alapjan tajekozodik. Erre en bekommenteltem, hogy szepen kerem legyen erre egy opcio, nem lenne tul bonyolult, kb. fel ora alatt implementalhato tokkal-vonoval (es tenyleg). Es itt jott elo az, amiert en elmondhatatlanul ruhellem a HA forumot: nem a fejleszto, hanem egy mod lezarta a topikot, en meg egy hulye vagyok, amiert tobb eves topikokat ujraelesztek, es olyanokat kerdezek, amikre mar valaszt adtak. Irtam neki uzit, hogy mar elnezest, de en nem kerdest tettem fel, hanem feature request volt. Erre megint visszair, hogy ne nezzem mar hulyenek, tisztaban van vele, de nem lesz benne ilyen, kuss.

Nice. Na szoval az Mp3tag tud timestamp megorzest, de RG-t nem, a foobar2000 meg pont fordtiva. Vegigturtam a netet, kiprobaltam egy raklap RG-kepes playert/toolt, de termeszetesen egyik sem volt kepes mindkettore egyszerre. Volt meg olyan is, amelyik a fajlnev alapjan random kitoltott bizonyos mezoket, na mondom fasza.

Vegul a MusicBee meg tudta csinalni mindket dolgot, azonban ekkor meg a foobar2000-ben nem latszottak a tag-ek. Hmm, biztos nem szazas a formatum, amiben kiirja, vagy ilyesmi. Akkor talaltam ki, hogy mi lenne, ha csinalnek egy foobar plugin-t, ami annyit csinal, hogy megnezi a stamp-et, tarolja, meghivja a scannert, utana visszairja a stamp-et. Letoltottem az SDK-t. Aztan elborzadtam, elkonyveltem, hogy ez nem nekem valo, es letoroltem.

Na jo, mondom, akkor legyen az, hogy siman behuzom datum alapjan rendezve a track-eket. Ha csak 1 milliszekundummal is, de kulonbozoek maradnak a datumok a tag-eles utan, es nincs para, nekem ugyis csak a sorrend szamit, nem a konkret datum. Haha, de nem ugy van az, a foobar atrendezi a behuzott track-eket szepen, okosan, keres nelkul. Lehet rendezni 10 felekeppen, de datum alapjan termeszetesen nem. Ahh.

Ekkor gondoltam ra, hogy kene egy olyan program, ami kepes backup-olni es restore-olni a fajlok timestamp-jeit. Ilyet termeszetesen nem talaltam Windows-ra (biztos van valahol...). Ekkor maradt az az opcio, hogy megcsinalom a dolgot en. Az SDK miatt mar ugyis feltettem egy Visual Studio-t, legalabb legyen valami haszna is. Egyszeruen elmentem a fajlok stamp-jeit valami fajlba, aztan a buli utan visszaallitom.

Kb. fel ora okorkodes utan osszetaknyoltam C#-ban, 50 sor, egy undorito, hardcode-olt szar, de a dolgat megcsinalta :D Oke, akkor huzzuk be foobar-ba az uj, tagelt szamokat. A hangero stimmel, de a tag-ek nem. Hmm. Ujabb negyed ora benazas utan rajottem, hogy ez a nyomorult szepen elkessel minden infot a behuzott track-ekrol, es egy istennek se hajlando frissiteni rajta, ha a timestamp a regi. Nyilvan emiatt ment a rinya a HA-n is. Az mar mellekes, hogy egy "rebuild database" gomb hozzaadasaval pillanatok alatt kikuszobolheto lenne egy ilyen gond. A foobar tobb ezer szamot atnez par masodperc alatt, szoval tenyleg nem ertem, mi ezen olyan kardinalis problema, de mindegy.

Szoval a lenyeg, hogy torolni kell a database.dat fajlt, es minden jo. Ekkor vilagosodtam meg, hogy ezek szerint valoszinuleg a MusicBee is jo lett volna. Na nem baj, hulyebb nem lettem tole, megsporoltam egy plusz programot, meg meg igy is lehet, hogy gyorsabban vegeztem (a foobar2000 scanner-e valamiert veszettul gyors a tobbi programehoz kepest, 1000 szamot megcsinal 10 perc alatt). Meg az mar mellekes, de alapvetoen gusztustalan szamomra a MusicBee felulete.

Szoval most minden fasza. A foobar szemrebbenes nelkul belotte a RG tag-eket MP3-ra, FLAC-ra, Ogg-ra, MP4-re, hibatlan. A tanulsag, hogy a ReplayGain JO. Tok furcsa, hogy minden ugyanugy szol, igazi elmeny. Aki teheti, eljen vele. A programot nem kizart, hogy kicsit rendbeszedem, aztan felteszem valahova, hatha nem en vagyok az egyetlen, akinek ilyen hulye igenyei adodnak. Persze ha valaki tud meglevo, komolyabb programrol, ne tartsa magaban :)

Szerk: a timestamp-es okoskodo programot kertek, ugyhogy kipofoztam, es felraktam ide:

https://github.com/bviktor/keepstamp

Hozzászólások

Es lol, a post-nak mar csak azert is haszna volt, mert a shot-on eszrevettem, hogy a Stadium Parking Lot veletlenul megmaradt MP3-ban is.

Komolyan mondom, már csak azért is tanulságos a sztori, mert hűen példázza a legnagyobb problémámat a fejlesztők hozzáállásával kapcsolatban manapság.
És tökmindegy, hogy open source fejlesztő-e az illető, vagy sem. Összegányol valamit, aztán nincs se ember, se isten, aki az amúgy torz, vagy legalábbis korlátolt nézőpontjától eltérítse. :(

Engem nem is ez basz fel. Az 1 dolog, hogy az Mp3tag-os faszi nem akar vele foglalkozni. Meg tudom erteni. En is utananeztem kicsit, felmerult bennem, hogy irok ra egy script-et, de marha bonyolult, kell hozza metaflac, vorbisgain, nemhivatalos mp3gain (az MP4-nek mar utana se neztem), vagy le kell implementalnod onerobol, vagy valahogy beletaknyolni a lib-eket a programodba, aztan meg a kulonbozo tag formatumokat valahogy lekezelni, szoval eleg gazos.

Az is 1 dolog, hogy a foobar2000-esek nem foglalkoztak vele, mert nem kaptak egy hasznalhato ervet, hogy miert is lenne ilyenre szukseg.

DE. Amikor en felvetem megint a dolgot, megindoklom, hogy miert lenne ez esetleg tenyleg hasznos, es meg lehetne oldani total opcionalisan, kikapcsolhatoan, erre eselyt se kapok, hanem egy egysegsugaru, gyoker moderator pofazik bele, es valaszol olyan kerdesekre, amiket nem tettem fel, hulyenek nez, es hoz onalloan dontest mas feladatarol, attol nagyon felmegy bennem a pumpa. Nem ez az elso eset, hogy hasonlo szituacioban ugattak le ilyen eroszakosan, anelkul, hogy barmi kozuk lett volna a temahoz. Szerintem a foobar2000 reszerol oriasi hiba, hogy az issue tracking egy nagyobb forum subforum-akent van megeroszakolvamegoldva. Mar jelentettem csomo letezo es valos problemat, es a mai napig nincsenek megoldva az ilyen baromarcuaknak koszonhetoen. Pl. a linkelt problemat hogyan abszolvaltak? Levettek a feature list-bol a "full unicode support"-ot. <Taps>

Köszi, ez a ReplayGain új nekem, de hasznosnak hangzik.