Vimeo and the Open Source Community



Similar documents
UCO On Demand Usage Guidelines

Live Streaming with CCN & Content Transmission with CCNx

CS312 Solutions #6. March 13, 2015

Advanced Internetworking

Azure Media Service Cloud Video Delivery KILROY HUGHES MICROSOFT AZURE MEDIA

Internet Technologies for Digital Libraries

Adaptive HTTP streaming and HTML5. 1 Introduction. 1.1 Netflix background. 1.2 The need for standards. W3C Web and TV Workshop, 8-9 February 2011

Wikimedia Architecture Doing More With Less. Asher Feldman Ryan Lane Wikimedia Foundation Inc.

A Tool for Evaluation and Optimization of Web Application Performance

ni.com Remote Connectivity with LabVIEW

Digital Asset Management Software & Brand Portal

Migration Scenario: Migrating Batch Processes to the AWS Cloud

Continuous Integration. CSC 440: Software Engineering Slide #1

Distributed Systems 19. Content Delivery Networks (CDN) Paul Krzyzanowski

The MeeGo Multimedia Stack. Dr. Stefan Kost Nokia - The MeeGo Multimedia Stack - CELF Embedded Linux Conference Europe

Introduction to WebRTC. Luis López

CMS Selection Requirements, Fit Criteria, and Rationales

Wowza Media Systems provides all the pieces in the streaming puzzle, from capture to delivery, taking the complexity out of streaming live events.

EVERYTHING YOU NEED FOR BRANDING ON MULTIPLE CHANNELS

Scaling Pinterest. Yash Nelapati Ascii Artist. Pinterest Engineering. Saturday, August 31, 13

DIGITAL STEWARDSHIP SUPPLEMENTARY INFORMATION FORM

Contents. Getting Set Up Contents 2

PackeTV Mobile. solutions- inc.

Digital Public Library of America (DPLA)

EVERYTHING YOU NEED FOR BRANDING ON MULTIPLE CHANNELS

The Rutgers Workflow Management System. Workflow Management System Defined. The New Jersey Digital Highway

Windows Embedded Compact 7 Multimedia Features 1

The FOSSology Project Overview and Discussion. » The Open Compliance Program. ... By Bob Gobeille, Hewlett-Packard

INTRODUCTION. The Challenges

This module provides an overview of service and cloud technologies using the Microsoft.NET Framework and the Windows Azure cloud.

Merit Cloud Media User Guide

The Space technology briefing note

Enhancing Web Publishing with Digital Asset Management - Using Open Text Artesia DAM to enhance your Open Text WCMS (Red Dot) web sites

Functional Requirements for Digital Asset Management Project version /30/2006

Open Source Software for loudness measurement

icloud for Developers

Digital Asset Management Software & Brand Portal

Case Study : 3 different hadoop cluster deployments

Free web-based solution to manage photographs that could be used to manage collection items online if there is a photo of every item.

July 2014

PBS on Amazon. Jon Brendsel Vice President, Products

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

SOA, case Google. Faculty of technology management Information Technology Service Oriented Communications CT30A8901.

Serving Media with NGINX Plus

Creating "Origin Pull" on Akamai (1)

Using the NDMP File Service for DMA- Driven Replication for Disaster Recovery. Hugo Patterson

Gerald Kaszuba. Slowchop Studios Director Specialising in Game Design, Architecture, and Development.

Polycom VMC 1000 Appliance Akamai CDN Integration Guide

Wowza Streaming Cloud TM Overview

Audio Video Streaming Solution for Bambuser

Power Tools for Pivotal Tracker

State of the GStreamer Project. Jan Schmidt. Centricular Ltd

What s New in Cumulus 9.0? Brand New Web Client, Cumulus Video Cloud, Database Optimizations, and more.

Distributed Systems. 23. Content Delivery Networks (CDN) Paul Krzyzanowski. Rutgers University. Fall 2015

Web-Based Hazus-MH. A Conceptual Approach. Mourad Bouhafs, AVP ATKINS Atlanta mourad.bouhafs@atkinsglobal.com

PRODUCT DESCRIPTIONS AND METRICS

ATIS Open Web Alliance. Jim McEachern Senior Technology Consultant ATIS

HTTP Live Streaming as a Secure Streaming Method. Bobby Kania Luke Gusukuma Client: Keith Gilbertson VT CS 4624 Semester Project 4/29/12

Learn about OverDrive APIs and how they can benefit search, discovery and reporting services at your library. Contact:

Android Auto PoC. October Oct-15. Maxim Ovchinnikov Architect Harman

N-CAP Users Guide Everything You Need to Know About Using the Internet! How Firewalls Work

Distributed Systems. 24. Content Delivery Networks (CDN) 2013 Paul Krzyzanowski. Rutgers University. Fall 2013

Cloud Computing Trends

Cross-domain Identity Management System for Cloud Environment

API documentation - 1 -

Example of Standard API

Content Delivery Service (CDS)

The Value Proposition of Production Asset Management

Draft Response for delivering DITA.xml.org DITAweb. Written by Mark Poston, Senior Technical Consultant, Mekon Ltd.

Chapter 6: Project Planning & Production

Introduction of Fujitsu DRM Solution for Marlin DRM/MPEG-DASH Solutions

Michigan State University. Team Meijer. Tablet-Based Point-of-Sale System. Project Plan. Fall 2011

WOMEN S FLAT TRACK DERBY ASSOCIATION

Document Management with. first impressions

Open-Source vs. Proprietary Software Pros and Cons

Multimedia Framework Overview. JongHyuk Choi

Digital Asset Management Developing your Institutional Repository

EMC E EMC Content Management Foundation Exam(CMF)

EMC PERSPECTIVE. Understanding Content Management and Digital Asset Management Functionality

Linux, Open Source, and IBM: The Next Decade

MAKE.TV LIVE VIDEO CLOUD. acquire, produce, distribute live or recorded video

EQUELLA. One Central Repository for a Diverse Range of Content.

The Best of Both Worlds Sharing Mac Files on Windows Servers

Debugging With Netalyzr

Websites: Social Networks, Blogs & Usergenerated

The Most Powerful One Button HD Streaming, Recording and Auto-Publishing Solution. April White Paper

Interwise Connect. Working with Reverse Proxy Version 7.x

DASH-IF Implementation Guidelines: Content Protection Information Exchange Format (CPIX)

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

Mobile Multimedia Meet Cloud: Challenges and Future Directions

Transcription:

Vimeo and the Open Source Community

Summary Contact 1. Introduction 2. Architecture 3. FOSS 4. Conclusions Vittorio Giovara Video Encoding Engineer vittorio@vimeo.com https://vimeo.com/vittoriog FOSS 2

Introduction 3

Vimeo About us Who are we? Top 5 Video Site. Content Creators. Multimedia Hackers. Creative Innovators. Introduction 4

Vimeo About us What do we do? Transcoding and video hosting at a high level of quality. Create educational and entertaining content. Video On Demand and tools for professionals. Introduction 5

Vimeo About us Who uses us? Independent artists. Small to Large Pros. Businesses. Regular people! Introduction 6

Architecture 7

haproxy varnish viewmaster goozon hudsucker S3 / GCS GET GET Load balance to varnish servers GET GET Resolve URL to S3 or GCS GET Serve GET Serve Serve Deliver master image & cache locally Serve Serve Scale and filter image haproxy varnish viewmaster goozon hudsucker Architecture S3 / GCS 8

Transcoding Server 1 Server 2 Server N Gearman Daemon 1 Video Worker 1 Video Worker 1 Gearman Daemon M Audio Encode Video Worker 2 Video Worker 2 Video Worker 1 Video Worker N Video Worker M Video Worker 2 Audio Worker Mux/Combine Worker Audio Worker Audio Worker Chunk 1 Gearman Daemon 1 Chunk 2 Combine and Multiplex Video Upload Metadata Collector (Caching) Job Scheduler Gearman Daemon 2 Chunk N Gearman Daemon N Architecture 9

master assetfetcher assetanalyzer jittr postprocessing cdn app fetch analyze transcode Audio and video are encoded separately, and then muxed Validation upload HTTP POST Queue Service notify master assetfetcher assetanalyzer jittr postprocessing cdn app Architecture 8

Software in action A Few Awesome Media Projects Gearman Great distributed job server with a simple protocol usable from any language. FFmpeg/Libav First class multimedia toolkit. x264 The Best H.264 encoder around. L-SMASH Our preferred library for MP4 creation and demuxing/info. Rigidly strict to the specs, nice upstream developers, practical and realistic, has fewer LoC than the space shuttle. Architecture 11

Software in action A Few Awesome Media Projects ffms2 Offers frame-accurate, and preindexed seeking using the libav* libraries, and has an easy-to-use API. FDK-AAC Fraunhofer AAC encoder. MediaInfo Very good probe tool. Many packages for Go. Many more! Architecture 12

Future Software Daala Doing interesting, possibly great things. Definitely worth keeping an eye on. DASH Using a Vimeo-flavored L-Smash and lavf combination. x265 Shaping up well, still not useful in production yet. Opus Now available in MP4RA. 4k! Architecture 13

FOSS 14

Open Source Policies Long Term Maintainability and Benefits Going against the trend, we do not use Open Source software in bad faith; we contribute bug fixes, features, and at-scaletesting back, and do not violate licenses. 3 of 4 members of the transcode team are or were upstream FFmpeg/Libav developers, and all are active open source contributors. It is not viable in the long term to fork internally, maintenance-wise, or featurewise. Many things we have needed have been gladly implemented by non-employee Open Source developers who appreciate our contributions and resources. FOSS 15

Open Source Policies Collaborating with the people whose code you are benefiting from has benefits for everyone. Being a jerk benefits nobody. FOSS 16

Good Practices Bad Practices Work with your upstream. Report bugs and send patches. Release your proprietary software. ü When it makes sense. ü With an appropriate license. Get your code across as many projects as possible. Ignoring bug reports. Using an Open Source repository as a code dump. Fork and forget. Claiming ownership of a project. Complex CLA. Accept patches. FOSS 17

Conclusions 18

Advice Do not be afraid of using Open Source software. Do not be shy of admitting you use Open Source software. Do not ignore your Open Source community. Do not get involved in Open Source politics. Conclusions 19

Quote Not everything that can be counted counts, and not everything that counts can be counted." - Albert Einstein Conclusions 20

Thanks for your attention 21

Further resources http://making.vimeo.com/post/101852060824/on-the-flyimage-generation-architecture-and https://hacks.mozilla.org/2014/11/distributed-on-the-fly-imageprocessing-and-open-source-at-vimeo/ https://github.com/vimeo/ https://github.com/vfr-maniac/mp4opus https://fosdem.org/2015/schedule/event/vimeo/attachments/ slides/606/export/events/attachments/vimeo/slides/606/ VimeoFosdem2015.pdf 22