Užitečné komponenty pro Delphi a C++ Builder, díl 62.

Nedávno jsme si ukazovali komponentu, která uměla grabovat hudební CD a poté je převádět do MP3. Dnešní komponenta umí rovněž grabovat, ale navíc umí i identifikovat CD podle databáze FreeDB.

AKRip32

Jak začít s recenzí této komponenty? Vlastně to ani není komponenta, ale jedná se o knihovnu DLL, jejímž autorem je Andy Key. Je vydána pod licencí GPL a stručně řečeno umožňuje jednak zjišťovat řadu informací jak o samotné mechanice, tak hlavně o vloženém audio CD, dokáže grabovat audio stopy ("pouze" do WAV) a rovněž je tato knihovna schopna spolupracovat se servery FreeDB.org. Tím lze získat o vloženém CD prakticky všechny dostupné informace jako je název, autor, seznam skladeb a podobně. Samozřejmě to předpokládá, že CD je v databázi serveru obsaženo, ale to nebude vzhledem k popularitě tohoto systému velký problém.

Celá knihovna využívá ASPI a je napsána v jazyce C, ale to rozhodně není na překážku ani programátorům Delphi nebo Visual Basicu. Na stránce autora lze totiž nalézt ukázkové zdrojové kódy (od jiných tvůrců) pro práci v Delphi i VB a i jakousi komponentu či spíše hlavičku zmíněné knihovny přepsané do Delphi.

Klepněte pro větší obrázek

Právě na možnosti této komponenty pro Delphi se zaměříme, i když její funkce jsou víceméně dané používanou knihovnou a je to tak tedy pouze jakési rozhraní pro samotné AKRip. Budeme tedy raději mluvit o možnostech knihovny samotné a ne komponentě. Knihovna nabízí více jak 30 funkcí a procedur, takže popisovat detailně všechny je myslím zbytečné a není na to ani prostor.

Funkce bych rozdělil do 3 základních oblastí. Tou první je zjišťování informací o mechanice a vloženém médiu. Z CD mechaniky sice příliš informací nezískáte, ale alespoň to málo jako je typ, výrobce, verze firmware a také umístění na řadiči zjistit lze. Z média se dá načíst hlavička, takže získáte přehled o počtu a parametrech jednotlivých skladeb.

Druhou oblastí je grabování CD, tedy uložení jednotlivých skladeb na disk ve formátu WAV. K této funkci není příliš co dodávat, protože se neliší od jiných knihoven (komponent). Jak již bylo řečeno na začátku, o převod do formátu MP3 (či jiného) se musíte postarat sami pomocí jiných prostředků, protože to knihovna neumí. Co však umí je normalizace získaného souboru WAV.

Poslední oblastí je identifikace média pomocí serverů FreeDB.org a stažení jeho popisu. Tuto funkci osobně považuji za nejužitečnější z celé knihovny, protože grabovat umí kdejaká komponenta. Podporu CDDB (FreeDB) však jen tak nějaká knihovna (zdarma!) nemá. S pomocí příslušných funkcí tedy nejprve zjistíte seznam dostupných serverů s databází audio CD, podle hlavičky disku se vypočítají identifikační řetězce, které se serveru odešlou a v případě úspěchu se nám vrátí záznam (někdy i více) o daném médiu. Ten obsahuje jeho název a autora, žánr, seznam skladeb (a jednotlivé autory) atd.. Na přiloženém obrázku, který pochází z ukázkové aplikace pro Delphi, můžete vidět kousek záznamu o CD přijatém ze serveru. Navíc si můžete z popisků tlačítek udělat představu o nejhlavnějších funkcích knihovny.

A to je vlastně vše. Celá knihovna DLL má pouhých 70 kB, takže se nemusíte bát přílišné velikosti (už jsem viděl i FreeDB knihovnu, která měla 800 kB a uměla toho mnohem méně). Ti z vás, kteří dobře ovládají jazyk C, se mohou pokochat i zdrojovým kódem, který je samozřejmě k dispozici.

Vzhledem k tomu, že se jedná o DLL knihovnu, tentokrát nebudu do tabulky pod článkem psát, pro které verze Delphi nebo C++ Builderu je určena, protože teoreticky by měla být použitelná v libovolném programovacím prostředí pro Windows.

www
verze: 1.0rc2
Delphi: ano
C++ Builder: ano

Diskuze (2) Další článek: Microsoft odchází z konsorcia vyvíjejícího OpenGL

Témata článku: Software, Windows, Programování, Jednotlivé komponenty, Díl, Delphi, Dostupná komponenta, Knihovna, Komponenta, Dostupný server, Celá knihovna


Určitě si přečtěte

Jak dopadl velký den Applu s náloží novinek: Sledujte, co letos připravil

Jak dopadl velký den Applu s náloží novinek: Sledujte, co letos připravil

** Apple večer představil novinky ** Ukáže nové operační systémy, ale čekala se i nová zařízení ** Začíná vývojářská konference Applu WWDC 2018

Karel Javůrek | 87

Apple: naše mapy budou nejlepší na světě. Tajně jsme na nich pracovali několik let

Apple: naše mapy budou nejlepší na světě. Tajně jsme na nich pracovali několik let

** Apple odhalil své plány na zcela nové mapy ** Několik let pracuje na nových mapách, které by měly předběhnout konkurenci ** Objeví se s příchodem iOS 12 pro vybrané státy

Karel Javůrek | 50

Google ADT-2: Miniaturní krabička s Android TV 8.0, kterou si nikdy nekoupíte

Google ADT-2: Miniaturní krabička s Android TV 8.0, kterou si nikdy nekoupíte

** Dlouho se nevědělo, co to přesně má být ** Pak se s krabičkou Google pochlubil na I/O ** Do „Chromecastu“ vtěsnal celý Android TV

Jakub Čížek | 24

Apple dal do MacBooku procesor Core i9 a 4TB SSD. Ani se neptejte, co za to chce...

Apple dal do MacBooku procesor Core i9 a 4TB SSD. Ani se neptejte, co za to chce...

** Apple aktualizoval notebooky MacBook Pro, dostaly nový hardware ** Těšit se můžete na nové procesory a větší paměť ** Cena nejvybavenějšího modelu překročí 200 tisíc korun

Martin Miksa | 99


Aktuální číslo časopisu Computer

Velký test 18 bezdrátových sluchátek

Vše o přechodu na DVB-T2

Procesory AMD opět porážejí Intel

7 NVMe M.2 SSD v přímém souboji