SlideShare a Scribd company logo
||
Stephen Marquard, University of Cape Town
1
Track4K in production
||
Track4K is an open-source video analysis and tracking system that post-
processes a 4K video to track the presenter and generate a cropped version of
the video using smooth panning movements.
Track4K was developed as a 4th-year Computer Science student project at the
University of Cape Town in 2016, released as open source in Jan 2017 and
deployed as part of UCT's Opencast system in September 2017.
Created by Charles Fitzhenry, Maximillian Hahn and Tanweer Khatieb
Supervisors: Patrick Marais, Stephen Marquard
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 2
Track4K Overview
|| 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 3
Track4K works best in medium-sized venues
||
1. Record in 4K, process to 1080p or 720p, publish smaller sizes
(UCT production workflow)
2. Record in 4K, create tracking data only, publish in 4K with
player auto-tracking (paella prototype)
3. Record in 4K, process to 1080p or 720p, publish 4K original (untracked)
and smaller sizes (tracked)
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 4
Three ways to use Track4K
||
 Record the lecture with a 4K camera
 track4k analyzes the input video and produces a tracking file, with frame-by-frame positioning information
 cropvid reads the tracking file and input video and produces an output video
 Because the tracking is not real-time, the field of view changes smoothly and only when necessary
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 5
How it works
||
 Originally, track4k processed everything itself, from input video to output video
 OpenCV only handles video files, and will not preserve an audio track.
 That’s still fine if the 4K video is recorded using a fixed frame rate:
you can mux the resulting video with the input video audio track.
 But if you have a video recorded with a variable frame rate (typical for H264 streams from IP
cameras), this creates audio synchronization issues, because OpenCV does not provide access
to per-frame timing information (no PTS value is available for each frame), so the output video is
written as if it had a fixed frame rate.
 To resolve this:
 track4k reads the video and writes a tracking file (frame-by-frame).
 cropvid reads the input video and writes the tracked output video, preserving frame timing information
 The tracking file can also be used stand-alone for other applications (player-side tracking)
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 6
Why does Track4K come in two parts?
||
[track1]
name = audio
device = pulse
flavor = presenter
location = …
file = audio.flac
player = True
audioencoder = flacenc
active = True
delay = 0.2
14/02/2018 7
Track4K at UCT: Galicaster configuration (Axis 1428)
[track2]
name = presenter
device = rtp
flavor = presenter4k
location = rtspt://m209-cam01.uct.ac.za/axis-media/media.amp
file = presenter.mkv
cameratype = h264
audio = False
muxer = matroskamux
caps-preview = video/x-raw,framerate=1/1
active = True
[basic]
custom_flavors=presenter4k presentation2
||
Uses the Opencast Execute-
Many workflow operation
handler.
After ingest, if there is a
presenter4k flavor in the
mediapackage, then run track4k
and create a presenter/source
tracked video.
We do not archive the 4K
version, so only one presenter
video is retained in the
mediapackage.
14/02/2018 8
Track4K at UCT: workflow configuration
|| 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 9
||
The wrapper script
uses ${event_location}
to look up the venue in
a config file, and
optionally set the target
resolution and vertical
crop position.
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 10
Track4K at UCT: wrapper script
||
Limitations
 Only does panning movements
 Tracking can sometimes be distracted by audience members
(workaround: apply top and bottom image masks on the camera)
 Run-time is approximately 3 x real-time (track4k and cropvid)
Future work
More sophisticated tracking and virtual cinematography is the subject of Master’s
theses by Charles Fitzhenry and Tanweer Khatieb (completion during 2018).
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 11
||
Source:
https://github.com/LectureTracking/trackhd
Wrapper script:
https://github.com/cilt-uct/trackhd/tree/master/examples/opencast
Track4K Student Project:
http://track4k.co.za
Technical paper: A Virtual Cinematographer for Presenter Tracking in 4K Lecture Videos
http://pubs.cs.uct.ac.za/archive/00001178
News article:
http://www.cilt.uct.ac.za/cilt/news/Computer-Science-students-improve-UCT-lecture-recording
14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 12
Get Track4K

More Related Content

What's hot

(Still) Exploiting TCP Timestamps
(Still) Exploiting TCP Timestamps(Still) Exploiting TCP Timestamps
(Still) Exploiting TCP Timestamps
fenceposterror
 
P4, EPBF, and Linux TC Offload
P4, EPBF, and Linux TC OffloadP4, EPBF, and Linux TC Offload
P4, EPBF, and Linux TC Offload
Open-NFP
 
rtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyondrtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyond
Andreas Granig
 
rtpengine and kamailio - or how to simulate calls at scale
rtpengine and kamailio - or how to simulate calls at scalertpengine and kamailio - or how to simulate calls at scale
rtpengine and kamailio - or how to simulate calls at scale
Andreas Granig
 
Involvement in OpenHPC
Involvement in OpenHPC	Involvement in OpenHPC
Involvement in OpenHPC
Linaro
 
Internet Archive Video Presentation
Internet Archive Video Presentation Internet Archive Video Presentation
Internet Archive Video Presentation
tracey jaquith
 
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
Kazushi Yamashina
 
BKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance TestingBKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance Testing
Linaro
 
Managing large scale projects in R with R Suite
Managing large scale projects in R with R SuiteManaging large scale projects in R with R Suite
Managing large scale projects in R with R Suite
WLOG Solutions
 
How to lock a Python in a cage? Managing Python environment inside an R project
How to lock a Python in a cage?  Managing Python environment inside an R projectHow to lock a Python in a cage?  Managing Python environment inside an R project
How to lock a Python in a cage? Managing Python environment inside an R project
WLOG Solutions
 
Kernel bug hunting
Kernel bug huntingKernel bug hunting
Kernel bug hunting
Andrea Righi
 
Logging library migrations - A case study for the Apache Software Foundation ...
Logging library migrations - A case study for the Apache Software Foundation ...Logging library migrations - A case study for the Apache Software Foundation ...
Logging library migrations - A case study for the Apache Software Foundation ...
corpaulbezemer
 
Automating AWS Infrastructure Provisioning Using Concourse and Terraform
Automating AWS Infrastructure Provisioning Using Concourse and TerraformAutomating AWS Infrastructure Provisioning Using Concourse and Terraform
Automating AWS Infrastructure Provisioning Using Concourse and Terraform
Cesar Rodriguez
 
HCQC : HPC Compiler Quality Checker
HCQC : HPC Compiler Quality CheckerHCQC : HPC Compiler Quality Checker
HCQC : HPC Compiler Quality Checker
Linaro
 
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Puppet
 
The Secrets of SVC (NBU)
The Secrets of SVC (NBU)The Secrets of SVC (NBU)
The Secrets of SVC (NBU)
RADVISION Ltd.
 
BKK16-106 ODP Project Update
BKK16-106 ODP Project UpdateBKK16-106 ODP Project Update
BKK16-106 ODP Project Update
Linaro
 
Ci Tranning
Ci TranningCi Tranning
Ci Tranning
Cương Hỏa
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops Team
Rachid Zarouali
 
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
cReComp : Automated Design Tool  for ROS-Compliant FPGA Component cReComp : Automated Design Tool  for ROS-Compliant FPGA Component
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
Kazushi Yamashina
 

What's hot (20)

(Still) Exploiting TCP Timestamps
(Still) Exploiting TCP Timestamps(Still) Exploiting TCP Timestamps
(Still) Exploiting TCP Timestamps
 
P4, EPBF, and Linux TC Offload
P4, EPBF, and Linux TC OffloadP4, EPBF, and Linux TC Offload
P4, EPBF, and Linux TC Offload
 
rtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyondrtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyond
 
rtpengine and kamailio - or how to simulate calls at scale
rtpengine and kamailio - or how to simulate calls at scalertpengine and kamailio - or how to simulate calls at scale
rtpengine and kamailio - or how to simulate calls at scale
 
Involvement in OpenHPC
Involvement in OpenHPC	Involvement in OpenHPC
Involvement in OpenHPC
 
Internet Archive Video Presentation
Internet Archive Video Presentation Internet Archive Video Presentation
Internet Archive Video Presentation
 
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
FPGAを用いた処理のロボット向けコンポーネントの設計生産性評価
 
BKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance TestingBKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance Testing
 
Managing large scale projects in R with R Suite
Managing large scale projects in R with R SuiteManaging large scale projects in R with R Suite
Managing large scale projects in R with R Suite
 
How to lock a Python in a cage? Managing Python environment inside an R project
How to lock a Python in a cage?  Managing Python environment inside an R projectHow to lock a Python in a cage?  Managing Python environment inside an R project
How to lock a Python in a cage? Managing Python environment inside an R project
 
Kernel bug hunting
Kernel bug huntingKernel bug hunting
Kernel bug hunting
 
Logging library migrations - A case study for the Apache Software Foundation ...
Logging library migrations - A case study for the Apache Software Foundation ...Logging library migrations - A case study for the Apache Software Foundation ...
Logging library migrations - A case study for the Apache Software Foundation ...
 
Automating AWS Infrastructure Provisioning Using Concourse and Terraform
Automating AWS Infrastructure Provisioning Using Concourse and TerraformAutomating AWS Infrastructure Provisioning Using Concourse and Terraform
Automating AWS Infrastructure Provisioning Using Concourse and Terraform
 
HCQC : HPC Compiler Quality Checker
HCQC : HPC Compiler Quality CheckerHCQC : HPC Compiler Quality Checker
HCQC : HPC Compiler Quality Checker
 
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
 
The Secrets of SVC (NBU)
The Secrets of SVC (NBU)The Secrets of SVC (NBU)
The Secrets of SVC (NBU)
 
BKK16-106 ODP Project Update
BKK16-106 ODP Project UpdateBKK16-106 ODP Project Update
BKK16-106 ODP Project Update
 
Ci Tranning
Ci TranningCi Tranning
Ci Tranning
 
Docker to the Rescue of an Ops Team
Docker to the Rescue of an Ops TeamDocker to the Rescue of an Ops Team
Docker to the Rescue of an Ops Team
 
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
cReComp : Automated Design Tool  for ROS-Compliant FPGA Component cReComp : Automated Design Tool  for ROS-Compliant FPGA Component
cReComp : Automated Design Tool for ROS-Compliant FPGA Component
 

Similar to Track4K in production at the University of Cape Town

Introduction to Opencast Matterhorn: Apereo 2014
Introduction to Opencast Matterhorn: Apereo 2014Introduction to Opencast Matterhorn: Apereo 2014
Introduction to Opencast Matterhorn: Apereo 2014
Stephen Marquard
 
Opencast and Sakai at UCT, LectureSight and Track4K
Opencast and Sakai at UCT, LectureSight and Track4KOpencast and Sakai at UCT, LectureSight and Track4K
Opencast and Sakai at UCT, LectureSight and Track4K
Stephen Marquard
 
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset Management
Thomas Roger
 
Performance Analysis and Monitoring with Perf4j
Performance Analysis and Monitoring with Perf4jPerformance Analysis and Monitoring with Perf4j
Performance Analysis and Monitoring with Perf4j
Craig Dickson
 
Orchestrating the execution of workflows for media streaming service and even...
Orchestrating the execution of workflows for media streaming service and even...Orchestrating the execution of workflows for media streaming service and even...
Orchestrating the execution of workflows for media streaming service and even...
Shuen-Huei Guan
 
P4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptxP4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptx
tampham61268
 
3. The Preforma PCP. Bert Lemmens
3. The Preforma PCP. Bert Lemmens 3. The Preforma PCP. Bert Lemmens
3. The Preforma PCP. Bert Lemmens
IMPACT Centre of Competence
 
ACN solved Manual By Ketan.pdf
ACN solved Manual By Ketan.pdfACN solved Manual By Ketan.pdf
ACN solved Manual By Ketan.pdf
rushikeshspanchal75
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
brucelawson
 
Streaming in grails
Streaming in grailsStreaming in grails
Streaming in grails
Sandeep Sankaye
 
FIWARE Tech Summit - Stream Processing with Kurento Media Server
FIWARE Tech Summit - Stream Processing with Kurento Media ServerFIWARE Tech Summit - Stream Processing with Kurento Media Server
FIWARE Tech Summit - Stream Processing with Kurento Media Server
FIWARE
 
Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy Person
Philip Tellis
 
NHK Challenges for Preserving UHD Materials (HIRAKAZU)
NHK Challenges for Preserving UHD Materials (HIRAKAZU)NHK Challenges for Preserving UHD Materials (HIRAKAZU)
NHK Challenges for Preserving UHD Materials (HIRAKAZU)
FIAT/IFTA
 
Automatic Subtitle Generation For Sound In Videos
Automatic Subtitle Generation For Sound In VideosAutomatic Subtitle Generation For Sound In Videos
Automatic Subtitle Generation For Sound In Videos
Asia Smith
 
Read me
Read meRead me
Read me
jjhollywood
 
A Study on FFmpeg Multimedia Framework
A Study on FFmpeg Multimedia FrameworkA Study on FFmpeg Multimedia Framework
A Study on FFmpeg Multimedia Framework
ijtsrd
 
IPTV Codec & Packeting
IPTV Codec & PacketingIPTV Codec & Packeting
IPTV Codec & Packeting
Kuncoro Wastuwibowo
 
Automatic Subtitle Generation for Sound in Videos
Automatic Subtitle Generation for Sound in VideosAutomatic Subtitle Generation for Sound in Videos
Automatic Subtitle Generation for Sound in Videos
IRJET Journal
 
Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014
Marius Preda PhD
 

Similar to Track4K in production at the University of Cape Town (20)

Introduction to Opencast Matterhorn: Apereo 2014
Introduction to Opencast Matterhorn: Apereo 2014Introduction to Opencast Matterhorn: Apereo 2014
Introduction to Opencast Matterhorn: Apereo 2014
 
Opencast and Sakai at UCT, LectureSight and Track4K
Opencast and Sakai at UCT, LectureSight and Track4KOpencast and Sakai at UCT, LectureSight and Track4K
Opencast and Sakai at UCT, LectureSight and Track4K
 
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
Nagios Conference 2014 - Jess Portnoy - Nagios Monitoring Kaltura - The Open ...
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset Management
 
Performance Analysis and Monitoring with Perf4j
Performance Analysis and Monitoring with Perf4jPerformance Analysis and Monitoring with Perf4j
Performance Analysis and Monitoring with Perf4j
 
Orchestrating the execution of workflows for media streaming service and even...
Orchestrating the execution of workflows for media streaming service and even...Orchestrating the execution of workflows for media streaming service and even...
Orchestrating the execution of workflows for media streaming service and even...
 
P4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptxP4+ONOS SRv6 tutorial.pptx
P4+ONOS SRv6 tutorial.pptx
 
3. The Preforma PCP. Bert Lemmens
3. The Preforma PCP. Bert Lemmens 3. The Preforma PCP. Bert Lemmens
3. The Preforma PCP. Bert Lemmens
 
ACN solved Manual By Ketan.pdf
ACN solved Manual By Ketan.pdfACN solved Manual By Ketan.pdf
ACN solved Manual By Ketan.pdf
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
 
Streaming in grails
Streaming in grailsStreaming in grails
Streaming in grails
 
FIWARE Tech Summit - Stream Processing with Kurento Media Server
FIWARE Tech Summit - Stream Processing with Kurento Media ServerFIWARE Tech Summit - Stream Processing with Kurento Media Server
FIWARE Tech Summit - Stream Processing with Kurento Media Server
 
Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy Person
 
NHK Challenges for Preserving UHD Materials (HIRAKAZU)
NHK Challenges for Preserving UHD Materials (HIRAKAZU)NHK Challenges for Preserving UHD Materials (HIRAKAZU)
NHK Challenges for Preserving UHD Materials (HIRAKAZU)
 
Automatic Subtitle Generation For Sound In Videos
Automatic Subtitle Generation For Sound In VideosAutomatic Subtitle Generation For Sound In Videos
Automatic Subtitle Generation For Sound In Videos
 
Read me
Read meRead me
Read me
 
A Study on FFmpeg Multimedia Framework
A Study on FFmpeg Multimedia FrameworkA Study on FFmpeg Multimedia Framework
A Study on FFmpeg Multimedia Framework
 
IPTV Codec & Packeting
IPTV Codec & PacketingIPTV Codec & Packeting
IPTV Codec & Packeting
 
Automatic Subtitle Generation for Sound in Videos
Automatic Subtitle Generation for Sound in VideosAutomatic Subtitle Generation for Sound in Videos
Automatic Subtitle Generation for Sound in Videos
 
Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014
 

More from Stephen Marquard

The implementation of an Opt-Out Lecture Recording Policy at the University o...
The implementation of an Opt-Out Lecture Recording Policy at the University o...The implementation of an Opt-Out Lecture Recording Policy at the University o...
The implementation of an Opt-Out Lecture Recording Policy at the University o...
Stephen Marquard
 
Orchestrating Self-Service Video Workflows with Opencast
Orchestrating Self-Service Video Workflows with OpencastOrchestrating Self-Service Video Workflows with Opencast
Orchestrating Self-Service Video Workflows with Opencast
Stephen Marquard
 
Smart workflows for Opencast
Smart workflows for OpencastSmart workflows for Opencast
Smart workflows for Opencast
Stephen Marquard
 
LectureSight is awesome and getting better! 
LectureSight is awesome and getting better! LectureSight is awesome and getting better! 
LectureSight is awesome and getting better! 
Stephen Marquard
 
Opencast Valencia 2017: Users, groups, roles, ACLs and providers
Opencast Valencia 2017: Users, groups, roles, ACLs and providersOpencast Valencia 2017: Users, groups, roles, ACLs and providers
Opencast Valencia 2017: Users, groups, roles, ACLs and providers
Stephen Marquard
 
LectureSight in Action (Opencast Community Summit 2016)
LectureSight in Action (Opencast Community Summit 2016)LectureSight in Action (Opencast Community Summit 2016)
LectureSight in Action (Opencast Community Summit 2016)
Stephen Marquard
 
Opencast Project Update at Open Apereo 2015
Opencast Project Update at Open Apereo 2015Opencast Project Update at Open Apereo 2015
Opencast Project Update at Open Apereo 2015
Stephen Marquard
 
Why do students use lecture recordings?
Why do students use lecture recordings?Why do students use lecture recordings?
Why do students use lecture recordings?
Stephen Marquard
 
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
Stephen Marquard
 
Matterhorn 2014 Unconference: Ideas for automated post-recording video handling
Matterhorn 2014 Unconference: Ideas for automated post-recording video handlingMatterhorn 2014 Unconference: Ideas for automated post-recording video handling
Matterhorn 2014 Unconference: Ideas for automated post-recording video handling
Stephen Marquard
 
Opencast Matterhorn at UCT
Opencast Matterhorn at UCTOpencast Matterhorn at UCT
Opencast Matterhorn at UCT
Stephen Marquard
 
Open Text: Speech recognition in Opencast Matterhorn
Open Text: Speech recognition in Opencast MatterhornOpen Text: Speech recognition in Opencast Matterhorn
Open Text: Speech recognition in Opencast Matterhorn
Stephen Marquard
 
Wreck a nice beach: adventures in speech recognition
Wreck a nice beach: adventures in speech recognitionWreck a nice beach: adventures in speech recognition
Wreck a nice beach: adventures in speech recognition
Stephen Marquard
 
Advancing Online Assessment in Medical Education
Advancing Online Assessment in Medical EducationAdvancing Online Assessment in Medical Education
Advancing Online Assessment in Medical Education
Stephen Marquard
 
SMS, Q&A and Course Evaluations in Sakai
SMS, Q&A and Course Evaluations in SakaiSMS, Q&A and Course Evaluations in Sakai
SMS, Q&A and Course Evaluations in Sakai
Stephen Marquard
 
SMS, Q&A, Course Evaluation tools in Sakai
SMS, Q&A, Course Evaluation tools in SakaiSMS, Q&A, Course Evaluation tools in Sakai
SMS, Q&A, Course Evaluation tools in Sakai
Stephen Marquard
 
Sakai E Learning Update Sep09
Sakai E Learning Update Sep09Sakai E Learning Update Sep09
Sakai E Learning Update Sep09
Stephen Marquard
 
Vula is my survival kit
Vula is my survival kitVula is my survival kit
Vula is my survival kit
Stephen Marquard
 

More from Stephen Marquard (18)

The implementation of an Opt-Out Lecture Recording Policy at the University o...
The implementation of an Opt-Out Lecture Recording Policy at the University o...The implementation of an Opt-Out Lecture Recording Policy at the University o...
The implementation of an Opt-Out Lecture Recording Policy at the University o...
 
Orchestrating Self-Service Video Workflows with Opencast
Orchestrating Self-Service Video Workflows with OpencastOrchestrating Self-Service Video Workflows with Opencast
Orchestrating Self-Service Video Workflows with Opencast
 
Smart workflows for Opencast
Smart workflows for OpencastSmart workflows for Opencast
Smart workflows for Opencast
 
LectureSight is awesome and getting better! 
LectureSight is awesome and getting better! LectureSight is awesome and getting better! 
LectureSight is awesome and getting better! 
 
Opencast Valencia 2017: Users, groups, roles, ACLs and providers
Opencast Valencia 2017: Users, groups, roles, ACLs and providersOpencast Valencia 2017: Users, groups, roles, ACLs and providers
Opencast Valencia 2017: Users, groups, roles, ACLs and providers
 
LectureSight in Action (Opencast Community Summit 2016)
LectureSight in Action (Opencast Community Summit 2016)LectureSight in Action (Opencast Community Summit 2016)
LectureSight in Action (Opencast Community Summit 2016)
 
Opencast Project Update at Open Apereo 2015
Opencast Project Update at Open Apereo 2015Opencast Project Update at Open Apereo 2015
Opencast Project Update at Open Apereo 2015
 
Why do students use lecture recordings?
Why do students use lecture recordings?Why do students use lecture recordings?
Why do students use lecture recordings?
 
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
Introduction to Opencast Matterhorn, Apereo Mexico Conference, May 2014
 
Matterhorn 2014 Unconference: Ideas for automated post-recording video handling
Matterhorn 2014 Unconference: Ideas for automated post-recording video handlingMatterhorn 2014 Unconference: Ideas for automated post-recording video handling
Matterhorn 2014 Unconference: Ideas for automated post-recording video handling
 
Opencast Matterhorn at UCT
Opencast Matterhorn at UCTOpencast Matterhorn at UCT
Opencast Matterhorn at UCT
 
Open Text: Speech recognition in Opencast Matterhorn
Open Text: Speech recognition in Opencast MatterhornOpen Text: Speech recognition in Opencast Matterhorn
Open Text: Speech recognition in Opencast Matterhorn
 
Wreck a nice beach: adventures in speech recognition
Wreck a nice beach: adventures in speech recognitionWreck a nice beach: adventures in speech recognition
Wreck a nice beach: adventures in speech recognition
 
Advancing Online Assessment in Medical Education
Advancing Online Assessment in Medical EducationAdvancing Online Assessment in Medical Education
Advancing Online Assessment in Medical Education
 
SMS, Q&A and Course Evaluations in Sakai
SMS, Q&A and Course Evaluations in SakaiSMS, Q&A and Course Evaluations in Sakai
SMS, Q&A and Course Evaluations in Sakai
 
SMS, Q&A, Course Evaluation tools in Sakai
SMS, Q&A, Course Evaluation tools in SakaiSMS, Q&A, Course Evaluation tools in Sakai
SMS, Q&A, Course Evaluation tools in Sakai
 
Sakai E Learning Update Sep09
Sakai E Learning Update Sep09Sakai E Learning Update Sep09
Sakai E Learning Update Sep09
 
Vula is my survival kit
Vula is my survival kitVula is my survival kit
Vula is my survival kit
 

Recently uploaded

বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
paigestewart1632
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
History of Stoke Newington
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
Katrina Pritchard
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 

Recently uploaded (20)

বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 

Track4K in production at the University of Cape Town

  • 1. || Stephen Marquard, University of Cape Town 1 Track4K in production
  • 2. || Track4K is an open-source video analysis and tracking system that post- processes a 4K video to track the presenter and generate a cropped version of the video using smooth panning movements. Track4K was developed as a 4th-year Computer Science student project at the University of Cape Town in 2016, released as open source in Jan 2017 and deployed as part of UCT's Opencast system in September 2017. Created by Charles Fitzhenry, Maximillian Hahn and Tanweer Khatieb Supervisors: Patrick Marais, Stephen Marquard 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 2 Track4K Overview
  • 3. || 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 3 Track4K works best in medium-sized venues
  • 4. || 1. Record in 4K, process to 1080p or 720p, publish smaller sizes (UCT production workflow) 2. Record in 4K, create tracking data only, publish in 4K with player auto-tracking (paella prototype) 3. Record in 4K, process to 1080p or 720p, publish 4K original (untracked) and smaller sizes (tracked) 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 4 Three ways to use Track4K
  • 5. ||  Record the lecture with a 4K camera  track4k analyzes the input video and produces a tracking file, with frame-by-frame positioning information  cropvid reads the tracking file and input video and produces an output video  Because the tracking is not real-time, the field of view changes smoothly and only when necessary 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 5 How it works
  • 6. ||  Originally, track4k processed everything itself, from input video to output video  OpenCV only handles video files, and will not preserve an audio track.  That’s still fine if the 4K video is recorded using a fixed frame rate: you can mux the resulting video with the input video audio track.  But if you have a video recorded with a variable frame rate (typical for H264 streams from IP cameras), this creates audio synchronization issues, because OpenCV does not provide access to per-frame timing information (no PTS value is available for each frame), so the output video is written as if it had a fixed frame rate.  To resolve this:  track4k reads the video and writes a tracking file (frame-by-frame).  cropvid reads the input video and writes the tracked output video, preserving frame timing information  The tracking file can also be used stand-alone for other applications (player-side tracking) 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 6 Why does Track4K come in two parts?
  • 7. || [track1] name = audio device = pulse flavor = presenter location = … file = audio.flac player = True audioencoder = flacenc active = True delay = 0.2 14/02/2018 7 Track4K at UCT: Galicaster configuration (Axis 1428) [track2] name = presenter device = rtp flavor = presenter4k location = rtspt://m209-cam01.uct.ac.za/axis-media/media.amp file = presenter.mkv cameratype = h264 audio = False muxer = matroskamux caps-preview = video/x-raw,framerate=1/1 active = True [basic] custom_flavors=presenter4k presentation2
  • 8. || Uses the Opencast Execute- Many workflow operation handler. After ingest, if there is a presenter4k flavor in the mediapackage, then run track4k and create a presenter/source tracked video. We do not archive the 4K version, so only one presenter video is retained in the mediapackage. 14/02/2018 8 Track4K at UCT: workflow configuration
  • 9. || 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 9
  • 10. || The wrapper script uses ${event_location} to look up the venue in a config file, and optionally set the target resolution and vertical crop position. 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 10 Track4K at UCT: wrapper script
  • 11. || Limitations  Only does panning movements  Tracking can sometimes be distracted by audience members (workaround: apply top and bottom image masks on the camera)  Run-time is approximately 3 x real-time (track4k and cropvid) Future work More sophisticated tracking and virtual cinematography is the subject of Master’s theses by Charles Fitzhenry and Tanweer Khatieb (completion during 2018). 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 11
  • 12. || Source: https://github.com/LectureTracking/trackhd Wrapper script: https://github.com/cilt-uct/trackhd/tree/master/examples/opencast Track4K Student Project: http://track4k.co.za Technical paper: A Virtual Cinematographer for Presenter Tracking in 4K Lecture Videos http://pubs.cs.uct.ac.za/archive/00001178 News article: http://www.cilt.uct.ac.za/cilt/news/Computer-Science-students-improve-UCT-lecture-recording 14/02/2018First name Surname (edit via “Insert” > “Header & Footer”) 12 Get Track4K