SlideShare a Scribd company logo
1 of 37
Download to read offline
Watskeburt?!
Onder de motorkap
Technology Update
6 oktober, 2016
Founded by Geert Vos and Joost de Wit in 2014
We still can’t search in video content!
Adding metadata used to be manual labour
We use advanced data mining to analyse video content
Photo courtesy of Google
Both broadcast & on-line sources
Teletext
Speech
Subtitles
Logos
Faces
Filmstrips
Ingest
Analysis
Storage
Presentation /
interaction
API
caskstillwell
foundation
Large Scale 

Video Storage
Online Video
Service
Storage

Service
RSS feed
Video scraper
RabbitMQ
Speech

Recognizer
Subtitle

Extractor
Filmstrip Creator …
individual frames
chunked video
annotations
well still caskfoundation
Speech

Recognizer
Subtitle

Extractor
Filmstrip Creator …
RabbitMQ Indexer Elasticsearch
Content

Service
Notification
Service
Search

Service
Authentication

Service
Feed

Service
well still caskfoundation
annotations Large Scale 

Video Storage
Large Vocabulary Automatic Speech Recognition (ASR)
Photo courtesy of IBM
r  eh k ao g n ay  z       s  p  iy  ch
"recognize speech"
Speech / non-speech
Speaker diarisation
Phonemes (acoustic model)
Vocabulary (language model)
Dialect de NS > Dennis
SjoemelsoftwarePhone calls
Subtitle extraction
ROI selection
Text extraction
OCR
Utterance detection
Garbage detection
Logo recognition
Voor het kijken
Tijdens het kijken
While browsingWhile watching
Research questions
• How to “visually summarise” a video clip as a filmstrip?
• #frames to show (fixed / variable)?
• Which frames to show?
• Size of the frames to show (fixed / variable)?
• Part of the frame to show?
• How to present the filmstrip?
• How should users interact with it?
Frame sampling
Shot detection
Frame selection
Merge
[Bar clipping]
Videoclip
Filmstrip & manifest
Features for frame/bar selection
• Gezichten (en de beweging ervan over
het scherm)
• Gezichtsuitdrukking
• Open ogen
• Tekst
• Infographics
• Scene-overgangen
• Scherpte in het beeld
• Rule-of-thirds
• Aanwezigheid van muziek / spraak
• Ondertiteling
• Visuele eigenschappen frame
(sharpness, saturation,
kleurhistogram)
• Programma specifiek (studio,
naambordjes, …)
Filmstrip as (eventually) tested
• Variable number of frames (one per shot)
• Selected frame just after shot changed
• Fixed width, no clipping
• Focused on the presentation & interaction
Examples
• Short clip
• One long shot taken from a helicopter
• No voice-over or text present
Examples
• The subtitling tells the story
• Selected images don’t contain much information
Examples
• Great example
• Reads like a comic book
• Lucky shot
Alternative filmstrip
• Variable number of frames
• “bar” width based on length of shot
• “bar” cut with respect to frame’s center
Storing the filmstrip
• We store parts of the filmstrip up to a maximum length separately
• Parts are stored in Cassandra
• Efficient retrieval based on program ID and start time of the strip
• Scalability and redundancy are build-in in Cassandra
Part 1
Part 2
The API
• REST API (created using Jersey, running in Apache Tomcat)
• JSON & JPG as output
{
"height" : 480, // The height of the filmstrip
"strips" : [
{
"program_id" : "b214753f-5e17-46ec-afeb-c1b3d9ee6565", // The Id of the program from which
// the filmstrip was created
"start" : 0, // Start time of the strip (in milliseconds)
"stop" : 12000, // Stop time of the strip (in milliseconds)
"url" : "<base>/strip_001.jpg", // The URL of this strip's image
"width" : 6700, // The width of this strip
"segments" : [ // Segments are the tiles in the strip
{
"start_offset" : 0, // The start offset of this segment (in pixels)
"stop_offset" : 100, // The stop offset of this segment (in pixels)
"start_timestamp" : 0, // The start time of this segment (in milliseconds)
"stop_timestamp" : 1234 // The stop time of this segment (in milliseconds)
}, {
"start_offset" : 101,
"stop_offset" : 305,
"start_timestamp" : 1235,
"stop_timestamp" : 2345
}
]
}
],
"previous" : false, // A reference to the previous filmstrip file (when present)
"next" : "<base>/next_strip.json" // A reference to the next filmstrip file (when present)
}
/api/{version}/filmstrip/{program_id}
Flexibility of the API (for other applications)
Parameter Required Description Default
program_id yes The id of the program for which the filmstrip should
be returned
-
start no The start time (in milliseconds) in the video for
which the filmstrip is constructed
0
max_duration no The maximum duration (from {start}) of the video
covered by the filmstrip
-1
(complete clip)
max_width no The maximum width (in pixels) of one single
filmstrip
15000
size no The size of the filmstrip, either small, medium or
large
small
/api/{version}/filmstrip/{program_id}/strip
UI challenges
• Cross platform & responsive (is a hassle)
• We had to ‘fold’ the frames to shorten the strip
• Interaction between the strip and the player
• Move strip while watching?
• Interact with strip while watching?
• Equally sized frames represent different shot
durations
• Implementing ‘the wiggle’ was challenging, but
required to stimulate swiping
• IOS only plays video in fullscreen mode
The filmstrip UI
• Runs in the (mobile) browser
• Responsive design (using Bootstrap)
• Heavily using jQuery + libraries
• jQuery UI
• jQuery Mobile (Events)
• Kinetic
• SmoothDivScroll
• Handlebars
• Thin backend that’s basically a proxy to the Media Distillery platform
Any questions?
Media Distillery
John M. Keynesplein 12-46
1066 EP Amsterdam
info@mediadistillery.tv
+31 (0)6 50 983 893

More Related Content

Similar to Joost de Wit (Media Distillery) - Technology Update - Watskeburt?!

Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering Seminar
Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering SeminarUsman Shakeel - Cloud Rendering at Scale :: AWS Rendering Seminar
Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering SeminarAmazon Web Services Korea
 
API World 2013 - Transforming the Netflix API
API World 2013 - Transforming the Netflix APIAPI World 2013 - Transforming the Netflix API
API World 2013 - Transforming the Netflix APIBenjamin Schmaus
 
from ai.backend import python @ pycontw2018
from ai.backend import python @ pycontw2018from ai.backend import python @ pycontw2018
from ai.backend import python @ pycontw2018Chun-Yu Tseng
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Kundan Singh
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework BasicMario Romano
 
FMS Administration Seminar
FMS Administration SeminarFMS Administration Seminar
FMS Administration SeminarYoss Cohen
 
Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Timothy Spann
 
Edge 2014: MPEG DASH – Tomorrow's Format Today
Edge 2014: MPEG DASH – Tomorrow's Format TodayEdge 2014: MPEG DASH – Tomorrow's Format Today
Edge 2014: MPEG DASH – Tomorrow's Format TodayAkamai Technologies
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementThomas Roger
 
PyCon Canada 2015 - Is your python application secure
PyCon Canada 2015 - Is your python application securePyCon Canada 2015 - Is your python application secure
PyCon Canada 2015 - Is your python application secureIMMUNIO
 
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerBuilding Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerAmazon Web Services
 
Media Files : Android's New Nightmare
Media Files :  Android's New NightmareMedia Files :  Android's New Nightmare
Media Files : Android's New NightmareOguzhan Topgul
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud ComputingGoa App
 
Canopy unconference preso
Canopy unconference presoCanopy unconference preso
Canopy unconference presogregulator
 
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...Intel® Software
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...Edge AI and Vision Alliance
 

Similar to Joost de Wit (Media Distillery) - Technology Update - Watskeburt?! (20)

Introduce native html5 streaming player
Introduce native html5 streaming playerIntroduce native html5 streaming player
Introduce native html5 streaming player
 
Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering Seminar
Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering SeminarUsman Shakeel - Cloud Rendering at Scale :: AWS Rendering Seminar
Usman Shakeel - Cloud Rendering at Scale :: AWS Rendering Seminar
 
Introduction to Apache Beam
Introduction to Apache BeamIntroduction to Apache Beam
Introduction to Apache Beam
 
[AWSKRUG&JAWS-UG Meetup #1] Serverless Real-Time Analysis
[AWSKRUG&JAWS-UG Meetup #1]  Serverless  Real-Time Analysis[AWSKRUG&JAWS-UG Meetup #1]  Serverless  Real-Time Analysis
[AWSKRUG&JAWS-UG Meetup #1] Serverless Real-Time Analysis
 
API World 2013 - Transforming the Netflix API
API World 2013 - Transforming the Netflix APIAPI World 2013 - Transforming the Netflix API
API World 2013 - Transforming the Netflix API
 
from ai.backend import python @ pycontw2018
from ai.backend import python @ pycontw2018from ai.backend import python @ pycontw2018
from ai.backend import python @ pycontw2018
 
SDAccel Design Contest: Vivado HLS
SDAccel Design Contest: Vivado HLSSDAccel Design Contest: Vivado HLS
SDAccel Design Contest: Vivado HLS
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework Basic
 
FMS Administration Seminar
FMS Administration SeminarFMS Administration Seminar
FMS Administration Seminar
 
Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020
 
Edge 2014: MPEG DASH – Tomorrow's Format Today
Edge 2014: MPEG DASH – Tomorrow's Format TodayEdge 2014: MPEG DASH – Tomorrow's Format Today
Edge 2014: MPEG DASH – Tomorrow's Format Today
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset Management
 
PyCon Canada 2015 - Is your python application secure
PyCon Canada 2015 - Is your python application securePyCon Canada 2015 - Is your python application secure
PyCon Canada 2015 - Is your python application secure
 
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerBuilding Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
 
Media Files : Android's New Nightmare
Media Files :  Android's New NightmareMedia Files :  Android's New Nightmare
Media Files : Android's New Nightmare
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Canopy unconference preso
Canopy unconference presoCanopy unconference preso
Canopy unconference preso
 
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...
Build a Deep Learning Video Analytics Framework | SIGGRAPH 2019 Technical Ses...
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
 

More from Media Perspectives

Presentatie Paul Rutten - Monitor Creatieve Industrie 2021
Presentatie Paul Rutten - Monitor Creatieve Industrie 2021Presentatie Paul Rutten - Monitor Creatieve Industrie 2021
Presentatie Paul Rutten - Monitor Creatieve Industrie 2021Media Perspectives
 
Jeroen Broekema (Springcast) - Podcast hosting en analytics
Jeroen Broekema (Springcast) - Podcast hosting en analyticsJeroen Broekema (Springcast) - Podcast hosting en analytics
Jeroen Broekema (Springcast) - Podcast hosting en analyticsMedia Perspectives
 
Liedewij Hentenaar (Audify) over de groei van audio
Liedewij Hentenaar (Audify) over de groei van audioLiedewij Hentenaar (Audify) over de groei van audio
Liedewij Hentenaar (Audify) over de groei van audioMedia Perspectives
 
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroep
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroepEgon Verhagen (NPO) - Audio innovatie bij de publieke omroep
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroepMedia Perspectives
 
Willem Brom (EndemolShine) over non-scripted voor streamers
Willem Brom (EndemolShine) over non-scripted voor streamersWillem Brom (EndemolShine) over non-scripted voor streamers
Willem Brom (EndemolShine) over non-scripted voor streamersMedia Perspectives
 
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-content
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-contentJordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-content
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-contentMedia Perspectives
 
Laura Veenema (NewBe) over 'superserve the niche'
Laura Veenema (NewBe) over 'superserve the niche'Laura Veenema (NewBe) over 'superserve the niche'
Laura Veenema (NewBe) over 'superserve the niche'Media Perspectives
 
Gerard de Kloet (NOS) over @NOS op Instagram
Gerard de Kloet (NOS) over @NOS op Instagram Gerard de Kloet (NOS) over @NOS op Instagram
Gerard de Kloet (NOS) over @NOS op Instagram Media Perspectives
 
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...Media Perspectives
 
Slides MediaTalk NOS-project '75 jaar bevrijding'
Slides MediaTalk NOS-project '75 jaar bevrijding'Slides MediaTalk NOS-project '75 jaar bevrijding'
Slides MediaTalk NOS-project '75 jaar bevrijding'Media Perspectives
 
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijden
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijdenPaul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijden
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijdenMedia Perspectives
 
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...Media Perspectives
 
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...Media Perspectives
 
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...Media Perspectives
 
William Linders (ODMedia) over de opkomst van SVOD en AVOD
William Linders (ODMedia) over de opkomst van SVOD en AVODWilliam Linders (ODMedia) over de opkomst van SVOD en AVOD
William Linders (ODMedia) over de opkomst van SVOD en AVODMedia Perspectives
 
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeert
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeertSuzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeert
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeertMedia Perspectives
 
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces Media Perspectives
 
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe Interfaces
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe InterfacesJeroen de Bakker (Talpa Network) @ CMC Nieuwe Interfaces
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe InterfacesMedia Perspectives
 
Vera Holland (KRO-NCRV) @ CMC Nieuwe Interfaces
Vera Holland (KRO-NCRV) @ CMC Nieuwe InterfacesVera Holland (KRO-NCRV) @ CMC Nieuwe Interfaces
Vera Holland (KRO-NCRV) @ CMC Nieuwe InterfacesMedia Perspectives
 
Joey Scheufler (Prappers Media) @ CMC Nieuwe Interfaces
Joey Scheufler (Prappers Media) @ CMC Nieuwe InterfacesJoey Scheufler (Prappers Media) @ CMC Nieuwe Interfaces
Joey Scheufler (Prappers Media) @ CMC Nieuwe InterfacesMedia Perspectives
 

More from Media Perspectives (20)

Presentatie Paul Rutten - Monitor Creatieve Industrie 2021
Presentatie Paul Rutten - Monitor Creatieve Industrie 2021Presentatie Paul Rutten - Monitor Creatieve Industrie 2021
Presentatie Paul Rutten - Monitor Creatieve Industrie 2021
 
Jeroen Broekema (Springcast) - Podcast hosting en analytics
Jeroen Broekema (Springcast) - Podcast hosting en analyticsJeroen Broekema (Springcast) - Podcast hosting en analytics
Jeroen Broekema (Springcast) - Podcast hosting en analytics
 
Liedewij Hentenaar (Audify) over de groei van audio
Liedewij Hentenaar (Audify) over de groei van audioLiedewij Hentenaar (Audify) over de groei van audio
Liedewij Hentenaar (Audify) over de groei van audio
 
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroep
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroepEgon Verhagen (NPO) - Audio innovatie bij de publieke omroep
Egon Verhagen (NPO) - Audio innovatie bij de publieke omroep
 
Willem Brom (EndemolShine) over non-scripted voor streamers
Willem Brom (EndemolShine) over non-scripted voor streamersWillem Brom (EndemolShine) over non-scripted voor streamers
Willem Brom (EndemolShine) over non-scripted voor streamers
 
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-content
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-contentJordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-content
Jordi van de Bovenkamp (MediaMonks) met vijf tips voor fit-for-format-content
 
Laura Veenema (NewBe) over 'superserve the niche'
Laura Veenema (NewBe) over 'superserve the niche'Laura Veenema (NewBe) over 'superserve the niche'
Laura Veenema (NewBe) over 'superserve the niche'
 
Gerard de Kloet (NOS) over @NOS op Instagram
Gerard de Kloet (NOS) over @NOS op Instagram Gerard de Kloet (NOS) over @NOS op Instagram
Gerard de Kloet (NOS) over @NOS op Instagram
 
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...
Paulo Lopes Escudeiro over nieuwe TikTok-gewoontes @ Cross Media Café - Nieuw...
 
Slides MediaTalk NOS-project '75 jaar bevrijding'
Slides MediaTalk NOS-project '75 jaar bevrijding'Slides MediaTalk NOS-project '75 jaar bevrijding'
Slides MediaTalk NOS-project '75 jaar bevrijding'
 
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijden
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijdenPaul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijden
Paul Bojarski (Sceenic) over Watch Together @ CMC - Innovatie in coronatijden
 
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...
Tomas van den Spiegel (Flanders Classics) en Jorre Belpaire (Kiswe Mobile) ov...
 
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...
Geraldine Macqueron (GAME OVER) over het initiatief Creators United @ CMC - I...
 
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...
Arno Scharl (webLyzard technology) over online corona sentimenten weergeeft @...
 
William Linders (ODMedia) over de opkomst van SVOD en AVOD
William Linders (ODMedia) over de opkomst van SVOD en AVODWilliam Linders (ODMedia) over de opkomst van SVOD en AVOD
William Linders (ODMedia) over de opkomst van SVOD en AVOD
 
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeert
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeertSuzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeert
Suzan Hoogland (GfK) over hoe de Nederlander 'Video' consumeert
 
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces
Maarten Lens-FitzGerald (voice ondernemers) @ CMC Nieuwe Interfaces
 
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe Interfaces
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe InterfacesJeroen de Bakker (Talpa Network) @ CMC Nieuwe Interfaces
Jeroen de Bakker (Talpa Network) @ CMC Nieuwe Interfaces
 
Vera Holland (KRO-NCRV) @ CMC Nieuwe Interfaces
Vera Holland (KRO-NCRV) @ CMC Nieuwe InterfacesVera Holland (KRO-NCRV) @ CMC Nieuwe Interfaces
Vera Holland (KRO-NCRV) @ CMC Nieuwe Interfaces
 
Joey Scheufler (Prappers Media) @ CMC Nieuwe Interfaces
Joey Scheufler (Prappers Media) @ CMC Nieuwe InterfacesJoey Scheufler (Prappers Media) @ CMC Nieuwe Interfaces
Joey Scheufler (Prappers Media) @ CMC Nieuwe Interfaces
 

Recently uploaded

call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@vikas rana
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSebastiano Panichella
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfakankshagupta7348026
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝soniya singh
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxFamilyWorshipCenterD
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfhenrik385807
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)Basil Achie
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
LANDMARKS  AND MONUMENTS IN NIGERIA.pptxLANDMARKS  AND MONUMENTS IN NIGERIA.pptx
LANDMARKS AND MONUMENTS IN NIGERIA.pptxBasil Achie
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...NETWAYS
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...NETWAYS
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptssuser319dad
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 

Recently uploaded (20)

call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdf
 
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
Call Girls in Sarojini Nagar Market Delhi 💯 Call Us 🔝8264348440🔝
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
LANDMARKS  AND MONUMENTS IN NIGERIA.pptxLANDMARKS  AND MONUMENTS IN NIGERIA.pptx
LANDMARKS AND MONUMENTS IN NIGERIA.pptx
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.ppt
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 

Joost de Wit (Media Distillery) - Technology Update - Watskeburt?!

  • 2. Founded by Geert Vos and Joost de Wit in 2014
  • 3. We still can’t search in video content!
  • 4. Adding metadata used to be manual labour
  • 5. We use advanced data mining to analyse video content Photo courtesy of Google
  • 6. Both broadcast & on-line sources Teletext Speech Subtitles Logos Faces Filmstrips
  • 9. Large Scale Video Storage Online Video Service Storage Service RSS feed Video scraper RabbitMQ Speech Recognizer Subtitle Extractor Filmstrip Creator … individual frames chunked video annotations well still caskfoundation
  • 10. Speech Recognizer Subtitle Extractor Filmstrip Creator … RabbitMQ Indexer Elasticsearch Content Service Notification Service Search Service Authentication Service Feed Service well still caskfoundation annotations Large Scale Video Storage
  • 11. Large Vocabulary Automatic Speech Recognition (ASR) Photo courtesy of IBM
  • 12. r  eh k ao g n ay  z       s  p  iy  ch "recognize speech" Speech / non-speech Speaker diarisation Phonemes (acoustic model) Vocabulary (language model)
  • 13. Dialect de NS > Dennis
  • 16. ROI selection Text extraction OCR Utterance detection Garbage detection
  • 17.
  • 19.
  • 20. Voor het kijken Tijdens het kijken While browsingWhile watching
  • 21. Research questions • How to “visually summarise” a video clip as a filmstrip? • #frames to show (fixed / variable)? • Which frames to show? • Size of the frames to show (fixed / variable)? • Part of the frame to show? • How to present the filmstrip? • How should users interact with it?
  • 22. Frame sampling Shot detection Frame selection Merge [Bar clipping] Videoclip Filmstrip & manifest
  • 23. Features for frame/bar selection • Gezichten (en de beweging ervan over het scherm) • Gezichtsuitdrukking • Open ogen • Tekst • Infographics • Scene-overgangen • Scherpte in het beeld • Rule-of-thirds • Aanwezigheid van muziek / spraak • Ondertiteling • Visuele eigenschappen frame (sharpness, saturation, kleurhistogram) • Programma specifiek (studio, naambordjes, …)
  • 24. Filmstrip as (eventually) tested • Variable number of frames (one per shot) • Selected frame just after shot changed • Fixed width, no clipping • Focused on the presentation & interaction
  • 25. Examples • Short clip • One long shot taken from a helicopter • No voice-over or text present
  • 26. Examples • The subtitling tells the story • Selected images don’t contain much information
  • 27. Examples • Great example • Reads like a comic book • Lucky shot
  • 28. Alternative filmstrip • Variable number of frames • “bar” width based on length of shot • “bar” cut with respect to frame’s center
  • 29. Storing the filmstrip • We store parts of the filmstrip up to a maximum length separately • Parts are stored in Cassandra • Efficient retrieval based on program ID and start time of the strip • Scalability and redundancy are build-in in Cassandra Part 1 Part 2
  • 30. The API • REST API (created using Jersey, running in Apache Tomcat) • JSON & JPG as output
  • 31. { "height" : 480, // The height of the filmstrip "strips" : [ { "program_id" : "b214753f-5e17-46ec-afeb-c1b3d9ee6565", // The Id of the program from which // the filmstrip was created "start" : 0, // Start time of the strip (in milliseconds) "stop" : 12000, // Stop time of the strip (in milliseconds) "url" : "<base>/strip_001.jpg", // The URL of this strip's image "width" : 6700, // The width of this strip "segments" : [ // Segments are the tiles in the strip { "start_offset" : 0, // The start offset of this segment (in pixels) "stop_offset" : 100, // The stop offset of this segment (in pixels) "start_timestamp" : 0, // The start time of this segment (in milliseconds) "stop_timestamp" : 1234 // The stop time of this segment (in milliseconds) }, { "start_offset" : 101, "stop_offset" : 305, "start_timestamp" : 1235, "stop_timestamp" : 2345 } ] } ], "previous" : false, // A reference to the previous filmstrip file (when present) "next" : "<base>/next_strip.json" // A reference to the next filmstrip file (when present) } /api/{version}/filmstrip/{program_id}
  • 32. Flexibility of the API (for other applications) Parameter Required Description Default program_id yes The id of the program for which the filmstrip should be returned - start no The start time (in milliseconds) in the video for which the filmstrip is constructed 0 max_duration no The maximum duration (from {start}) of the video covered by the filmstrip -1 (complete clip) max_width no The maximum width (in pixels) of one single filmstrip 15000 size no The size of the filmstrip, either small, medium or large small
  • 34. UI challenges • Cross platform & responsive (is a hassle) • We had to ‘fold’ the frames to shorten the strip • Interaction between the strip and the player • Move strip while watching? • Interact with strip while watching? • Equally sized frames represent different shot durations • Implementing ‘the wiggle’ was challenging, but required to stimulate swiping • IOS only plays video in fullscreen mode
  • 35. The filmstrip UI • Runs in the (mobile) browser • Responsive design (using Bootstrap) • Heavily using jQuery + libraries • jQuery UI • jQuery Mobile (Events) • Kinetic • SmoothDivScroll • Handlebars • Thin backend that’s basically a proxy to the Media Distillery platform
  • 37. Media Distillery John M. Keynesplein 12-46 1066 EP Amsterdam info@mediadistillery.tv +31 (0)6 50 983 893