SlideShare a Scribd company logo
1 of 42
Download to read offline
OpenCms: A video tube? 
Fabian Huschka 
componio GmbH 
componio@componio.net 
http://www.componio.net
Video what? 
01
Video what?
Video what?
Video what?
Video what? 
Stockholms tunnelbana? 
What happened to “video tube”?
Video what?
Video what? 
Hej, I am a video clip
Video what? 
I am loving to ride it. 
But mind the gap! 
Hej, I am a video clip
Video what? 
Me too! Love the funny 
conversations every morning! 
I am loving it. 
But mind the gap! 
Hej, I am a video clip
Video what?
Video what?
Video what?
Video what? 
Name: OpenCms 
Operated: Alkacon GmbH 
Name: SkinnDriva 
Operated: componio GmbH
Video what? 
Name: OpenCms 
Operated: Alkacon GmbH 
Name: SkinnDriva 
Operated: componio GmbH
Video what? 
Name: OpenCms 
Operated: Alkacon GmbH 
Name: SkinnDriva 
Operated: componio GmbH 
Intersection
Translate 
Does this lead anywhere?
Video what? 
Sure, it even computes 
• Line = Video channel 
• Train = Video 
• Train Passengers = Subscribers 
• Conversations = Video likes, comments, ... 
• Intersections = Cross post/Content sharing
Video what? 
OpenCms: Top down approach 
• Store video data in the VFS of OpenCms 
• Use HTML5 video tag to render videos 
• OpenCms CRE to handle subscriptions 
• Use rating, comment and social equity container 
element (CEL) to enrich UX
OpenCms and videos 
02
OpenCms and videos 
A typical video
OpenCms and videos 
A typical video 
• Monkaa is a blue furred, pink faced monkey who 
consumes a crystallized meteorite, making Monkaa 
invincibly strong and too hot to handle. Exploring his 
superpower Monkaa zooms into an unexplored 
universe. 
• Size: ~152 MB 
• Download: 
https://cloud.blender.org/open-movie/monkaa/
OpenCms and videos 
Heap anyone? 
1200 
1000 
800 
600 
400 
200 
0 
Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 
Actions 
Max Heap 
MB
OpenCms and videos 
Heap anyone? 
Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 
1200 
1000 
800 
600 
400 
200 
0 
-200 
Actions 
Upload Delta DB RAM Max Heap 
MB
OpenCms and videos 
Heap anyone? 
Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 
1200 
1000 
800 
600 
400 
200 
0 
-200 
Actions 
Upload Delta DB RAM Max Heap 
MB
OpenCms and videos 
Heap anyone? 
Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 
1200 
1000 
800 
600 
400 
200 
0 
-200 
Actions 
Upload Delta DB RAM Max Heap 
MB 
java.lang.OutOfMemoryError: Java heap space
OpenCms and videos 
Solution 
• Store videos externally 
– e.g. RFS, we have chosen ownCloud 
• Introduce a proxy element in OpenCms 
– simple structured content CEL 
• Integrate external storage with special driver 
– e.g. metamesh's RFS driver
HTML5 and video codecs 
03
Better: 
HTML5 video codec quirks 
03
HTML5 and video codecs 
From the w3c wiki 
• The HTML5 specification does not require a video 
codec to be supported by all user agents. Thus, one 
need to provide alternate sources to ensure proper user 
experience in the existing user agents. Using 
Ogg/Theora/Vorbis and MP4/H.264/AAC seems to 
cover most of the cases out there (if not all). However, 
Ogg/Theora/Vorbis is being replaced in favor of WebM 
nowadays.
HTML5 and video codecs 
Solution 
• Use a versatile and standard conform video player 
– JWPlayer in our case 
– Ensures proper HTML code generation 
– Hides complexity while offering editor freedom (e.g. 
aspect ratio, volume, controls) 
• Encode videos with FLV, H.264 and VP8 
• Make a wish that the video war is soon over – 
the browser war has been bloody enough
Channels / Subscriptions 
04
Channels / Subscriptions 
CRE FTW! 
• OpenCms subscription API (from 8.5.x) 
• Associate individual CMS resources with OpenCms 
users 
• Two major use cases: 
– Personalization 
● Users can subscribe their favourite content 
● Subscription status can be shown wherever appropriate 
– Notifications 
● Notify users of fresh/updated content
Channels / Subscriptions 
Channels 
• OpenCms categories allow for arbitrary 
taxonomies 
• A set of categories defines a channel 
• Subscription engine allows to subscribe and 
unsubscribe resources 
• CRE allows to find resources for specific 
categories
Channels / Subscriptions 
Solution 
• Dedicated CEL to list available channels 
• Video (proxy element) gets associated with a channel 
via categories 
– Can be easily a member of many channels 
– Harmonizes with Subscription API (resources need to 
be served by the VFS vs. RFS) 
• Channel subscriptions are stored as “Additional User 
Information”
Channels / Subscriptions 
Solution 
• Enhanced subscription engine to speed up channel 
look-up 
– OBS: The subscription API does not offer an efficient 
way to accomplish this 
– OBS: Need to extra check if resources are deleted or 
expired 
– makes heavy use of SOLR 
– Custom SQL queries an POJOs to speed up lookup 
of user channel subscriptions
Putting it all together 
05
Putting it all together 
Channel overview
Putting it all together 
Channel Content
In a nutshell 
OpenCms + extra Spice = 
a video tube with potential
References 
Appendix 
• Photo copyright 
– Empty Subway Tunnel, © alex_black – Fotolia.com 
– Train leaving Radhuset metro station in Stockholm, 
© Leonid Andronov - Fotolia.com 
• Theme engine 
– SkinnDriva, http://www.skinndriva.com 
• Video player 
– JWPlayer, http://www.jwplayer.com/

More Related Content

Similar to OpenCms Days 2014 - OpenCms 9 - A video tube?

HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014RZasadzinski
 
Serverless Media Workflow
Serverless Media WorkflowServerless Media Workflow
Serverless Media WorkflowMooYeol Lee
 
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14Amazon Web Services
 
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)Chris Adamson
 
Software Quality Assurance on VLC
Software Quality Assurance on VLC Software Quality Assurance on VLC
Software Quality Assurance on VLC Shoaib Haseeb
 
Software Quality Assurance on VLC Player
Software Quality Assurance on VLC PlayerSoftware Quality Assurance on VLC Player
Software Quality Assurance on VLC PlayerShoaib Haseeb
 
Video Codecs and the Future by Vince Puglia
Video Codecs and the Future by Vince PugliaVideo Codecs and the Future by Vince Puglia
Video Codecs and the Future by Vince PugliaDialogic Inc.
 
Tutorial adaptive-streaming
Tutorial adaptive-streamingTutorial adaptive-streaming
Tutorial adaptive-streamingJohnGregory89
 
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...Amazon Web Services
 
Xevgenis_Michail_CI7120 Multimedia Communications
Xevgenis_Michail_CI7120 Multimedia CommunicationsXevgenis_Michail_CI7120 Multimedia Communications
Xevgenis_Michail_CI7120 Multimedia CommunicationsMichael Xevgenis
 
BP503 IBM Connect 2014
BP503 IBM Connect 2014BP503 IBM Connect 2014
BP503 IBM Connect 2014Peter Lurie
 
what_is_a_codec_2010
what_is_a_codec_2010what_is_a_codec_2010
what_is_a_codec_2010Justin Giles
 
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront  AWS Webcast - On-Demand Video Streaming using Amazon CloudFront
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront Amazon Web Services
 
Beef Up Your Website With Audio And Video - It's Easy!
Beef Up Your Website With Audio And Video - It's Easy!Beef Up Your Website With Audio And Video - It's Easy!
Beef Up Your Website With Audio And Video - It's Easy!Melodie Laylor
 
Video performance glasgow
Video performance glasgowVideo performance glasgow
Video performance glasgowDoug Sillars
 
AWS Customer Presentation - How TubeMogul uses AWS
AWS Customer Presentation - How TubeMogul uses AWSAWS Customer Presentation - How TubeMogul uses AWS
AWS Customer Presentation - How TubeMogul uses AWSAmazon Web Services
 

Similar to OpenCms Days 2014 - OpenCms 9 - A video tube? (20)

HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014
 
Serverless Media Workflow
Serverless Media WorkflowServerless Media Workflow
Serverless Media Workflow
 
Pycon2013
Pycon2013Pycon2013
Pycon2013
 
Mm sys 2013-demo
Mm sys 2013-demoMm sys 2013-demo
Mm sys 2013-demo
 
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14
Media Processing and Delivery on AWS, Santa Monica Meetup 6/25/14
 
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)
 
Software Quality Assurance on VLC
Software Quality Assurance on VLC Software Quality Assurance on VLC
Software Quality Assurance on VLC
 
Software Quality Assurance on VLC Player
Software Quality Assurance on VLC PlayerSoftware Quality Assurance on VLC Player
Software Quality Assurance on VLC Player
 
Dos presentation by ahlam shakeel
Dos presentation by ahlam shakeelDos presentation by ahlam shakeel
Dos presentation by ahlam shakeel
 
Video Codecs and the Future by Vince Puglia
Video Codecs and the Future by Vince PugliaVideo Codecs and the Future by Vince Puglia
Video Codecs and the Future by Vince Puglia
 
Tutorial adaptive-streaming
Tutorial adaptive-streamingTutorial adaptive-streaming
Tutorial adaptive-streaming
 
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
 
Xevgenis_Michail_CI7120 Multimedia Communications
Xevgenis_Michail_CI7120 Multimedia CommunicationsXevgenis_Michail_CI7120 Multimedia Communications
Xevgenis_Michail_CI7120 Multimedia Communications
 
BP503 IBM Connect 2014
BP503 IBM Connect 2014BP503 IBM Connect 2014
BP503 IBM Connect 2014
 
what_is_a_codec_2010
what_is_a_codec_2010what_is_a_codec_2010
what_is_a_codec_2010
 
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront  AWS Webcast - On-Demand Video Streaming using Amazon CloudFront
AWS Webcast - On-Demand Video Streaming using Amazon CloudFront
 
Beef Up Your Website With Audio And Video - It's Easy!
Beef Up Your Website With Audio And Video - It's Easy!Beef Up Your Website With Audio And Video - It's Easy!
Beef Up Your Website With Audio And Video - It's Easy!
 
Video performance glasgow
Video performance glasgowVideo performance glasgow
Video performance glasgow
 
AWS Customer Presentation - How TubeMogul uses AWS
AWS Customer Presentation - How TubeMogul uses AWSAWS Customer Presentation - How TubeMogul uses AWS
AWS Customer Presentation - How TubeMogul uses AWS
 
Krakow video
Krakow videoKrakow video
Krakow video
 

More from Alkacon Software GmbH & Co. KG

OpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsOpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsAlkacon Software GmbH & Co. KG
 
OpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceOpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceAlkacon Software GmbH & Co. KG
 
OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository Alkacon Software GmbH & Co. KG
 
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace Alkacon Software GmbH & Co. KG
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsOpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntOpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSOpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSAlkacon Software GmbH & Co. KG
 

More from Alkacon Software GmbH & Co. KG (20)

OpenCms Days 2016: Multilingual websites with OpenCms
OpenCms Days 2016:   Multilingual websites with OpenCmsOpenCms Days 2016:   Multilingual websites with OpenCms
OpenCms Days 2016: Multilingual websites with OpenCms
 
OpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsOpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCms
 
OpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceOpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological service
 
OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository
 
OpenCms Days 2016: Keynote - Introducing OpenCms 10.5
OpenCms Days 2016:   Keynote - Introducing OpenCms 10.5OpenCms Days 2016:   Keynote - Introducing OpenCms 10.5
OpenCms Days 2016: Keynote - Introducing OpenCms 10.5
 
OpenCms Days 2015 OpenCms X marks the spot
OpenCms Days 2015 OpenCms X marks the spotOpenCms Days 2015 OpenCms X marks the spot
OpenCms Days 2015 OpenCms X marks the spot
 
OpenCms Days 2015 Next generation repository
OpenCms Days 2015  Next generation repositoryOpenCms Days 2015  Next generation repository
OpenCms Days 2015 Next generation repository
 
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
 
OpenCms Days 2015 OCEE explained
OpenCms Days 2015 OCEE explainedOpenCms Days 2015 OCEE explained
OpenCms Days 2015 OCEE explained
 
OpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and JenkinsOpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and Jenkins
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containers
 
OpenCms Days 2015 Hidden features of OpenCms
OpenCms Days 2015 Hidden features of OpenCmsOpenCms Days 2015 Hidden features of OpenCms
OpenCms Days 2015 Hidden features of OpenCms
 
OpenCms Days 2015 Advanced Solr Searching
OpenCms Days 2015 Advanced Solr SearchingOpenCms Days 2015 Advanced Solr Searching
OpenCms Days 2015 Advanced Solr Searching
 
OpenCms Days 2015 OpenGovernment
OpenCms Days 2015 OpenGovernmentOpenCms Days 2015 OpenGovernment
OpenCms Days 2015 OpenGovernment
 
OpenCms Days 2015 OpenCms at erarta
OpenCms Days 2015 OpenCms at erarta OpenCms Days 2015 OpenCms at erarta
OpenCms Days 2015 OpenCms at erarta
 
OpenCms Days 2015 How do you develop for OpenCms?
OpenCms Days 2015 How do you develop for OpenCms?OpenCms Days 2015 How do you develop for OpenCms?
OpenCms Days 2015 How do you develop for OpenCms?
 
OpenCms Days 2015 Arkema, a leading chemicals company
OpenCms Days 2015 Arkema, a leading chemicals companyOpenCms Days 2015 Arkema, a leading chemicals company
OpenCms Days 2015 Arkema, a leading chemicals company
 
OpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsOpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portals
 
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntOpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
 
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSOpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
 

Recently uploaded

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 

Recently uploaded (20)

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 

OpenCms Days 2014 - OpenCms 9 - A video tube?

  • 1.
  • 2. OpenCms: A video tube? Fabian Huschka componio GmbH componio@componio.net http://www.componio.net
  • 7. Video what? Stockholms tunnelbana? What happened to “video tube”?
  • 9. Video what? Hej, I am a video clip
  • 10. Video what? I am loving to ride it. But mind the gap! Hej, I am a video clip
  • 11. Video what? Me too! Love the funny conversations every morning! I am loving it. But mind the gap! Hej, I am a video clip
  • 15. Video what? Name: OpenCms Operated: Alkacon GmbH Name: SkinnDriva Operated: componio GmbH
  • 16. Video what? Name: OpenCms Operated: Alkacon GmbH Name: SkinnDriva Operated: componio GmbH
  • 17. Video what? Name: OpenCms Operated: Alkacon GmbH Name: SkinnDriva Operated: componio GmbH Intersection
  • 18. Translate Does this lead anywhere?
  • 19. Video what? Sure, it even computes • Line = Video channel • Train = Video • Train Passengers = Subscribers • Conversations = Video likes, comments, ... • Intersections = Cross post/Content sharing
  • 20. Video what? OpenCms: Top down approach • Store video data in the VFS of OpenCms • Use HTML5 video tag to render videos • OpenCms CRE to handle subscriptions • Use rating, comment and social equity container element (CEL) to enrich UX
  • 22. OpenCms and videos A typical video
  • 23. OpenCms and videos A typical video • Monkaa is a blue furred, pink faced monkey who consumes a crystallized meteorite, making Monkaa invincibly strong and too hot to handle. Exploring his superpower Monkaa zooms into an unexplored universe. • Size: ~152 MB • Download: https://cloud.blender.org/open-movie/monkaa/
  • 24. OpenCms and videos Heap anyone? 1200 1000 800 600 400 200 0 Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish Actions Max Heap MB
  • 25. OpenCms and videos Heap anyone? Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 1200 1000 800 600 400 200 0 -200 Actions Upload Delta DB RAM Max Heap MB
  • 26. OpenCms and videos Heap anyone? Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 1200 1000 800 600 400 200 0 -200 Actions Upload Delta DB RAM Max Heap MB
  • 27. OpenCms and videos Heap anyone? Initial Installation Upload Publish Restart Publish Copy Publish Overwrite Publish 1200 1000 800 600 400 200 0 -200 Actions Upload Delta DB RAM Max Heap MB java.lang.OutOfMemoryError: Java heap space
  • 28. OpenCms and videos Solution • Store videos externally – e.g. RFS, we have chosen ownCloud • Introduce a proxy element in OpenCms – simple structured content CEL • Integrate external storage with special driver – e.g. metamesh's RFS driver
  • 29. HTML5 and video codecs 03
  • 30. Better: HTML5 video codec quirks 03
  • 31. HTML5 and video codecs From the w3c wiki • The HTML5 specification does not require a video codec to be supported by all user agents. Thus, one need to provide alternate sources to ensure proper user experience in the existing user agents. Using Ogg/Theora/Vorbis and MP4/H.264/AAC seems to cover most of the cases out there (if not all). However, Ogg/Theora/Vorbis is being replaced in favor of WebM nowadays.
  • 32. HTML5 and video codecs Solution • Use a versatile and standard conform video player – JWPlayer in our case – Ensures proper HTML code generation – Hides complexity while offering editor freedom (e.g. aspect ratio, volume, controls) • Encode videos with FLV, H.264 and VP8 • Make a wish that the video war is soon over – the browser war has been bloody enough
  • 34. Channels / Subscriptions CRE FTW! • OpenCms subscription API (from 8.5.x) • Associate individual CMS resources with OpenCms users • Two major use cases: – Personalization ● Users can subscribe their favourite content ● Subscription status can be shown wherever appropriate – Notifications ● Notify users of fresh/updated content
  • 35. Channels / Subscriptions Channels • OpenCms categories allow for arbitrary taxonomies • A set of categories defines a channel • Subscription engine allows to subscribe and unsubscribe resources • CRE allows to find resources for specific categories
  • 36. Channels / Subscriptions Solution • Dedicated CEL to list available channels • Video (proxy element) gets associated with a channel via categories – Can be easily a member of many channels – Harmonizes with Subscription API (resources need to be served by the VFS vs. RFS) • Channel subscriptions are stored as “Additional User Information”
  • 37. Channels / Subscriptions Solution • Enhanced subscription engine to speed up channel look-up – OBS: The subscription API does not offer an efficient way to accomplish this – OBS: Need to extra check if resources are deleted or expired – makes heavy use of SOLR – Custom SQL queries an POJOs to speed up lookup of user channel subscriptions
  • 38. Putting it all together 05
  • 39. Putting it all together Channel overview
  • 40. Putting it all together Channel Content
  • 41. In a nutshell OpenCms + extra Spice = a video tube with potential
  • 42. References Appendix • Photo copyright – Empty Subway Tunnel, © alex_black – Fotolia.com – Train leaving Radhuset metro station in Stockholm, © Leonid Andronov - Fotolia.com • Theme engine – SkinnDriva, http://www.skinndriva.com • Video player – JWPlayer, http://www.jwplayer.com/