Spec-Zone.ru › Qt 5.15

Тип QML MediaPlayer

Добавляет воспроизведение медиа в сцену. Подробнее...

Заявление об импорте: import QtMultimedia 5.15
  • Список всех членов, включая унаследованные

Свойства

  • audioRole : перечисление
  • autoLoad : bool
  • autoPlay : bool
  • availability : перечисление
  • bufferProgress : real
  • customAudioRole : строка
  • duration : int
  • error : перечисление
  • errorString : строка
  • hasAudio : bool
  • hasVideo : bool
  • loops : int
  • mediaObject : значение
  • metaData
    • metaData.albumArtist : значение
    • metaData.albumTitle : значение
    • metaData.audioBitRate : значение
    • metaData.audioCodec : значение
    • metaData.author : значение
    • metaData.averageLevel : значение
    • metaData.category : значение
    • metaData.channelCount : значение
    • metaData.chapterNumber : значение
    • metaData.comment : значение
    • metaData.composer : значение
    • metaData.conductor : значение
    • metaData.contributingArtist : значение
    • metaData.copyright : значение
    • metaData.coverArtUrlLarge : значение
    • metaData.coverArtUrlSmall : значение
    • metaData.date : значение
    • metaData.description : значение
    • metaData.director : значение
    • metaData.genre : значение
    • metaData.keywords : значение
    • metaData.language : значение
    • metaData.leadPerformer : значение
    • metaData.lyrics : значение
    • metaData.mediaType : значение
    • metaData.mood : значение
    • metaData.parentalRating : значение
    • metaData.peakValue : значение
    • metaData.pixelAspectRatio : значение
    • metaData.posterUrl : значение
    • metaData.publisher : значение
    • metaData.ratingOrganization : значение
    • metaData.resolution : значение
    • metaData.sampleRate : значение
    • metaData.size : значение
    • metaData.subTitle : значение
    • metaData.title : значение
    • metaData.trackCount : значение
    • metaData.trackNumber : значение
    • metaData.userRating : значение
    • metaData.videoBitRate : значение
    • metaData.videoCodec : значение
    • metaData.videoFrameRate : значение
    • metaData.writer : значение
    • metaData.year : значение
  • muted : bool
  • notifyInterval : int
  • playbackRate : real
  • playbackState : перечисление
  • playlist : Playlist
  • position : int
  • seekable : bool
  • source : url
  • status : перечисление
  • videoOutput : url
  • volume : real

Сигналы

  • error(error, errorString)
  • paused()
  • playbackStateChanged()
  • playing()
  • stopped()

Методы

  • pause()
  • play()
  • seek(offset)
  • stop()
  • list<int> supportedAudioRoles()

Подробное описание

Text {
    text: "Click Me!";
    font.pointSize: 24;
    width: 150; height: 50;

    MediaPlayer {
        id: playMusic
        source: "music.wav"
    }
    MouseArea {
        id: playArea
        anchors.fill: parent
        onPressed:  { playMusic.play() }
    }
}

Вы можете использовать MediaPlayer самостоятельно для воспроизведения аудиоконтента (например, Audio), или вы можете использовать его в сочетании с VideoOutput для отображения видео.

Item {
    MediaPlayer {
        id: mediaplayer
        source: "groovy_video.mp4"
    }

    VideoOutput {
        anchors.fill: parent
        source: mediaplayer
    }

    MouseArea {
        id: playArea
        anchors.fill: parent
        onPressed: mediaplayer.play();
    }
}

См. такжеVideoOutput.

Документация свойств

audioRole : перечисление

Это свойство содержит роль аудиопотока. Его можно задать, чтобы указать тип воспроизводимого аудио, что позволит системе принимать соответствующие решения, когда речь идет об уровне громкости, маршрутизации или пост-обработке.

Роль аудио должна быть установлена перед установкой свойства source.

Поддерживаемые значения можно получить с помощью supportedAudioRoles().

Значение может быть одним из:

  • UnknownRole - роль неизвестна или не определена.
  • MusicRole - музыка.
  • VideoRole - саундтрек из фильма или видео.
  • VoiceCommunicationRole - голосовая связь, например, телефонная связь.
  • AlarmRole - сигнал тревоги.
  • NotificationRole - уведомление, например, входящее электронное письмо или запрос в чат.
  • RingtoneRole - мелодия звонка.
  • AccessibilityRole - для обеспечения доступности, например, с помощью экранного диктора.
  • SonificationRole - сонификация, например, звуки пользовательского интерфейса.
  • GameRole - звуки игры.
  • CustomRole - роль задаётся свойством customAudioRole.

customAudioRole очищается, когда это свойство устанавливается на значение, отличное от CustomRole.

Это свойство было добавлено в Qt 5.6.

autoLoad : bool

Это свойство указывает, должно ли загрузка медиа начинаться немедленно.

По умолчанию значение true, если значение false, медиа не будет загружено до начала воспроизведения.

autoPlay : bool

Это свойство управляет тем, будет ли медиа воспроизводиться при запуске.

По умолчанию false. Если установлено значение true, значение autoLoad будет перезаписано на true.

availability : enumeration

Возвращает состояние доступности медиаплеера.

Это может быть одно из следующих значений:

Значение Описание
Available Медиаплеер доступен для использования.
Busy Медиаплеер обычно доступен, но какой-то другой процесс использует оборудование, необходимое для воспроизведения медиа.
Unavailable Нет поддерживаемых средств воспроизведения медиа.
ResourceMissing Отсутствует один или несколько ресурсов, поэтому медиаплеер не может быть использован. Возможно, позднее будет возможно повторить попытку.

bufferProgress : real

Это свойство содержит величину заполненности буфера данных, от 0.0 (пустой) до 1.0 (полный).

Воспроизведение может начаться или возобновиться только после полного заполнения буфера, в этом случае статус MediaPlayer.Buffered или MediaPlayer.Buffering. Значение ниже 1.0 означает, что статус MediaPlayer.Stalled.

См. также status.

customAudioRole : string

Это свойство содержит роль аудиопотока, когда бэкенд поддерживает роли аудио, неизвестные Qt. Его можно установить для указания типа воспроизводимого аудио, позволяя системе принимать соответствующие решения в отношении громкости, маршрутизации или пост-обработки.

Роль аудио необходимо установить до установки свойства source.

audioRole устанавливается в CustomRole, когда устанавливается это свойство.

Это свойство было добавлено в Qt 5.11.

duration : int

Это свойство содержит продолжительность медиа в миллисекундах.

Если медиа не имеет фиксированной продолжительности (например, прямой эфир), это значение будет 0.

error : enumeration

Это свойство содержит состояние ошибки аудио. Оно может быть одним из следующих:

Значение Описание
NoError В настоящее время ошибок нет.
ResourceError Аудио не может быть воспроизведено из-за проблемы с выделением ресурсов.
FormatError Формат аудио не поддерживается.
NetworkError Аудио не может быть воспроизведено из-за проблем с сетью.
AccessDenied Аудио не может быть воспроизведено из-за недостаточных разрешений.
ServiceMissing Аудио не может быть воспроизведено, потому что служба медиа не могла быть создана.

errorString : string

Это свойство содержит строку, более подробно описывающую текущее состояние ошибки.

hasAudio : bool

Это свойство содержит значение, указывающее, содержит ли медиа аудио.

hasVideo : bool

Это свойство содержит значение, указывающее, содержит ли медиа видео.

loops : int

Это свойство содержит количество раз, которое медиа будет воспроизведено. Значение 0 или 1 означает, что медиа будет воспроизведено только один раз; установить значение MediaPlayer.Infinite для включения бесконечного циклического воспроизведения.

Значение можно изменить во время воспроизведения медиа, в этом случае оставшиеся циклы будут обновлены до нового значения.

Значение по умолчанию 1.

mediaObject : variant

Это свойство содержит объект нативного медиа.

Его можно использовать для получения указателя на объект QMediaPlayer для интеграции с кодом C++.

QObject *qmlMediaPlayer; // The QML MediaPlayer object
QMediaPlayer *player = qvariant_cast<QMediaPlayer *>(qmlMediaPlayer->property("mediaObject"));

Примечание: Это свойство недоступно из QML.

metaData.albumArtist : variant

Эти свойства содержат метаданные текущего медиа.

  • metaData.title - заголовок медиа.
  • metaData.subTitle - подзаголовок медиа.
  • metaData.author - автор медиа.
  • metaData.comment - комментарий пользователя о медиа.
  • metaData.description - описание медиа.
  • metaData.category - категория медиа.
  • metaData.genre - жанр медиа.
  • metaData.year - год выпуска медиа.
  • metaData.date - дата медиа.
  • metaData.userRating - рейтинг пользователя медиа в диапазоне от 0 до 100.
  • metaData.keywords - список ключевых слов, описывающих медиа.
  • metaData.language - язык медиа в виде кода ISO 639-2.
  • metaData.publisher - издатель медиа.
  • metaData.copyright - авторское право медиа.
  • metaData.parentalRating - родительский рейтинг медиа.
  • metaData.ratingOrganization - название организации, ответственной за родительский рейтинг медиа.
  • metaData.size - размер медиа в байтах.
  • metaData.mediaType - тип медиа.
  • metaData.audioBitRate - битрейт аудиопотока медиа в битах в секунду.
  • metaData.audioCodec - кодирование аудиопотока медиа.
  • metaData.averageLevel - средний уровень громкости медиа.
  • metaData.channelCount - количество каналов в аудиопотоке медиа.
  • metaData.peakValue - пиковая громкость аудиопотока медиа.
  • metaData.sampleRate - частота дискретизации аудиопотока медиа в герцах.
  • metaData.albumTitle - название альбома, к которому относится медиа.
  • metaData.albumArtist - имя основного исполнителя альбома, к которому относится медиа.
  • metaData.contributingArtist - имена артистов, участвующих в медиа.
  • metaData.composer - композитор медиа.
  • metaData.conductor - дирижёр медиа.
  • metaData.lyrics - текст песни к медиа.
  • metaData.mood - настроение медиа.
  • metaData.trackNumber - номер трека медиа.
  • metaData.trackCount - количество треков в альбоме, содержащем медиа.
  • metaData.coverArtUrlSmall - URL изображения обложки небольшого размера.
  • metaData.coverArtUrlLarge - URL изображения обложки большого размера.
  • metaData.resolution - размер изображения или видео.
  • metaData.pixelAspectRatio - соотношение сторон пикселей изображения или видео.
  • metaData.videoFrameRate - частота кадров видеопотока медиа.
  • metaData.videoBitRate - битрейт видеопотока медиа в битах в секунду.
  • metaData.videoCodec - кодирование видеопотока медиа.
  • metaData.posterUrl - URL постера.
  • metaData.chapterNumber - номер главы медиа.
  • metaData.director - режиссёр медиа.
  • metaData.leadPerformer - главный исполнитель в медиа.
  • metaData.writer - автор медиа.

См. также QMediaMetaData.

muted : bool

Это свойство содержит значение, указывающее, заглушен ли аудиовыход.

По умолчанию false.

notifyInterval : int

Интервал, с которым будут обновляться оповещаемые свойства.

Оповещаемые свойства - position и bufferProgress.

Интервал выражен в миллисекундах, значение по умолчанию 1000.

Это свойство было добавлено в Qt 5.9.

playbackRate : real

Это свойство содержит скорость воспроизведения аудио как кратное нормальной скорости.

По умолчанию 1.0.

playbackState : enumeration

Это свойство содержит состояние воспроизведения медиа. Оно может быть одним из:

  • PlayingState - воспроизведение медиаданных в данный момент.
  • PausedState - воспроизведение медиаданных приостановлено.
  • StoppedState - воспроизведение медиаданных еще не начато.

playlist : Список воспроизведения

Это свойство содержит список воспроизведения, используемый медиаплеером.

Установка свойства списка воспроизведения сбрасывает свойство source на пустую строку.

Это свойство было добавлено в Qt 5.6.

position : int

Это свойство содержит текущую позицию воспроизведения в миллисекундах.

Для изменения этой позиции используйте метод seek().

См. также seek().

seekable : bool

Это свойство указывает, можно ли изменить позицию аудио.

Если истинно, вызов метода seek() приведет к переходу воспроизведения на новую позицию.

source : url

Это свойство содержит URL-адрес источника медиаданных.

Установка свойства source очищает текущий список воспроизведения, если таковой есть.

Начиная с Qt 5.12.2, схема url gst-pipeline предоставляет пользовательские конвейеры для бэкэнда GStreamer.

Если конвейер содержит элемент qtvideosink, текущий VideoOutput будет использоваться для рендеринга видео.

Item {
    MediaPlayer {
        id: mediaplayer
        source: "gst-pipeline: videotestsrc ! qtvideosink"
    }

    VideoOutput {
        anchors.fill: parent
        source: mediaplayer
    }

    MouseArea {
        id: playArea
        anchors.fill: parent
        onPressed: mediaplayer.play();
    }
}

См. также QMediaPlayer::setMedia().

status : перечисление

Это свойство содержит состояние загрузки медиаданных. Оно может быть одним из:

  • NoMedia - медиаданные не заданы.
  • Loading - медиаданные загружаются в данный момент.
  • Loaded - медиаданные загружены.
  • Buffering - медиаданные буферизуются.
  • Stalled - воспроизведение прервано во время буферизации медиаданных.
  • Buffered - медиаданные буферизованы.
  • EndOfMedia - медиаданные воспроизведены до конца.
  • InvalidMedia - медиаданные не могут быть воспроизведены.
  • UnknownStatus - состояние медиаданных неизвестно.

videoOutput : url

Это свойство содержит целевой вывод видео. Принимает один или массив элементов QAbstractVideoSurface или VideoOutput.

Item {
    MediaPlayer {
        id: mediaplayer
        autoPlay: true
        source: "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"
        videoOutput: [v1, v2]
    }

    VideoOutput {
        id: v1
        anchors.fill: parent
    }

    Window {
        visible: true
        width: 480; height: 320
        VideoOutput {
            id: v2
            anchors.fill: parent
        }
    }
}

Это свойство было добавлено в Qt 5.15.

См. также QMediaPlayer::setVideoOutput().

volume : вещественное

Это свойство содержит громкость аудио медиаплеера.

Громкость масштабируется линейно от 0.0 (тишина) до 1.0 (полная громкость). Значения за пределами этого диапазона будут ограничены.

По умолчанию громкость равна 1.0.

Элементы управления громкостью на пользовательском интерфейсе обычно должны масштабироваться нелинейно. Например, использование логарифмической шкалы обеспечит линейные изменения в воспринимаемой громкости, что обычно ожидается от регулятора громкости. Более подробную информацию см. в методе QtMultimedia.convertVolume().

Документация по сигналам

error(ошибка, описание_ошибки)

Этот сигнал излучается при возникновении ошибки. Параметр описание_ошибки может содержать более подробную информацию об ошибке.

Соответствующий обработчик — onError.

Примечание: Соответствующий обработчик — onError.

См. также QMediaPlayer::Error.

paused()

Этот сигнал излучается при приостановке воспроизведения.

Соответствующий обработчик — onPaused.

Примечание: Соответствующий обработчик — onPaused.

playbackStateChanged()

Этот сигнал излучается при изменении свойства playbackState.

Соответствующий обработчик — onPlaybackStateChanged.

Примечание: Соответствующий обработчик — onPlaybackStateChanged.

playing()

Этот сигнал излучается при запуске или возобновлении воспроизведения.

Соответствующий обработчик — onPlaying.

Примечание: Соответствующий обработчик — onPlaying.

stopped()

Этот сигнал излучается при остановке воспроизведения.

Соответствующий обработчик — onStopped.

Примечание: Соответствующий обработчик — onStopped.

Документация по методам

pause()

Приостанавливает воспроизведение медиаданных.

Устанавливает свойство playbackState в PausedState.

play()

Запускает воспроизведение медиаданных.

Устанавливает свойство playbackState в PlayingState.

seek(смещение)

Если свойство seekable истинно, переводит текущую позицию воспроизведения на смещение.

Переход может быть асинхронным, поэтому свойство position может не обновиться немедленно.

См. также seekable и position.

stop()

Останавливает воспроизведение медиаданных.

Устанавливает свойство playbackState в StoppedState.

список<int> supportedAudioRoles()

Возвращает список поддерживаемых ролей аудио.

Если установка роли аудио не поддерживается, возвращается пустой список.

Этот метод был добавлен в Qt 5.6.

См. также audioRole.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtmultimedia-mediaplayer.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API