summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer/video_thread.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/mpegplayer/video_thread.c')
-rw-r--r--apps/plugins/mpegplayer/video_thread.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/plugins/mpegplayer/video_thread.c b/apps/plugins/mpegplayer/video_thread.c
index aeaf942..950d49a 100644
--- a/apps/plugins/mpegplayer/video_thread.c
+++ b/apps/plugins/mpegplayer/video_thread.c
@@ -75,7 +75,10 @@ static void draw_fps(struct video_thread_data *td)
fps / 100, fps % 100, td->num_skipped,
td->info->display_picture->temporal_reference);
rb->lcd_putsxy(0, 0, str);
+
+ vo_lock();
rb->lcd_update_rect(0, 0, LCD_WIDTH, 8);
+ vo_unlock();
td->last_showfps = *rb->current_tick;
}
@@ -522,7 +525,9 @@ static void video_thread_msg(struct video_thread_data *td)
else
{
IF_COP(invalidate_icache());
+ vo_lock();
rb->lcd_update();
+ vo_unlock();
}
#else
GRAY_FLUSH_ICACHE();
@@ -580,6 +585,10 @@ static void video_thread_msg(struct video_thread_data *td)
}
break;
+ case VIDEO_SET_CLIP_RECT:
+ vo_set_clip_rect((const struct vo_rect *)td->ev.data);
+ break;
+
case VIDEO_PRINT_FRAME:
/* Print the last frame decoded */
if (td->info != NULL && td->info->display_fbuf != NULL)