summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer/video_thread.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2008-01-03 17:14:28 +0000
committerMichael Sevakis <jethead71@rockbox.org>2008-01-03 17:14:28 +0000
commita5fc3f4df4bec2b6ae1c22fb83cf495f31773122 (patch)
treeba78abac0ee9e5d564907d9e8bee4020d98cb9a8 /apps/plugins/mpegplayer/video_thread.c
parentd1cb32a93f26ef42ae864b911bbd425c49cc4109 (diff)
downloadrockbox-a5fc3f4df4bec2b6ae1c22fb83cf495f31773122.tar.gz
rockbox-a5fc3f4df4bec2b6ae1c22fb83cf495f31773122.zip
Initial WVS for mpegplayer. Adjusts to the user's preferred font and uses FF/RW preferences set for playback. Picked a random color for the base WVS color but it could be configured. Some engine tweaks to accomodate it since certain nescessities are clearer now. Fix a clipped YUV output bug in the SIM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15991 a1c6a512-1295-4272-9138-f99709370657
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 aeaf942058..950d49a935 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)
75 fps / 100, fps % 100, td->num_skipped, 75 fps / 100, fps % 100, td->num_skipped,
76 td->info->display_picture->temporal_reference); 76 td->info->display_picture->temporal_reference);
77 rb->lcd_putsxy(0, 0, str); 77 rb->lcd_putsxy(0, 0, str);
78
79 vo_lock();
78 rb->lcd_update_rect(0, 0, LCD_WIDTH, 8); 80 rb->lcd_update_rect(0, 0, LCD_WIDTH, 8);
81 vo_unlock();
79 82
80 td->last_showfps = *rb->current_tick; 83 td->last_showfps = *rb->current_tick;
81} 84}
@@ -522,7 +525,9 @@ static void video_thread_msg(struct video_thread_data *td)
522 else 525 else
523 { 526 {
524 IF_COP(invalidate_icache()); 527 IF_COP(invalidate_icache());
528 vo_lock();
525 rb->lcd_update(); 529 rb->lcd_update();
530 vo_unlock();
526 } 531 }
527#else 532#else
528 GRAY_FLUSH_ICACHE(); 533 GRAY_FLUSH_ICACHE();
@@ -580,6 +585,10 @@ static void video_thread_msg(struct video_thread_data *td)
580 } 585 }
581 break; 586 break;
582 587
588 case VIDEO_SET_CLIP_RECT:
589 vo_set_clip_rect((const struct vo_rect *)td->ev.data);
590 break;
591
583 case VIDEO_PRINT_FRAME: 592 case VIDEO_PRINT_FRAME:
584 /* Print the last frame decoded */ 593 /* Print the last frame decoded */
585 if (td->info != NULL && td->info->display_fbuf != NULL) 594 if (td->info != NULL && td->info->display_fbuf != NULL)