Branden van zichtbare beelden op CD-r's met gegevens (bèta) (1 / 4 stap)

Stap 1: Leren hoe cd's en CD-r's werken

Gegevens op een CD of alle optische media, wordt opgeslagen als een reeks van kuilen van verschillende lengtes. Om precies te zijn, een 1 wordt vertegenwoordigd door de verandering van put neen-pit of de verandering van neen-pit pit, en een 0 wordt vertegenwoordigd door Geenverandering in hoogte (pit-pit of neen-pit aan neen-pit). De kuilen en de neen-pits weerspiegelen verschillende hoeveelheden van het licht; het is dus mogelijk om beelden op cd's door deze 1s en 0s op de juiste manier te schikken.

Hoe zorg je ervoor dat de 1s en 0s? Het helpt om te weten dat de gegevens langs een spiraal die begint vanaf het midden van de CD en spiralen naar buiten in een richting van de klok worden geschreven. De lengte van elke bit is een vrij nauwkeurige waarde (hierover later meer), en de toonhoogte van de spiraal, of de afstand tussen opeenvolgende spiralen, is ook een vrij nauwkeurige waarde. Met behulp van wat wiskunde en sommige giswerk, is het dus mogelijk te maken van een toewijzing van de nde bit in uw gegevens naar een x, y-coördinaat.

Nu moeten we echt kijken onder de motorkap van opslag van de gegevens van de CD om erachter te komen hoe herken ik de CD-writer een 0 of 1 voor de n beetje te schrijven. Gegevens wordt georganiseerd als een reeks van sectoren, die elk 2352 bytes lang is. De gegevens binnen elke sector wordt georganiseerd op een bepaalde manier afhankelijk van welk type CD u bent behandelen (gegevens, audio, etc...). De meeste "ruwe" soort van de organisatie staat bekend als "modus 2." Modus 2 doet weg met veel van de leuke dingen over cd's zoals foutcorrectie, maar het geeft ons de meeste controle over de bits. In een mode 2-sector, de eerste 12 bytes "synchroniseren" gegevens bevatten en de volgende 4 bevatten specifieke informatie over de sector. Deze bytes kunnen niet worden gewijzigd op het niveau van de software. (Misschien is het mogelijk om een driver die dit veranderen kan te schrijven?) De volgende 2336 bytes zijn vrij om om het even wat wel. Als dit alles wat er gebeurd met de gegevens, zou onze taak gemakkelijk. Helaas, er is veel meer gegevensmanipulatie voordat de gegevens daadwerkelijk wordt weggeschreven naar de CD.

Eerst, de gegevens in elke sector is "Roerei" dat wil het wordt uitgevoerd door middel van een wiskunde-functie die wordt verondersteld zeggen om "witter" de gegevens (d.w.z. houden de gemiddelde hoogte van de gegevens op de CD halverwege tussen put en neen-pit).

Ten tweede, de gegevens worden verzonden via een CIRC-encoder, die sommige foutcodes voor correctie van toepassing is.

Tot slot worden de gegevens verzonden al een acht-met-veertien modulator (EFM). Dit wijst elke 8-bits byte in een reeks van 14-bits. Dit is om te voorkomen dat lange reeksen van 0 (geen verandering in hoogte) die moeilijk zijn voor het cd-rom-station om te lezen.

Het punt is: tekening van foto's op cd's is mogelijk, zodat het moet gebeuren.

Voor een completer (maar nog steeds op sommige momenten cryptische) uitleg van cd's, check out de vrij beschikbare specificatie van ECMA-130.

Gerelateerde Artikelen

Tri-color kauwgom bichromate afdrukken van digitale beelden

Tri-color kauwgom bichromate afdrukken van digitale beelden

dit instructable demonstreer hoe maak je een bichromate van de GOM tri-color print van een digitale afbeelding.  Kauwgom bichromates hebben een geschiedenis die tot 1858, wanneer de eerste kleur beelden waar afgedrukt.  Natuurlijk 150 jaar geleden fo
Branden van make-up met vloeibare Latex

Branden van make-up met vloeibare Latex

Dit is een geweldig effect dat kan worden gebruikt om een beetje lijken op rottend vlees. Het is een geweldige uitvalsbasis voor een zombie kostuum.De glans zal niet erg duidelijk, mijn cameraflitser maakt alles er glanzend uitzien.Materialen:* Vloei
Branden van zeepbellen

Branden van zeepbellen

In dit Instructable kijken we naar de manier om te vullen zeepbellen met het gas.Waarom zou u willen dat doen?Dus, kunt u ze instellen in brand.Net zoals vuur ademhaling - is het voor de show.Wat nodig:Kunststofbuizen met het GLBLege aanstekerBubble
Branden van de Bootloader op de ATMega328 met behulp van Arduino UNO als ISP

Branden van de Bootloader op de ATMega328 met behulp van Arduino UNO als ISP

UPDATE: deze tutorial zal werken op de Arduino IDE 1.0.1, de recente 1.0.5 brengt enkele wijzigingen op de schets van de ISP, dus ik ben niet zeker of het zal werken (ik kocht 2 ATMega328 en verbrand, zowel op 1.0.1).Gebruik 1.0.1 om eventuele proble
Hoe krijg ik toestemming voor het gebruik van Game beelden In uw video's

Hoe krijg ik toestemming voor het gebruik van Game beelden In uw video's

Terwijl sommige spel bedrijven opgewekt zijn om hebben beelden gebruikt voor het maken van video's, en met de populariteit van diensten zoals Twitch, gaming video's komen steeds meer, dat het kan moeilijk zijn om toestemming voor het gebruik van game
Plotten foto's: De oprichting van Stipple kunst van alledaagse beelden

Plotten foto's: De oprichting van Stipple kunst van alledaagse beelden

Hallo!In dit Instructable, zal ik u tonen hoe u met een goede oude mode penplotter (in mijn geval een HP 7586 weg terug uit 1986) stipple kunst maken van (bijna) elke afbeelding die u kunt vinden/neem.In tegenstelling tot de werking van een printer,
Een grafische boek - een verzameling van grafische beelden.

Een grafische boek - een verzameling van grafische beelden.

Dit is een groot project dat ik ongeveer een jaar geleden voltooid. Zijn een grafische boek, met een reeks van mixed media-afbeeldingen.De beelden begon zoals foto's, ik dan verf, inkt en andere media gebruikt voor de productie van een scala aan effe
Het instellen van een factuur in de vlammen met uit het branden van het

Het instellen van een factuur in de vlammen met uit het branden van het

ik zal u tonen hoe om een wetsvoorstel in het vuur met uit het te branden, maar wees voorzichtig! u bent playin met vuur.Stap 1: Wat hebt u nodig *Salt* Fire* Antyseptic alcohol* Een schotel* Factuur(70% alcohol werken goed, kijk de derde afbeelding)
Schatting van dimensies voor 3D-modellering van plannar beelden

Schatting van dimensies voor 3D-modellering van plannar beelden

3D modeling is een gemeenschappelijke techniek in een breed scala van gebieden (met inbegrip van industrie en geneeskunde, onderwijs, spelletjes, ontwerp) aangenomen. In de bijzondere aandacht voor de 3D-computergraphics, 3D modeling is een proces va
Infuus gevoed branden van de olie, kachel / hout kachel

Infuus gevoed branden van de olie, kachel / hout kachel

deze kachel draait op hout of gebruikte motorolieStap 1: eerst uit zoeken een oude 40 gal warm watertank met behulp van een slijper of tin snips afgesneden van de buitenste schil en schraap het uitgebreide schuim uit de binnentankStap 2: Knip een deu
Branden van aangepaste Firmware met behulp van ArduinoISP

Branden van aangepaste Firmware met behulp van ArduinoISP

Als u branden van aangepaste firmware op je Arduino wilt, moet u een Internet-provider, of In-systeem programmeur. Maar waarom afval geld op een ISP naam-merk wanneer een Arduino kan hetzelfde doen? Deze tutorial toont je hoe aangepaste firmware inst
Branden van TV B gegaan Firmware met behulp van Arduino

Branden van TV B gegaan Firmware met behulp van Arduino

dit is mijn eerste instructable.  Dit is waarschijnlijk pijnlijk duidelijk en eventuele kritiek of vragen die je hebt, zou ik gelukkig zijn om u te helpen met zo goed als ik kan.Toen ik was het maken van een TV-B-Gone, had ik geen methode voor het pr
3D sneeuwvlokken [van Microscoop beelden]

3D sneeuwvlokken [van Microscoop beelden]

Als het gaat om kerst en winter tijd, ik niets dan sneeuw kunt beschouwen als een bron van inspiratie voor mijn creaties: Ik vind het zo elegant, charmant en ontspannen; het brengt net me in de juiste stemming wanneer ten slotte het begint te dalen.B
Branden van Arduino Bootloader te ATMEGA328P-PU met behulp van Arduino Pro Mini

Branden van Arduino Bootloader te ATMEGA328P-PU met behulp van Arduino Pro Mini

Hier is een circuit gebouwd op sommige perf bord dat maakt het makkelijk om te branden van de Arduino bootloader naar een lege ATMEGA328P-PU-chip.Na het bouwen van het circuit uploaden van de schets van de ArduinoISP uit bestand -> voorbeelden -> 11