comparison libvo/vo_svga.c @ 33301:899d817e56fc

Implement control() VOCTRL_SET/GET_EQUALIZER using a vf_equalize struct, instead of employing vaarg. Do the same for vidix_control() too. Simplifies a lot of code. Allows direct passing of the struct from video filter system. Makes possible the complete removal of vaarg from libvo. Patch inspired by old work of uau.
author iive
date Fri, 06 May 2011 10:32:46 +0000
parents fbe5c829c69b
children ddb45e9443ec
comparison
equal deleted inserted replaced
33300:c7ebb0b711a6 33301:899d817e56fc
364 return get_image(data); 364 return get_image(data);
365 } 365 }
366 366
367 #ifdef CONFIG_VIDIX 367 #ifdef CONFIG_VIDIX
368 if (vidix_name[0]) { 368 if (vidix_name[0]) {
369 switch (request) {
370 case VOCTRL_SET_EQUALIZER:
371 {
372 va_list ap;
373 int value;
374
375 va_start(ap, data);
376 value = va_arg(ap, int);
377 va_end(ap);
378
379 return vidix_control(request, data, value);
380 }
381 case VOCTRL_GET_EQUALIZER:
382 {
383 va_list ap;
384 int *value;
385
386 va_start(ap, data);
387 value = va_arg(ap, int*);
388 va_end(ap);
389
390 return vidix_control(request, data, value);
391 }
392 }
393 return vidix_control(request, data); 369 return vidix_control(request, data);
394 } 370 }
395 #endif 371 #endif
396 372
397 return VO_NOTIMPL; 373 return VO_NOTIMPL;