gint buffer_percent = 0;
gst_message_parse_buffering(message, &buffer_percent);
+ if (buffer_percent != MAX_BUFFER_PERCENT)
+ break;
- if ((MMPLAYER_IS_STREAMING(player)) &&
- (player->streamer) &&
- (player->streamer->is_buffering == TRUE) &&
- (buffer_percent == MAX_BUFFER_PERCENT)) {
- LOGD(">>> [%s] Buffering DONE is detected !!\n", GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
+ if (!MMPLAYER_CMD_TRYLOCK(player)) {
+ LOGW("can't get cmd lock, send msg to bus");
+ break;
+ }
+
+ if ((player->streamer) && (player->streamer->is_buffering == TRUE)) {
+ LOGD("[%s] Buffering DONE is detected !!\n", GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
player->streamer->is_buffering_done = TRUE;
}
+ MMPLAYER_CMD_UNLOCK(player);
+
retval = TRUE;
break;
}