Transitioning Broadcast to Cloud

Abstract We analyze the differences between on-premise broadcast and cloud-based online video delivery workflows and identify technologies needed for bridging the gaps between them. Specifically, we note differences in ingest protocols, media formats, signal-processing chains, codec constraints, metadata, transport formats, delays, and means for implementing operations such as ad-splicing, redundancy and synchronization. To bridge theContinue reading “Transitioning Broadcast to Cloud”

How we scale Live streaming for millions of viewers simultaneously

Abstract As Facebook Live and Facebook Watch have grown, the content shared there has expanded to include professionally produced, broadcast-quality content, like shows and live event coverage. This type of professional broadcasting from providers like La Liga, CONMEBOL, and UEFA is a very different challenge from user generated content (UGC) and viewers’ expectations are much higher. ViewersContinue reading “How we scale Live streaming for millions of viewers simultaneously”

Super fast HLS trimming with frame accuracy

Description This article is an evolution of this code: Trim HLS stream with frame accuracy using ffmpeg and Bash script The implementation gets a group if HLS chunks (.ts) and based on input and output points (timestamps) it creates an mp4 output file frame accuracy trimmed, and with AV perfectly aligned. Thanks to the underlying algorithmContinue reading “Super fast HLS trimming with frame accuracy”

A minimal h264 “encoder” (C++)

Introduction I always thought that the best approach to complex things is to start from the basis, and once you control this part enter step by step towards more complex parts. With this idea in mind and the aim to improve my understanding of h264 bitstream and its techniques I have created the following code in C++ that generates a compliant h264 file fromContinue reading “A minimal h264 “encoder” (C++)”

The audio video alignment nightmare in audio compressed formats

Introduction Doing some research about automatic editing systems I have found strange timing behaviors in audio compressed streams and I wanted to take some measures, and here they are: Audio tests – Audacity Using Audacity  2.0.5 (free audio editor) I generated a test time line, see figure 1 After that I have exported the test timelineContinue reading “The audio video alignment nightmare in audio compressed formats”

Trim HLS stream with frame accuracy using ffmpeg and Bash script

Introduction The main idea of this post is to practise with ffmpeg and write down my experiences, issues that I have found, possible solutions, etc. To achieve that I developed a group of bash scripts that are able to trim a HLS stream using ffmpeg . The purpose of these scripts is to perform a VERY FASTContinue reading “Trim HLS stream with frame accuracy using ffmpeg and Bash script”

JOCHLSDownloader (Ruby gem)

The JOCHLSDownloader ruby gem is a very simple native ruby code that downloads all files linked by a m3u8 manifest (used in HLS), I have used several times for test purposes.   You can download the JOCHLSDownloader (Ruby version) from: Note: For LIVE and EVENT playlist types it downloads only the firsts media segments. For VOD playlistContinue reading “JOCHLSDownloader (Ruby gem)”

Loudness meters [CAT]

These slides are part of a conference that we gave about loudness (link). Different views of loudness were explained in that conference: Introduction by Llorenç Gómez (TVC) Standards by Josep Ramon Casas (UPC) Loudness meters by Jordi Cenzano (8TV) Loudness in production chain by Emili Planas (Mediapro) The conference was organized by Consell del AudiovisualContinue reading “Loudness meters [CAT]”

Design and implementation of a loudness monitoring system – MERIT master thesis

This paper was created in 07/2013 as MERIT master thesis (from UPC university). The main objective is to explore the normalization of audio levels in the media industry, which is a relevant issue nowadays. Many broadcast organizations around the world are concerned about this problem and they have published many papers and standards that are analyzed in this project, some of thoseContinue reading “Design and implementation of a loudness monitoring system – MERIT master thesis”

Shape from silhouette and camera model slides

This slides explains how to calculate the camera intrinsics matrix, camera extrinsics matrix, and camera projection matrix from camera model. And you can find an introduction of SFS (Shape From Silhouette) method.