This repository has been archived on 2022-03-27. You can view files and clone it, but cannot push or open issues/pull-requests.
presis/revealjs/laser/5-codierung.md

71 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2019-03-11 19:37:57 +01:00
2019-03-12 22:40:02 +01:00
# Codierung
2019-03-11 19:37:57 +01:00
<notes>
* Audio-Daten (Schallwellen)
* digital codiert
* auch beschädigt abspielbar
</notes>
---
## Codierung von Ton
<div class="overlay-container">
<div class="fragment"><img height="350px" src="img/nyquist-shannon-1.svg"></div>
<div class="fragment"><img height="350px" src="img/nyquist-shannon-2.svg"></div>
<div class="fragment"><img height="350px" src="img/nyquist-shannon-3.svg"></div>
</div>
<notes>
* Schallwellen (grün)
2019-03-12 18:00:54 +01:00
* Annäherung an Schallwellen
2019-03-11 19:37:57 +01:00
* Samples (rot)
* repräsentiert: Zeitpunkt und Amplitude (wie stark oben/unten; Lautstärke)
* ungefähres Signal kann rekonstruiert werden
</notes>
---
## Fehlerkorrektur
<script>
document.addEventListener('DOMContentLoaded', () => {
const cycles = {
fehlerkorrektur: ['img/fehlerkorrektur.svg', 'img/fehlerkorrektur-scrambled.svg']
}
function setCycle(id, cycle) {
let image = document.getElementById(id)
src = cycles[id][cycle]
if (src === undefined) {
src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='
}
image.src = src
}
Reveal.addEventListener('fragmentshown', e => {
let el = e.fragment
if (el.hasAttribute('data-cycle')) setCycle(el.getAttribute('data-id'), el.getAttribute('data-cycle'))
})
Reveal.addEventListener('fragmenthidden', e => {
let el = e.fragment
if (el.hasAttribute('data-cycle')) setCycle(el.getAttribute('data-id'), el.getAttribute('data-cycle') - 1)
})
})
</script>
<img id="fehlerkorrektur" src="" height="500px">
<div class="fragment" data-id="fehlerkorrektur" data-cycle="0"></div>
<div class="fragment" data-id="fehlerkorrektur" data-cycle="1"></div>
<notes>
* auch sehr komplexes Thema, wieder stark vereinfacht
* Datenstrom wird unterteilt
* an jedes Paket: Prüfsumme
2019-03-12 18:00:54 +01:00
* kann Fehler im Paket erkennen und korrigieren
2019-03-11 19:37:57 +01:00
* zusätzlich: verteilt
2019-03-12 16:51:08 +01:00
* kann trotz 2.4 mm langen Kratzern abspielen
2019-03-11 19:37:57 +01:00
</notes>