We reageren enkel zo uitgebreid omdat het zondag is en we het leuk vinden.
Oude interesse van mij, digitale audio.
Aan de gewaarschuwde lezer: lees dit enkel als het je interesseert.
Ik weet van mezelf dat het me niet altijd lukt zaken in exacte vaktermen te vatten, en ik zou het fijn vinden als men daar een beetje doorheen leest. Het is te makkelijk om iemand "op woordjes te pakken"
Dan had ik graag dat jij dat ook deed.
, en mijn bedoelingen zijn verder goed (en ik heb niemand persoonlijk afgekraakt of aangevallen of wat dan ook. Ook jou niet).
Dat is ook niet mij bedoeling, maar ik hou er wel aan mij te verdedigen. Als ik verkeerd zit, dan ben ik zeker niet te beroerd om dit toe te geven.
Fout. Het signaal wordt gedecomprimeerd, en wordt dan terug geencodeerd naar het mp3 formaat. Je hebt dus opnieuw te maken met het ganse proces van lossy compressie, waarbij het signaal geanalyseerd wordt en met complexe algoritmen gecomprimeerd wordt. Hierbij wordt ondermeer informatie van het oorspronkelijke signaal verwijderd. Terug kwaliteitsverslies, dus.
Ik ben bang dat je hier een inschattingsfout maakt.
Ik denk het niet. Doorgaans ga je bij het omzetten van mp3 naar een andere mp3, en zeker al van een mp3 naar een ander formaat, decomprimeren en hercomprimeren. Een heel specifieke uitzondering is een tooltje zoals mp3gain, dat de compressiedata intact laat en enkel de volumeschaalfactor aanpast.
Lossy compressie is gebaseerd op ingewikkelde algoritmes, die tot doel hebben het geluid zo compact mogelijk op te slaan, en daartoe zelfs informatie van het origineel signaal weglaat. De complexe compressiealgoritmes werken steeds op basis van het niet gecomprimeerde geluid (de stroom aan samples). Ik denk dus dat mijn uitspraak hier juist is, en dat ik geen inschattingsfout maak.
Lees er ook de handleiding van sox eens op na. Daar wordt expliciet vermeld dat het bewerken van lossy gecomprimeerde bestanden inhoudt dat die eerst gedecomprimeerd worden.
Software gaat het echt niet altijd decomprimeren en weer comprimeren. Software houdt het simpel daar waar het simpel kan.
Veralgemeen hier maar weer niet. Elke software werkt zoals die geprogrammeerd is, en waar het voor bedoeld is. Hoe het werkt, wordt gedocumenteerd in de handleiding. Voor je tweede statement heb ik hier verder nog een tegenvoorbeeldje : daar wordt het pas simpel gehouden als je het zelf vraagt.
Je kunt hiervoor een testje doen die het heel snel duidelijk zal maken.
Je voorbeeld gaat helaas helemaal voorbij aan het omzetten van digitale audio naar andere formaten.
(mp4 is dezelfde techniek als mp3)
Zeer foutief uitgangspunt. mp4 is een containerformaat, een bestandsformaat ontworpen om verschillende stromen, zoals audio, video, subtitels, te bevatten. Als je inderdaad de video/audio niet verandert, dan gaat het omzetten naar een ander mp4 bestand heel snel. Wijzig je die wel, dan moet er inderdaad opnieuw geëncodeerd worden, en het duurt allemaal (veel) langer. Dat heb je allemaal goed, maar heeft niets te maken met audiocompressie.
Wij hebben het hier al de hele tijd over mp3 als *encoderingsformaat* voor audio. Nu is het wel ook zo dat de naam mp3 gebruikt voor het bestandsformaat waarin mp3 audio wordt opgeslaan. Dat is een ander aspect, dat los staat van de compressie/encodering.
In verband hiermee kan ik gemakkelijk je statement "Software gaat het echt niet altijd decomprimeren en weer comprimeren. Software houdt het simpel daar waar het simpel kan." onmiddellijk weerleggen met een voorbeeld. Als je met ffmpeg een mp4 omzet naar een andere mp4, dan zal ffmpeg standaard video en audio *transcoderen*. Om het "simpel" te houden en geen omzetting te bekomen, moet je dit expliciet doorgeven via de commandolijnopties. Mocht ffmpeg het simpel houden, dan zou het toch standaard *niet* transcoderen, toch?
Je leest een signaal in, en als diezelfde vorm ongewijzigd weer gewoon "ingepakt" kan worden hoeft er niets omgerekend te worden. Dit signaal (getallenreeks) kan dan gewoon 1 op 1 weer weggeschreven worden, waar simpelweg kopieren (verwaarloosbaar) geen fouten maakt simpelweg omdat er niets omgerekend hoeft te worden. Als een signaal/getallenreeks gewoon gelijk blijft wordt er niets omgerekend maar gewoon gekopiëerd.
Helemaal juist, behalve dan je "verwaarloosbaar". Als je digitale informatie letterlijk kopieert, dan gebeuren er geen fouten. Géén. Computers hebben foutcorrectiessytemen om die fouten absoluut uit te sluiten.
Ga je dan ditheren dan veroorzaakt de "corrigerende" dithering meer fouten dan wat je aan werkelijke (nihile) foutjes ondervangt. Dan doet dithering meer kwaad dan het goed doet.
Welke doorsnee gebruiker zal het in zijn hoofd halen ditheren aan te zetten als hij een mp3 omzet naar een andere mp3? Die weet wellicht niet wat dit is. Ik zou zelf niet weten hoe ik "ditheren" aan moet zetten met bijvoorbeeld de lame mp3 encode. Het woord komt niet voor in "man lame", noch in "man oggenc".
Nogmaals. Dit is alleen als je ongewijzigd gaat omzetten/kopiëren in dezelfde rates, bestandsoort en conversiemethode. Ga je van wav naar mp3, of van mp3 naar ogg, of van wav naar ogg, dan wordt er wel omgerekend en is er wel kans op fouten waardoor dithering wel nut heeft.
Dat is nu net wat ik zegde waar je opmerkte "Ik ben bang dat je hier een inschattingsfout maakt.". Maak jij die zelfde inschattingsfout dan nu niet zelf?
Het lijkt er weer op dat het fundamentele verschil tussen conversie, verlieslatende en verliesloze compressie je nog steeds blijft ontgaan. Van zodra je naar een verlieslatend compressieformaat overgaat, wordt er uiteraard omgerekend, maar wordt het audiosignaal ook gemanipuleerd om het efficiënter met een geringer aantal bits te kunnen beschrijven, op een manier dat je dat zo weinig mogelijk hoort. Ga je daarentegen omzetten naar een verliesloos formaat, dan wordt er evengoed "omgerekend", weerom om tot een beschrijving te komen waar minder bits voor nodig zijn. Echter, de omzetting is hier per definitie zo, dat op het einde van de rit het originele audiosignaal *exact* terug gereproduceerd kan worden zonder enig kwaliteitsverlies.
En wie het niet geloofd .... zoek er maar eens naar op het internet. Dan zal deze uitleg snel bevestigd worden.
Niet helemaal, denk ik.
Dit ditheringverhaal is niet "mijn visie" die ik zelf maar even bedenkt. [/b]
Lees je eens goed in over dithering. Dithering is enkel van toepassing als je van een hogere naar een lagere bit-diepte overgaat, niet, zoals je schijnt te suggereren, als je verandert van bemonsteringsfrequentie. Bij het overgaan van hogere bit-diepte (vb 32 bits) naar lagere bit diepte (vb 16 bits) moet je hetzelfde signaal (amplitude) met minder cijfers, dus minder precisie beschrijven. Je moet dus afronden. Bij signalen van lage geluidssterkte geeft dit hoorbare artefacten, net zoals je de pixels ziet op een sterk ingezoomde foto. Om dit te ondervangen, wordt een klein beetje ruis toegevoegd. Hierdoor maak je de afrondingsfout willekeurig. Het resultaat is nu dat je (volumeknop omhoog) ruis zal horen, met daarin nog duidelijk herkenbaar de muziek. Ik heb dit lang geleden zelf nog getest en vergeleken.
Doe dit ook eens op een veilige manier. Lees een cd track in audacity. Verlaag tot -60 decibel. Schrijf uit naar 16 bits CD audio zonder dithering, en schrijf een andere kopie uit naar 16 bits CD met dithering. Beluister dan het resultaat met de volumeknop omhoog (of terug versterken in Audacity) en je zal heel goed zelf horen wat dithering doet.
Dithering helpt niet in het verbeteren van de kwaliteit van resampling, het veranderen van de bemonsteringsfrequentie (vb 44.1 KHz(CD) -> 48 kHz; 96 kHz -> 48 kHz). Hier worden complexe algoritmes gebruikt om de amplitude van nieuwe bemonsteringspunten te berekenen uit de oorspronkelijke bemonsteringspunten. Het ene ideale algoritme bestaat, zoals zo vaak het geval is, niet. Ze hebben alle hun voor en nadelen. Dikwijls is het nadeel van hoge kwaliteit een hoge reekenintensiteit. Kijk maar eens naar de keuzeopties van Audacity.
Het is niet voor niets dat muziekverwerkende bedrijven (platenmaatschappijen) niet gedithert aangeleverd willen hebben, want willen originele opname zonder compressie verliezen.
Natuurlijk lever je hier de opname aan in de hoogst mogelijke kwaliteit. De platenmaatschappij zal je signaal wel ditheren als ze van 24 bit of 32 bit naar 16 bit overgaan voor de CD.
PS: Dit is wellicht mijn langste post ever
Zit er dan geen restrictie voor de lengte van posts op dit forum?