7.17. ioctl VIDIOC_ENUM_FREQ_BANDS¶
7.17.1. 名称¶
VIDIOC_ENUM_FREQ_BANDS - 枚举支持的频段
7.17.2. 概要¶
-
VIDIOC_ENUM_FREQ_BANDS¶
int ioctl(int fd, VIDIOC_ENUM_FREQ_BANDS, struct v4l2_frequency_band *argp)
7.17.3. 参数¶
fd
由
open()
返回的文件描述符。argp
指向 struct
v4l2_frequency_band
的指针。
7.17.4. 描述¶
枚举调谐器或调制器支持的频段。为此,应用程序初始化 struct v4l2_frequency_band
的 tuner
、type
和 index
字段,并将 reserved
数组清零,然后使用指向该结构的指针调用 ioctl VIDIOC_ENUM_FREQ_BANDS ioctl。
如果设置了相应调谐器/调制器的 V4L2_TUNER_CAP_FREQ_BANDS
功能,则支持此 ioctl。
-
type v4l2_frequency_band¶
__u32 |
|
调谐器或调制器的索引号。这与 struct |
||
__u32 |
|
调谐器类型。这与 struct |
||
__u32 |
|
标识频段,由应用程序设置。 |
||
__u32 |
|
此频段的调谐器/调制器功能标志,请参阅 调谐器和调制器功能标志。 |
||
__u32 |
|
此频段的最低可调频率,以 62.5 kHz 为单位,如果设置了 |
||
__u32 |
|
此频段的最高可调频率,以 62.5 kHz 为单位,如果设置了 |
||
__u32 |
|
此频段支持的调制系统。请参阅 频段调制系统。 注意 目前,每个频段仅支持一个调制系统。如果可能存在多种调制系统,则需要做更多工作。如果您需要此类功能,请联系 linux-media 邮件列表 (https://linuxtv.org/lists.php)。 |
||
__u32 |
|
保留供未来扩展使用。 应用程序和驱动程序必须将数组设置为零。 |
|
0x02 |
残留边带调制,用于模拟电视。 |
|
0x04 |
调频,通常用于模拟无线电。 |
|
0x08 |
调幅,通常用于模拟无线电。 |
7.17.5. 返回值¶
成功时返回 0,错误时返回 -1,并适当设置 errno
变量。通用错误代码在 通用错误代码 章节中描述。
- EINVAL
tuner
或index
超出范围,或者type
字段错误。