aboutsummaryrefslogtreecommitdiffhomepage
path: root/dec_video.c
diff options
context:
space:
mode:
Diffstat (limited to 'dec_video.c')
-rw-r--r--dec_video.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/dec_video.c b/dec_video.c
index 6bea0a1929..fb9e4226dc 100644
--- a/dec_video.c
+++ b/dec_video.c
@@ -174,11 +174,27 @@ void set_video_quality(sh_video_t *sh_video,int quality){
int set_video_colors(sh_video_t *sh_video,char *item,int value){
#ifdef USE_DIRECTSHOW
- if(!strcmp(sh_video->codec->name,"divxds")){
+ if(sh_video->codec->driver==VFM_DSHOW){
DS_SetValue_DivX(item,value);
return 1;
}
#endif
+#ifdef NEW_DECORE
+#ifdef DECORE_VERSION
+#if DECORE_VERSION >= 20011010
+ if(sh_video->codec->driver==VFM_DIVX4){
+ int option;
+ if(!strcmp(item,"Brightness")) option=DEC_GAMMA_BRIGHTNESS;
+ else if(!strcmp(item, "Contrast")) option=DEC_GAMMA_CONTRAST;
+ else if(!strcmp(item,"Saturation")) option=DEC_GAMMA_SATURATION;
+ else return 0;
+ value = (value * 256) / 100 - 128;
+ decore(0x123, DEC_OPT_GAMMA, (void *)option, (void *) value);
+ return 1;
+ }
+#endif
+#endif
+#endif
return 0;
}