summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Don't map QMemoryVideoBuffer when there is no data insideVaL Doroshchuk2020-06-301-0/+12
| | | | | | | Pick-to: 5.15 Task-number: QTBUG-85202 Change-Id: If40af4af211af86311c0e04a8bdd0627dc34a939 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Add ; to Q_UNUSEDLars Schmertmann2020-06-282-2/+2
| | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: I5466906d759a7cc046d77a21e2c647a4b938d070 Reviewed-by: Val Doroshchuk <valentyn.doroshchuk@qt.io>
* Use QList instead of QVectorJarek Kobus2020-06-252-2/+2
| | | | | | Task-number: QTBUG-84469 Change-Id: Id8d07836a66e4d9223341483bfe0ed251ba2806c Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Remove Radio supportVaL Doroshchuk2020-06-1010-998/+2
| | | | | | Fixes: QTBUG-84592 Change-Id: I3b9e51689fd542c35cb57cf6c51a141aec3034df Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* Remove QT_DEPRECATED APIVaL Doroshchuk2020-06-041-25/+0
| | | | | | Change-Id: I2aa2334f7408164bf288d82b28e4e6aff9a2503b Fixes: QTBUG-84593 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Map QVideoFrame::Format_Y8=>QImage::Format_Grayscale8 in QVideoFrameVaL Doroshchuk2020-06-022-3/+3
| | | | | | | Pick-to: 5.15 Fixes: QTBUG-52455 Change-Id: I30582582935ae0a2c5094db995cba83b62adc767 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-05-295-25/+4
|\
| * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-05-295-25/+4
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/multimedia/audiodecoder/audiodecoder.cpp examples/multimedia/audiodecoder/main.cpp src/multimedia/playback/qmediaplayer.cpp Change-Id: I8cf1293023c09069745aa3aa6df49b1e0a8a1c22
| | * Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-04-141-3/+3
| | |\ | | | | | | | | | | | | Change-Id: I9687c59d15cd816969f362d72b19f279a1a2d04e
| | | * Fix clang warning about mixing || and |Thiago Macieira2020-04-091-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || was definitely wrong. Even | would be wrong. ../qmultimedia_common/../qmultimedia_common/mockcameraflashcontrol.h:62:22: warning: use of logical '||' with constant operand [-Wconstant-logical-operand] return (mode || (QCameraExposure::FlashAuto | QCameraExposure::FlashOff | QCameraExposure::FlashOn | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Change-Id: Ibdc95e9af7bd456a94ecfffd1603e74da919abbc Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
| | * | Merge remote-tracking branch 'origin/5.14' into 5.15v5.15.0-beta3Qt Forward Merge Bot2020-03-283-20/+1
| | |\| | | | | | | | | | | | | Change-Id: I3a719b4e4ba75da1784fb2bc5d6c014b1e6c54ac
| | | * tst_QMediaObject: Remove checking of expected elapsed timeVaL Doroshchuk2020-03-231-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is often failed on CI when no enough resources. Task-number: QTBUG-82582 Change-Id: Ibcddab73e6dfd24c3ab064ed8ea89843ebdc92ea Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit d5d42a24b5b9d2079d584defac70aef1a1feadef)
| | | * Blacklist tst_QAudioOutput tests if it is running in CIVaL Doroshchuk2020-03-232-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-82683 Fixes: QTBUG-82684 Change-Id: I82387bf4685f96c77a6658a9f8360e89335ba23c Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-03-182-6/+0
| | |\| | | | | | | | | | | | | Change-Id: Ia1bc95c071d29653a85e753964d15826ce3706f8
| | | * Skip all tst_QMediaPlayerBackend tests when there is no codec availableVaL Doroshchuk2020-03-132-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously tst_QMediaPlayerBackend::isWavSupported() always returned true unless boot2q env, which is not correct. Since if there is no codec installed in CI (but it is not boot2qt), also need to skip the tests. Change-Id: Ib58864bb3648a3d8f6c99354034f4ad85d5e4f98 Fixes: QTBUG-82673 Reviewed-by: Asmo Saarela <asmo.saarela@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | | * Increase margin of error in tst_QMediaObject::notifySignals()VaL Doroshchuk2020-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From 50% to 200%. Change-Id: Ie2ce859ceba513eede63ab6c55cd5637916a48be Fixes: QTBUG-82582 Reviewed-by: Asmo Saarela <asmo.saarela@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | | Remove paint test from tst_QDeclarativeVideoOutput::paintSurfaceVaL Doroshchuk2020-05-291-10/+0
|/ / / | | | | | | | | | | | | | | | | | | While RHI is not supported yet. Change-Id: I8f8864f4bb94ec5c073ce7f718142425d7b9132f Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* | | Remove use of bearer management and the related deprecated classesMårten Nordheim2020-04-064-117/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | It's now been deleted in QtBase. Task-number: QTBUG-76502 Change-Id: I4dcefa842d66b3444c097315cf7deff5399d6bd9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* | | tst_QMediaObject: Remove checking of expected elapsed timeVaL Doroshchuk2020-03-231-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | It is often failed on CI when no enough resources. Pick-to: 5.12 5.14 5.15 Task-number: QTBUG-82582 Change-Id: Ibcddab73e6dfd24c3ab064ed8ea89843ebdc92ea Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-03-186-70/+87
|\| | | | | | | | | | | Change-Id: I21c230900111b4881b40c451bffc3d5c2101111b
| * | tst_qabstractvideosurface.cpp: Fix misuse of QMap as QMultiMapFriedemann Kleint2020-03-131-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | Use a QMultiMap and its insert-function, fixing warnings like: In member function ‘QList<QVideoFrame::PixelFormat> tst_qabstractvideosurface.cpp:89:95: warning: ‘QMap<K, V>::iterator QMap<K, V>::insertMulti(const Key&, const T&) [with Key = QAbstractVideoBuffer::HandleType; T = QVideoFrame::PixelFormat]’ is deprecated: Use QMultiMap for maps storing multiple values with the same key. Change-Id: I5514b4341b7f9ab3ce0f50618420ebe34433200e Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
| * | QCamera: Deprecate 'error' signal, use 'errorOccurred' insteadAlexander Akulich2020-03-032-6/+6
| | | | | | | | | | | | | | | | | | | | | [ChangeLog][Deprecation Notice] QCamera::error() (the signal) is deprecated; superseded by errorOccurred() Change-Id: Ie3214689db7f46cf36ac696339ac42beb5b921d4 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Increase margin of error in tst_QMediaObject::notifySignals()VaL Doroshchuk2020-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From 50% to 200%. Change-Id: Ie2ce859ceba513eede63ab6c55cd5637916a48be Fixes: QTBUG-82582 Reviewed-by: Asmo Saarela <asmo.saarela@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit a7f0ba8c2d64dcb942069a6fd5ea17166b3b7a6d)
| * | AVF: Introduce adoption of AVAssetResourceLoaderDelegate protocolVal Doroshchuk2020-02-201-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AVAssetResourceLoaderDelegate allows to load custom resources. Implemented resourceLoader:shouldWaitForLoadingOfRequestedResource to read data from QIODevice. The device should be seekable, and already should have all data available. Since there is a need to know total size of the stream. So the media player will wait for QIODevice::readyRead before loading the resource. Also it requires to have url together with the stream: QMediaPlayer->setMedia(QUrl("does_not_matter.mp3"), buffer); Since the backend uses extension to determine type of the stream. Fixes: QTBUG-69101 Change-Id: I8ab0b69f668ccd67c42a8e5d5c1ad518d3306cce Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * | Remove usage of QGL* APIsVaL Doroshchuk2020-02-181-54/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | QOpenGL API should be used instead. Task-number: QTBUG-74409 Fixes: QTBUG-81902 Change-Id: I80d09cba79248451cf211eabd87651301ae18b63 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-282-1/+50
|\| | | | | | | | | | | Change-Id: I42bfc7b2a960281c350c2873db314a190f003f65
| * | Introduce MediaPlayer::videoOutput propertyVaL Doroshchuk2020-01-222-1/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This property holds the target video output, and allows to render video to multiple items. MediaPlayer { videoOutput: [videoOutput1, 1, "ignored", videoOutput2.videoSurface] } Incorrect inputs are ignored. The property also accepts single either QAbstractVideoSurface or QDeclarativeVideoOutput objects. Task-number: QTBUG-32939 Change-Id: I41fc557dcac60be6d70b3889036ff4ae75734cc0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-214-4/+117
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/multimedia/multimedia.cpp Change-Id: I5b395bce97f2d2edc45294db046929cb9d9cd7b9
| * | Expose video surfaces in rendering componentsVaL Doroshchuk2020-01-054-4/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Currently QVideoWidget, QGraphicsVideoItem and QML Video Output tightly depend on QMediaPlayer, QMediaService etc. Since QMediaService is deprecated and will be removed from Qt6, its usage must be removed from rendering components. * Also it is a part of a task to make all components independent, e.g. without dependencies to another components, like the media player, or video producer. These video consumer components should be reusable without QMediaPlayer too, which today is not possible, and should have responsibility for a single part of the functionality. * It is a part of a task to allow users to decide how to render video, using either video surface or native windows. Introducing QVideoWidget::videoSurface() QGraphicsVideoItem::videoSurface() QDeclarativeVideoOutput::videoSurface() that create a surface, if necessary, and returns the underlying video surface which provides a possibility to render video frames without knowledge of any services and controls. Can be used like: QMediaPlayer->setVideoOutput(QVideoWidget->videoSurface()); or QMediaPlayer->setVideoOutput(QGraphicsVideoItem->videoSurface()); This allows QMediaPlayer to get video frames from a backend, without using QVideoWidget/QGraphicsVideoItem, and to present these frames to provided surface. Moreover, now it is possible to render video frames without QMediaPlayer: QVideoSurfaceFormat format(img.size(), QVideoFrame::Format_ARGB32); videoWidget->videoSurface()->start(format); videoWidget->videoSurface()->present(img); [ChangeLog] Introduced videoSurface property to QVideoWidget, QGraphicsVideoItem and QDeclarativeVideoOutput. Task-number: QTBUG-80431 Change-Id: I49641750537160832e29c297279e72b8288e974c Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-12-312-0/+36028
|\| | | | | | | | | | | Change-Id: Iec9d51807507f5a45d5a9031f253db6182382e8b
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-12-302-0/+36028
| |\| | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I50c9bfe46654aa159f35bf18eea95e8a8d399d41
| | * Add binary compatibility files for qtmultimedia 5.14 branchMilla Pohjanheimo2019-12-172-0/+36028
| | | | | | | | | | | | | | | | | | | | | BC files built against 5.14.0 added. Change-Id: Ibf60167e1fcb47ad4ceda492c33f12c980f99a82 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-12-072-3/+2
|\| | | | | | | | | | | Change-Id: I7ff550a128358e710f9667edeeef6de08b821cb2
| * | DirectShow: Disable QVideoFrame::image() testVaL Doroshchuk2019-12-042-3/+3
| | | | | | | | | | | | | | | | | | Change-Id: I7afeb2d74e95f1e65335bda505d8762b68393ae4 Reviewed-by: Daniel Smith <Daniel.Smith@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devFriedemann Kleint2019-11-302-6/+6
|\| | | | | | | | | | | Change-Id: I840b63f6d6fc8ff974d256e26732bf54937256cc
| * | Disable tst_QMediaPlayerBackend for MSVC 2019VaL Doroshchuk2019-11-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since it is totally blacklisted for Windows long time ago, need to blacklist it as well for MSVC 2019, and enable it afterwards when fixed. Fixes: QTBUG-79288 Change-Id: I3f9af244b95da3fc58970c6676d3e74cc9ecfb8e Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 74b644b4af46418dc5b4654e9e501226edfe9e02)
| * | Avoid initializing QFlags with 0 or nullptrFriedemann Kleint2019-11-252-6/+6
| | | | | | | | | | | | | | | | | | | | | It is being deprecated. Change-Id: I26b871fe9b989972ab1d2c18de344dc9c9275e9f Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-11-123-2/+31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/multimedia/video/qvideosurfaces_p.h src/multimedia/video/video.pri tests/auto/unit/qvideoframe/tst_qvideoframe.cpp Change-Id: I74fe2dbdf4c3e7db78a2d9b43411266bb6b97819
| * | Introduce rendering to multiple surfacesVaL Doroshchuk2019-11-061-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QAbstractVideoSurface is used to retrieve and render video frames in particular pixel format. I.e. a backend takes one video surface which asks to provide video frames in one of the supported formats returned from QAbstractVideoSurface::supportedPixelFormats(). So currently there is one source of the video frames and only one video output possible. Introducing QMediaPlayer::setVideoOutput(const QVector<QAbstractVideoSurface *> &) This func takes a list of surfaces, that support at least one shared pixel format, and presents video frames to all of them at the same time. Several surfaces, which do not have any shared pixel formats, will fail to work. Task-number: QTBUG-32939 Change-Id: Ifbdaf692755353fbd5bf3ad74baba1820e3d0237 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| * | Introduce QVideoFrame::image()VaL Doroshchuk2019-10-313-3/+173
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Since QVideoFrame::pixelFormat's do not 100% match QImage::Format's, introducing converstion function. Returns an image based on current frame. Converts data if needed to supported QImage format. Change-Id: I3331578c01cf9c999a380efc4a83bf9eddb07901 (cherry picked from commit 93f966335e1ed8ed47b7e8b32452d43c2f8a7bb1) Reviewed-by: Daniel Smith <Daniel.Smith@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Remove deprecated QMediaResourceVaL Doroshchuk2019-11-084-765/+0
| | | | | | | | | | Change-Id: Ide1a5386f39b0f794591d2a5b8bc1a554d3a2053 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-302-23/+7
|\| | | | | | | Change-Id: I08764f113c0c37ff7355007c32f93ff47a48e7f1
| * Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-221-21/+4
| |\ | | | | | | | | | Change-Id: Ib880ad9150a59700878942fa6c3b711004bec4b0
| | * Fix tst_qcamerabackend.cpp to pass if capturing to JPEG is not supportedVal Doroshchuk2019-10-151-21/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DirectShow capture control supports only RGB32 to capture to buffer, which fails the test. Decided to fix the test to avoid checking against Jpeg format and just make sure that it returns proper QImage. Change-Id: Ibcd565d6157cf3543eb15d3e1e371df271fc358c Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | Disable tst_QMediaPlayerBackend for MSVC 2019VaL Doroshchuk2019-10-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since it is totally blacklisted for Windows long time ago, need to blacklist it as well for MSVC 2019, and enable it afterwards when fixed. Fixes: QTBUG-79288 Change-Id: I3f9af244b95da3fc58970c6676d3e74cc9ecfb8e Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | | Introduce QVideoFrame::image()VaL Doroshchuk2019-10-231-0/+169
|/ / | | | | | | | | | | | | | | | | | | | | Since QVideoFrame::pixelFormat's do not 100% match QImage::Format's, introducing converstion function. Returns an image based on current frame. Converts data if needed to supported QImage format. Change-Id: I3331578c01cf9c999a380efc4a83bf9eddb07901 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-081-8/+12
|\| | | | | | | | | | | | | Conflicts: src/multimedia/configure.json Change-Id: Ie887a5f4d718cb3e082b0e2ee996c6687af330cb
| * DirectShow: Fix tst_QMediaPlayerBackend::seekPauseSeekVal Doroshchuk2019-10-011-8/+12
| | | | | | | | | | | | | | | | | | | | | | Fixed tests about start times. Since DirectShow can provide frames with negative start time, also from the beginning, also pixels can vary, e.g. (rgb) 255:0:0 would be 230:19:19 after decoding. Task-number: QTBUG-46368 Change-Id: I025f7cf9238ddf9ba2a04f63e3e54b77f3cceafe Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-011-0/+4
|\| | | | | | | | | | | | | Conflicts: src/multimedia/video/qvideoframe.h Change-Id: I8458c4138be05f661d6528116cbc6b18298f0a91
| * DirectShow: Fix tst_QMediaPlayerBackend::surfaceTestVal Doroshchuk2019-09-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | YVU formats are likely not supported by the codecs and the pipeline will not be negotiated in this case. Fixes BFAIL : tst_QMediaPlayerBackend::surfaceTest(YVU formats) 'surface.m_totalFrames >= 25' returned FALSE. (Expected >= 25, got 0) Task-number: QTBUG-46368 Change-Id: I6bf1a5822481a018549fe58aaf5fe79c79ff8456 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>