- set max-lateness to 20ms of fakesink as waylandsink
- after changing playback position, invalid video frame
can be sent by handoff signal.
Change-Id: Ifce799844e29f9caf9ce9cf1720dac328220bc91
Name: libmm-player
Summary: Multimedia Framework Player Library
Name: libmm-player
Summary: Multimedia Framework Player Library
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
#define SPATIAL_AUDIO_CAPS "audio/x-raw,format=S16LE,channels=4"
#define FEATURE_NAME_SPHERICAL_VIDEO "http://tizen.org/feature/multimedia.player.spherical_video"
#define SPATIAL_AUDIO_CAPS "audio/x-raw,format=S16LE,channels=4"
#define FEATURE_NAME_SPHERICAL_VIDEO "http://tizen.org/feature/multimedia.player.spherical_video"
+#define FAKE_SINK_MAX_LATENESS G_GINT64_CONSTANT(20000000) /* set 20ms as waylandsink */
+
/*---------------------------------------------------------------------------
| LOCAL CONSTANT DEFINITIONS: |
---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------
| LOCAL CONSTANT DEFINITIONS: |
---------------------------------------------------------------------------*/
}
if (player->set_mode.media_packet_video_stream) {
}
if (player->set_mode.media_packet_video_stream) {
- g_object_set(G_OBJECT(fakesink), "signal-handoffs", TRUE, NULL);
+ g_object_set(G_OBJECT(fakesink), "signal-handoffs", TRUE, "max-lateness", FAKE_SINK_MAX_LATENESS, NULL);
__mmplayer_add_signal_connection(player,
G_OBJECT(fakesink),
__mmplayer_add_signal_connection(player,
G_OBJECT(fakesink),
if (player->set_mode.media_packet_video_stream) {
LOGE("add data probe at videosink");
g_object_set(G_OBJECT(player->pipeline->videobin[MMPLAYER_V_SINK].gst),
if (player->set_mode.media_packet_video_stream) {
LOGE("add data probe at videosink");
g_object_set(G_OBJECT(player->pipeline->videobin[MMPLAYER_V_SINK].gst),
- "sync", TRUE, "signal-handoffs", TRUE, NULL);
+ "sync", TRUE, "signal-handoffs", TRUE, "max-lateness", FAKE_SINK_MAX_LATENESS, NULL);
__mmplayer_add_signal_connection(player,
G_OBJECT(player->pipeline->videobin[MMPLAYER_V_SINK].gst),
__mmplayer_add_signal_connection(player,
G_OBJECT(player->pipeline->videobin[MMPLAYER_V_SINK].gst),
G_CALLBACK(__mmplayer_update_subtitle),
(gpointer)player);
G_CALLBACK(__mmplayer_update_subtitle),
(gpointer)player);
- g_object_set(G_OBJECT(textbin[MMPLAYER_T_FAKE_SINK].gst), "sync", TRUE, NULL);
- g_object_set(G_OBJECT(textbin[MMPLAYER_T_FAKE_SINK].gst), "signal-handoffs", TRUE, NULL);
+ g_object_set(G_OBJECT(textbin[MMPLAYER_T_FAKE_SINK].gst), "sync", TRUE,
+ "signal-handoffs", TRUE, "max-lateness", FAKE_SINK_MAX_LATENESS, NULL);
if (!player->play_subtitle) {
LOGD("add textbin sink as sink element of whole pipeline.\n");
if (!player->play_subtitle) {
LOGD("add textbin sink as sink element of whole pipeline.\n");