public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@cam.ac.uk>
To: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Hans Verkuil <hverkuil@xs4all.nl>,
	linux-media@vger.kernel.org, Mike Isely <isely@isely.net>
Subject: Re: RFC: exposing controls in sysfs
Date: Tue, 06 Apr 2010 17:06:38 +0100	[thread overview]
Message-ID: <4BBB5C0E.8000906@cam.ac.uk> (raw)
In-Reply-To: <4BBB4617.7040102@redhat.com>

On 04/06/10 15:32, Mauro Carvalho Chehab wrote:
> Hans Verkuil wrote:
>>> Hans Verkuil wrote:
>>>> $ ls /sys/class/video4linux/video1/controls
>>>> balance                           mpeg_insert_navigation_packets
>>>> mpeg_video_aspect
>>>> brightness                        mpeg_median_chroma_filter_maximum
>>>> mpeg_video_b_frames
>>>> chroma_agc                        mpeg_median_chroma_filter_minimum
>>>> mpeg_video_bitrate
>>>> chroma_gain                       mpeg_median_filter_type
>>>> mpeg_video_bitrate_mode
>>>> contrast                          mpeg_median_luma_filter_maximum
>>>> mpeg_video_encoding
>>>> hue                               mpeg_median_luma_filter_minimum
>>>> mpeg_video_gop_closure
>>>> mpeg_audio_crc                    mpeg_spatial_chroma_filter_type
>>>> mpeg_video_gop_size
>>>> mpeg_audio_emphasis               mpeg_spatial_filter
>>>> mpeg_video_mute
>>>> mpeg_audio_encoding               mpeg_spatial_filter_mode
>>>> mpeg_video_mute_yuv
>>>> mpeg_audio_layer_ii_bitrate       mpeg_spatial_luma_filter_type
>>>> mpeg_video_peak_bitrate
>>>> mpeg_audio_mute                   mpeg_stream_type
>>>> mpeg_video_temporal_decimation
>>>> mpeg_audio_sampling_frequency     mpeg_stream_vbi_format
>>>> mute
>>>> mpeg_audio_stereo_mode            mpeg_temporal_filter
>>>> saturation
>>>> mpeg_audio_stereo_mode_extension  mpeg_temporal_filter_mode
>>>> volume
>>>
>>> It would be more intuitive if you group the classes with a few subdirs:
>>>
>>> /video/balance
>>> /video/brightness
>>> ...
>>> /mpeg_audio/crc
>>> /mpeg_audio/mute
>>> ...
>>> /audio/volume
>>> /audio/bass
>>> /audio/treble
>>
>> 1) We don't have that information.
>> 2) It would make a simple scheme suddenly a lot more complicated (see
>> Andy's comments)
>> 3) The main interface is always the application's GUI through ioctls, not
>> sysfs.
>> 4) Remember that ivtv has an unusually large number of controls. Most
>> drivers will just have the usual audio and video controls, perhaps 10 at
>> most.
> 
> Ok.
> 
>> I think we should just ditch this for the first implementation of the
>> control framework. It can always be added later, but once added it is
>> *much* harder to remove again. It's a nice proof-of-concept, though :-)
> 
> I like the concept, especially if we can get rid of other similar sysfs interfaces
> that got added on a few drivers (pvrusb2 and some non-gspca drivers have
> it, for sure). I think I saw some of the gspca patches also touching on sysfs.
> Having this unified into a common interface is a bonus.

Obviously it adds to the review burden, but perhaps we can state that the sysfs
interface is only an additional option (and personally I think I'd find it pretty
helpful for debugging if nothing else) and that all functionality there MUST be
available through the normal routes?  If any functionality only supported via
sysfs is seen as a bug, then we can point it out in reviews etc.

I agree with Mauro that it would be really handy to unify any interfaces that are
going to turn up there anyway.

Generally I'm personally in favor with the convenience of sysfs interfaces for quick
and dirty debugging purposes but perhaps this isn't the time to do it here.

  reply	other threads:[~2010-04-06 16:04 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-05 21:47 RFC: exposing controls in sysfs Hans Verkuil
2010-04-05 22:12 ` Hans Verkuil
2010-04-06  6:37   ` Hans Verkuil
2010-04-06 11:06     ` Andy Walls
2010-04-06 11:27       ` Laurent Pinchart
2010-04-06 11:44         ` Markus Rechberger
2010-04-06 15:08           ` Mike Isely
2010-04-06 15:16         ` Mike Isely
2010-04-06 22:39           ` Hans Verkuil
2010-04-07  2:10             ` hermann pitton
2010-04-07  6:56             ` Hans Verkuil
2010-04-08  0:52               ` Mike Isely
2010-04-06 13:16     ` Mauro Carvalho Chehab
2010-04-06 13:44       ` Hans Verkuil
2010-04-06 13:59         ` Devin Heitmueller
2010-04-06 15:05           ` Mike Isely
2010-04-06 14:32         ` Mauro Carvalho Chehab
2010-04-06 16:06           ` Jonathan Cameron [this message]
2010-04-06 16:36             ` Bjørn Forsman
2010-04-06 14:41   ` Mike Isely
2010-04-06 16:19     ` Jonathan Cameron
2010-04-06 22:47       ` Hans Verkuil
2010-04-06 14:33 ` Mike Isely
2010-04-07 18:50   ` Lars Hanisch
2010-04-07 22:15     ` hermann pitton
2010-04-08  0:47       ` Mike Isely
2010-04-08  0:58         ` Mike Isely
2010-04-08 17:57         ` Lars Hanisch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BBB5C0E.8000906@cam.ac.uk \
    --to=jic23@cam.ac.uk \
    --cc=hverkuil@xs4all.nl \
    --cc=isely@isely.net \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox