U hebt geen toestemming om deze pagina te bewerken, want:
De gevraagde handeling is voorbehouden aan gebruikers in de groep gebruikers.
Bij velden die nog onbekend of niet van toepassing zijn (zoals netwerkgegevens voor een typemachine) svp niets invullen, dit maakt onderdrukken van niet-relevante velden bij weergave makkelijker.
Vrije tekst:
{{Project |Naam=LipSync |Eigenaar=Raboof |Status=Idee |Skills=video,audio,sync,android,html5,javascript,mediarecorder,ffmpeg |Samenvatting=audio en video synchroniseren }} Nee, we gaan geen playbackvideo's maken, maar [https://en.wikipedia.org/wiki/Audio-to-video_synchronization Audio en video synchroniseren]. == Probleem == Wanneer je een audio/videosysteem hebt met aparte apparaten voor de audio en voor de video (bijv externe schermen, losse versterkers/audioapparatuur etc), zoals het [[Projectiewandje]], dan kan het voorkomen dat video en audio niet helemaal in sync zijn, omdat de latency van het audio- en het video-pad niet hetzelfde is. In de meeste videosoftware, en soms zelfs de video/audioinstellingen van het OS, kun je een delay configureren voor de audio of video om hiervoor te compenseren. De vraag is dan natuurlijk altijd: hoe groot moet deze delay zijn? Hiervoor zijn calibratievideo's beschikbaar (bijv [https://www.youtube.com/watch?v=TjAa0wOe5k4 deze], [https://www.youtube.com/watch?v=s_PbyRpKrRk deze] of [https://www.youtube.com/watch?v=ucZl6vQ_8Uo deze]), maar het blijft lastig dit op het oog/oor precies goed te krijgen. Het zou beter zijn als we de delay zouden kunnen meten. == Idee == Nu heeft tegenwoordig bijna iedereen een prima audio/video-recorder in zijn broekzak. Kunnen we iets makkelijks maken zodat je een filmpje kunt opnemen maken van je testopstelling, en in dit filmpje de daadwerkelijke benodigde delay te meten? == Aanpak == Het meest universeel zou zijn wanneer we dit kunnen doen in HTML5/Javascript. Met de [https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder MediaRecorder] API kun je videofragmenten opnemen. Die krijg je dan als blobs terug, zo te zien vaak als WebM met de video in VP8 en de audio in Vorbis. Om die te kunnen processen moeten we die dus kunnen decoderen. We zouden de blobs voor processing naar een of ander server-side proces kunnen sturen, maar kunnen we ze ook 'lokaal' verwerken? Iemand heeft [https://github.com/Kagami/ffmpeg.js/ ffmpeg naar javascript gecompiled], wellicht via die weg? == Code == Eerste experimenten op https://github.com/raboof/lipsync
Pagina opslaan Bewerking ter controle bekijken Wijzigingen bekijken Annuleren