office-gobmx/avmedia
Jan-Marek Glogowski 10850d0d84 tdf#125821 don't crash on missing gstreamer plugins
If GStreamer can't auto-detect an audio sink via "autoaudiosink",
it'll return a nullptr. If the volume plugin is missing, then this
currently also results in a crash.

So check the gst_element_factory_make results before using the
objects and change some wrong mpPlaybin checks to the right
mpVolumeControl ones.

This works for me without any audio and volume plugins. Since we
are linked against libgstaudio, I assume the bin is always there.

Change-Id: Ide526363d810ea48d0a62539c0a435553783e34a
Reviewed-on: https://gerrit.libreoffice.org/73848
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
(cherry picked from commit 5e6af47dc8)
Reviewed-on: https://gerrit.libreoffice.org/73919
(cherry picked from commit 142696e71e)
Reviewed-on: https://gerrit.libreoffice.org/73922
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2019-06-13 18:41:43 +02:00
..
inc Adapt to C++2a char_t 2018-11-17 17:17:26 +01:00
source tdf#125821 don't crash on missing gstreamer plugins 2019-06-13 18:41:43 +02:00
util
AllLangMoTarget_avmedia.mk
Library_avmedia.mk
Library_avmediagst.mk
Library_avmediagst_0_10.mk
Library_avmediaMacAVF.mk
Library_avmediaQuickTime.mk
Library_avmediavlc.mk
Library_avmediawin.mk
Makefile
Module_avmedia.mk
README

Audio/Video media implementation.

Provides per-platform implementations of multimedia functionality.
Currently no stream API is provided, only a URI based one, so
streaming has to be wrapped around it via temp files.

Also provides (in source/framework/mediacontrol.cxx) an implementation
of the graphical media playback control that appears in the toolbar /
mediaobject bar when media is selected under the .uno:AVMediaToolBox
item.

== avmedia/gstreamer ==

The avmedia component is implementation of manager service defined in
offapi/com/sun/star/media/. Radek has added implementation based on
gstreamer so that we can add audio and video files into impress
presentation on Linux with gstreamer.

The implementation is pretty straightforward, sometimes it has
problems when gstreamer installation is incomplete.

In the beginning the media files were not embedded, Thorsten added
support for that later.

FUTURE work: it might be worthwhile to revamp the avmedia UI