Тип QML Radio
Доступ к функциональности радио из приложения QML. Подробнее...
| Оператор импорта: | import QtMultimedia 5.8 |
| Наследует: |
Свойства
- antennaConnected : int
- availability : перечисление
- band : перечисление
- frequency : int
- frequencyStep : int
- maximumFrequency : int
- minimumFrequency : int
- muted : bool
- searching : bool
- signalStrength : int
- state : перечисление
- stereo : bool
- stereoMode : перечисление
- volume : int
Сигналы
- stationFound(int frequency, string stationId)
Методы
- cancelScan()
- scanDown()
- scanUp()
- searchAllStations(перечисление searchMode)
- start()
- stop()
- tuneDown()
- tuneUp()
Подробное описание
Rectangle {
width: 320
height: 480
Radio {
id: radio
band: Radio.FM
}
MouseArea {
x: 0; y: 0
height: parent.height
width: parent.width / 2
onClicked: radio.scanDown()
}
MouseArea {
x: parent.width / 2; y: 0
height: parent.height
width: parent.width / 2
onClicked: radio.scanUp()
}
} Вы можете использовать Radio для настройки радио и получения информации о сигнале. Вы также можете использовать Radio для получения информации о настройке, например, о поддерживаемых шагах частоты для настройки.
Соответствующий RadioData предоставляет информацию RDS о текущей радиостанции. Лучший способ доступа к RadioData для текущего Radio — использование свойства radioData.
См. также Обзор радио.
Документация по свойствам
antennaConnected : int
Это свойство имеет значение true, если подключена антенна. В противном случае будет false.
availability : перечисление
Возвращает состояние доступности радио.
Это может быть одно из следующих значений:
| Значение | Описание |
|---|---|
| Available | Радио доступно для использования |
| Busy | Радио обычно доступно для использования, но в данный момент занято. Это может произойти, когда какой-либо другой процесс нуждается в использовании аудиооборудования. |
| Unavailable | Радио недоступно для использования (возможно, нет радиооборудования) |
| ResourceMissing | Отсутствует один или несколько ресурсов, поэтому радио не может быть использовано. Возможно, позже можно будет попробовать снова. Это может произойти, если антенна не подключена — см. также свойство antennaConnected. |
band : перечисление
Это свойство содержит диапазон частот, используемый для радио, который может быть указан любым из значений в таблице ниже.
| Значение | Описание |
|---|---|
| AM | 520 до 1610 кГц, интервал каналов 9 или 10 кГц, расширенный 1610 до 1710 кГц |
| FM | 87,5 до 108,0 МГц, за исключением Японии 76-90 МГц |
| SW | 1,711 до 30,0 МГц, разделено на 15 диапазонов. Интервал каналов 5 кГц |
| LW | 148,5 до 283,5 кГц, интервал каналов 9 кГц (Европа, Африка, Азия) |
| FM2 | Диапазон не определен, используется, когда область поддерживает более одного диапазона FM |
frequency : int
Устанавливает частоту в герцах, на которую настроено радио. Частота должна быть в пределах диапазона частот для текущего диапазона, в противном случае она будет изменена, чтобы быть в пределах диапазона частот.
См. также maximumFrequency и minimumFrequency.
frequencyStep : int
Количество герц для каждого шага при ручной настройке радио. Значение для текущего band.
maximumFrequency : int
Максимальная частота для текущего band.
minimumFrequency : int
Минимальная частота для текущего band.
muted : bool
Это свойство отражает, заглушено ли радио или нет.
searching : bool
Это свойство имеет значение true, если радио в настоящее время ищет радиостанции, например, с помощью методов scanUp, scanDown и searchAllStations. После завершения поиска или при отмене с помощью cancelScan это свойство будет иметь значение false.
signalStrength : int
Сила текущего радиосигнала в процентах, где 0% — отсутствие сигнала, а 100% — очень хороший сигнал.
state : перечисление
Это свойство содержит текущее состояние радио.
| Значение | Описание |
|---|---|
| ActiveState | Радио запущено и активно |
| StoppedState | Радио остановлено |
stereo : bool
Это свойство содержит значение true, если радио принимает стереосигнал, и false в противном случае. Если stereoMode установлено в ForceMono, значение будет всегда false. Аналогично, оно всегда будет true, если stereoMode установлено в ForceStereo.
См. также stereoMode.
stereoMode : перечисление
Это свойство содержит режим стерео радио, который может быть установлен на любое из значений в таблице ниже.
| Значение | Описание |
|---|---|
| Auto | Использует стереорежим, соответствующий станции |
| ForceStereo | Принудительно воспроизводит станцию в стерео, конвертируя звуковой сигнал при необходимости |
| ForceMono | Принудительно воспроизводит станцию в моно, конвертируя звуковой сигнал при необходимости |
volume : int
Установите это свойство для управления громкостью радио. Допустимый диапазон громкости от 0 до 100.
Документация по сигналам
stationFound(int frequency, string stationId)
Этот сигнал испускается при обнаружении новой радиостанции. Этот сигнал испускается только в том случае, если searchAllStations вызывается с SearchGetStationId.
frequency возвращается в герцах, а stationId соответствует идентификатору станции в RadioData для этой радиостанции.
Соответствующий обработчик — onStationFound.
Документация по методам
cancelScan()
Отмена текущего сканирования. Также отменяет поиск, начатый с searchAllStations.
scanDown()
Поиск назад в диапазоне частот для текущего диапазона.
scanUp()
Поиск вперёд в диапазоне частот для текущего диапазона.
searchAllStations(перечисление searchMode)
Начать поиск по всему диапазону частот для текущей полосы и сохранить все найденные радиостанции. Режим поиска может быть одним из значений, описанных в таблице ниже.
| Значение | Описание |
|---|---|
| SearchFast | Сохраняет каждую радиостанцию для последующего извлечения и настройки |
| SearchGetStationId | Делает то же, что и SearchFast, но также передает идентификатор станции с сигналом stationFound. |
Нижеприведенный фрагмент кода использует searchAllStations с SearchGetStationId для получения всех радиостанций в текущей полосе и сохранения их в ListView. Идентификатор станции отображается пользователю, а при нажатии на станцию радио настраивается на эту станцию.
Item {
width: 640
height: 360
Radio {
id: radio
onStationFound: radioStations.append({"frequency": frequency, "stationId": stationId})
}
ListModel {
id: radioStations
}
ListView {
model: radioStations
delegate: Rectangle {
MouseArea {
anchors.fill: parent
onClicked: radio.frequency = frequency
}
Text {
anchors.fill: parent
text: stationId
}
}
}
Rectangle {
MouseArea {
anchors.fill: parent
onClicked: radio.searchAllStations(Radio.SearchGetStationId)
}
}
} start()
Запускает радио. Если радио доступно, как определено свойством availability, это приведет к тому, что свойство state станет ActiveState.
stop()
Останавливает радио. После вызова этого метода свойство state будет StoppedState.
tuneDown()
Уменьшает частоту на шаг частоты для текущей полосы. Если частота уже установлена на минимальную частоту, вызов этой функции не оказывает никакого эффекта.
См. также band, frequencyStep и minimumFrequency.
tuneUp()
Увеличивает частоту на шаг частоты для текущей полосы. Если частота уже установлена на максимальную частоту, вызов этой функции не оказывает никакого эффекта.
См. также band, frequencyStep и maximumFrequency.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtmultimedia-radio.html