Commit Graph

87 Commits

Author SHA1 Message Date
Thomas Guillem 3f1686d01e emotion/libvlc: fix url opening 2016-03-28 16:40:02 +09:00
Thomas Guillem b12c2a2cfd emotion/libvlc: replace libvlc_mp_is_ready with ev->started 2016-03-28 16:40:02 +09:00
Thomas Guillem a6bd5dda42 emotion/libvlc: use vlc vout display module
The vlc vout display module adds key and mouse event support. It improves
performances since a video filter is not needed anymore to scale the image, and
direct rendering with vlc avcodec module is now possible (less memcpy).
2016-03-28 16:40:02 +09:00
Thomas Guillem 50d9f63c2e emotion/libvlc: log: print vlc module and id 2016-03-28 16:40:02 +09:00
Thomas Guillem 7d3e96757d emotion/libvlc: fix C89 2016-03-28 16:40:02 +09:00
Thomas Guillem f5296e8afc emotion/libvlc: set libvlc args from "EMOTION_LIBVLC_ARGS" env 2016-03-28 16:40:02 +09:00
Thomas Guillem 941ccc4324 emotion/libvlc: fix video/audio/spu mute 2016-03-28 16:40:02 +09:00
Thomas Guillem f04903119c emotion/libvlc: set libvlc_log static 2016-03-28 16:40:02 +09:00
Carsten Haitzler 9626acdb4d emotion - fix gst back-end to report title and other meta changes
gst1 back-end didnt report changes in title or other metadata to the
frontend and thusapps never knew it was changing. this fixes that.

@fix
2015-12-21 14:40:41 +09:00
Thomas Guillem afe6f5c3a1 emotion: add libvlc module
Summary:
Everything is implemented except visualization, mouse events and some
EMOTION_EVENT. Video can output RGBA, YUY2, YV12 or I420.

About the video sink: this emotion module use libvlc callbacks:
libvlc_video_set_format_callbacks and libvlc_video_set_callbacks. It may be
temporary. Indeed, an other solution is to add an Evas module inside vlc. But
this vlc module would need to link with emotion in order to use
_emotion_frame_new and _emotion_frame_resize private functions. I didn't
succeed to output a frame without these private functions: see
15daff4d3f

List of /* FIXME */:

 - Visualization not implemented since there is no API (for now) in libvlc.

 - Mouse events not implemented since there is no API (for now) in libvlc.

 - Some EMOTION_EVENT are not handled.

 - SIGSEGV in evas_gl_common_texture_nv12_update with
   EVAS_COLORSPACE_YCBCR420NV12601_PL colorspace.

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3071

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-09-21 23:19:20 +02:00
Carsten Haitzler 2b8d54c357 emotion gstreamer1 module - support 709 color matrix properly now
now that 709 colorsp[ace works in evas, use it properly in gst1 module
if possible
2015-05-27 23:34:08 +09:00
Cedric BAIL a9911f5fd8 emotion: trying to fix gstreamer backend build on Windows. 2015-04-28 11:37:11 +02:00
Carsten Haitzler 425de99145 emotion gst1 module - remove printf
this debugging printf seems to have been left around - remove it so we
don't get unexpected noise in gst playback
2015-04-20 18:34:58 +09:00
Carsten Haitzler 6458ca32bc emotion - gst1 module - handle long standing bad map/unmap of gst buf
this fixes a pending XXX where we didnt keep the buffer mapped as long
as the evas image object pointed to the video pixel data. this fixes
this along with less over-zealous refinf to make things more obvious
(now last_buffer actualyl really matters and if it was mapped and
refed).

@fix
2015-04-20 18:34:58 +09:00
Carsten Haitzler bba02377e6 emotion gst backend - make note of some bugs! need fixing - cant now 2014-10-01 08:23:26 +09:00
Carsten Haitzler 807a136305 emotion - gst 0.10 - fix build after volume change/fix 2014-09-03 16:57:01 +09:00
Carsten Haitzler 6ed29b4425 emotion - audio volume - leave as-is on file open/init
this fixes gst and gst1 modules to leave volume be on start. generic
can't really query easily, so just set to 0.8 by default, and xine is
already just fine. do this because back-ends seems to have a habit of
setting master volume, not per-app volume.

@fix
2014-09-01 17:09:09 +09:00
Carsten Haitzler 52b5250713 emotion gst1 - stop complaining about null uri 2014-08-23 19:20:16 +09:00
Carsten Haitzler 12d42e85a4 emotion - gst1 backend - add subtitle file support
this enables subtitle file support in the emotion gstreamer1 backend.
this matches the vlc generic one. xine still doesn't.
2014-08-23 18:26:29 +09:00
Stefan Schmidt 80733c5171 modules/emotion_generic: Remove unnecessary NULL checks for event data
We are already using the pointer before we check it here. We also don't
check it in the other callbacks so align the handling in this file.

CID: 1039635, 1039636, 1039637, 1039638, 1039639
2014-08-08 11:28:56 +02:00
Davide Andreoli 9df1e2e678 Emotion generic: change the log domain name to be consistent with others domains. 2014-02-23 20:40:21 +01:00
Davide Andreoli a1ed4cf9d8 Emotion generic: remove the player restart hack.
The player restart (when reached the end) is a specific VLC issue,
it need to be managed inside the player, not here.
2014-02-22 11:29:16 +01:00
Cedric BAIL baf558a5c5 emotion: lower severity of a simple warning. 2014-02-21 15:08:26 +09:00
Davide Andreoli 902307ccaf Emotion Generic: receiving the size on opening is correct.
Also: more comments to simplify command debugging.
2014-02-20 23:01:06 +01:00
Davide Andreoli af34bc8599 Emotion generic: nothing to see here, just small formatting while reading the code. 2014-02-17 21:26:46 +01:00
Davide Andreoli 1a9952eca7 Emotion generic interface: FILE_SET_DONE do not have any param. 2014-02-16 14:14:23 +01:00
ChunEon Park 16ef56d396 efl/emotion - added missing headers for getuid() geteuid(). 2014-01-18 18:49:27 +09:00
Sebastian Dröge 1ba3426405 emotion gstreamer1: Call _emotion_frame_new() for audio-only streams without visualisations too
Without this applications are not notified of any progress.

https://phab.enlightenment.org/T767
2014-01-16 22:45:09 +01:00
Sebastian Dröge 25fa72e295 emotion gstreamer1: Set visualizations if the vis name is not NULL
and not the other way around.
2014-01-13 10:02:34 +01:00
Sebastian Dröge a39f9ca579 emotion gstreamer1: Also handle DATE_TIME tag 2014-01-13 10:01:07 +01:00
Sebastian Dröge 3c53aea9a4 emotion gstreamer1: Fix wrong FIXME comment 2014-01-13 10:01:07 +01:00
Sebastian Dröge 86d552a7f7 emotion gstreamer1: Don't forget to allocate metadata struct 2014-01-13 10:01:07 +01:00
Sebastian Dröge 1c6cb51cdc emotion gstreamer1: Implement seekability check via seeking query 2014-01-13 10:01:07 +01:00
Sebastian Dröge 463ef7b964 emotion gstreamer1: Add support for selecting subtitle channels 2014-01-13 10:01:07 +01:00
Sebastian Dröge 8d034ca3b7 emotion gstreamer1: Volumes > 1.0 are valid too 2014-01-13 10:01:07 +01:00
Sebastian Dröge 79d5172f0a emotion gstreamer1: Add support for buffering and clock-lost handling 2014-01-13 10:01:07 +01:00
Sebastian Dröge 18f733fa23 emotion gstreamer1: Major cleanup of internal and GStreamer state handling 2014-01-13 09:50:10 +01:00
Sebastian Dröge a5f6a9274c emotion gstreamer1: Don't set pipeline to PAUSED during seeking
This is not required and is handled transparently inside GStreamer
already.
2014-01-13 09:50:10 +01:00
Sebastian Dröge c2f4967699 emotion gstreamer1: Use GST_PLAY_FLAG_VIS instead of the corresponding integer 2014-01-13 09:50:10 +01:00
Sebastian Dröge 5798e98571 emotion gstreamer1: Don't use the NATIVE_AUDIO/VIDEO flags
There are too many video formats we don't handle, so we should let GStreamer
handle the conversion if necessary.
2014-01-13 09:50:10 +01:00
Sebastian Dröge 01389b1d00 emotion gstreamer1: Use refcounting instead of in/out variable counting 2014-01-13 09:50:10 +01:00
Sebastian Dröge 85b17ff7c1 emotion gstreamer1: Simplify pipeline creation
Also remove the webcam support, this could've never worked and
needs to be handled differently.
2014-01-13 09:50:10 +01:00
Sebastian Dröge 072e0bbafd emotion gstreamer1: Some code re-flow in the GStreamer bus handler 2014-01-13 09:50:10 +01:00
Sebastian Dröge 2ff8aafd66 emotion gstreamer1: Use GStreamer's path/URI handling functions instead of writing our own 2014-01-13 09:50:10 +01:00
Sebastian Dröge 0de582b24f emotion gstreamer1: Rename functions and variables for clarity
Also remove some useless variables.
2014-01-13 09:50:10 +01:00
Carsten Haitzler e8c13118eb fix mingw build for setuid fix/checks 2014-01-08 22:06:41 +09:00
Carsten Haitzler b95ef3801f setuid safeness - ensure if an app that is setuid doesn't do bad things
this makes efl ignore certain env vars for thnigs and entirely removes
user modules (that no one ever used) etc. etc. to ensure that *IF* an
app is setuid, there isn't a priv escalation path that is easy.
2014-01-08 19:46:23 +09:00
Cedric Bail e362924c0e emotion: it has already been assumed that 'send' was not NULL before. 2014-01-05 12:07:42 +09:00
Sebastian Dröge 9637c2b835 Major cleanup of the Emotion GStreamer 1.x video sink
Next step: state handling in the GStreamer backend

Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D431

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-01-04 11:46:27 +09:00
Stefan Schmidt a440c8da27 emotion: Fix missing include resulting in unknown type GstNavigationCommand
At least on the gstreamer1 version in Fedora 19 this include is needed. Glima
reported it as well and I think he also uses Fedora.

modules/emotion/gstreamer1/emotion_gstreamer.c:643:4: error: unknown type name
'GstNavigationCommand'

Even if other distros or gstreamer1 versions do not need this it should be safe
to add it here.
2014-01-02 13:54:39 +01:00