diff options
author | albeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-27 21:03:59 +0000 |
---|---|---|
committer | albeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-27 21:03:59 +0000 |
commit | 38a7d8e282893074240754cce4d00a9237d557e5 (patch) | |
tree | 9bebce0973c1471e417a8d5a238ffeee64a0269e | |
parent | daa4543190a201cf4c92a1c11fe82c38f098a72b (diff) | |
download | mpv-38a7d8e282893074240754cce4d00a9237d557e5.tar.bz2 mpv-38a7d8e282893074240754cce4d00a9237d557e5.tar.xz |
A little fix with hw video parameters setting
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5872 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpcodecs/dec_video.c | 1 | ||||
-rw-r--r-- | mplayer.c | 27 |
2 files changed, 21 insertions, 7 deletions
diff --git a/libmpcodecs/dec_video.c b/libmpcodecs/dec_video.c index 211ebdc856..6a4c01293e 100644 --- a/libmpcodecs/dec_video.c +++ b/libmpcodecs/dec_video.c @@ -86,7 +86,6 @@ int set_video_colors(sh_video_t *sh_video,char *item,int value) { if(vo_vaa.set_video_eq) { - vidix_video_eq_t veq; veq.flags = VEQ_FLG_ITU_R_BT_601; /* Fixme please !!! */ if(strcmp(item,"Brightness") == 0) { @@ -2320,14 +2320,20 @@ if (stream->type==STREAMTYPE_DVDNAV && dvd_nav_still) else { if ( (v_cont += v) > 100 ) v_cont = 100; } - if(v_cont < 0) v_cont = 0; - + if(v_hw_equ_cap & VEQ_CAP_CONTRAST) { + if(v_cont < -100) v_cont = -100; + } else { + if(v_cont < 0) v_cont = 0; + } if(set_video_colors(sh_video,"Contrast",v_cont)){ #ifdef USE_OSD if(osd_level){ osd_visible=sh_video->fps; // 1 sec vo_osd_progbar_type=OSD_CONTRAST; - vo_osd_progbar_value=((v_cont)<<8)/100; + if(v_hw_equ_cap & VEQ_CAP_CONTRAST) + vo_osd_progbar_value=((v_cont)<<7)/100 + 128; + else + vo_osd_progbar_value=((v_cont)<<8)/100; vo_osd_changed(OSDTYPE_PROGBAR); } #endif @@ -2350,7 +2356,10 @@ if (stream->type==STREAMTYPE_DVDNAV && dvd_nav_still) if(osd_level){ osd_visible=sh_video->fps; // 1 sec vo_osd_progbar_type=OSD_BRIGHTNESS; - vo_osd_progbar_value=((v_bright)<<8)/100; + if(v_hw_equ_cap & VEQ_CAP_BRIGHTNESS) + vo_osd_progbar_value=((v_bright)<<7)/100 + 128; + else + vo_osd_progbar_value=((v_bright)<<8)/100; vo_osd_changed(OSDTYPE_PROGBAR); } #endif @@ -2373,7 +2382,10 @@ if (stream->type==STREAMTYPE_DVDNAV && dvd_nav_still) if(osd_level){ osd_visible=sh_video->fps; // 1 sec vo_osd_progbar_type=OSD_HUE; - vo_osd_progbar_value=((v_hue)<<8)/100; + if(v_hw_equ_cap & VEQ_CAP_HUE) + vo_osd_progbar_value=((v_hue)<<7)/100 + 128; + else + vo_osd_progbar_value=((v_hue)<<8)/100; vo_osd_changed(OSDTYPE_PROGBAR); } #endif @@ -2396,7 +2408,10 @@ if (stream->type==STREAMTYPE_DVDNAV && dvd_nav_still) if(osd_level){ osd_visible=sh_video->fps; // 1 sec vo_osd_progbar_type=OSD_SATURATION; - vo_osd_progbar_value=((v_saturation)<<8)/100; + if(v_hw_equ_cap & VEQ_CAP_SATURATION) + vo_osd_progbar_value=((v_saturation)<<7)/100 + 128; + else + vo_osd_progbar_value=((v_saturation)<<8)/100; vo_osd_changed(OSDTYPE_PROGBAR); } #endif |