Hi Mauro,

On Tue, May 12, 2009 at 04:12:31AM +0200, ext Mauro Carvalho Chehab wrote:
> Em Mon, 11 May 2009 12:31:43 +0300
> Eduardo Valentin <eduardo.valen...@nokia.com> escreveu:
> 
> > This patch adds a new class of extended controls. This class
> > is intended to support Radio Modulators properties such as:
> > rds, audio limiters, audio compression, pilot tone generation,
> > tuning power levels and region related properties.
> > 
> > Signed-off-by: Eduardo Valentin <eduardo.valen...@nokia.com>
> 
> Eduardo,
> 
> Please provide us a patch also for V4L2 API for the new API controls you're
> adding. I'll hold the analysis of the patch series until you provide us the
> docs. So, there's no need to resubmit the entire patch series.
> 
> The V4L2 API is maintained together with the mercurial development tree, at:
>       http://linuxtv.org/hg/v4l-dvb/

Right. That's something I was looking for. Thanks for the directions. I'll
submit the docs then.

> 
> under v4l2-spec/ directory.
> 
> Cheers,
> Mauro.
> 
> > ---
> >  include/linux/videodev2.h |   45 
> > +++++++++++++++++++++++++++++++++++++++++++++
> >  1 files changed, 45 insertions(+), 0 deletions(-)
> > 
> > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
> > index ebb2ea6..7559299 100644
> > --- a/include/linux/videodev2.h
> > +++ b/include/linux/videodev2.h
> > @@ -803,6 +803,7 @@ struct v4l2_ext_controls {
> >  #define V4L2_CTRL_CLASS_USER 0x00980000    /* Old-style 'user' controls */
> >  #define V4L2_CTRL_CLASS_MPEG 0x00990000    /* MPEG-compression controls */
> >  #define V4L2_CTRL_CLASS_CAMERA 0x009a0000  /* Camera class controls */
> > +#define V4L2_CTRL_CLASS_FMTX 0x009b0000    /* FM Radio Modulator class 
> > controls */
> >  
> >  #define V4L2_CTRL_ID_MASK            (0x0fffffff)
> >  #define V4L2_CTRL_ID2CLASS(id)    ((id) & 0x0fff0000UL)
> > @@ -1141,6 +1142,50 @@ enum  v4l2_exposure_auto_type {
> >  
> >  #define V4L2_CID_PRIVACY                   (V4L2_CID_CAMERA_CLASS_BASE+16)
> >  
> > +/* FM Radio Modulator class control IDs */
> > +#define V4L2_CID_FMTX_CLASS_BASE           (V4L2_CTRL_CLASS_FMTX | 0x900)
> > +#define V4L2_CID_FMTX_CLASS                        (V4L2_CTRL_CLASS_FMTX | 
> > 1)
> > +
> > +#define V4L2_CID_RDS_ENABLED                       
> > (V4L2_CID_FMTX_CLASS_BASE + 1)
> > +#define V4L2_CID_RDS_PI                            
> > (V4L2_CID_FMTX_CLASS_BASE + 2)
> > +#define V4L2_CID_RDS_PTY                   (V4L2_CID_FMTX_CLASS_BASE + 3)
> > +#define V4L2_CID_RDS_PS_NAME                       
> > (V4L2_CID_FMTX_CLASS_BASE + 4)
> > +#define V4L2_CID_RDS_RADIO_TEXT                    
> > (V4L2_CID_FMTX_CLASS_BASE + 5)
> > +
> > +#define V4L2_CID_AUDIO_LIMITER_ENABLED             
> > (V4L2_CID_FMTX_CLASS_BASE + 6)
> > +#define V4L2_CID_AUDIO_LIMITER_RELEASE_TIME        
> > (V4L2_CID_FMTX_CLASS_BASE + 7)
> > +#define V4L2_CID_AUDIO_LIMITER_DEVIATION   (V4L2_CID_FMTX_CLASS_BASE + 8)
> > +
> > +#define V4L2_CID_AUDIO_COMPRESSION_ENABLED (V4L2_CID_FMTX_CLASS_BASE + 9)
> > +#define V4L2_CID_AUDIO_COMPRESSION_GAIN            
> > (V4L2_CID_FMTX_CLASS_BASE + 10)
> > +#define V4L2_CID_AUDIO_COMPRESSION_THRESHOLD       
> > (V4L2_CID_FMTX_CLASS_BASE + 11)
> > +#define V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME     
> > (V4L2_CID_FMTX_CLASS_BASE + 12)
> > +#define V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME    
> > (V4L2_CID_FMTX_CLASS_BASE + 13)
> > +
> > +#define V4L2_CID_PILOT_TONE_ENABLED                
> > (V4L2_CID_FMTX_CLASS_BASE + 14)
> > +#define V4L2_CID_PILOT_TONE_DEVIATION              
> > (V4L2_CID_FMTX_CLASS_BASE + 15)
> > +#define V4L2_CID_PILOT_TONE_FREQUENCY              
> > (V4L2_CID_FMTX_CLASS_BASE + 16)
> > +
> > +#define V4L2_CID_REGION                            
> > (V4L2_CID_FMTX_CLASS_BASE + 17)
> > +enum v4l2_fmtx_region {
> > +   V4L2_FMTX_REGION_USA                    = 0,
> > +   V4L2_FMTX_REGION_AUSTRALIA              = 1,
> > +   V4L2_FMTX_REGION_EUROPE                 = 2,
> > +   V4L2_FMTX_REGION_JAPAN                  = 3,
> > +   V4L2_FMTX_REGION_JAPAN_WIDE_BAND        = 4,
> > +};
> > +#define V4L2_CID_REGION_BOTTOM_FREQUENCY   (V4L2_CID_FMTX_CLASS_BASE + 18)
> > +#define V4L2_CID_REGION_TOP_FREQUENCY              
> > (V4L2_CID_FMTX_CLASS_BASE + 19)
> > +#define V4L2_CID_REGION_PREEMPHASIS                
> > (V4L2_CID_FMTX_CLASS_BASE + 20)
> > +enum v4l2_fmtx_preemphasis {
> > +   V4L2_FMTX_PREEMPHASIS_75_uS             = 0,
> > +   V4L2_FMTX_PREEMPHASIS_50_uS             = 1,
> > +   V4L2_FMTX_PREEMPHASIS_DISABLED          = 2,
> > +};
> > +#define V4L2_CID_REGION_CHANNEL_SPACING            
> > (V4L2_CID_FMTX_CLASS_BASE + 21)
> > +#define V4L2_CID_TUNE_POWER_LEVEL          (V4L2_CID_FMTX_CLASS_BASE + 22)
> > +#define V4L2_CID_TUNE_ANTENNA_CAPACITOR            
> > (V4L2_CID_FMTX_CLASS_BASE + 23)
> > +
> >  /*
> >   * T U N I N G
> >   */
> 
> 
> 
> 
> Cheers,
> Mauro

-- 
Eduardo Valentin
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to