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

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

Sampling, kvantisering og lagring av lyd

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

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

INF 1040 Sampling, kvantisering og lagring av lyd

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

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

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

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

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

Løsningsforslag til kapittel 10 - Lydbølger

INF 1040 Sampling, kvantisering og lagring av lyd

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

Oblig 1 FYS2130. Elling Hauge-Iversen

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

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

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

UTVIDET TEST AV PROGRAM

INF januar 2017 Ukens temaer (Kap med drypp fra kap. 4. i DIP)

MAT-INF 2360: Obligatorisk oppgave 1

Forkunnskapskrav. Hva handler kurset om. Kontaktinformasjon. Kurset er beregnet på en student som kan

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

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

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

Konvolusjon og filtrering og frevensanalyse av signaler

FYS2130 OBLIG 1 Anders Hafreager

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

INF 2310 Digital bildebehandling

Sampling ved Nyquist-raten

UNIVERSITETET I OSLO

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

INF 2310 Digital bildebehandling

INF 2310 Digital bildebehandling

INF 2310 Digital bildebehandling

Digitalisering av lyd

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Obligatorisk oppgave nr 4 FYS Lars Kristian Henriksen UiO

INF 1040 Digital representasjon 2007 Utkast til - Obligatorisk oppgave nr 2

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

STE 6146 Digital signalbehandling. Løsningsforslag til eksamen avholdt

Repetisjon: Eksempel. Repetisjon: Aliasing. Oversikt, 26.februar Gitt. Alle signaler. Ettersom. vil alle kontinuerlig-tid signaler.

Obligatorisk oppgave nr 4 FYS Lars Kristian Henriksen UiO

TMA Matlab Oppgavesett 2

INF Digital representasjon : Introduksjon til lyd

Ghost amplitude spectrum. d=6 m V=1500 m/s c= 1

LØSNINGSFORSLAG TIL SIGNALBEHANDLING 1 JUNI 2010

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

Utkast til: Løsningsforslag til eksamen i. Ingeniørfaglig yrkesutøvelse og arbeidsmetoder. 18.des for oppgave 1, 2 og 3

TMA Kræsjkurs i Matlab. Oppgavesett 2/3

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

Frevensanalyse av signaler (del 2) og filtrering av bilder

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

6DPSOLQJ DY NRQWLQXHUOLJH VLJQDOHU

TDT4105/TDT4110 Informasjonsteknologi grunnkurs:

MAT-INF 2360: Obligatorisk oppgave 1

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

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

INF1411 Obligatorisk oppgave nr. 4

Fysisk Lag. Overføringskapasitet. Olav Lysne med bidrag fra Kjell Åge Bringsrud, Pål Spilling og Carsten Griwodz

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

UNIVERSITETET I OSLO

Universitetet i Stavanger Institutt for petroleumsteknologi

Enkle logiske kretser Vi ser på DTL (Diode Transistor Logikk) og 74LSxx (Low Power Schottky logikk)

Løsningsforslag til ukeoppgave 12

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

( x+ π 2) Bakgrunn: Sinus og cosinus. Bakgrunn: Samplet sinus i 1D. Bakgrunn: Samplet sinus i 2D. Bakgrunn: Sinus i 2D. sin( x)=cos.

UNIVERSITETET I OSLO

AUDACITY. Lyninnføring i lydopptak- og redigeringsprogrammet. Fagdag i fysikk, : Lastes ned gratis fra

Kap 7: Digital it prosessering av analoge signaler

LABORATORIEØVELSE B FYS LINEÆR KRETSELEKTRONIKK 1. LAPLACE TRANSFORMASJON 2. AC-RESPONS OG BODEPLOT 3. WIENBROFILTER

Den analoge verden blir digitalisert

UNIVERSITETET I OSLO.

EKSAMEN Løsningsforslag Emne: Fysikk og datateknikk

Midtveiseksamen Løsningsforslag

Oblig 3 - Mathias Hedberg

Prosjektoppgave i Ingeniørfaglig yrkesutøving og arbeidsmetoder - orientering om prosjektet

UNIVERSITETET I OSLO

01 Laplace og Z-transformasjon av en forsinket firkant puls.

INF Digital representasjon : Introduksjon til lyd

LØSNINGSFORSLAG TIL EKSAMEN STE 6219 Digital signalbehandling

y(t) t

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

EKSAMEN VÅREN 2007 SENSORTEORI. Klasse OM2

Lab 7 Operasjonsforsterkere

UNIVERSITETET I OSLO

«OPERASJONSFORSTERKERE»

Midtveiseksamen. INF Digital Bildebehandling

3UDNWLVN DQYHQGHOVH DY ')7

For J kvantiseringsnivåer er mean square feilen:

UNIVERSITETET I OSLO

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

INF1040 Digital representasjon Oppsummering 2008 del II

INF1040 Digital representasjon Oppsummering 2008 del II

INF Stikkord over pensum til midtveis 2017 Kristine Baluka Hein

Cubase Digital lydredigering

Snake Expert Scratch PDF

Forelesening INF / Spektre - Fourier analyse

Transkript:

Løsningsforslag til kapittel 11 sampling, kvantisering og lagring av lyd Sampling og samplingsrate Hvis vi har et lydsignal som inneholder frekvenser fra 100 til 500 Hz, hvilken samplingsrate og samplingsintervall må vi da bruke for at vi skal sample i henhold til Nyquist-teoremet? Den maksimale frekvensen vi har er 500 Hz. Vi må sample minst 2 ganger den maksimale, dvs. med samplingsfrekvens (også kalt samplingsrate) på minst 1000 Hz. Dette tilsvarer et samplingsintervall på 1/1000s eller 1ms. Hva slags effekter kan vi få hvis vi ikke sampler i henhold til Nyquist-teoremet? Når vi undersampler, kan aliasing oppstå. Ved aliasing rekonstuerer man feil signal. I rekonstruksjonen antar man at man har samplet ofte nok og rekonstruerer i den tro at det originale signalet ikke har frekvenser større enn samplingsraten fs/2. Det rekonstruerte signalet vil da ikke inneholde frekvenser større enn fs/2, dvs. høyere frekvenser er fjernet. Aliasing medfører frekvensforvrengning. Kvantisering Vi skal diskretisere temperaturen ute med en presisjon på en halv grad. Vi antar at temperaturen varierer mellom 20 og 40 C. Hvor mange temperaturnivåer trenger vi til dette? Hvor mange bit trenger vi for å lagre så mange nivåer? Vi trenger nivåene 20, -19.5, -19,...39.5, 40. Teller vi etter blir dette (40-(- 20)/0.5)+1=121 nivåer Vi trenger 7 bit til å lagre 121 nivåer fordi 2 7 =128. Forklar til hvilke nivåer temperaturene 18.1, 18.5, 19.2 og 20.1 vil bli kvantisert. Gjør du noen antagelser underveis? Hva som skjer, avhenger av hvordan vi runder av, og hvor vi setter grensene mellom nivåene. Det er mulig å tenke seg flere løsninger, f.eks. at vi setter intervall 1 fra 20 til- 19.5 [-20,-19.5> (med notasjonen menes at tallet i intervallet skal være - 20 men <19.5), og at neste intervall blir [-19.5, 19.0>, osv. Det siste intervallet blir da [40,40.5> Vi kan også sette intervallgrensene slik at 20 faller midt i et intervall, dvs. slik at første intervall blir [-20.25,19.75>, [19.75,19.25>,...[39.75,40.25>. 18.1 kvantiseres i begge tilfeller til 18. 18.5 kvantiseres i begge tilfeller til 18.5. 19.2 kvantiseres i begge tilfeller til 19. 20.1 kvantiseres i begge tilfeller til 20. Andre valg av hvor intervallene starter kan gi andre svar, spesielt for 18.5.

Sampling og aliasing Anta at en 5.5 khz sinusoid samples med en samplingsfrekvens på 8 khz. Hva blir alias-frekvensen? Alias-frekvensen er differansen mellom samplingsfrekvensen og signalets frekvens, når f < fs < 2*f. Her blir dette 8 khz 5.5 khz = 2.5 khz Tegn en skisse som viser 8 samplingsintervaller, og vis at 5.5 perioder av det sanne signalet passer med 2.5 perioder av alias-signalet. Anta at begge signalene er sinus-funksjoner. Hvor store er faseforskyvningen av aliassignalet? Med en samplingsfrekvens på 8 khz blir samplingsintervallet 1/8000 sekund, eller 1/8 millisekund (ms), som er det samme som 0.125 ms. 8 samplingsintervaller er da 1 ms, så vi skal yegne en skisse av en sinusoid her en sinus(f t) med f=5.5 khz over et tidsintervall på 1 ms. Dette svarer til den heltrukne kurven i figuren nedenfor. Vi kunne selvsagt like gjerne tegnet en kurve for en sinus med frekvens 5.5 Hz over et tidsintervall på 1 sekund. Utseendet av kurven hadde blitt det samme. Vi ser at vi har 5.5 perioder av dette 5.5 khz signalet innenfor tidsrommet på 1 ms. Den stiplede kurven viser et alias-signal med frekvens 2.5 khz, faseforskjøvet med π. Vi ser at vi har 2.5 perioder av dette signalet innenfor tidsrommet 1 ms, Og at med denne faseforskyvningen faller de to signalene sammen på de tidspunktene da 5.5 khz signalet ble samplet, nemlig hvert 0.125 ms (de tynne vertikale strekene på tidsaksen. En sinusoid med frekvens 2.5 khz passer altså med de diskrete samplene vi har av en 5.5 khz sinusoid, når den er samplet med 8 khz, dvs hvert 0.125 ms.

5.5 khz 2,5 khz 1 Amplitude 0-1 0 0,125 0,25 0,375 0,5 0,625 0,75 0,875 1 tid, millisekunder

Legge inn lyd i en XHTML-fil Du kan legge inn linker til lydfiler av typen.wav i XHTML. Du gjør dette ved å legge inn følgende i XHTML-filen: <a href= http://www.ifi.uio.no/~inf1040/lydfiler/star.wav > Dette er lydfilen star.wav </a> Prøv å legge inn noen lenker til lydfiler i en XXHTML-fil. Ta for eksempel utgangspunkt i den enkle HTML-filen du laget den første øvingsuken. Lagre dokumentet på et passende sted, gi riktige filrettigheter, og prøv å åpne det i Mozillanettleseren. Et lite eksempel: <html> <!-- this is an example of how to write HTML in XHTML style --> <head> <title>this is the title of the document</title> <head> <body> <h1>her er en liten lydfil</h1> <a href=http://www.ifi.uio.no/~inf1040/lydfiler/star.wav > Klipp fra Star Wars </a> <hr/> <p>created by NN on September 11, 2003</p> </body> </html> Programmet DACSimulator Programmet ligger på /ifi/ganglot/k01/inf1040/www_docs/java og heter DACSimulator. Programmet virker bare dersom variabelen CLASSPATH er satt riktig (som forrige uke). Prøv nå å starte programmet DACSimulator ved å si java DACSimulator Nå får du opp et vindu med valg av noen predefinerte musikkstykker og lyder, og et panel der du kan velge samplingsraten til utgangssignalet og hvor mange bit hvert sampel representeres med. Bli kjent med lyder og spektra. Velg noen av de predefinerte signalene. Velg Show plot og se på tidskurven og frekvensspekteret til signalene. Ser du noen forskjell i frekvensinnhold? Hint: du bør endre skalaen på x-aksen i plottet til f.eks. å bare vise frekvenser opp til 8000Hz. Dette gjør du ved å velge Options->X-axis fra Output signal-vinduet. Tast inn verdien du ønsker og trykk return. Merk: velger du nytt inputsignal må du gjøre dette om igjen.

Velg så User-specified og les inn en lydfil fra ~inf1040/www_docs/lydfiler (bruk /ifi/eisa/k00/inf1040/www_docs/lydfiler/). Nå ligger det mange typer lydeffekter der. Let litt rundt og hør forskjellige lyder, se på de tilhørende spektrene. De fleste av disse lydene er samplet på 11025 Hz, så de høres best med denne samplingsraten (mer om samplingsrater senere). Velg chirp.wav. Se hva som skjer i frekvensspekteret. Hvordan stemmer dette med det du hører? Signalet hører vi stiger i frekvens fra en lavere til en høyere tone. Dette ser vi i signalplottet ved at kurven svinger gradvis raskere, og i frekvensspekteret ved at toppunktet som viser den dominerende frekvensen flytter seg fra lavere til høyere frekvenser mens lyden stiger. Prøv å velge et slagverksinstrument, f.eks. congas, pauke eller slagverk. Se også på støysignalet tonestoy.wav. Med congas.wav hører vi enkelte slag, og der er mer eller mindre stille mellom slagene. Vi ser at frekvensspektret forandrer seg (frekvensene skifter) når man spiller på de ulike congas-trommene (vi hører forskjell på ulike toner i slagene). Tonestoy.wav må vi høre på i output sampling rate 8000 Hz. Vi hører en tone, men også masse sus. I frekvensspekteret er denne suses fordelt over alle frekvenser, dvs. det er hvit støy (for de spesielt interesserte). Velg f.eks. filen baby.wav, som er samplet med samplingsrate 11025 Hz. Velg output sampling rate 11025 Hz og hør lyden slik den egentlig skal være. Sett så samplingsraten opp gradvis til 16000 Hz og etterhvert opp til 44100 Hz, men hold interpolation function til zeros. Hvordan endres lyden? Når vi øker output sampling rate høres lyden mer skurrete ut, vi introduserer stadig flere høyfrekvente komponenter som ikke var til stede i originalen. Se nå på spekteret til denne lyden når du øker output samplingsrate gradvis fra 11025 og oppover. Skjer det noe i høyfrekvente områder? NB: merk at skalaen på x-aksen endres. Skjer det noe hvis vi endrer interpolasjonsfunksjonen til copy previous eller linear. Dette ses lettest ved å se på spekteret ved output samplingsrate 44100. Vi ser da fire kopier av det originael spekteret, som lå mellom 0 og 11025 Hz (siden input sampling rate er 11025), en kopi fra 11025 til 22050, en kopi fra 22050 til 33000, og en kopi fra 33000 til 44000. Når vi spiller av ved output sampling rate 44100 får vi med alle disse høyfrekvente kopiene også. Ved output sampling rate 32000 lages 3 kopier, og ved output sampling rate 22000 lages 2 kopier. (Disse høyfrekvente kopiene fjernes vanligvis ved lavpassfiltrering i rekonstruksjonen for de interesserte). Ved interpolasjon Copy previous vil vi også finne kopier av spekteret i intervallene fra 11025-22050, og oppover, men disse kopiene har lavere amplitude og høres ikke så godt. Lyden er mye bedre, men ikke bra. Ved interpolasjon Linear er kopiene ytterligere dempet i styrke. Kommentar: vi fokuserer på å HØRE forskjellen. Å skjønne forklaringen på dette er langt utenfor pensum.

Antall bit pr. sampel Velg et av de predefinerte musikkstykkene. Sett samplingsraten på utgangen lik samplingsraten på inngangen og antall bit pr. sampel til 16 bit. Prøv så å gå gradvis ned på antall sampler pr. bit. Når begynner du å høre at kvaliteten på musikken blir dårligere? Hvordan endrer lydsignalet seg? Etter hvert høres en summing i tillegg til musikken. Når man hører summingen, avhenger jo litt av volum og kvalitet på øretelefoner. Hos meg hører jeg noe f.eks. når jeg går fra 11 til 10 bit, men det avhenger av volumet. Går jeg nedover til 9 bit og mindre, blir det plagsomt og etter hvert stygt. Er det forskjell på kammermusikk som Mozart eller Tveit og orkestermusikk som StarWars og Organ (orgelsymfoni)? Når du kan høre forskjell, kan du også se forskjell i signalplottet og frekvensplottet? Hvis vi ser på signalplottet, ser vi etter hvert at amplitudeverdiene klippes, dvs. at toppene blir flate. For Star Wars ser jeg dette ca. ved 7 bit, og det blir mer tydelig etter hvert som vi går nedover. For Mozart ses klipping ved litt høyere antall bit. I frekvensplottet er det vanskelig å se forskjellene like lett som vi hører dem. Når du går ned til 6 bit eller mindre, kan du da se de ulike kvantiseringsnivåene? Samplingsrate Sett nå antall bit pr. sampel tilbake til 16. Velg noen av de predefinerte musikkeksemplene. Endre gradvis samplingsraten til lavere rate. Når blir musikken dårligere? Ved output samplingsrate 11025 Hz er det noe forskjeller, men forskjellene er tydeligere når vi går ned til 8000Hz for Mozart. Orgelsymfonien mister sin særegne klang ved 11025 Hz, og enda mer ved 8000 Hz. Prøv deg så på enkle signaler, som en sinus med frekvens 400 Hz. For syntetisk genererte signaler kan du også velge hvilken samplingsrate de lages med. Velg først generator sampling rate 44100. Hører du noen forskjell hvis du nå endrer output sampling rate fra 44100 og nedover? Med en enkel sinus går det bra med samplingsrater som er hele multiplum av input sampling rate, dvs. med input 44100 går 22050 og 11025 bra, mens vi hører skurring ved 32000, 16000 og 8000 fordi det da gjøres en form for interpolasjon. Interpolasjon Nå skal vi høre hvordan signalet rekonstrueres fra en lav samplingsrate i input til en høyere samplingsrate i output. Velg en input sinus med generator sampling rate 8000 Hz. Velg Output sampling rate 11025. Prøv så å velge ulike typer interpolasjonsfunksjoner, zeros, copy previous eller linear. Hva hører du, og hva ser du i tidsplottet? Endre så Output sampling rate fra 11025 og oppover. Hører du at frekvensinnholdet i signalet endres? Prøv også litt med trekantpulser og firkantpulser.