From 67276cc8cd70aded2079a2716499501e2055c390 Mon Sep 17 00:00:00 2001 From: voroshil Date: Sat, 8 Sep 2007 03:06:23 +0000 Subject: Decrease teletext page rendering frequency from 1/frame to about 4/sec. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24362 b3059339-0415-0410-9bf9-f77b7e298cf2 --- mpcommon.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'mpcommon.c') diff --git a/mpcommon.c b/mpcommon.c index ce1188680f..0a8bf790c0 100644 --- a/mpcommon.c +++ b/mpcommon.c @@ -146,8 +146,17 @@ void update_teletext(sh_video_t *sh_video, demuxer_t *demuxer, int reset) { #ifdef HAVE_TV_TELETEXT tvi_handle_t* tvh=demuxer->priv; + int page_changed; + if (demuxer->type != DEMUXER_TYPE_TV || !tvh) return; + //Also forcing page update when such ioctl is not supported or call error occured + if(tvh->functions->control(tvh->priv,TV_VBI_CONTROL_IS_CHANGED,&page_changed)!=TVI_CONTROL_TRUE) + page_changed=1; + + if(!page_changed) + return; + if(tvh->functions->control(tvh->priv,TV_VBI_CONTROL_GET_VBIPAGE,&vo_osd_teletext_page)!=TVI_CONTROL_TRUE) vo_osd_teletext_page=NULL; if(tvh->functions->control(tvh->priv,TV_VBI_CONTROL_GET_HALF_PAGE,&vo_osd_teletext_half)!=TVI_CONTROL_TRUE) @@ -157,5 +166,7 @@ void update_teletext(sh_video_t *sh_video, demuxer_t *demuxer, int reset) if(tvh->functions->control(tvh->priv,TV_VBI_CONTROL_GET_FORMAT,&vo_osd_teletext_format)!=TVI_CONTROL_TRUE) vo_osd_teletext_format=0; vo_osd_changed(OSDTYPE_TELETEXT); + + tvh->functions->control(tvh->priv,TV_VBI_CONTROL_MARK_UNCHANGED,NULL); #endif } -- cgit v1.2.3