Sampling, kvantisering og lagring av lyd



Like dokumenter
Analog. INF 1040 Sampling, kvantisering og lagring av lyd. Kontinuerlig. Digital

Tema nr 2: Analog eller digital, kontinuerlig eller diskret. Eksempel på ulike båndbredder. Frekvensinnhold og båndbredde. Analog

INF 1040 Sampling, kvantisering og lagring av lyd

INF 1040 Sampling, kvantisering og lagring av lyd

INF 1040 høsten 2008: Oppgavesett 9 Sampling og kvantisering av lyd (kapittel 11)

Repetisjon: Sampling. Repetisjon: Diskretisering. Repetisjon: Diskret vs kontinuerlig. Forelesning, 12.februar 2004

Lyd. Litt praktisk informasjon. Litt fysikk. Lyd som en funksjon av tid. Husk øretelefoner på øvelsestimene denne uken og en stund framover.

Sampling av bilder. Romlig oppløsning, eksempler. INF Ukens temaer. Hovedsakelig fra kap. 2.4 i DIP

Temaer i dag. Mer om romlig oppløsning. Optisk avbildning. INF 2310 Digital bildebehandling

Forelesning, 23.februar INF2400 Sampling II. Øyvind Ryan. Februar 2006

Forelesning, 17.februar INF2400 Sampling II. Øyvind Ryan. Februar 2005

Løsningsforslag til kapittel 11 sampling, kvantisering og lagring av lyd

Introduksjon til lyd. Det ytre øret. Fra lydbølger til nerveimpulser. INF Digital representasjon : Introduksjon til lyd.

Lyd på datamaskiner. Knut Mørken. November 17, 2008

Lektor 2 for Stovner VGS 12. februar 2013

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

Digitalisering av lyd

Kap 7: Digital it prosessering av analoge signaler

Konvolusjon og filtrering og frevensanalyse av signaler

f(t) F( ) f(t) F( ) f(t) F( )

INF 1040 høsten 2009: Oppgavesett 8 Introduksjon til lyd (kapittel 9 og 10)

1.8 Binære tall EKSEMPEL

KAPITTEL 4 Følger og differensligninger

LØSNINGSFORSLAG TIL SIGNALBEHANDLING 1 JUNI 2010

INF1040 Digital representasjon

Den analoge verden blir digitalisert

BRUKERMANUAL Digispiller

Digital sampling og analog estetikk

UTVIDET TEST AV PROGRAM

DV - CODEC. Introduksjon

UNIVERSITETET I OSLO

Fourier-analyse. Hittil har vi begrenset oss til å se på bølger som kan beskrives ved sinus- eller cosinusfunksjoner

Lydproduksjon. t.no. ww ww.hin. Forelesning 6 Signaler Digital audioteknologi MMT205 - F6 1

Det fysiske laget, del 2

Introduksjon til lyd. Litt praktisk informasjon. Det ytre øret. Fra lydbølger til nerveimpulser

Løsningsforslag til kapittel 10 - Lydbølger

MAT-INF 2360: Obligatorisk oppgave 1

UNIVERSITETET I OSLO.

UNIVERSITETET I OSLO

Noen presiseringer mhp Diskret Fourier Transform. Relevant for oblig 1.

FFT. Prosessering i frekvensdomenet. Digital signalprosessering Øyvind Brandtsegg

Ved bruk av 5.1 høyttaleroppsett: - Veksler midtre høyttaler og subwoofer

UNIVERSITETET I OSLO

Tips til arbeidet med obligatorisk oppgave 2 i MAT-INF 1100 høsten 2004

IT1101 Informatikk basisfag 4/9. Praktisk. Oppgave: tegn kretsdiagram. Fra sist. Representasjon av informasjon binært. Ny oppgave

KAPITTEL 10 Flerskala-analyse og kompresjon av lyd

Uke 9: Diskret Fourier Transform, I

Hjelpemidler: D Ingen trykte eller håndskrevne hjelpemidler tillatt. Bestemt, enkel kalkulator tillatt.

SUB BRUKERMANUAL 05 ILLUSTRASJONER 07 SPESIFIKASJONER 07 FEILSØKING. 1

Datakonvertering. analog til digital og digital til analog

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Om obligatoriske oppgave 2 Bakgrunn og tips

SPEKTALANALYSATORER. Fig. 1 Illustrasjon av sammenhengen tidsfunksjon - frekvensspektrum

MPEG-1 lag 1, 2 og lag 3

Datakonvertering. analog til digital og digital til analog

Semesteroppgave for interaktiv musikk

STE 6146 Digital signalbehandling. Løsningsforslag til eksamen avholdt

UNIVERSITETET I OSLO.

Løsningsforslag, Ukeoppgaver 10 INF2310, våren 2011 kompresjon og koding del II

INF oktober Dagens tema: Uavgjørbarhet. Neste uke: NP-kompletthet

Fourier-Transformasjoner II

SUB BRUKERMANUAL 05 ILLUSTRASJONER 07 SPESIFIKASJONER 07 FEILSØKING. 1

Tittel: Design av FSK-demodulator. Forfattere: Torstein Mellingen Langan. Versjon: 1.0 Dato: Innledning 1

Obligatorisk oppgave nr 4 FYS Lars Kristian Henriksen UiO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Installering Før installering: Hvis du har et internt lydkort, deaktiverer du det på hovedkort-bios og fjerner tilknyttet programvare og drivere.

INF1040 Digital representasjon. Oppsummering. Glyfer og tegn. Den endelige løsning UNICODE og ISO bit ulike tegn!

INF1400 Kap 0 Digitalteknikk

7.3 Samplerate-konvertering

Oblig 1 FYS2130. Elling Hauge-Iversen

INF109 - Uke 1b

Vedlegg B; Nedbøralgoritme.

Introduksjon til lyd. Litt praktisk informasjon. Fra lydbølger til nerveimpulser. Det ytre øret

Hvorfor? Læreplanen. Læreplanen MUSISERE KOMPONERE LYTTE. Digitale verktøy kommer inn som en naturlig del i alle hovedområdene.

Transkript:

Litteratur : Temaer i dag: Neste uke : Sampling, kvantisering og lagring av lyd Cyganski kap 11-12 Merk: trykkfeilliste legges på web-siden Sampling av lyd Kvantisering av lyd Avspilling av samplet og kvantisert lyd Formater for lagring av lyd Bilder, Cyganski kap 5 Generelle lydsignaler Et resultat fra Fourier-teori sier at vi kan uttrykke et vilkårlig periodisk signal som en endelig sum av sinussignaler med ulik frekvens Hver komponent av sinussignalet vektes med en tilsvarende amplitide A i (A i beskriver hvor sterk komponent i er sammenlinget med de andre komponentene) Alle lydsignaler vi hører, kan beskrives som signaler som inneholder ulik frekvensinformasjon (frekvensene kan endre seg med tiden, men i et kort øyeblikk hører vi en lyd som består av svingninger med et antall ulike frekvenser) Ved å se på frekvensspekteret til signalet, kan vi se hvilke frekvenser det inneholder (lærer mer om dette i INF 2400 Stikkordet er Digital Signalbehandling) frekvensinformasjon Dette kan hjelpe oss når vi skal representere lyd INF1040-Lyd2-1 INF1040-Lyd2-2 Sum av harmoniske sinus-komponenter Mer om sum av sinuser Skarpe endringer i kurveform, som feks en firkantpuls, trenger man mange sinuskomponenter for å representere Slike lyder dekker derfor mange frekvenser i frekvensspekteret 4/πcos(2πft), f=2 4/π(cos(2πft)+ 1/3cos(2π3ft) 4/π(cos(2πft)+ 1/3cos(2π3ft)+1/5*cos(2π5ft) Sum av 3 harmoniske sinuser 4/π(cos(2πft)+ 1/3cos(2π3ft)++1/13*cos(2π13ft) Sum av 7 harmoniske sinuser INF1040-Lyd2-3 INF1040-Lyd2-4

Frekvensinnhold og båndbredde Eksempel båndbredde Alle lydsignaler kan betraktes som å inneholde et endelig sett av ulike frekvenser lyd30wav Odd Børretzen med full CD-kvalitet, frekvenser opp til 44 100 Hz Begrepet båndbredde referer til ulike frekvensbånd Hvis vi skal spille signaler opp til 20 000 Hz må vi ha en båndbredde på 20 000 Hz lyd31wav Odd Børretzen - kun frekvenser opp til 22 050 Hz Dette må vi ta hensyn til når vi skal lagre lyd feks på en CD lyd32wav Odd Børretzen - kun frekvenser opp til 11 025 Hz Vi kan også utnytte informasjon om at mennesket hører frekvenser mellom 20 og 20 000 Hz lyd33wav Odd Børretzen - kun frekvenser opp til 8 000 Hz Ulike lydsignaler inneholder ulike bånd av frekvensspekteret: Musikk, feks orkestermusikk, setter store krav til båndbredde (20000 Hz) Tale ligger på max 3 000 Hz lyd34wav lyd35wav Odd Børretzen - kun frekvenser opp til 4 000 Hz Odd Børretzen - kun frekvenser opp til 1 000 Hz Dette brukes i telefonoverføringer (max 4 000 Hz) Det mest sentrale er den maksimale frekvensen vi ønsker å representere INF1040-Lyd2-5 INF1040-Lyd2-6 Sampling av lyd Sampling Alle lydsignaler må samples og kvantiseres for å kunne lagres digitalt Sampling representerer overgang fra et signal som er kontinuerlig i tid til et signal som er diskret i tid Prosessen som gjør signalet diskret i tid kalles sampling Å sample et signal vil si å plukke ut verdien til signalet på tidspunkter med gitte intervaller Lydstyrken ved tiden t, x(t) må så kvantiseres for å kunne lagres (feks til un-signed byte som gir verdiene 0-255) Vi kan ikke lagre uendelig mange punkter på denne kurven, vi må velge et endelig antall tidspunkter og plukke ut bare en verdi pr tidspunkt Vi lagrer lydstyrken bare for de svarte punktene INF1040-Lyd2-7 INF1040-Lyd2-8

Mer om sampling Dette er den kontinuerlige kurven vi skal sample Tidspunktene som vi skal sample på Sampling gjøres av AD-konverteren ved at en Lydstyrke / spenning holdes i et lite tidsintervall (samplingsintervallet) Samplingsintervall og samplingsfrekvens Hvor ofte må vi sample et lydsignal, dvs hvor tett må tidssamplene ligge? Vi antar at vi sampler uniformt, dvs med like lange tidsintervaller Avstanden i tid mellom samplene kalles samplingsintervallet T s (måles i sekunder) Fra samplingsintervallet finner vi samplingsfrekvensen f s f s =1/T s (måles i Hertz) Hvor ofte vi må sample avhenger av hvor fort signalet varierer, dvs hvilke frekvenser signalet består av Det mest kritiske er signalets høyeste frekvens En kvinnestemme må samples med høyere frekvens enn en mannsstemme ( Figurene 1013 og 1015 i boka er byttet om) INF1040-Lyd2-9 INF1040-Lyd2-10 Oversampling og undersampling Anta at vi har et sinus-signal med en frekvens f=125 Hz Hvis vi sampler dette signalet med en samplingsfrekvens f s =1 khz = 1 000 Hz, så får vi f s /f = 1 000/125 sampler = 8 sampler pr periode T Dette er en oversampling Se plansje 26 i boka (Perioden T ble forklart i Lyd1, foil 15) Sampler vi med f s = 250 Hz, får vi f s /f = 250/125 = 2 sampler pr periode T Dette er det minste antall sampler pr periode som vil gi en korrekt rekonstruksjon av en sinusoid NB! Plansje 27 er feil, den er identisk med 26! Undersampling, f s = 187,5 Hz (ikke 187,5kHz som i figurteksten til plansje 28!) gir f s /f=187,5/125=12/8 sampler pr periode, altså 12 sampler på 8 perioder, som i plansje 28 Men det rekonstruerte signalet er på 625 Hz, ikke 125 Hz! Vi har fått en forvrenging av frekvensinnholdet, aliasing Mer om sampling La oss si at vi har samplet bare for de 3 røde punktene Hvordan ser kurven ut mellom punktene? INF1040-Lyd2-11 INF1040-Lyd2-12

Fra samplede punkter til avspilling Mer om avspilling Når lydsignalet skal spilles av, må det konverteres til et kontinuerlig / analogt signal igjen Avspillingsprogrammet må også fylle ut med lydverdier mellom hvert sampel, dvs feks mellom tidspunkt og tidpunkt Denne konverteringen kalles DA-konvertering (Digital -> Analog) og gjøres feks i CD-spilleren (eller i programmet play) For å spille av lydsignalet, må vi vite samplingsraten Vi må vite tidsintervallet mellom et sampel og det neste Avspillingsprogrammet vet at på tidspunkt var lydstyrken l 1, og på tidspunkt var lydstyrken l 2 Dette kan gjøres på flere måter (algoritmer), feks ved Sette inn nuller Sette inn kopier av forrige sampel Lineær interpolasjon Høyere-ordens interpolasjon l 0 l 1 l 2 l 3 l 4 l 5 l 6 INF1040-Lyd2-13 INF1040-Lyd2-14 Avspilling ved å sette inn nuller Denne algoritmen sier at lydsignalet har lydstyrke 0 på alle tidspunkt mellom samplene, feks mellom tidspunkt og tidpunkt Avspilling ved å sette inn kopier av sampel Denne algoritmen sier at lydsignalet har samme lydstyrke på alle tidspunkt mellom samplene, feks mellom tidspunkt og tidpunkt Mellom tidspunktene og tidpunkt ligger det uendelig mange punkter med lydstyrke 0 Dette gjøres vanligvis ved at vi sier vi skifter fra lydstyre l 0 til l 1 på et tidspunkt midt mellom sampel og, osv Med denne metoden skifter signalet brått fra en verdi til en annen Brå skifter gir ikke alltid god lyd! Husk at for å representere slike brå skift trengs det mange frekvenskomponenter, helt opp til de mest høyfrekvente (foil 3&4)! INF1040-Lyd2-15 INF1040-Lyd2-16

Avspilling ved lineær interpolasjon Algoritmen sier at lydsignalet har endrer seg gradvis fra den lydstyrken det hadde på tidspunkt til den lydstyrken det skal ha på tidspunkt Avspilling ved høyere-ordens interpolasjon Algoritmen antar at lydsignalet har endrer seg gradvis fra den lydstyrken det hadde på tidspunkt til den lydstyrken det skal ha på tidspunkt Lydstyrken på tidspunkt mellom til finnes ved å legge en rett linje mellom verdien på tidspunkt og verdien på tidspunkt Med denne måten blir det ikke så brå skifter i lydstyrke Den avspilte lyden vil ikke inneholde så høye frekvenser som i forrige algoritme Lydstyrken på tidspunkt mellom til finnes ved å tilpasse en glatt kurve (feks et polynom) mellom verdiene på tidspunkt og verdien på tidspunkt, osv Kurven skal gå gjennom alle punktene,,,,, t g og, og den skal være glatt i skjøtene (for eksempel en spline-kurve) Med denne måten blir det glatte overganger i lydstyrke INF1040-Lyd2-17 INF1040-Lyd2-18 Kommentar til de spesielt interesserte I virkeligheten er det som skjer i en moderne CD-spiller en kombinasjon av både digital og analog signalbehandling Lydsignalet oppsamples, og filteres både med software (digitale filtere) og i elektronikken (analoge filtere) Nyquist-teoremet Anta at et analogt signal er bånd-begrenset, dvs at det ikke har sinuskomponenter med frekvenser over et maksimum f max Signalet kan da rekonstrueres eksakt fra de samplene vi har, hvis samplingsfrekvensen f s = 1/T s er større enn 2f max 2f max kalles Nyquist raten Hvis vi sampler med samplingsfrekvens f s lik 2f max, så sampler vi i henhold til Nyquist-teoremet Anta at vi skal sample lyd slik at vi kan rekonstruere alle hørbare frekvenser (opp til 20 000 Hz) uten noen feil eller forvrenging Hvor mange sampler må vi da minst ha per sekund? INF1040-Lyd2-19 INF1040-Lyd2-20

Sampling med Nyquist-raten Diskret til analog rekonstruksjon gir som resultat den kombinasjon av sinusoider som er kompatibelt med det diskrete signal Vi antar at signalet er samplet med f s =2f max har de lavest mulige frekvenser Sampler vi under Nyquist raten og senere forsøker å rekonstruere det analoge signalet får vi rekonstruert feil signal I praksis oversampler vi med en faktor for å få god rekonstruksjon Aliasing, undersampling og oversampling Aliasing betegner fenomenet at en sinusoid ved for lav samplingsrate gir opphav til samme diskrete signal som en sinusoid med lavere frekvens Undersampling betyr at vi sampler med lavere samplingsrate enn 2f max Da får vi forvrenginger i frekvensinnholdet/aliasing Oversampling betyr at vi sampler med en høyere samplingsrate enn 2f max I rekonstruksjon gjøres en filtrering/prosessering for å få det analoge signalet Denne filtreringen blir enklere, og kan gjøres raskere, hvis vi oversampler Dersom vi oversampler med for høy faktor, øker lagringsbehovet mye Det er ikke dette 4xoversampling på CD-spilleren betyr! INF1040-Lyd2-21 INF1040-Lyd2-22 Kvantisering - antall bit pr sampel På tidspunkt t skal vi lagre verdien til det kontinuerlige lydsignalet x(t) Vi minner om: Hvor mange bit trenger vi pr lydsampel? Lyden vi skal sample er feks en elektrisk spenning som varierer mellom V min og V max Tenk at vi deler området mellom V min og V max i N ulike nivåer Nivåene har som regel lik bredde (uniform kvantisering) V min V max Antall nivåer vi trenger gir oss hva slags datatype vi må velge 8 bit: 2 8 = 256 nivåer 12 bit: 2 12 =4 096 nivåer 16 bit: 2 16 = 65 536 nivåer 32 bit: 2 32 = 4 294 967 296 nivåer INF1040-Lyd2-23 INF1040-Lyd2-24

Mer om kvantisering Antall bit pr sampel kalles ordlengde Med 8 bits ordlengde kan vi lagre verdiene 0-256 eller -128 til 127 Med heltall deler vi inn intervallet mellom v min og v max i N nivåer med bredde v=(v max -v min )/N Alle verdier for x(t) som ligger i samme celle representerer vi med samme verdi (kalles rekonstruksjonsnivå) Vi finner verdier x(t) skal representeres med som x( t) v v out = min N vmax vmin Hvor mange bits trenger vi for å få så mange nivåer som vi vil? Output Rekonstruksjonsnivå Input Mer kvantisering Anta at x(t) rekonstrueres til verdien f Da får vi en kvantiseringsfeil e = x(t)-f La oss si at vi velger f slik at den ligger midt i kvantiseringscellen Den største kvantiseringsfeilen vi kan få for et sampel er gitt ved bredden på en kvantiseringscelle: f x(t) Alle verdier i dette intervallet kvantiseres til samme verdi f Kvantiseringsfeilen e INF1040-Lyd2-25 INF1040-Lyd2-26 Hvor mange nivåer trenger vi for lyd? Når vi skal velge antall nivåer og dermed ordlengden, kan vi bruke det vi vet om hva øret kan oppfatte Kvantiseringsfeil kalles også kvantiseringsstøy Et mål på hvor stor feilen er, er SNR-raten (Signal-to-noise ratio) Kvantiseringsfeil som er så små at vi ikke kan høre dem, er OK Samtidig kan vi velge ulike nivåer for tale, musikk og telefoner Musikk-CD: 16 bit (65 536 nivåer), samplingsrate 44 100 Hz Digital telefon: 8 bit, samplingsrate 8 000 Hz Merk: i tillegg kommer smart koding og kompresjon Kvantisering med 4 vs 16 bit Diskretisert variabel 1 08 06 04 02 0-02 -04-06 -08 Kvantiserings nivåer 16 bit 4 bit -1-1 -08-06 -04-02 0 02 04 06 08 1 Kontinuerlig variabel INF1040-Lyd2-27 INF1040-Lyd2-28

Beethovens 9 symfoni Effekten av ordlengde 015 01 005 Bethovens 9, samplet med 441 khz 16 bit kvantisering 4 bit kvantisering Musikk på CD-er ligger med 16 bit pr sampel Prøv programmet DACSimulator med ulike musikkstykker og taleeksempler Varier mellom 1 og 16 bit pr sampel 0 Amplitude -005-01 -015 16 bit kvantisering lyd36wav -02-025 -03 0 20 40 60 80 100 120 Tid 4 bit kvantisering (dum og dårlig) lyd37wav INF1040-Lyd2-29 INF1040-Lyd2-30 Lagring av digital lyd Anta at vi har samplet med samplingsraten f s, og at vi har samplet minst i henhold til Nyquist raten Vi må lagre f s Da kan vi regne ut T s, dvs hvor lang tid hvert sampel skal spilles av med Hvis lydsignalet varer i N sekunder, må vi lagre N*f s sampler Hvert sampel lagres med valgt datatype (vanligvis 16 bit integer) Hvis vi lagrer i stereo, lagrer vi 2 kanaler (hver med feks 16 bit) Skal vi lagre 1 time musikk som er samplet med samplingsfrekvens 20 000Hz, blir lagringsbehovet 20 000*3 600*16 bit = 1 152 000 000 bit = 144 000 000 byte = 144 MB i mono eller 288 MB i stereo Fra artist via CD til ditt øre ADconverter Sample med 44 100 Hz Kvantisere til 16 bit Filtering Interpolasjon DA-converter 8xOversampling: legg til 7 kopier av hvert sampel før DA-konvertering for å få bedre rekonstruksjon INF1040-Lyd2-31 INF1040-Lyd2-32

Hva ligger på en musikk-cd? Data lagres som bitmønstre i spesielle posisjonsceller/bins Lagringsmedium Lagring og kapasitet Kapasitet Kassett 016 MB Standard for CD audio kalles Red Book Audio-CD er deles inn i følgende enheter: 5 1/4 diskett 12 MB Frame (24 bytes data) 3 1/2 diskett 14 MB En blokk består av 98 frames (24 x 98 = 2 352 bytes data) Enheten sekund har 75 blokker Harddisk 5 000 MB-> 100 000 MB->?? Minutt består av 60 sekunder Kapasiteten er 74 minutter CD-ROM 600 MB Avspilling skjer ved at rotasjonshastigheten varieres (innenfra og utover) slik at 75 blokker leses pr sekund med data rate: DVD 4 700-17 000 MB R = 44 100 samples/s*2 byte*2 kanaler = 176 400 bps INF1040-Lyd2-33 INF1040-Lyd2-34 Noen kjente lydformater MP3 (En del av Motion Picture Experts Group (MPEG), layer3, ~64 Kb/s (ukomprimert CD 705 Kb/s)) AU (Sun s lydformat, 8-12 bit, endel brukt på internett) WAV (Microsoft/IBM, offisiell standard for PC) MID (For MIDI koder, ikke all slags lyd) MOD (Krysning mellom WAV og MID) Smakebiter fra signalbehandling Hvordan skal vi best interpolere i DA-konverteringen? Hvordan forsterker vi bassen? Hvordan fjerner vi høyfrekvens støy? Hvordan mikser vi sammen ulike instrumenter? Kan vi spille av med annen hastighet? Hvordan legger vi til ekko/romklang? Kan jeg lage min egen synth? Hvordan lager jeg en sonar eller ultralydscanner? Lær mer i INF 2400 - Digital signalbehandling Krever MAT 1100 og MAT 1110 INF1040-Lyd2-35 INF1040-Lyd2-36