Ardour3 Video Integration

Similar documents
CinemaDNG RAW Workflow for Blackmagic Cameras

Media 100 Suite Version Release Notes

Sequence Clip Reporter

Sync-N-Link X. Contents. Preparing Clips for Syncing

Switch Release Notes. Switch

Manual Updated Tuesday, January 16, 2017

The AiM Codec for Windows and OSX

Page 1 of 4. Sound Editing Course Outline Duration: 5 Days

Online Help Browser Requirements Safari *Please note: Episode 7 does not support OS X or previous versions of Mac OS X.

Lightspeed Live Capture

VCube Release Notes. Updates: Please check our Web site periodically for information, patches and updates.

Export a Quicktime movie with 5.1 Surround sound in Premiere Pro

R&S CLIPSTER Mastering excellence.

Editing & Color Grading 101 in DaVinci Resolve 15

Post-Production. Ashwin Saraf Brian Block Sam Bantner Travis Bagley

AVID 2K Digital Cinema Package - DCP Creation Workflow Using OpenDCP

AVC-Intra QT v1.0 Manual

Editing and Finishing in DaVinci Resolve 12

Avid Xpress Pro for the Independent Filmmaker. Avid Post Production

COURSE OUTLINE. COURSE BREAKDOWN MODULE 1 Introduction to STEINBERG CUBASE

JPEG 2000 Archive Profiles

Online Help Browser Requirements Safari *Please note: Episode 7 does not support OS X or previous versions of Mac OS X.

Executive Summary. Architecture. Capture

Adobe Premiere Elements Workspace overview. Creating a new project. About projects. Start a new project

Settings for Timecode Chasing for T2 Express/Pro/Elite April 2015

Here are the answers to the most frequently asked questions about Matrox MXO2.

Revision 4.1.x /2.x.x [ ] Creating Media for Modulo Player & Kinetic

MediaNXS. Complete I/O Solution

Switch 4.1 Release Notes. Switch

Optimizing A/V Content For Mobile Delivery

Transcoding SDK. Professional Transcoding Engine

INTRODUCTION... 3 OVERVIEW... 4 DAILIES CREATION STEPS... 5 ADDITIONAL METADATA USING ALE ONE STEPALE RE-LINK ADDITIONAL RESOURCES...

Open-Xchange Documents Minor Release v Feature Overview V1.0

Adobe Premiere Pro CC 2018

What's New in Flame 2015 Extension 1

The folder Icon allows you to create a folder for placing export settings for file management and organization.

DaVinci Resolve to AVID - How to make AVID Project and.mxf MediaFiles

How to achieve low latency audio/video streaming over IP network?

SoundCode Exchange MXF Users Guide

What s New in Pro Tools 5.0.1

GeoShow3D. Product Features. Product Information Number: Persona de contacto:

CinemaDNG Workflow. Using the CinemaDNG File Format in Cinema Workflows. Goals and Benefits TECHNICAL PAPER

Sound Editing in Final Cut Pro 10.3

Avid Editing Application

VCube Release Notes. Updates: Please check our Web site periodically for information, patches and updates.

Introduction Understanding The Basics Introducing ACID Pro 3.0 Making Music with ACID Setting Up the Hardware Installing and Registering ACID

MULTIMEDIA AND CODING

Quantel Rio Rio Assist. V3.0 rev 1 New Feature List

1.1 SD Commercial File Delivery standard (FAST)

DCIMastering FOCUS SHEET. Marquise Technologies 2012 Page 1

Larson Studios Delivery Specifications April 2015

MXF/DNxHD with ALEXA SUP 6.0

Media 100 Release Notes

Basic Editing in Adobe Premiere

Release Notes Page 1. Avid. digidesign AudioVision 4.1v9 Release Notes. May 18, Arming tracks 3 and 4 only on external edit decks now works.

New Features in Final Cut Pro 6

Dolby CineAsset mastering software suite user s manual

PRODUCTION BACKBONE DAM TV PRODUCTION INGEST/DELIVERY PROCESS. Post files to PBB Storage Drop ALE into Hot Folder CONCEPTUAL ALE.

ilovehue.net FROM FCP TO RESOLVE Mathieu Marano

SPE Dailies Solutions. SPE Tech / PMC / Colorworks / 24P Dailies 6/07/11

Media player for windows 10 free download

ALEXA Dailies using Resolve 9

Broadcast. User Guide. 1 Before Installation P2 Option VARICAM Option XDCAM Option GXF Option...

Find out what you re missing in Media Composer

ITU-R Workshop Topics on the Future of Audio in Broadcasting. Movies and the immersive experience. Hubert Henle 15.7.

_APP B_549_10/31/06. Appendix B. Producing for Multimedia and the Web

11 EDITING VIDEO. Lesson overview

Advanced Color Grading in DaVinci Resolve 15

Go! Production Suite. v2.0.5 Release Notes. Go! v2.0.5 Go! Plugin For Adobe Premiere Pro v2.0 Media Transformer v Snell Advanced Media

MediaKind Encoding On-Demand

California State University Dominguez Hills DMA 326 TV Sound Design (Spring 2016)

User manual Horus Movie Player 1

VCube Release Notes. Updates: Please check our Web site periodically for information, patches and updates.

INCITE PRODUCTION WORKFLOW

Creating a short stop motion animation with Adobe Photoshop CC. Open Adobe Photoshop CC. A note about embedding

Larson Studios Delivery Specifications April 2015

viaplatz 4K/8K and VPR

R2T12T&S12T45TP. CLIPSTER Release Note Software Version 6.0. Release Note 7DV

Starting a Project. Section 1

Avid Interplay Production Web Services Version 2.0

User Guide for Leawo Free Blu-ray Player

Request for: 2400 bytes 2005/11/12

EDIUS 7. Release Notes EDIT ANYTHING. Software Version 7.3 (April 2014)

Apple Compressor 4.1 Detailed Video Training Outline Chapter 1 - Get Started

PASIG Digital Preservation BOOTcamp Best* Practices in Preserving Common Content Types: AudioVisual files

Creating a slideshow with captions

ALEXA. MXF/DNxHD with SUP 9.0 WHITE PAPER. Date: 4 December 2013

This letter contains latest information about the above mentioned software version.

Compressor User Guide

Media 100 Suite Version Release Notes. Boris FX - Media 100 is pleased to offer Media 100 Suite Version

Avid HD Workflows. Avid Postproduction

Digital Media IB DESCRIPTION. EXAM INFORMATION Items

Preparing Video Files for the Aja Ki Pro

It s All About Speed! Customizing DS and Learning How to Edit Faster Saturday, April 17 th, 10:15 11:30am

DeckLink SDI. DeckLink SDI. No other capture cards have more video and audio connections than DeckLink!

Product Documentation and Release Notes Aug 4, 2011 Contents

Operations Manual. version 2.4 RTM

MMS Specifications Sheet

Test Code: 8095 / Version 1

User Manual. v. 1.2, September 2015 Copyright 2015, All Rights Reserved V-Note, Bremig LLC

Transcription:

Ardour3 Video Integration film-soundtracks on GNU/Linux Robin Gareus CiTu - Pargraphe Research Group University Paris 8 - Hypermedia Department robin@gareus.org April, 2012

Outline of the talk Introduction Problem Analysis API Video Server Client Implementation Coda Robin Gareus (CiTu) Ardour3 Video Integration April 2012 2 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline about 70 years old. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline about 70 years old. rapidly changing technology Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Audio and Video remain separated for historically and practically reasons. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Audio and Video remain separated for historically and practically reasons. different qualifications and expertise is needed Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Audio and Video remain separated for historically and practically reasons. different qualifications and expertise is needed too much gear on the camera Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Audio and Video remain separated for historically and practically reasons. different qualifications and expertise is needed too much gear on the camera job-definition by unions Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Introduction Soundtrack composition, arrangement and production is rather young discipline Nevertheless, standard procedures have evolved Audio and Video remain separated for historically and practically reasons. different qualifications and expertise is needed too much gear on the camera job-definition by unions more choices WRT to equipment Robin Gareus (CiTu) Ardour3 Video Integration April 2012 3 / 21

Film-Sound Dialogue (on-camera voice), field-recordings (usually recorded on set - but: overdubs, translations) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 4 / 21

Film-Sound Dialogue (on-camera voice), field-recordings (usually recorded on set - but: overdubs, translations) sound-effects (Foley, Sound-scapes, Spot-sounds - tight sync) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 4 / 21

Film-Sound Dialogue (on-camera voice), field-recordings (usually recorded on set - but: overdubs, translations) sound-effects (Foley, Sound-scapes, Spot-sounds - tight sync) film-music Robin Gareus (CiTu) Ardour3 Video Integration April 2012 4 / 21

Film-Sound Dialogue (on-camera voice), field-recordings (usually recorded on set - but: overdubs, translations) sound-effects (Foley, Sound-scapes, Spot-sounds - tight sync) film-music One goal is to synchronize dramatic events happening on screen with musical events in the score. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 4 / 21

Film-Sound Dialogue (on-camera voice), field-recordings (usually recorded on set - but: overdubs, translations) sound-effects (Foley, Sound-scapes, Spot-sounds - tight sync) film-music One goal is to synchronize dramatic events happening on screen with musical events in the score. With only a few exceptions - namely song or dance scenes - music composition and sound-design usually takes place after recording and editing the video. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 4 / 21

Post-Production Work-flow synchronize the original audio recorded on the set with the edited video Robin Gareus (CiTu) Ardour3 Video Integration April 2012 5 / 21

Post-Production Work-flow synchronize the original audio recorded on the set with the edited video design, arrange and align sound-effects Robin Gareus (CiTu) Ardour3 Video Integration April 2012 5 / 21

Post-Production Work-flow synchronize the original audio recorded on the set with the edited video design, arrange and align sound-effects compose, record and edit music Robin Gareus (CiTu) Ardour3 Video Integration April 2012 5 / 21

Post-Production Work-flow synchronize the original audio recorded on the set with the edited video design, arrange and align sound-effects compose, record and edit music mix-down and master the soundtrack (various versions: TV-compressed, 5.1 cinema,..) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 5 / 21

A/V sync analog: audio-visual cues (slate) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 6 / 21

A/V sync analog: audio-visual cues (slate) digital: time-code (most commonly SMPTE produced by the camera). Robin Gareus (CiTu) Ardour3 Video Integration April 2012 6 / 21

A/V sync analog: audio-visual cues (slate) digital: time-code (most commonly SMPTE produced by the camera). digital: EDL, AAF, MXF, BWF, OMF+OMFI,... Robin Gareus (CiTu) Ardour3 Video Integration April 2012 6 / 21

A/V sync analog: audio-visual cues (slate) digital: time-code (most commonly SMPTE produced by the camera). digital: EDL, AAF, MXF, BWF, OMF+OMFI,... Technical skills and details involved can become quite complex. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 6 / 21

A/V sync analog: audio-visual cues (slate) digital: time-code (most commonly SMPTE produced by the camera). digital: EDL, AAF, MXF, BWF, OMF+OMFI,... Technical skills and details involved can become quite complex. Neither composers nor sound-designers do want to concern themselves with that task. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 6 / 21

Tools Digital Audio Workstation Robin Gareus (CiTu) Ardour3 Video Integration April 2012 7 / 21

Tools Digital Audio Workstation Synchronous video playback Video-timeline Robin Gareus (CiTu) Ardour3 Video Integration April 2012 7 / 21

Tools Digital Audio Workstation Synchronous video playback Video-timeline Session-management Robin Gareus (CiTu) Ardour3 Video Integration April 2012 7 / 21

Tools Digital Audio Workstation Synchronous video playback Video-timeline Session-management Import A/V (timecode, edl, audio-extract) A/V alignment (offset, pull-up/down, timecode-conversion) Export A/V Robin Gareus (CiTu) Ardour3 Video Integration April 2012 7 / 21

Goals easy-to-use Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Goals easy-to-use professional Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Goals easy-to-use professional workflow for film-sound production Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Goals easy-to-use professional workflow for film-sound production free-software. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Goals easy-to-use professional workflow for film-sound production free-software. More specifically: Integration of video-elements into the Ardour Digital Audio Workstation. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Goals easy-to-use professional workflow for film-sound production free-software. More specifically: Integration of video-elements into the Ardour Digital Audio Workstation. The resulting interface must not be limited to the software at hand (Ardour, Xjadeo, icsd) but allow for further adaption or interoperability. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 8 / 21

Design Client-Server model external video monitoring app. external video-decoder application Robin Gareus (CiTu) Ardour3 Video Integration April 2012 9 / 21

Design Client-Server model external video monitoring app. external video-decoder application Video-server video-frame-cache video session management modular design - pluggable video decoder back-end Robin Gareus (CiTu) Ardour3 Video Integration April 2012 9 / 21

Design Figure: Design overview Robin Gareus (CiTu) Ardour3 Video Integration April 2012 10 / 21

API Overview All requests from GUI to backend are done via HTTP Robin Gareus (CiTu) Ardour3 Video Integration April 2012 11 / 21

API Overview All requests from GUI to backend are done via HTTP HTTP is a well supported protocol with existing infrastructure established proxy and load-balancing systems persistent HTTP connections web-interface..but: no out-of-band communication Robin Gareus (CiTu) Ardour3 Video Integration April 2012 11 / 21

API Overview All requests from GUI to backend are done via HTTP HTTP is a well supported protocol with existing infrastructure established proxy and load-balancing systems persistent HTTP connections web-interface..but: no out-of-band communication Requests handlers: info (file and/or session information) image (video-frame, thumbnail) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 11 / 21

API Overview All requests from GUI to backend are done via HTTP HTTP is a well supported protocol with existing infrastructure established proxy and load-balancing systems persistent HTTP connections web-interface..but: no out-of-band communication Requests handlers: info (file and/or session information) image (video-frame, thumbnail) stream (export, render) admin (cache-flush, status,...) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 11 / 21

API parameter units Time: video-frame count (duration, offset, time) Geometry: effective image size (incl. pixel-aspect and display-ascpect) Framerate: ratio Image: various-formats (raw RGB[A], PNG, JPG, YUV..) Text: serialized key-value store in various formats (XML, JSON,..) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 12 / 21

API parameter units Time: video-frame count (duration, offset, time) Geometry: effective image size (incl. pixel-aspect and display-ascpect) Framerate: ratio Image: various-formats (raw RGB[A], PNG, JPG, YUV..) Text: serialized key-value store in various formats (XML, JSON,..) The reply-format is chosen by the file-extension and may be overridden using request parameters. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 12 / 21

Info Request Requesting information about a session of file: file-name or session-name (required) reply-format (optional, implicit) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 13 / 21

Video-Frame Request Requesting a single video-frame file-name or session-name (required) frame the frame-number (starting at zero for the first frame - required). width, height (optional) reply-format (optional, implicit) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 14 / 21

Server Implementation HTTP server in POSIX-C a video-frame cache multiple decoder instances: parallel decoding efficiency - keep state, key-frame continuity tested on GNU/Linux, OSX and win32 Robin Gareus (CiTu) Ardour3 Video Integration April 2012 15 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Decoder latency is highly dependent on the geometry of the movie, codec, CPU and I/O. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Decoder latency is highly dependent on the geometry of the movie, codec, CPU and I/O. On slower CPUs ( 1.6 GHz Intel) a full HDVideo can be decoded and scaled at 25 fps using mjpeg codec width only intra-frames at the cost of high I/O. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Decoder latency is highly dependent on the geometry of the movie, codec, CPU and I/O. On slower CPUs ( 1.6 GHz Intel) a full HDVideo can be decoded and scaled at 25 fps using mjpeg codec width only intra-frames at the cost of high I/O. Faster CPUs can shift the load towards the CPU. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Decoder latency is highly dependent on the geometry of the movie, codec, CPU and I/O. On slower CPUs ( 1.6 GHz Intel) a full HDVideo can be decoded and scaled at 25 fps using mjpeg codec width only intra-frames at the cost of high I/O. Faster CPUs can shift the load towards the CPU. Parallelizing requests increases latency to up to a few hundred milliseconds. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Cache hits are dominated by transfer time (few ms - depending on image-size and network) Decoder latency is highly dependent on the geometry of the movie, codec, CPU and I/O. On slower CPUs ( 1.6 GHz Intel) a full HDVideo can be decoded and scaled at 25 fps using mjpeg codec width only intra-frames at the cost of high I/O. Faster CPUs can shift the load towards the CPU. Parallelizing requests increases latency to up to a few hundred milliseconds. This is intended behavior: image for a whole view-point page will arrive simultaneously. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 16 / 21

Server Performance Figure: latency for decoding 80x60 thumbnails for 1,2 and 8 parallel requests. Figure: decoder and request latency for PAL (768x576px) video. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 17 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) HTTP interaction with the video-server Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) HTTP interaction with the video-server Xjadeo remote control (video-monitor) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) HTTP interaction with the video-server Xjadeo remote control (video-monitor) ffmpeg CLI interaction (import/export) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) HTTP interaction with the video-server Xjadeo remote control (video-monitor) ffmpeg CLI interaction (import/export) Dialogs (the largest part) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Client Implementation Changes to Ardour3: Video-timeline display (unique ruler ) HTTP interaction with the video-server Xjadeo remote control (video-monitor) ffmpeg CLI interaction (import/export) Dialogs (the largest part) Support and helper functions Robin Gareus (CiTu) Ardour3 Video Integration April 2012 18 / 21

Outlook the building-blocks are unit-tested and some real-world feedback from a handful of devs/artists/engineers. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 19 / 21

Outlook the building-blocks are unit-tested and some real-world feedback from a handful of devs/artists/engineers. take it to end-users (post Ardour3.0 release): as soon as 3.0 is released, we ll merge his work into the mainstream code. (Paul D.) Robin Gareus (CiTu) Ardour3 Video Integration April 2012 19 / 21

Outlook the building-blocks are unit-tested and some real-world feedback from a handful of devs/artists/engineers. take it to end-users (post Ardour3.0 release): as soon as 3.0 is released, we ll merge his work into the mainstream code. (Paul D.) video-server: (GNU/Linux) all dependencies are already in debian/stable - packaging the video-server is prepared - pending last minute changes Robin Gareus (CiTu) Ardour3 Video Integration April 2012 19 / 21

Outlook the building-blocks are unit-tested and some real-world feedback from a handful of devs/artists/engineers. take it to end-users (post Ardour3.0 release): as soon as 3.0 is released, we ll merge his work into the mainstream code. (Paul D.) video-server: (GNU/Linux) all dependencies are already in debian/stable - packaging the video-server is prepared - pending last minute changes video-server: statically linked version for win32 and OSX available. Robin Gareus (CiTu) Ardour3 Video Integration April 2012 19 / 21

ToDo update to latest A3 internal API (in particular: audio export) multi-track export and mux (5.1) video-file import (hard-link, session-folder, keep orig and transcoded) expose EDL support in UI; ardour: AAF, MXF, BWF, EDL.. messages (fix Inglisch :-) and translate) user-definable video-export presets optimizations (thread-pool for image requests,..., HTTP Keep-Alive) squash bugs: A3: 8k LOC ; icsd: 12k LOC Robin Gareus (CiTu) Ardour3 Video Integration April 2012 20 / 21

Fin Robin Gareus (CiTu) Ardour3 Video Integration April 2012 21 / 21