Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
W
web-ui-redesign
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Gautam Chitnis
web-ui-redesign
Commits
65321da1
Commit
65321da1
authored
May 15, 2017
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lib: media_player: allocate event manager in-place
parent
7395282c
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
27 additions
and
32 deletions
+27
-32
lib/media_player.c
lib/media_player.c
+25
-31
lib/media_player_internal.h
lib/media_player_internal.h
+1
-1
lib/video.c
lib/video.c
+1
-0
No files found.
lib/media_player.c
View file @
65321da1
...
...
@@ -248,7 +248,7 @@ input_seekable_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerSeekableChanged
;
event
.
u
.
media_player_seekable_changed
.
new_seekable
=
newval
.
b_bool
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
return
VLC_SUCCESS
;
}
...
...
@@ -266,7 +266,7 @@ input_pausable_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerPausableChanged
;
event
.
u
.
media_player_pausable_changed
.
new_pausable
=
newval
.
b_bool
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
return
VLC_SUCCESS
;
}
...
...
@@ -284,7 +284,7 @@ input_scrambled_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerScrambledChanged
;
event
.
u
.
media_player_scrambled_changed
.
new_scrambled
=
newval
.
b_bool
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
return
VLC_SUCCESS
;
}
...
...
@@ -336,7 +336,7 @@ input_event_changed( vlc_object_t * p_this, char const * psz_cmd,
}
set_state
(
p_mi
,
libvlc_state
,
false
);
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_DEAD
)
{
...
...
@@ -344,7 +344,7 @@ input_event_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerStopped
;
set_state
(
p_mi
,
libvlc_state
,
false
);
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_POSITION
)
{
...
...
@@ -355,27 +355,27 @@ input_event_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerPositionChanged
;
event
.
u
.
media_player_position_changed
.
new_position
=
var_GetFloat
(
p_input
,
"position"
);
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
/* */
event
.
type
=
libvlc_MediaPlayerTimeChanged
;
event
.
u
.
media_player_time_changed
.
new_time
=
from_mtime
(
var_GetInteger
(
p_input
,
"time"
));
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_LENGTH
)
{
event
.
type
=
libvlc_MediaPlayerLengthChanged
;
event
.
u
.
media_player_length_changed
.
new_length
=
from_mtime
(
var_GetInteger
(
p_input
,
"length"
));
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_CACHE
)
{
event
.
type
=
libvlc_MediaPlayerBuffering
;
event
.
u
.
media_player_buffering
.
new_cache
=
(
100
*
var_GetFloat
(
p_input
,
"cache"
));
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_VOUT
)
{
...
...
@@ -394,19 +394,19 @@ input_event_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerVout
;
event
.
u
.
media_player_vout
.
new_count
=
i_vout
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_TITLE
)
{
event
.
type
=
libvlc_MediaPlayerTitleChanged
;
event
.
u
.
media_player_title_changed
.
new_title
=
var_GetInteger
(
p_input
,
"title"
);
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_CHAPTER
)
{
event
.
type
=
libvlc_MediaPlayerChapterChanged
;
event
.
u
.
media_player_chapter_changed
.
new_chapter
=
var_GetInteger
(
p_input
,
"chapter"
);
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
else
if
(
newval
.
i_int
==
INPUT_EVENT_ES
)
{
...
...
@@ -441,7 +441,7 @@ input_event_changed( vlc_object_t * p_this, char const * psz_cmd,
event
.
type
=
libvlc_MediaPlayerESSelected
;
event
.
u
.
media_player_es_changed
.
i_type
=
es_list
[
i
].
type
;
event
.
u
.
media_player_es_changed
.
i_id
=
es_list
[
i
].
new_es
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
}
}
...
...
@@ -504,7 +504,7 @@ static int input_es_changed( vlc_object_t *p_this,
}
event
.
u
.
media_player_es_changed
.
i_id
=
i_id
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
return
VLC_SUCCESS
;
}
...
...
@@ -523,7 +523,7 @@ static int snapshot_was_taken(vlc_object_t *p_this, char const *psz_cmd,
libvlc_event_t
event
;
event
.
type
=
libvlc_MediaPlayerSnapshotTaken
;
event
.
u
.
media_player_snapshot_taken
.
psz_filename
=
newval
.
psz_string
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
return
VLC_SUCCESS
;
}
...
...
@@ -539,7 +539,7 @@ static int corks_changed(vlc_object_t *obj, const char *name, vlc_value_t old,
event
.
type
=
cur
.
i_int
?
libvlc_MediaPlayerCorked
:
libvlc_MediaPlayerUncorked
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
}
VLC_UNUSED
(
name
);
VLC_UNUSED
(
opaque
);
return
VLC_SUCCESS
;
...
...
@@ -553,7 +553,7 @@ static int audio_device_changed(vlc_object_t *obj, const char *name,
event
.
type
=
libvlc_MediaPlayerAudioDevice
;
event
.
u
.
media_player_audio_device
.
device
=
cur
.
psz_string
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
VLC_UNUSED
(
name
);
VLC_UNUSED
(
old
);
VLC_UNUSED
(
opaque
);
return
VLC_SUCCESS
;
}
...
...
@@ -569,7 +569,7 @@ static int mute_changed(vlc_object_t *obj, const char *name, vlc_value_t old,
event
.
type
=
cur
.
b_bool
?
libvlc_MediaPlayerMuted
:
libvlc_MediaPlayerUnmuted
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
}
VLC_UNUSED
(
name
);
VLC_UNUSED
(
opaque
);
return
VLC_SUCCESS
;
...
...
@@ -583,7 +583,7 @@ static int volume_changed(vlc_object_t *obj, const char *name, vlc_value_t old,
event
.
type
=
libvlc_MediaPlayerAudioVolume
;
event
.
u
.
media_player_audio_volume
.
volume
=
cur
.
f_float
;
libvlc_event_send
(
mp
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
mp
->
event_manager
,
&
event
);
VLC_UNUSED
(
name
);
VLC_UNUSED
(
old
);
VLC_UNUSED
(
opaque
);
return
VLC_SUCCESS
;
}
...
...
@@ -744,13 +744,7 @@ libvlc_media_player_new( libvlc_instance_t *instance )
var_SetAddress
(
mp
,
"viewpoint"
,
&
mp
->
viewpoint
);
vlc_mutex_init
(
&
mp
->
input
.
lock
);
mp
->
i_refcount
=
1
;
mp
->
p_event_manager
=
libvlc_event_manager_new
(
mp
);
if
(
unlikely
(
mp
->
p_event_manager
==
NULL
))
{
input_resource_Release
(
mp
->
input
.
p_resource
);
vlc_object_release
(
mp
);
return
NULL
;
}
libvlc_event_manager_init
(
&
mp
->
event_manager
,
mp
);
vlc_mutex_init
(
&
mp
->
object_lock
);
var_AddCallback
(
mp
,
"corks"
,
corks_changed
,
NULL
);
...
...
@@ -816,7 +810,7 @@ static void libvlc_media_player_destroy( libvlc_media_player_t *p_mi )
input_resource_Release
(
p_mi
->
input
.
p_resource
);
vlc_mutex_destroy
(
&
p_mi
->
input
.
lock
);
libvlc_event_manager_
release
(
p_mi
->
p_event_manager
);
libvlc_event_manager_
destroy
(
&
p_mi
->
event_manager
);
libvlc_media_release
(
p_mi
->
p_md
);
vlc_mutex_destroy
(
&
p_mi
->
object_lock
);
...
...
@@ -896,7 +890,7 @@ void libvlc_media_player_set_media(
libvlc_event_t
event
;
event
.
type
=
libvlc_MediaPlayerMediaChanged
;
event
.
u
.
media_player_media_changed
.
new_media
=
p_md
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
...
...
@@ -923,7 +917,7 @@ libvlc_media_player_get_media( libvlc_media_player_t *p_mi )
libvlc_event_manager_t
*
libvlc_media_player_event_manager
(
libvlc_media_player_t
*
p_mi
)
{
return
p_mi
->
p_
event_manager
;
return
&
p_mi
->
event_manager
;
}
static
void
add_es_callbacks
(
input_thread_t
*
p_input_thread
,
libvlc_media_player_t
*
p_mi
)
...
...
@@ -1067,7 +1061,7 @@ void libvlc_media_player_stop( libvlc_media_player_t *p_mi )
/* Construct and send the event */
libvlc_event_t
event
;
event
.
type
=
libvlc_MediaPlayerStopped
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
input_resource_Terminate
(
p_mi
->
input
.
p_resource
);
...
...
@@ -1471,7 +1465,7 @@ void libvlc_media_player_set_title( libvlc_media_player_t *p_mi,
libvlc_event_t
event
;
event
.
type
=
libvlc_MediaPlayerTitleChanged
;
event
.
u
.
media_player_title_changed
.
new_title
=
i_title
;
libvlc_event_send
(
p_mi
->
p_
event_manager
,
&
event
);
libvlc_event_send
(
&
p_mi
->
event_manager
,
&
event
);
}
int
libvlc_media_player_get_title
(
libvlc_media_player_t
*
p_mi
)
...
...
lib/media_player_internal.h
View file @
65321da1
...
...
@@ -52,7 +52,7 @@ struct libvlc_media_player_t
struct
libvlc_instance_t
*
p_libvlc_instance
;
/* Parent instance */
libvlc_media_t
*
p_md
;
/* current media descriptor */
libvlc_event_manager_t
*
p_
event_manager
;
libvlc_event_manager_t
event_manager
;
libvlc_state_t
state
;
vlc_viewpoint_t
viewpoint
;
int
selected_es
[
3
];
...
...
lib/video.c
View file @
65321da1
...
...
@@ -39,6 +39,7 @@
#include <vlc_input.h>
#include <vlc_vout.h>
#include <libvlc_internal.h>
#include "media_player_internal.h"
#include <math.h>
#include <assert.h>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment