GStreamer in OpenOffice.org? Cédric Bosdonnat, Radek Doulík.

Slides:



Advertisements
Similar presentations
What's new in OOo 2.3 Finn Blucher Project Support Engineer
Advertisements

December 29, 2013 Willem Bagchus Master CNE, CLP, MCP Senior SE, Senior Trainer GWAVA Reload.
ZENworks Next Generation GWAVACon Sneak Peek Martin Buckley Director, Systems and Resource Management Impact Team V Oct 2006.
Reduce Cost & Complexity Partner logo here Presenters Name (16pt) Presenters Title (14pt) Company/ (14pt) Manage and Deploy Applications using Virtualization.
SUSE ® Presentation Guidelines and Template. 2 SUSE ® Presentations Welcome to the guidelines and template for SUSE presentations. The following information.
Nsure ™ Audit Essentials Rick Meredith Software Engineer Novell, Inc. Jaime Brimhall Software Engineer Novell, Inc.
How to Successfully Cluster GroupWise Gregg A. Hinchman Consultant, Hinchman Consulting Ed Hanley Senior Consultant, Novell.
SAN Design Considerations Hylton Leigh Senior Consultant Novell Consulting, UK Stuart Thompson Senior Consultant Novell Consulting, UK.
How to Implement a Cluster of Clusters Atiq Adamjee Senior Architect Novell, Inc. Brad Rupp Software Engineer Novell, Inc.
Upgrading to Novell ® SecureLogin 3.5 Rod Tietjen,
Studio 5 João Ferreira EMEA Product Specialist (exteNd) Studio Product manager, Novell, Inc.
DIR-835A1 Wireless N750 Dual-Band Router Wireless & Router Product Div. July 2011 D-Link WRPD.
August 20, 2006 Delivering Low Latency With IB SUSE ® Linux Enterprise Real Time Moiz Kohari Suse Labs Director Real-Time Systems.
Document Management with GroupWise ® Gregg Hinchman Consultant Hinchman Consulting Jerry Winkel Novell Escalation Engineer.
Nsure ™ Audit: Instrumenting Custom Applications Rick Meredith Jason Arrington Nsure Audit Engineering Novell, Inc.
Implementing Novell iChain ® at the City of Los Angeles Adam Loughran Senior Systems Engineer, Novell Robert Gillette IS Development Manager, City of Los.
Benefits of a SUSE ® Subscription Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
Configuring Identity Manager 2 (formerly DirXML ® ) for JDBC (w/DirXML) Jason Elsberry Software Engineer
Implementing DirXML ® Stylesheets David Wagstaff
Novell Nsure TM Identity Manager 2 andGroupWise Provisioning Art Purcell, GroupWise ® Engineering, David Holbrook, DirXML Engineering,
Case Study: DirXML Implementation at Waste Management Rick Wagner Systems Engineer Novell, Inc.
May 23, 2006 Open Source and the Public Sector Brian Fisher Linux Specialist Public Sector
Successful GroupWise Clustering, Part 1 Gregg A. Hinchman Ed Hanley Novell Inc.
April 30, 2007 openSUSE.org Build Service a short introduction Moiz Kohari VP Engineering.
The Art of Business Continuance Brad Rupp WG Storage Engineering Novell Gregg A. Hinchman Consultant Hinchman Consulting.
Novell ® BrainShare ® A Hands-on Approach to Implementing an Effective Retention Solution with Novell GroupWise and GWArchive Greg Smith, Director.
How to Successfully Cluster GroupWise ® Gregg A. Hinchman Consultant, Hinchman Consulting Ed Hanley Senior Consultant, Novell.
Kevin James Prototype Systems Devloper Novell Inc. Freddy Kaiser Technical Directory, Enterprise Solutions Novell Inc. BUS172 - Case Study: Extended Provisioning.
Retention for GroupWise Angela Williams - Channel Sales Manager Jeff Stratford - President Nexic, Inc.
Beginning Programming with the Novell GroupWise ® Object API Glade Monson Developer Services, Novell Inc.
January 8, 2009 Business Continuity Cluster Always Running Gregg A. Hinchman Consultant Hinchman Consulting
Strong Authentication to any Application Using SecureLogin and NMAS TM Scott Kiester and John Jolly Software Engineer Novell, Inc.
Securing GroupWise ® end-to-end with SSL Mike Bills ATT Engineer, Novell Inc.
Novell ® Demo Systems Portal Update Doc Hodges Novell Demo Systems
Best Practices for Running Multiple Identity Manager 2 (formerly DirXML ® ) Drivers on Linux and Solaris Patrick J Cush Senior Technical Specialist Novell.
Securing Legacy Applications with exteNd Composer and Novell iChain Kirk Noren Application Services Specialist Novell, Inc.
Configuring Novell GroupWise ® on SuSE LINUX Randy Brown GroupWise Dedicated Support Engineer, Novell Inc. Matt Preston GroupWise Support.
May 1, 2007 Novell ® Infiniband and Virtualization VM -IB project Patrick Mullaney.
DIR-826L Wireless N600 Gigabit Cloud Router Sales Guide WRPD Jan 25 th, 2012 D-LINK HQ.
Introducing Novell ® Identity Manager 4 Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
가상화 기반의 Workload 관리솔루션 : FORGE PlateSpin Virtualization and Workload Management 나영관 한국노벨 /
SUSE ® Linux Enterprise High Availability Extension.
Introduction to GroupWise ® C3POs Glade Monson Developer Services, Novell Inc.
WorkloadIQ ™ The intelligent way to build, secure, manage and measure workloads across physical, virtual and cloud environments Your Name Here Your Title.
IDC Says, "Don't Move To The Cloud" Richard Whitehead Director, Intelligent Workload Management August, 2010 Ben Goodman Principal.
Novell ® IT Consulting Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
SUSE ® Linux Enterprise Desktop in a One-To-One 21st Century Classroom Alex Inman Director of Technology Whitfield School
SUSE ® Presentation Guidelines and Template. SUSE ® Presentations Welcome to the guidelines and template for SUSE presentations. The following information.
Novell ® Technical Training Field / Sales Presentation Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
Introduction to SUSE Studio Tim Serong Senior Clustering Engineer OPS Engineering, Novell Inc.
OES11 / SLES11 Feature Competitive Novell Confidential.
Community Week: OpenSUSE Weekly News Presentation: Sascha Manns Title: What's behind Weekly News? Member of OpenSUSE Marketing Team.
Clarity and Compromise First steps of DM/MD unification Neil Brown Kernel Engineer
Forrester and Novell Novell ® Identity Manager 4 Webcast I Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
Novell ® VBA Interoperability roundup Noel Power OpenOffice developer
Novell ® Demo Systems Portal Update Doc Hodges Novell Demo Systems
DHP-600AV / DHP-601AV Powerline AV2 Gigabit Adapter Powerline AV2 Starter Kit Sales Guide WRPD, Mar 2013 D-Link Confidential.
From Source Code to Packages and even whole distributions By Cool Person From openSUSE.
UI-Facelift of the YaST Partitioner Module Martin Schmidkunz Arvin Schnell Katařina Machálková Status: 16th June 2008.
Enterprise Linux Servers Solution Overview Kerry Kim Enterprise Linux Servers Solution Manager.
From Source Code to Packages for Various Distributions Andreas Jaeger Program Manager openSUSE
UI-Facelift of the YaST Partitioner Module Martin Schmidkunz Status: 13th February 2008.
SUSE Studio: Building distributions By Cool Person From openSUSE.
The Community role in openSUSE life-cycle Dinar Valeev Community member.
From Source Code to Packages for Various Distributions
Redesign of AppArmor Modules in YaST
Presentation transcript:

GStreamer in OpenOffice.org? Cédric Bosdonnat, Radek Doulík

© Novell Inc 2 Introduction Cédric Bosdonnat INSA Lyon Radek Doulík Novell, Inc.

© Novell Inc 3 Overview GStreamer library introduction Macros using GStreamer Media handling in OpenOffice.org avmedia with GStreamer backend Future work Questions / Discussion

© Novell Inc 4 GStreamer library introduction Multimedia framework library Using pipelines and linked bins to handle the stream Many plugins available, even for video editing Free software Like brick games for children

Macros with GSreamer

© Novell Inc 6 Macros with GStreamer Component Context Goal, objectives History Component Design An independent component A wrapper for the GStreamer API Component Use Build up the pipeline Control the pipeline

© Novell Inc 7 Component Context Goal, Objectives Running GStreamer pipelines from macros Providing a generic pipeline-based multimedia API Better control of the multimedia handling History Developing an URE based application at INSA Handling multimedia Use of GStreamer

© Novell Inc 8 Component design A wrapper for the GStreamer API Providing an API to handle multimedia through pipelines GStreamer implementation is work in progress Could be adapted to other pipeline-based libraries An independent component To be usable in any UNO based application Copied some comphelper useful classes and templates

© Novell Inc 9 Using the component Build up the pipeline Add the needed bins to the pipeline Set their properties Create the links between the bins Control the pipeline Simply change the pipeline state to: – PLAYING – PAUSE Send an event on the pipeline bus to control – Current position in the stream – Stream reading speed

© Novell Inc 10 Media handling in OpenOffice.org Redundancy VCL Sound avmedia VCL Sound around 5 unix backends another 2 shared library loaded on start avmedia UNO based audio/video playback

avmedia GStreamer backed

© Novell Inc 12 avmedia with GStreamer backend Plan create new backend for avmedia which will use Gstreamer UNO magic and Player first, MediaWindow and FrameGrabber later Benefits one unix backend many supported formats GStreamer is easily extensible by plug-ins threaded well documented easy to use

© Novell Inc 13 avmedia with GStreamer backend Inside magic black box called PlayBin – GStreamer pipeline you feed it with URI and it does everything for you (mostly :-) stream auto detection – links all the necessary elements together half the code just forwards requests to our black box Playbin uri, seeking, volume management, state management URI

© Novell Inc 14 avmedia with GStreamer backend Inside (continued) we watch the pipeline bus and use some of passing messages set the X window ID state changes

© Novell Inc 15 avmedia with GStreamer backend OOo sync. vs. GStreamer async. OOo UNO API works synchronously while GStreamer is threaded and works asynchronously Issues we need to provide X window ID to the video sink when playback window is created we need to know the video size Solution in the beginning we tell the Playbin to use fake videosink wait until we reach PAUSED state

© Novell Inc 16 avmedia with GStreamer backend OOo thread GStreamer threads Player::create state to PAUSED query window size wait for condition link the elements prepare the pipeline pipeline is ready in PAUSED state set condition wakes up resets video sink ready to create window

Examples

© Novell Inc 18 Example 1 Photos slideshow with background music current limitation: sound objects cannot live across slide boundaries temporary solution: let animate photos on one slide audio was edited in audacity (trim, fade in) sound was recorded in the morning in the forest. photos taken at the same time

Morning in the forest... The end

© Novell Inc 20 Example 2 Include captured video in your presentation recorded with xvidcap shows how the previous example was created

© Novell Inc 22 Future work Kill vcl Sound? few possibilities replace it with avmedia.Player whenever used add GStreamer backend to it replace it with another simple UNO component New features sound effects across multiple slides (see issuezilla) include the media files inside the document fade in/fade out effects trimming suggest one

© Novell Inc 23 Questions and discussion

Unpublished Work of Novell, Inc. All Rights Reserved. This work is an unpublished work and contains confidential, proprietary, and trade secret information of Novell, Inc. Access to this work is restricted to Novell employees who have a need to know to perform tasks within the scope of their assignments. No part of this work may be practiced, performed, copied, distributed, revised, modified, translated, abridged, condensed, expanded, collected, or adapted without the prior written consent of Novell, Inc. Any use or exploitation of this work without authorization could subject the perpetrator to criminal and civil liability. General Disclaimer This document is not to be construed as a promise by any participating company to develop, deliver, or market a product. Novell, Inc., makes no representations or warranties with respect to the contents of this document, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. Further, Novell, Inc., reserves the right to revise this document and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. All Novell marks referenced in this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All third-party trademarks are the property of their respective owners.