audiochip.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. #ifndef AUDIOCHIP_H
  2. #define AUDIOCHIP_H
  3. /* ---------------------------------------------------------------------- */
  4. #define MIN(a,b) (((a)>(b))?(b):(a))
  5. #define MAX(a,b) (((a)>(b))?(a):(b))
  6. /* v4l device was opened in Radio mode */
  7. #define AUDC_SET_RADIO        _IO('m',2)
  8. /* select from TV,radio,extern,MUTE */
  9. #define AUDC_SET_INPUT        _IOW('m',17,int)
  10. /* audio inputs */
  11. #define AUDIO_TUNER        0x00
  12. #define AUDIO_RADIO        0x01
  13. #define AUDIO_EXTERN       0x02
  14. #define AUDIO_INTERN       0x03
  15. #define AUDIO_OFF          0x04 
  16. #define AUDIO_ON           0x05
  17. #define AUDIO_MUTE         0x80
  18. #define AUDIO_UNMUTE       0x81
  19. /* all the stuff below is obsolete and just here for reference.  I'll
  20.  * remove it once the driver is tested and works fine.
  21.  *
  22.  * Instead creating alot of tiny API's for all kinds of different
  23.  * chips, we'll just pass throuth the v4l ioctl structs (v4l2 not
  24.  * yet...).  It is a bit less flexible, but most/all used i2c chips
  25.  * make sense in v4l context only.  So I think that's acceptable...
  26.  */
  27. #if 0
  28. /* TODO (if it is ever [to be] accessible in the V4L[2] spec):
  29.  *   maybe fade? (back/front)
  30.  * notes:
  31.  * NEWCHANNEL and SWITCH_MUTE are here because the MSP3400 has a special
  32.  * routine to go through when it tunes in to a new channel before turning
  33.  * back on the sound.
  34.  * Either SET_RADIO, NEWCHANNEL, and SWITCH_MUTE or SET_INPUT need to be
  35.  * implemented (MSP3400 uses SET_RADIO to select inputs, and SWITCH_MUTE for
  36.  * channel-change mute -- TEA6300 et al use SET_AUDIO to select input [TV, 
  37.  * radio, external, or MUTE]).  If both methods are implemented, you get a
  38.  * cookie for doing such a good job! :)
  39.  */
  40. #define AUDC_SET_TVNORM       _IOW('m',1,int)  /* TV mode + PAL/SECAM/NTSC  */
  41. #define AUDC_NEWCHANNEL       _IO('m',3)       /* indicate new chan - off mute */
  42. #define AUDC_GET_VOLUME_LEFT  _IOR('m',4,__u16)
  43. #define AUDC_GET_VOLUME_RIGHT _IOR('m',5,__u16)
  44. #define AUDC_SET_VOLUME_LEFT  _IOW('m',6,__u16)
  45. #define AUDC_SET_VOLUME_RIGHT _IOW('m',7,__u16)
  46. #define AUDC_GET_STEREO       _IOR('m',8,__u16)
  47. #define AUDC_SET_STEREO       _IOW('m',9,__u16)
  48. #define AUDC_GET_DC           _IOR('m',10,__u16)/* ??? */
  49. #define AUDC_GET_BASS         _IOR('m',11,__u16)
  50. #define AUDC_SET_BASS         _IOW('m',12,__u16)
  51. #define AUDC_GET_TREBLE       _IOR('m',13,__u16)
  52. #define AUDC_SET_TREBLE       _IOW('m',14,__u16)
  53. #define AUDC_GET_UNIT         _IOR('m',15,int) /* ??? - unimplemented in MSP3400 */
  54. #define AUDC_SWITCH_MUTE      _IO('m',16)      /* turn on mute */
  55. #endif
  56. #endif /* AUDIOCHIP_H */