Тип QML Radio
Доступ к радиофункциональности из приложения QML. Подробнее...
| Заявление об импорте: | import QtMultimedia 5.14 |
| Наследует: |
Свойства
- 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(frequency, строка 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(frequency, строка stationId)
Этот сигнал испускается, когда найдена новая радиостанция. Этот сигнал испускается только в том случае, если searchAllStations вызывается с SearchGetStationId.
frequency возвращается в Герцах, а stationId соответствует идентификатору станции в RadioData для этой радиостанции.
Соответствующий обработчик — onStationFound.
Документация по методам
cancelScan()
Отменить текущий поиск. Также отменяет поиск, начатый с searchAllStations.
scanDown()
Производит поиск в обратном направлении по диапазону частот текущей полосы.
scanUp()
Производит поиск в прямом направлении по диапазону частот текущей полосы.
searchAllStations(searchMode)
Начинает поиск по всему диапазону частот текущей полосы и сохраняет все найденные радиостанции. Параметр searchMode может принимать значения, описанные в таблице ниже.
| Значение | Описание |
|---|---|
| SearchFast | Сохраняет каждую радиостанцию для последующего извлечения и настройки |
| SearchGetStationId | Выполняет то же, что и SearchFast, но также передает идентификатор станции с помощью сигнала stationFound. |
Нижеприведенный фрагмент кода использует searchAllStations с SearchGetStationId для получения всех радиостанций в текущей полосе и сохранения их в списке. Идентификатор станции отображается пользователю, а при нажатии на станцию радио настраивается на эту станцию.
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.14/qml-qtmultimedia-radio.html