lapsus alumni

maj 6, 2007

But she still breathes air

Zaszufladkowany do: Sieć — elmopl @ 1:40 pm

Dla tych, którzy nie znają Corpse Bride jest to moim zdaniem film godny polecenie m.in. za piosenki. Tym samym jak usłyszałem, że na oficjalnej stronie można posłuchać kilku piosenek (i to chyba w zasadzie wszystkich najważniejszych) uznałem, że sobie ściągne. Ot tylko taki psikus, że jak zwykle wszystko poprzez Flasha, więc ściąganie było nieco trudniejsze, acz jak można odsłuchać znaczy, że można i zapamiętać.

Wymyśliłem sobie zrobić w to bardziej złożony sposób niż trywialne podejście przekierowania po prostu wszystkich dźwięków z systemu na jakieś wejście i zapisania do pliku, a później kompresja tego co uzyskałem.

To jak to zrobić? Pierwszą rzeczą jaką sprawdziłem było to czy, jak niektóre inne odtwarzacze wykonane w tej technologii, nie ściąga brutalnie pliku mp3. Czyli oglądamy sobie po prostu katalog bądź ~/.opera/cache4 (tutaj niestety Firefox trochę kuleje jeżeli chodzi o wygodę przeglądania plików tymczasowych). Okazało się, że ten jest trochę złoszliwszy, bo nie znalazł się żaden plik z rozszerzeniem mp3.

Następnie sprawdziłem co ściąga ta animacja. Jeżeli odpalimy ją w Firefoksie to widać, że

coś zostało ściągnięte z download.wbr.com. Aby sprawdzić co zostało ściągnięte powiemy przeglądarce, żebym nam wysłała żądania, które normalnie wysyłała do tego serwera. Przygotowujemy Firefoksa: otwieramy http://www.warnerbrosrecords.com/corpsebride/ i czyścimy cache (żeby zmusić przeglądarkę do ponownego ściągnięcia potrzebnych plików).
Następnie otwieramy plik /etc/hosts i dodajemy linijkę
127.0.0.1 download.wbr.com
uruchamiamy
tcpserver 127.0.0.1 80 tee -a ~/tmp.txt
I naciskamy w odtwarzaczu zmianę piosenki razy cztery (bo tyle jest dostępnych utworów).
W pliku ~/tmp.txt znajduje się coś takiego

GET /corpsebride/audio/02_according_to_plan.swf HTTP/1.1
Host: download.wbr.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.1.2) Gecko/20070303 BonEcho/2.0.0.2
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.7,pl;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: utf-8,*
Keep-Alive: 300
Connection: keep-alive

GET /corpse_bride/audio/09_tears_to_shed.swf HTTP/1.1
Host: download.wbr.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.1.2) Gecko/20070303 BonEcho/2.0.0.2
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.7,pl;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: utf-8,*
Keep-Alive: 300
Connection: keep-alive

GET /corpse_bride/audio/14_wedding_song.swf HTTP/1.1
Host: download.wbr.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.1.2) Gecko/20070303 BonEcho/2.0.0.2
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.7,pl;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: utf-8,*
Keep-Alive: 300
Connection: keep-alive

GET /corpse_bride/audio/05_remains_of_the_day.swf HTTP/1.1
Host: download.wbr.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.1.2) Gecko/20070303 BonEcho/2.0.0.2
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.7,pl;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: utf-8,*
Keep-Alive: 300
Connection: keep-alive

Ważne są tylko pierwsze linijki każdego żądnia. Widać z nich dokładnie czego szukać na serwerze. Więc ściągamy kolejno pliki
http://download.wbr.com/corpse_bride/audio/02_according_to_plan.swf
http://download.wbr.com/corpse_bride/audio/09_tears_to_shed.swf
http://download.wbr.com/corpse_bride/audio/14_wedding_song.swf
http://download.wbr.com/corpse_bride/audio/05_remains_of_the_day.swf

I przy pomocy pakietu SWF Tools wyciągamy pliki mp3 z plików swf. Dla pierwszego wyglądało by to tak.
swfextract -m 02_according_to_plan.swf
Pomimo, że te kawałki mają 64Kbps brzmią akceptowalnie.

Nie ma jeszcze komentarzy »

Brak komentarzy.

Kanał RSS z komentarzami do tego wpisu. Adres TrackBack

Dodaj komentarz

Blog na WordPress.com.