SlideShare ist ein Scribd-Unternehmen logo
1 von 12
LIBDASH – A LIBRARY INTO THE MPEG-
                  DASH STANDARD


            Christopher Mueller, CEO – Head of
                        Technology



1/21/2013               bitmovin.net - libdash 2.0   1
ACKNOWLEDGMENT
 We specially want to thank our passionate developers at bitmovin
  as well as the researchers at the Institute for Information
  Technology (ITEC) of the Alpen‐Adria‐Universität Klagenfurt (AAU)
  who contributed to this effort.

 Furthermore, we want to thank the Netidee initiative of the
  Internet Foundation Austria for partially funding the open source
  development of libdash.

 We kindly ask you to refer the following paper in any publication
  mentioning libdash:
     Christopher Mueller and Christian Timmerer. 2011. A VLC media player
      plugin enabling dynamic adaptive streaming over HTTP. In Proceedings of
      the 19th ACM international conference on Multimedia (MM ’11).
      ACM, New York, NY, USA, 723‐726. DOI=10.1145/2072298.2072429

   1/21/2013                   bitmovin.net - libdash 2.0             2
OUTLINE
 Introduction
 libdash
      Features
      DASH Architecture
      Sources, binaries, how to use libdash
      Roadmap
      Email reflector
      License
 Conclusions

  1/21/2013                bitmovin.net - libdash 2.0   3
INTRODUCTION
 libdash*: object orient (OO) interface to the MPEG‐DASH
  standard
    Implements the full MPEG‐DASH standard; access information
     within MPD and schedule download of segments
    External interfaces: DASH streaming control, segment
     parser, media player – deliberately not implemented: may vary
     across use cases, deployments, and go beyond what is
     normatively specified)
 libdash is a tool for developers, has full standards
  support, well‐defined interfaces, and enables integration
  within a media ecosystem
                ➪ libdash is an enabler !!!

   1/21/2013              bitmovin.net - libdash 2.0        4
FEATURES
   Cross platform build system based on cmake that includes Windows, Linux and Mac.
   Open source available and licensed under the LGPL.
   Implements the full MPEG‐DASH standard according to ISO/IEC 23009‐1, Information Technology –
    Dynamic Adaptive Streaming over HTTP (DASH) – Part 1: Media Presentation Description and
    Segment Formats
   Handles the download and XML parsing of the MPD. Based on that it provides an OO based
    interface to the MPD.
   Media elements, e.g., SegmentURL, SegmentTemplate, etc., are downloadable in that OO‐based
    structure and can be downloaded through libdash, which internally uses libcurl.
   Therefore basically all protocols that libcurl supports, e.g., HTTP, FTP, etc. are supported by libdash.
   However it also provides a configurable download interface, which enables the use of external
    connections that can be implemented by the user of the library for the download of media
    segments.
   The use of such external connections will be shown in the libdash_networkpart_test project which
    is part of libdash solution and also part of the cross platform cmake system and therefore usable on
    Windows, Linux and Mac.
   The project contains a sample multimedia player that is based on ffmpeg which uses libdash for the
    playback of one of our dataset MPD’s.
   The development is based on Windows, therefore the code contains a VS10 solution with
    additional tests and the sample multimedia player.



    1/21/2013                              bitmovin.net - libdash 2.0                            5
DASH ARCHITECTURE




1/21/2013        bitmovin.net - libdash 2.0   6
DASH ARCHITECTURE WITH LIBDASH




1/21/2013   bitmovin.net - libdash 2.0   7
SOURCE - BINARIES - HOW TO USE LIBDASH
   Latest sources and binaries
        Download section: http://www.bitmovin.net/?page_id=851
        Github: https://github.com/bitmovin/libdash
   How to use libdash
        Windows
           •    Download the tarball or clone the repository from gitlab (git://github.com/bitmovin/libdash.git)
           •    Open the libdash.sln with Visual Studio 2010
           •    Build the solution
           •    After that all files will be provided in the bin folder
           •    You can test the library with the sampleplayer.exe. This application simply downloads the lowest representation
                of one of our dataset MPD’s.
        Ubuntu 12.04
           •    sudo apt‐get install git‐core build‐essential cmake libxml2‐dev libcurl4‐openssl‐dev
           •    git clone git://github.com/bitmovin/libdash.git
           •    cd libdash/libdash
           •    mkdir build
           •    cd build
           •    cmake ../
           •    make
           •    cd bin
           •    The library and a simple test of the network part of the library should be available now. You can test the
                network part of the library with
           •    ./libdash_networkpart_test


    1/21/2013                                      bitmovin.net - libdash 2.0                                       8
ROADMAP
 Next release is scheduled at the end of February.
       Doxygen Documentation.
       Cross platform build system for the ffmpeg based sample player.
       QT based sample player, which is cross platform buildable through cmake.
       Further Tests & Bugfixes.
 Ongoing development during 2013
    Implementation of a middleware for libdash.
    Will provide buffering mechanisms and build‐in adaptation logics.
    Extends the functionality to extract, e.g., mp4, mp2ts, etc. information of
     the media stream.
    Will provide further access methods which should provide a simplified
     interface to the library.
 Extending the QT based sample player.
 Testing & Bugfixing.

   1/21/2013                     bitmovin.net - libdash 2.0              9
EMAIL REFLECTOR
 We offer a public accessible mailing list for
  discussions, questions, announcements, bug‐reports,
   etc. around libdash
 Everybody is invited to join, you can find the
  registration at
    http://vicky.bitmovin.net/mailman/listinfo/libdash‐dev




  1/21/2013              bitmovin.net - libdash 2.0     10
LICENSE
 This library is free software; you can redistribute it and/or modify it
  under the terms of the GNU Lesser General Public License as
  published by the Free Software Foundation; either version 2.1 of
  the License, or (at your option) any later version.

 This library is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
  the GNU Lesser General Public License for more details.

 You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110‐
  1301 USA

   1/21/2013                  bitmovin.net - libdash 2.0          11
CONCLUSIONS
 libdash provides an object oriented interface to the
  MPEG‐DASH standard
 It fully implements ISO/IEC 23009‐1:2012, hence it
  can be considered as complete*
    * … pending bug fixes, updates due to COR, AMD, etc. (but
     that’s on our roadmap)
 We believe its interfaces are well designed in order
  to allow for a broad adoption of various use cases


  1/21/2013              bitmovin.net - libdash 2.0    12

Weitere ähnliche Inhalte

Was ist angesagt?

Study of Chromium OS
Study of Chromium OSStudy of Chromium OS
Study of Chromium OSWilliam Lee
 
The e820 trap of Linux kernel hibernation
The e820 trap of Linux kernel hibernationThe e820 trap of Linux kernel hibernation
The e820 trap of Linux kernel hibernationjoeylikernel
 
Fast DDS Features & Tools
Fast DDS Features & ToolsFast DDS Features & Tools
Fast DDS Features & ToolseProsima
 
Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行wintechq
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMThe Linux Foundation
 
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Stefano Stabellini
 
Reliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxReliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxSamsung Open Source Group
 
Presentation citrix desktop virtualization
Presentation   citrix desktop virtualizationPresentation   citrix desktop virtualization
Presentation citrix desktop virtualizationxKinAnx
 
Getting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaGetting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaAngelo Corsaro
 
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウYoichi Kawasaki
 
The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts Just van den Broecke
 
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送Google Cloud Platform - Japan
 
EDRは組織のインシデント対応をどう変えているか
EDRは組織のインシデント対応をどう変えているかEDRは組織のインシデント対応をどう変えているか
EDRは組織のインシデント対応をどう変えているかEiji Hoshimoto
 

Was ist angesagt? (20)

QNX Software Systems
QNX Software SystemsQNX Software Systems
QNX Software Systems
 
Study of Chromium OS
Study of Chromium OSStudy of Chromium OS
Study of Chromium OS
 
The e820 trap of Linux kernel hibernation
The e820 trap of Linux kernel hibernationThe e820 trap of Linux kernel hibernation
The e820 trap of Linux kernel hibernation
 
HSM超入門講座
HSM超入門講座HSM超入門講座
HSM超入門講座
 
Fast DDS Features & Tools
Fast DDS Features & ToolsFast DDS Features & Tools
Fast DDS Features & Tools
 
Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
 
Linux Audio Drivers. ALSA
Linux Audio Drivers. ALSALinux Audio Drivers. ALSA
Linux Audio Drivers. ALSA
 
DPDK & Cloud Native
DPDK & Cloud NativeDPDK & Cloud Native
DPDK & Cloud Native
 
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
 
Reliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxReliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on Linux
 
SR-IOV Introduce
SR-IOV IntroduceSR-IOV Introduce
SR-IOV Introduce
 
Presentation citrix desktop virtualization
Presentation   citrix desktop virtualizationPresentation   citrix desktop virtualization
Presentation citrix desktop virtualization
 
Getting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and ScalaGetting Started with DDS in C++, Java and Scala
Getting Started with DDS in C++, Java and Scala
 
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ
15分でお届けする Elastic Stack on Azure 設計・構築ノウハウ
 
The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts
 
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
[Cloud OnAir] Anthosで実現するハイブリッドクラウド 〜 GKE On-Prem編 〜 2019年8月29日 放送
 
EDRは組織のインシデント対応をどう変えているか
EDRは組織のインシデント対応をどう変えているかEDRは組織のインシデント対応をどう変えているか
EDRは組織のインシデント対応をどう変えているか
 
Board Bringup
Board BringupBoard Bringup
Board Bringup
 
Virtualization basics
Virtualization basics Virtualization basics
Virtualization basics
 

Ähnlich wie libdash 2.0

Graphical libraries
Graphical librariesGraphical libraries
Graphical librariesguestbd40369
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeAll Things Open
 
Embedded Linux Multimedia
Embedded Linux MultimediaEmbedded Linux Multimedia
Embedded Linux MultimediaCaglar Dursun
 
LCA 2014 project-builder.org presentation
LCA 2014 project-builder.org presentationLCA 2014 project-builder.org presentation
LCA 2014 project-builder.org presentationBruno Cornec
 
FFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitFFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitStefano Sabatini
 
Top linux distributions & open source Browsers
Top linux distributions & open source BrowsersTop linux distributions & open source Browsers
Top linux distributions & open source Browserspawan sharma
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux osjoycoronado
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux osruzzelarpon
 
The Source Control Landscape
The Source Control LandscapeThe Source Control Landscape
The Source Control LandscapeLorna Mitchell
 
Using open source software to build an industrial grade embedded linux platfo...
Using open source software to build an industrial grade embedded linux platfo...Using open source software to build an industrial grade embedded linux platfo...
Using open source software to build an industrial grade embedded linux platfo...SZ Lin
 
Hackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we MakeHackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we Makeesben1962
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMSherif Mousa
 

Ähnlich wie libdash 2.0 (20)

Graphical libraries
Graphical librariesGraphical libraries
Graphical libraries
 
Linux internals v4
Linux internals v4Linux internals v4
Linux internals v4
 
Advancement on embedded linux-v2
Advancement on embedded linux-v2Advancement on embedded linux-v2
Advancement on embedded linux-v2
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the Mainframe
 
Embedded Linux Multimedia
Embedded Linux MultimediaEmbedded Linux Multimedia
Embedded Linux Multimedia
 
LCA 2014 project-builder.org presentation
LCA 2014 project-builder.org presentationLCA 2014 project-builder.org presentation
LCA 2014 project-builder.org presentation
 
Fedora Modularity
Fedora ModularityFedora Modularity
Fedora Modularity
 
FFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitFFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkit
 
Top linux distributions & open source Browsers
Top linux distributions & open source BrowsersTop linux distributions & open source Browsers
Top linux distributions & open source Browsers
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Presentation1 linux os(2)
Presentation1 linux os(2)Presentation1 linux os(2)
Presentation1 linux os(2)
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Preparations for koha implementation
Preparations for koha implementationPreparations for koha implementation
Preparations for koha implementation
 
The Source Control Landscape
The Source Control LandscapeThe Source Control Landscape
The Source Control Landscape
 
HIGH AVAILABLE CLUSTER IN WEB SERVER WITH HEARTBEAT + DRBD + OCFS2
HIGH AVAILABLE CLUSTER IN WEB SERVER WITH  HEARTBEAT + DRBD + OCFS2HIGH AVAILABLE CLUSTER IN WEB SERVER WITH  HEARTBEAT + DRBD + OCFS2
HIGH AVAILABLE CLUSTER IN WEB SERVER WITH HEARTBEAT + DRBD + OCFS2
 
Using open source software to build an industrial grade embedded linux platfo...
Using open source software to build an industrial grade embedded linux platfo...Using open source software to build an industrial grade embedded linux platfo...
Using open source software to build an industrial grade embedded linux platfo...
 
Hackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we MakeHackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we Make
 
Linux
Linux Linux
Linux
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARM
 

Kürzlich hochgeladen

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Kürzlich hochgeladen (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

libdash 2.0

  • 1. LIBDASH – A LIBRARY INTO THE MPEG- DASH STANDARD Christopher Mueller, CEO – Head of Technology 1/21/2013 bitmovin.net - libdash 2.0 1
  • 2. ACKNOWLEDGMENT  We specially want to thank our passionate developers at bitmovin as well as the researchers at the Institute for Information Technology (ITEC) of the Alpen‐Adria‐Universität Klagenfurt (AAU) who contributed to this effort.  Furthermore, we want to thank the Netidee initiative of the Internet Foundation Austria for partially funding the open source development of libdash.  We kindly ask you to refer the following paper in any publication mentioning libdash:  Christopher Mueller and Christian Timmerer. 2011. A VLC media player plugin enabling dynamic adaptive streaming over HTTP. In Proceedings of the 19th ACM international conference on Multimedia (MM ’11). ACM, New York, NY, USA, 723‐726. DOI=10.1145/2072298.2072429 1/21/2013 bitmovin.net - libdash 2.0 2
  • 3. OUTLINE  Introduction  libdash  Features  DASH Architecture  Sources, binaries, how to use libdash  Roadmap  Email reflector  License  Conclusions 1/21/2013 bitmovin.net - libdash 2.0 3
  • 4. INTRODUCTION  libdash*: object orient (OO) interface to the MPEG‐DASH standard  Implements the full MPEG‐DASH standard; access information within MPD and schedule download of segments  External interfaces: DASH streaming control, segment parser, media player – deliberately not implemented: may vary across use cases, deployments, and go beyond what is normatively specified)  libdash is a tool for developers, has full standards support, well‐defined interfaces, and enables integration within a media ecosystem ➪ libdash is an enabler !!! 1/21/2013 bitmovin.net - libdash 2.0 4
  • 5. FEATURES  Cross platform build system based on cmake that includes Windows, Linux and Mac.  Open source available and licensed under the LGPL.  Implements the full MPEG‐DASH standard according to ISO/IEC 23009‐1, Information Technology – Dynamic Adaptive Streaming over HTTP (DASH) – Part 1: Media Presentation Description and Segment Formats  Handles the download and XML parsing of the MPD. Based on that it provides an OO based interface to the MPD.  Media elements, e.g., SegmentURL, SegmentTemplate, etc., are downloadable in that OO‐based structure and can be downloaded through libdash, which internally uses libcurl.  Therefore basically all protocols that libcurl supports, e.g., HTTP, FTP, etc. are supported by libdash.  However it also provides a configurable download interface, which enables the use of external connections that can be implemented by the user of the library for the download of media segments.  The use of such external connections will be shown in the libdash_networkpart_test project which is part of libdash solution and also part of the cross platform cmake system and therefore usable on Windows, Linux and Mac.  The project contains a sample multimedia player that is based on ffmpeg which uses libdash for the playback of one of our dataset MPD’s.  The development is based on Windows, therefore the code contains a VS10 solution with additional tests and the sample multimedia player. 1/21/2013 bitmovin.net - libdash 2.0 5
  • 6. DASH ARCHITECTURE 1/21/2013 bitmovin.net - libdash 2.0 6
  • 7. DASH ARCHITECTURE WITH LIBDASH 1/21/2013 bitmovin.net - libdash 2.0 7
  • 8. SOURCE - BINARIES - HOW TO USE LIBDASH  Latest sources and binaries  Download section: http://www.bitmovin.net/?page_id=851  Github: https://github.com/bitmovin/libdash  How to use libdash  Windows • Download the tarball or clone the repository from gitlab (git://github.com/bitmovin/libdash.git) • Open the libdash.sln with Visual Studio 2010 • Build the solution • After that all files will be provided in the bin folder • You can test the library with the sampleplayer.exe. This application simply downloads the lowest representation of one of our dataset MPD’s.  Ubuntu 12.04 • sudo apt‐get install git‐core build‐essential cmake libxml2‐dev libcurl4‐openssl‐dev • git clone git://github.com/bitmovin/libdash.git • cd libdash/libdash • mkdir build • cd build • cmake ../ • make • cd bin • The library and a simple test of the network part of the library should be available now. You can test the network part of the library with • ./libdash_networkpart_test 1/21/2013 bitmovin.net - libdash 2.0 8
  • 9. ROADMAP  Next release is scheduled at the end of February.  Doxygen Documentation.  Cross platform build system for the ffmpeg based sample player.  QT based sample player, which is cross platform buildable through cmake.  Further Tests & Bugfixes.  Ongoing development during 2013  Implementation of a middleware for libdash.  Will provide buffering mechanisms and build‐in adaptation logics.  Extends the functionality to extract, e.g., mp4, mp2ts, etc. information of the media stream.  Will provide further access methods which should provide a simplified interface to the library.  Extending the QT based sample player.  Testing & Bugfixing. 1/21/2013 bitmovin.net - libdash 2.0 9
  • 10. EMAIL REFLECTOR  We offer a public accessible mailing list for discussions, questions, announcements, bug‐reports, etc. around libdash  Everybody is invited to join, you can find the registration at  http://vicky.bitmovin.net/mailman/listinfo/libdash‐dev 1/21/2013 bitmovin.net - libdash 2.0 10
  • 11. LICENSE  This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.  This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.  You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110‐ 1301 USA 1/21/2013 bitmovin.net - libdash 2.0 11
  • 12. CONCLUSIONS  libdash provides an object oriented interface to the MPEG‐DASH standard  It fully implements ISO/IEC 23009‐1:2012, hence it can be considered as complete*  * … pending bug fixes, updates due to COR, AMD, etc. (but that’s on our roadmap)  We believe its interfaces are well designed in order to allow for a broad adoption of various use cases 1/21/2013 bitmovin.net - libdash 2.0 12