CapaCD CD-compressie

Giga-CD ziet het daglicht

De capaciteit van een diskette of harde schijf kan al enkele jaren worden verdubbeld met behulp van compressieprogramma's als Stacker en DriveSpace. De CD-ROM is wat dit betreft enigszins achtergebleven, waarschijnlijk omdat de capaciteit van 660 MB `toch al ruim voldoende' was. Intussen weten we wel beter, er zijn voldoende toepassingen die schreeuwen om meer ruimte dan een standaard-CD kan bieden. CapaCD is het eerste compressieprogramma voor CD-ROM, waarmee de capaciteit van de `normale' CD verdubbeld kan worden. Volgens de leverancier kunnen we ook nog eens een aardige winst in snelheid tegemoet zien.

Grenzen vervagen, ook in de computertechniek. Wat vorig jaar nog `onbegrensd' genoemd werd, dat is nu standaard en morgen te krap. Dit geldt ook voor de capaciteit van de CD-ROM. Philips en Sony hebben, net zoals het consortium rond Matshushita, inmiddels een nieuw type CD op de plank liggen met een vervijfvoudigde opslagcapaciteit. Leuk voor de producenten van speelfilms, die kunnen nu een hele film op een enkele schijf kwijt. Helaas zullen die nieuwe schijven niet in de huidige generatie CD(-ROM) spelers gebruikt kunnen worden. Voor het ledigen van de hedendaagse datanood is dit dus geen goede oplossing. Wie nu al meer op een CDtje wil zetten dan het medium fysiek toelaat, die zal moeten uitwijken naar een of andere vorm van datacompressie.

Compressie

Aan het comprimeren van data hangt natuurlijk wel een prijskaartje. Om gecomprimeerde data te kunnen gebruiken, moet deze ook weer gedecomprimeerd kunnen worden. Het hiervoor benodigde programma zal dus wel beschikbaar moeten zijn in een versie voor de te gebruiken computer. Een van de grote voordelen van de ISO-9660 CD-ROM is dat deze in vrijwel alle computers bruikbaar is. Bij gebruik van een datacompressieprogramma is de inzetbaarheid van de CD beperkt tot die machines, waarvoor decompressiesoftware beschikbaar is. Dat decompressieprogramma moet ook ergens in het geheugen een plaatsje vinden, dit zal voor de meeste computers echter geen probleem zijn (tenzij u een zwaarbeladen DOS-PC gebruikt die al vol zit met device drivers en TSR-programma's). De DOS-driver neemt 53 KB in beslag, en kan niet hoog worden geladen. Het decomprimeren van data kost natuurlijk ook tijd. De uiteindelijke leessnelheid van een CapaCD-CD is sterk afhankelijk van de snelheid van de PC en die van de CD-ROM speler. Met een trage processor zal het decomprimeren verhoudingsgewijs veel tijd in beslag nemen. Een snelle processor zorgt voor korte decompressietijden. Aan de andere kant van de snelheidsbalans treffen we de relatief trage CD-ROM speler. Deze hoeft bij gebruik van CapaCD minder werk te verrichten, aangezien de data in gecomprimeerde vorm gelezen worden. Uitgaande van een compressieverhouding van 2:1 zal de leestijd van de data ongeveer halveren (niet helemaal, aangezien de zoektijd niet verkort wordt). Als een toepassingsprogramma 16 KB data opvraagt, kan de speler over het algemeen volstaan met het lezen van 8 KB. De tijd die normaliter door de CD-ROM speler gebruikt werd voor het lezen van de overige 8 KB is nu beschikbaar voor het uitvoeren van andere taken. Een van die andere taken is het decomprimeren van data, zodat deze zijn oorspronkelijke omvang en inhoud terugkrijgen. Een snelle processor heeft hier maar weinig tijd voor nodig - minder dan de CD-ROM speler nodig zou hebben voor het lezen van de overige 8 KB - waarmee de leessnelheid van de CapaCD hoger wordt dan die van een niet-gecomprimeerde CD-ROM. Over het algemeen geldt dat tragere CD-ROM spelers een grotere winst te zien geven dan snellere spelers. Hierbij gaan we er steeds vanuit dat de data ongeveer tot de helft van het volume gecomprimeerd kan worden. Dit is echter sterk afhankelijk van de aard van de data. Over het algemeen kan worden gesteld dat tekst beter comprimeerbaar is dan programmatuur, en data (niet-gecomprimeerde) bitmaps weer beter comprimeerbaar zijn dan tekst. Als de CD uitsluitend met niet-gecomprimeerde BMP-bestanden zou worden gevuld, dan kan CapaCD tot onwaarschijnlijk hoge compressiewaarden komen. In de praktijk zal dit niet vaak voorkomen. Het tegenovergestelde is ook mogelijk, een CD die gevuld wordt met compressed-TIFF bestanden zal door CapaCD nauwelijks meer bestanden kunnen bevatten. Ook videobestanden (Video for Windows, Quicktime) zijn nauwelijks verder te comprimeren, net zoals Kodak PhotoCD-bestanden. In de praktijk zal de compressieverhouding over het algemeen ergens tussen de 1,5:1 en 2:1 blijven steken.

Hoe werkt dat?

CapaCD is geen CD-master programma. Het is een compressieprogramma (zoiets als Stacker) dat zijn werk `onzichtbaar' verricht. De CapaCD decompressie-driver vangt alle lees-opdrachten naar de CD-ROM speler af, en draagt zorg voor de decompressie van de gevraagde data. Het decompressieprogramma bevindt zich logisch gezien tussen het bestandssysteem en het fysieke medium. Dit betekent, dat CapaCD in principe met alle bestandssystemen overweg kan. De leverancier geeft aan dat het mogelijk is te werken met ISO-9660, High Sierra en het Hierarchical File System van Apple. Wat die laatste in dit rijtje doet is ons niet duidelijk, er zijn namelijk (nog) geen decompressie-drivers voor de Macintosh beschikbaar. Om met Henry Ford te spreken: `alles kan, zolang het maar DOS/Windows is'. Dit is ons inziens wel een erg beperkte visie op de computerwereld, die de uitwisselbaarheid van CapaCD's niet ten goede komt. Wellicht dat hier in de toekomst nog iets aan gaat veranderen. De komst van Windows95 zal in ieder geval het nodige werk voor EWB and Associates betekenen, aangezien de huidge versie van CapaCD onder dit besturingssysteem niet goed werkt. CapaCD wil tussen de CD-ROM-driver en MSCDEX geladen worden, dit is bij Windows 95 echter onmogelijk. CapaCD werkt dan ook alleen met W95 samen als gebruik wordt gemaakt van de `MS-DOS mode'. Dit laatste is een door Microsoft uirgevonden eufemisme voor plain old DOS. CapaCD voegt een aantal stappen toe aan het CD-mastering proces. In plaats van de data direct van de harde schijf naar de CD-writer te sturen, wordt nu met behulp van CapaCD de omvang van het uiteindelijke `virtuele medium' bepaald. Dit virtuele medium is niets anders dan de door CapaCD beschikbaar gestelde ruimte na compressie. Om erachter te komen wat de uiteindelijke compressieverhouding wordt, bekijkt CapaCD van tevoren een deel van de te comprimeren data, en maakt aan de hand van dit onderzoek een voorlopige schatting van de compressieverhouding. Het masteringproces verloopt vanaf dan normaal, met dien verstande dat er nu meer ruimte beschikbaar is. Met het authoringpakket maakt u een imagefile van de gewenste CD, en schrijft deze weg naar de harde schijf of het netwerk. CapaCD maakt van deze imagefile een gecomprimeerde imagefile, die - eventueel samen met de decompressiesoftware en het installatieprogramma - met behulp van het authoringpakket op de harde schijf, de DAT-tape of de CD kan worden gezet. Voor het succesvol masteren van een CapaCD-CD heeft u, naast de CapaCD-software, nog een aantal zaken nodig. Aangezien CapaCD zelf geen CD-authoring pakket is, zult u moeten beschikken over een dergelijk pakket. Dit pakket moet in staat zijn om met imagefiles van 640 MB of meer te werken. Tevens moet het mogelijk zijn om de imagefiles naar harde schijf weg te schrijven. CapaCD is een Windows-programma, Windows 3.1 of hoger is dan ook een vereiste. Als de uiteindelijke CD meer dan 2 GB aan data bevat, moet er gebruik gemaakt worden van Windows NT of een netwerkdrive, aangezien DOS/Windows geen grotere bestandssystemen dan 2 GB aankan. Natuurlijk moet er ook voldoende ruimte vrij zijn op een voldoende snelle harde schijf om de image-file te kunnen bevatten. De uiteindelijke CD kan worden gebruikt in iedere CD-ROM speler die door DOS/Windows ondersteund wordt.

Praktijk

De leverancier van CapaCD in Nederland, Euro Reseller Distribution BV, heeft enkele praktijktests met CapaCD uitgevoerd. De resultaten van deze tests waren als volgt. Een bestandssysteem van 265 MB werd met behulp van CapaCD gecomprimeerd tot 167 MB, dit komt neer op een compressieverhouding van 1,59:1. Bij voorafgaande compressie met behulp van PKZIP - resulterend in een bestandssysteem van 171 MB - leverde CapaCD uiteindelijk een bestandssysteem van 169 MB op. Het vooraf comprimeren van de data levert (in dit geval) dus geen winst op, het kost zelfs iets meer ruimte. De met CapaCD bewerkte CD was in het gebruik iets trager dan de onbewerkte variant, het snelheidsverlies bedroeg ongeveer 18%. Deze test zijn uitgevoerd met een snelle PC (486DX2-66) met Adaptec SCSI-controller en een double speed CD-ROM speler. Het compressieprogramma gebruikt ongeveer 27 KB geheugen. Het comprimeren van de data kostte CapaCD in beide gevallen ongeveer anderhalf uur. Wie veel gebruik van het compressieprogramma maakt kan het beste omzien naar een snelle computer (Pentium-90 of beter) met voldoende schijfruimte. Dit geldt overigens niet alleen voor het gebruik van CapaCD, maar in het algemeen voor het maken van CD-ROM's met behulp van de PC.

Conclusie

Datacompressie kan een uitkomst zijn voor nijpende ruimteproblemen, het is bovendien een relatief goedkope oplossing. Niet alle data laten zich even goed comprimeren, het uiteindelijke resultaat is dan ook vaak moeilijk te voorspellen. Op zich is er niets op tegen om ook op CD-ROM een datacompressieprogramma zoals CapaCD los te laten. Het is echter jammer dat CapaCD zich beperkt tot de DOS/Windows wereld. Wie nu al kampt met ruimteproblemen op CD, en niet wil wachten op de volgende generatie (S)HD-CD die moet zijn licht maar eens opsteken bij Euro Reseller, telefoon 02990-38496.