Commit Graph

359 Commits

Author SHA1 Message Date
Andy Nichols
e728a61eb6 AVFoundation: Emit error when media fails to load
This also makes sure that if you attempt to load an invalid media file
while another file is playing that the old session is stopped.

Task-number: QTBUG-30411

Change-Id: Ied4dbaffeac50465112c1e94e7c69d1600a6de51
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Reviewed-by: Dan Winkler <dantwinkler@gmail.com>
2013-04-17 01:47:07 +02:00
Andy Nichols
ae042feed3 AVFoundation: Remove stray semicolon after condition
Change-Id: I1c9a822ee54e7c189fe8806a11334cd23cd79a31
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-04-16 15:20:26 +02:00
Friedemann Kleint
3d848f05ad Fix tr()-Context in BlackBerry-plugin.
Do not use QObject::tr().

Change-Id: I0444a0abb319d3ae7044c269d8f280ebf63128e3
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-04-15 11:53:43 +02:00
El Mehdi Fekari
06fe7e6ad7 Fix for build break on QNX
Disable the camera part as it's using APIs not supported for the PlayBook

Change-Id: I4e06a74e8a9e5a00e19e443b8aa304cf2bce2216
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-04-12 19:11:45 +02:00
Sze Howe Koh
ab54cc46c6 Doc: Fix minor typos
Task-number: QTWEBSITE-514
Change-Id: Ie8f3689d18d15fd0e88e0ada4a745d9994d9c2ae
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-04-10 13:20:46 +02:00
Thiago Macieira
7a4ea30350 Fix warnings in qtmultimedia
/camerabinresourcepolicy.cpp:100:42: error: unused variable 'oldSet' [-Werror=unused-variable]
camerabincontrol.cpp:167:54: error: 'resourceSet' may be used uninitialized in this function [-Werror=maybe-uninitialized]
qaudiooutput_pulse.cpp:416:20: error: unused variable 'bytesWritten' [-Werror=unused-variable]

Change-Id: Idafd85b7985673f1f22d868b5f1b1e46a60ada4a
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-04-03 20:21:02 +02:00
BogDan Vatra
8960e47c24 Install the jar file
Change-Id: Ife46aba11920c5109d974f9e388e49320bf1a95a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-02 10:35:30 +02:00
Andy Shaw
b7b9c1c1f6 Add support for m3u8 playlist formats
m3u8 is just a unicode version of m3u so we can already handle these
without any extra coding other than adding it as a format

Change-Id: Icec0f1844bd2b0a0ea3c39b98f7b06cc402a3309
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-03-24 15:42:59 +01:00
Frederik Gladhorn
954bb7b960 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ifee8e5713e95d516081c4bc911e8f0bb6a169b13
2013-03-14 09:25:28 +01:00
Andy Nichols
04860b7a37 iOS: Fix build issues
This also prevents anything meaningful from working, but it is a
good starting point.

Change-Id: Idaf495ec29f611ee5342c79318bc3ace1d852747
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-03-11 13:09:17 +01:00
Tobias Koenig
6a83c20318 BlackBerry/QNX: Implement audio recording with QAudioInput
Change-Id: I62cad152a7b7fd92905744439de838306dc7a558
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-03-11 08:44:16 +01:00
Christian Strømme
909a09069f Android multimedia plug-in.
Adds MediaPlayer support for Android.

Change-Id: I4c7b1e19927b2e50b227f3a3b3f7ca2e99397618
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-03-06 00:23:50 +01:00
Yoann Lopes
e747d4c0cd GStreamer: fixed build when using GST_PHOTOGRAPHY.
CameraBinExposure was reimplementing the Qt4 version of
QCameraExposureControl instead of the refactored version of Qt5.
Zoom features were still handled in CameraBinFocus but these have been
moved to their own control in Qt5.

Task-number: QTBUG-29300

Change-Id: I0c71cac6011137bc5457f0d362da44c72039004a
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-02-28 16:50:37 +01:00
Tobias Koenig
68a38b151e BlackBerry: Mirror viewfinder for front camera
If the camera viewfinder shows the front camera
we mirror the image now to avoid that on rotation
of the device the image tilts to the wrong side.
The captured image however is not mirrored.

Change-Id: I6127b8ee6552553efe56ebec81991f0bd7597f47
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-26 13:32:18 +01:00
Kevin Ottens
fb6e49f33f BlackBerry/QNX: Add a new backend for Blackberry handling audio
For now it only implements the audio output part.
The plugin can be used on all QNX systems (including BB10) that
provide a libasound version < 1.0.10.

Change-Id: Ifcfd871558d5d2bfb9e8a5f5ef0cfe009c0a111d
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-25 11:15:53 +01:00
Tobias Koenig
1ddad9e0f4 Blackberry: Implement QVideoRendererControl for QMediaPlayer backend
If the application is not supposed to play back DRM secured media,
we grab the pixel data from the native mmrenderer window now
and make them available to the QAbstractVideoSurface of the
QVideoRendererControl. This allows the usage of all transformations
on video output inside QtQuick.

Change-Id: I73d05404b1ac9c5f74a234d9393b981a6fbcb317
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-22 16:17:44 +01:00
Tobias Koenig
31b454b8d6 Blackberry: Grab viewfinder frames from native window
Since the conversion from NV12 to RGB on the CPU does not scale
for larger photo/video resolutions, this patch uses a different
approach. It uses the low-level screen API to grab screenshots
of the native viewfinder window and provides them as QImage to
the QAbstractVideoSurface. Even for large resolutions this
is quite performant.

Change-Id: I59a7cbe6850b3b07575ea10026f3180cfd22e935
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-21 11:23:38 +01:00
Frederik Gladhorn
d396262bc9 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/multimedia/doc/qtmultimedia.qdocconf
	src/plugins/blackberry/mediaplayer/bbmetadata.cpp
	src/plugins/blackberry/mediaplayer/bbmetadata.h
	tests/auto/unit/qpaintervideosurface/tst_qpaintervideosurface.cpp

Change-Id: I447c297ea15a94d1d2feb0fb5f9edac8c5d4505a
2013-02-19 17:15:56 +01:00
Tobias Koenig
0ce2cb3ebe Blackberry: Add support for reading meta data in QMediaPlayer
Provide an implementation of QMetaDataReaderControl for the
QMediaPlayer.

Change-Id: I58c04e40ae3f07013450997410d0a379273c7bde
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-19 14:51:21 +01:00
Tobias Koenig
dbe69f38d0 Blackberry: Fix resolution selection for video recording
Fix the selection of the video viewfinder resolution depending
on the features provided by the camera. If the viewfinder is responsible
for encoding the video frames, the resolution of the viewfinder
and the video output must match. Otherwise only the ratio must match
and we can use a lower resolution for the viewfinder to improve
the performance of the NV12->RGB frame conversion.

Change-Id: I66ace84841a69be84f83bf9c5240cd23d96fbb76
Reviewed-by: Bernd Weimer <bweimer@rim.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-19 14:41:47 +01:00
Yoann Lopes
2db2cde0d8 WMF: removed unnecessary dynamic_cast.
Task-number: QTBUG-29722

Change-Id: Ia0e5c8fb90b231a8d9764524709d5848397c2afb
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-02-19 14:22:38 +01:00
Friedemann Kleint
4fc974fdef Fix MinGW-warnings about mismatched types.
Change-Id: I6170e3aa49f5b60ba68c1ef5bb2c6c7ec6688060
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:25:04 +01:00
Friedemann Kleint
033d5859d2 DSVideoWidgetControl: Fix constructor order.
Change-Id: I804427867a0f400750ef1df423c89fb4948bb0a3
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:25:01 +01:00
Friedemann Kleint
41dc5467bf Fix warnings about unused variables.
Change-Id: I147ff8624faa98396d6c48801c41a731fd02ac10
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:24:58 +01:00
Friedemann Kleint
fc62718e98 Fix MinGW64-warnings about unknown pragmas.
Change-Id: I1bd2178f5986846aede371193e98b55e4bde6414
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:24:53 +01:00
Friedemann Kleint
21552ae9aa DSVideoWidgetSurface: Pass on parent to base class.
Change-Id: If4f2819a0767234e5fffeafe1ab038cbf13bdd2a
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-02-14 13:24:50 +01:00
Bernd Weimer
7df6aa0f65 BlackBerry: Fixed playback of streamed audio
Before audio is played we always seek to position 0. Unfortunately, due
to a recent change in mmrenderer, playback stopped working for
"non-seekable" media. There is a check now, whether the media is
seekable or not.

Change-Id: Ieafd8d1364f7ce0194f4fa17d3efe894aa1b289b
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-12 11:57:42 +01:00
Tobias Koenig
60607544e1 Blackberry: Fix orientation of taken photos
Ensure that the taken photos are always upright.
As long as the QCamera API does not provide information about
the native orientation of the camera, we have to do the rotation
inside the BBCamera plugin.

Change-Id: Iebb04a5417274c2baee5e944dadf10fc706484d9
Reviewed-by: Bernd Weimer <bweimer@rim.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-02-12 08:50:00 +01:00
Tobias Koenig
d2b0a345ab Blackberry: Restart camera viewfinder after standby
Listen to the CAMERA_STATUS_POWERUP signal, which is sent
after standby, and trigger a restart of the viewfinder
in this case.

Change-Id: I426f23657844bb270ddfd0e4bfb35880040aa583
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-11 08:57:38 +01:00
Tobias Koenig
b19ec14a62 Blackberry: Ensure that camera viewfinder texture is upright
Make sure that the texture is upright when the device is upright.
When rotating the device, it's the applications responsibility to
rotate the texture of the viewfinder (e.g. through the
QDeclarativeVideoOutput::orientation property).

Change-Id: I6e453ce9bdde5197104533f844b1079b3c3db908
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-08 13:35:05 +01:00
Tobias Koenig
36655ccdfb Blackberry: Add camera support for BB10 platform
Reimplement all camera related controls as they are supported by the
BB10 camera API.

Change-Id: Ie7d2258be22c1c1821489bd7074b80cff4242afa
Reviewed-by: Bernd Weimer <bweimer@rim.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-02-06 18:17:18 +01:00
Thomas McGuire
7c1d490d1a Blackberry: Fix warning about unsigned integer comparison
Change-Id: I00592dd078e85497589156e156e7a665f935d325
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-01-31 17:32:39 +01:00
Tobias Koenig
a0707d50cd Blackberry: Refactor plugin directory structure
Move the mediaplayer related code in its own subdirectory.
This is a preparation for adding camera support in the future.

Change-Id: I880ff90e154165c2a3a31fd2b51e1dd224fea8fd
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-01-31 11:03:52 +01:00
Sze Howe Koh
28ee5b12ff Doc: Fix module name format
Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation

QtMultimedia -> Qt Multimedia

(Also, QtMultimediaKit has been merged into Qt Multimedia in Qt 5)

Change-Id: I3c23435d5eceb946ea320756b835da937726db24
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-01-29 01:28:50 +01:00
Sergio Ahumada
157f4f982b Remove QT_{BEGIN,END}_HEADER macro usage
The macro was made empty in qtbase/ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb
and is no longer necessary or used.

Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html
Change-Id: Id95d10f5d9c146d9eb496119af6a8b8501ffcb17
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-01-28 23:21:21 +01:00
Yoann Lopes
101c78983a WMF: enabled HW-accelerated video decoding for the QML video item.
It also applies to QGraphicsVideoItem when used on a GL viewport.
We now have a new video sink that is based on Microsoft's EVR sink, we just
replace the default Presenter with our own. Frames are rendered into D3D
surfaces using DXVA, then copied into a shared D3D/EGL surface and finally
bound to a GL texture to be used by the video surface.
The shared D3D/EGL surface is a feature provided by ANGLE and therefore Qt
must be compiled with ANGLE for this new video sink to be compiled and
used.

Change-Id: I0b7b9968eed5488f9ef1a2dcca5213bd0af232ab
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-01-23 22:34:07 +01:00
Yoann Lopes
02add40392 WMF: fixed unresolved topologies when using the custom MediaSink.
When using our custom MediaSink with RGB formats, Media Foundation fails
sometimes to resolve the topology. Inserting ourselves a ColorConverter
transform in the topology resolves the problem.

The ColorConverter transform cannot handle dynamic frame size changes
(this can happen with H264 videos for example) so we also need to insert a
Resizer transform to handle transparently frame size changes.

Change-Id: Id7f37a0af65f142fbe6d420ad7b2c1ac2156c21b
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-01-23 18:31:54 +01:00
Yoann Lopes
381bfe879c WMF: fixed scrubbing and changing rate to 0 or negative values.
Task-number: QTBUG-29147
Change-Id: I3e32e520d676d120d60bcd07d122006c1346eb0d
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-01-23 17:58:14 +01:00
Wouter Huysentruit
da55ada028 Fix: Bug fix in determination of scanline direction
YUV and other compressed frame formats are always TopToBottom. Only for uncompressed RGB formats the sign of their height is used to indicate the scanline direction.

Change-Id: I6474783583672861eeeb538b79d14ee3d6995f59
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@gmail.com>
2013-01-14 09:05:20 +01:00
Oswald Buddenhagen
4760e1fb02 make use of qtHaveModule()
Change-Id: I14da5455b7dd4681254e1652395df5f5c65746bd
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-01-11 15:15:05 +01:00
Sergio Ahumada
399500f87e Update copyright year in Digia's license headers
Change-Id: Ia8c1c38aba1544603fada8c414cc856f365fd15b
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-01-10 17:56:01 +01:00
Yoann Lopes
2d54a14ac1 WMF: added more metadata keys (on Windows 7 and later).
Change-Id: I01eebd0582d33eb3d581176bba2a84fa75db2463
Reviewed-by: Jason Barron <jason@cutehacks.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2013-01-08 19:56:43 +01:00
Morten Johan Sørvig
77494db8d2 Compile in 32-bit mode.
CGRect == NSRect only in 64-bit mode.

Don't add -framework QuickTime based on the host arch,
use QT_ARCH instead.

Change-Id: I829bc1bcfe37f70a07e8c55a5bc7dee90aaa981a
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-01-08 14:44:41 +01:00
Yoann Lopes
60eb27dfef WMF: release video controls before releasing the session
For the VideoRendererControl, also stop the video surface at the same
time.
This fixes a crash when changing video.

Change-Id: I49484f8b277c345dafb3e5947cf5d23df15546f3
Reviewed-by: Jason Barron <jason@cutehacks.com>
2013-01-07 09:34:43 +01:00
Yoann Lopes
6eb192f047 WMF: Fixed uninitialized member variable.
Change-Id: Iee60d6eee7bbf9dd7804216f4a49c4549f41ba5a
Reviewed-by: Jason Barron <jason@cutehacks.com>
2013-01-07 04:57:50 +01:00
Yoann Lopes
73200f5464 WMF: re-enabled video probes and made it more robust.
Fixed the way the custom MF Transform (getting the frames) works:
- Recreate it whenever we load a new media
- During media type negotiation between nodes, the MFT should support
  the same types as the video sink supports
- Allow input and output types to be changed as many times as needed,
  otherwise the topology cannot be resolved in some cases

Change-Id: I7ca77e1a3dee83643f1a97f2e6ada9c5c0e88309
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-01-07 04:57:20 +01:00
Mark Brand
1e0b3d8625 fix include statements
Names are case sensitive when cross bulding for mingw on unix.

Change-Id: I355b9388241c7c5fefb05b6f0c231efec4530c7e
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com>
2012-12-24 12:39:38 +01:00
Yoann Lopes
d8426bbf71 WMF: Fixed incorrect QMediaPlayer volume reporting.
Task-number: QTBUG-26621
Change-Id: Id70a68ad61fd7d68f4ee277f33a54bd9c00c05d0
Reviewed-by: Jason Barron <jason@cutehacks.com>
2012-12-21 12:03:16 +01:00
Oswald Buddenhagen
87d6d6d3c2 remove obsolete DEPENDPATH assignments
qmake now add CONFIG+=depend_includepath by default, making manual
DEPENDPATH setup unnecessary.

Change-Id: Iffd78b4c7cf8d048a822b75c481ac380b3d8d0f4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-16 22:08:01 +01:00
Oswald Buddenhagen
6fa2f5c4b1 remove some unnecessary CONFIG additions
qt is already added by spec_pre.prf, warn_on by default_pre.prf, and
no_private_qt_headers_warning by qt_build_config.prf.

Change-Id: Ia5cee420d577dd0ae0120cb2dd430d4ddd29ebcf
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-16 22:01:36 +01:00