Portál AbcLinuxu, 28. dubna 2024 04:04

Získání zvukového záznamu z EXIF dat

29.8.2005 05:09 | Přečteno: 1504× | Linux | poslední úprava: 31.5.2006 04:18

Jsem již přes půl roku šťastným majitelem digitálního fotoaparátu HP M307. Tento fotoaparát (jako dnes snad již každý) umožňuje k fotce pořídit i krátký zvukový záznam. Problém je, že tato zvuková poznámka je ve formě EXIF dat uložena přímo do JPEG souboru s danou fotkou. Jak lze pod Linuxem zvukovou stopu z fotky extrahovat?

První co mě napadlo bylo vyzkoušet volbu "--get-all-audio-data", kterou nabízí gphoto2. To ovšem nepřineslo žádný výsledek. V manuálu se k této volbě píše pouze "Get all audio data from folder" a ani na Googlu se mi k tomu nepodařilo najít žádné další informace. Ovšem zjevně to nefunguje (nebo to má možná pouze z karty zkopírovat WAV soubory, pokud je foťák ukládá zvlášť?).

Dal jsem se tedy do velkého hledání na Googlu a ač jsem se snažil sebevíc, podařilo se mi najít pouze 2 utility pro Linux, které audio data z JPEG fotografií dokáží extrahovat. Jedná se o EXIFutils a dphotox. Jsou to konzolové aplikace a fungují skvěle - jak s EXIFutils tak s dphotox se mi podařilo audio data z fotky extrahovat (do standardního WAV souboru) zcela bezproblémově. Nicméně je tu jeden VELKÝ háček - jedná se o closed-source aplikace. Oboje dvoje jsou sice poskytovány zdarma (i když EXIFutils pouze jako omezená trial verze), ale to na věci nic nemění. Pořád mi vrtá hlavou jak je možné, že nikdo nenapsal svobodnou open-source aplikaci která toto umožňuje? To snad žádný uživatel linuxu nepoužívá tuto funkci digitálních fotoaparátů?

Nehodlal jsem se vzát a hledal jsem dál. Nakonec sem si na stránkách dphotox všiml poznámky: "The Exif-Tools written by Jim Thompson are also able to extract the sound note and the image info.". Jenže ona adresa projektu exif-tools (na Sourceforge.net) už není funkční! A zjevně je tomu už hezkých pár let, jelikož ani nikde na Googlu se mi nepodařilo najít stránky které by se těmto exif-tools věnovaly (natož kde by se dal stáhnout zdrojový kód), prostě po exif-tools se slehla zem. Jako poslední naděje se mi jevil Archive.org - gigantický internetový archiv, jenž se už řadu let snaží o archivaci veškerého obsahu na World Wide Webu (a nejen o to - zároveň je obrovskou knihovnou public domain filmů a jiných uměleckých děl). Do vyhledávání "Wayback Machine" jsem zadal "http://exif-tools.sourceforge.net" a kupodivu jsem tyto stránky archivované našel! A to hned v několika verzích (Archive.org si udržuje archiv stránek vždy z každého měsíce každého roku - zkrátka můžete se vydat na virtuální cestu do minulosti). Poslední archivované datum je září 2003, pak stránky zmizely. Naštěstí byl archivován i zdrojový kód exiftools-0.0.7!

Zdroják jsem si tedy stáhl a pokusil ho zkompilovat. Bohužel ale došlo při kompilaci k chybě. Chybový výpis kompilace jsem hodil k sobě na web, pokud někdo můžete prosím zkuste se na to podívat a poradit v čem je zřejmě problém a jak by se dal konkrétně napravit. Nejsem žádný pořádný programátor (programuji jen v PHP & MySQL a začínám v Pythonu), takže bohužel nedokážu sám chybu určit a napravit. Pokud se to povede zkompilovat a bude to fungovat, bude to podle mě významná záchrana jednoho již téměř zapomenutého open-source projektu nemajícího jiné svobodné alternativy ;-)


EDIT: Uživateli Bubak se povedlo zdrojový kód Exif-tools upravit tak, aby šel zkompilovat. Zdrojový kód, opravný patch a výslednou binárku si můžete stáhnout na jeho stránkách. Tímto mu děkuji :-)

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

29.8.2005 08:14 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
Rozbalit Rozbalit vše hlavičkové soubory
Odpovědět | Sbalit | Link | Blokovat | Admin

máš je nějak dodžubané. máš nainstalované "devel" balíky (předpokládám, že jedeš na rpm nebo deb)? Ty zdrojáky navíc používají starou konvenci vlkádání hlaviček standardní knihovny, takže to na tebe bude furt řvát a hulákat.

Ty chyby by se daly imho opravit prostým cout << operátorem.

Kuolema Kaikille (Paitsi Meille).
Mikos avatar 29.8.2005 14:34 Mikos | skóre: 34 | blog: Jaderný blog | Praha
Rozbalit Rozbalit vše Re: hlavičkové soubory
Používam Arch Linux (na jiném stroji Gentoo a na routeru Slackware), takže hlavičkové soubory mám vždycky po ruce rovnou s každým balíčkem (systém kde jsou dělené balíčky na normální a -devel bych nikdy používat nechtěl ;-)).

Jinak díky za radu s tím "cout <<", ale jak to mám použít? Já jsem co se týče C/C++ prakticky uplný panic :-)
CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
29.8.2005 18:17 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
Rozbalit Rozbalit vše Re: hlavičkové soubory
vzhledem k tomu, ze ten tar.gz mi uz nejde stahnout, tak to nevyzkousim. Snad pozdeji.
Kuolema Kaikille (Paitsi Meille).
Mikos avatar 29.8.2005 19:46 Mikos | skóre: 34 | blog: Jaderný blog | Praha
Rozbalit Rozbalit vše Re: hlavičkové soubory
On stáhnout jde, jen z nějakého důvodu to nestáhne poslední bit toho archivu. Nicméně ten poslední bit naštěstí nic nezkazí, jde to rozbalit i pak (normálně klasicky "tar -xvzpf /home/mikos/exiftools-0.0.7.tar.gz").
CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
29.8.2005 09:57 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Opravdu opuštěný projekt?
Odpovědět | Sbalit | Link | Blokovat | Admin
A co tenhle odkaz?
Mikos avatar 29.8.2005 14:36 Mikos | skóre: 34 | blog: Jaderný blog | Praha
Rozbalit Rozbalit vše Re: Opravdu opuštěný projekt?
Wow, to se mi nikde najít nepodařilo, díky :-) Ale co tak koukám na ty stránky (i na podrobný popis všech konzolových parametrů které to používá), tak tam není nikde o žádné extrakci zvuku ani zmínka (zkoušel jsem vyhledat "sound", "audio" a "wav"). Zkoušel ste to? Máte s tím nějaké zkušenosti? Z toho popisu mi přijde jako by tam tahle funkce v tom opravdu chyběla...
CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
Mikos avatar 29.8.2005 14:46 Mikos | skóre: 34 | blog: Jaderný blog | Praha
Rozbalit Rozbalit vše Re: Opravdu opuštěný projekt?
Teď sem koukal na jméno autora a autorem oné utility ExifTool je někdo uplně jiný než autorem těch zmizelých Exif-Tools. Takže zřejmě bude pravda, že tohle neumožnuje extrakci audio-dat. Ale možná se pletu?
CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
29.8.2005 19:04 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše strstream
Odpovědět | Sbalit | Link | Blokovat | Admin
strstream.h: není souborem ani adresářem
Zkus s/strstream\.h/strstream/, třeba se dostaneš o kus dál...
29.8.2005 21:38 Bubak | skóre: 16 | blog: Čtvrtá cenová
Rozbalit Rozbalit vše Re: strstream
Jeste je potreba na ruznych mistech pridat "using namespace std;", v jednom souboru je potreba pridat pretypovani v nejake podmince a v jednom prohodit dva includy a mozna jeste neco, to uz jsem zapomel:-). Viz prispevek nize.
... máš jen mrtvou kočku a poškrábanýho jezevčíka ...
29.8.2005 21:33 Bubak | skóre: 16 | blog: Čtvrtá cenová
Rozbalit Rozbalit vše Preklad
Odpovědět | Sbalit | Link | Blokovat | Admin
Mrkni sem, dal jsem tam binarky tech exif-tools. Zkus, jestli Ti pobezi, co potrebujes, je to prekladane na Slackovi 10.1. Casem tam bud pridam patch (a asi i puvodni zdroje, aby bylo vsechno vporadku), nebo Ti ji jen poslu a odtud to vyhodim, uvidime:-). Ale ten balik se zdroji byl vadny, pri gunzipovani mel kecy, ze je predcasny konec souboru, nastesti zdrojaky tam byly vsechny, aspon to tak vypada:-).

RT.
... máš jen mrtvou kočku a poškrábanýho jezevčíka ...
Mikos avatar 29.8.2005 22:10 Mikos | skóre: 34 | blog: Jaderný blog | Praha
Rozbalit Rozbalit vše Re: Preklad
FUNGUJE TO! Zvukovou stopu se povedlo z fotografie extrahovat stejně pohodlně jako v případě closed-source exifutils a dphotox, super! Člověče vy ste zlatej, mockrát vám děkuju ;-) Kdyžtak ještě vás prosím pokud byste tedy mohl publikovat ten patch (nebo kdyžtak mi ho poslat, já to můžu taky publikovat).

Teď ještě přemýšlím co dál :-) Jak dát světu vědět, že už zas existuje opensource nástroj na extrakci zvukové stopy z EXIF dat ve fotografii, aby nemuseli všichni kdo by takový nástroj hledali znovu podstupovat stejné peripetie ;-)
CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
29.8.2005 22:39 Bubak | skóre: 16 | blog: Čtvrtá cenová
Rozbalit Rozbalit vše Re: Preklad
Uz je to na stejnem miste cele:-).
... máš jen mrtvou kočku a poškrábanýho jezevčíka ...
29.8.2005 22:44 Bubak | skóre: 16 | blog: Čtvrtá cenová
Rozbalit Rozbalit vše Re: Preklad
Co se tyka toho, jak dat vedet, tak nastavit spravne META tagy a pripadne dat echo na freshmeat:-).
... máš jen mrtvou kočku a poškrábanýho jezevčíka ...
1.4.2013 11:55 kavol | skóre: 28
Rozbalit Rozbalit vše Re: Získání zvukového záznamu z EXIF dat
Odpovědět | Sbalit | Link | Blokovat | Admin
pro případ, že by někdo našel tento blog dříve než řešení, které na jeho základě vzniklo ... kuk na BerliOS - wavextract

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.