summaryrefslogtreecommitdiff
path: root/src/plugins/winrt
AgeCommit message (Collapse)AuthorFilesLines
2015-08-19Make QWinRTImageEncoderControl a Q_OBJECT.Friedemann Kleint1-0/+1
Fix lupdate warning: qtmultimedia/src/plugins/winrt/qwinrtimageencodercontrol.cpp:60: Class 'QWinRTImageEncoderControl' lacks Q_OBJECT macro when parsing the tr() in QWinRTImageEncoderControl::imageCodecDescription(). Change-Id: I004c05c8cea620e30bff7a2b35b83eed01b7ed4c Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-08-18winrt: Fix aspect ratio deviation between preview and encoding streamsSamuel Nevala2-70/+95
The source texture size from camera was wrong due to a missing IMediaDeviceController::SetMediaStreamPropertiesAsync call for the preview media type. Therefore Viewfinder and StillImage capture modes behave tha same from QCamera point of view. By default, the camera takes the lowest capture resolution and the lowest preview resolution with a matching aspect ratio. If the capture resolution is set, the preview resolution is set to the lowest possible resolution with a matching aspect ratio. Until viewfinder settings are implemented for WinRT, there is no way for user to change the viewfinder resolution. Change-Id: I4b76ceb46bd4c366561f5206d913b97c0d0df211 Task-Id: QTBUG-47465 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-08-10winrt: Add camera video probe controlsPeng Wu7-13/+271
[ChangLog][multimedia][winrt] The WinRT backend now supports QVideoProbes on camera objects. Task-number: QTBUG-46228 Change-Id: I7850c5ec6f61e5824064d4be8afc8a0b55d05806 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-08-10winrt: Add camera focus and focus lock controlsPeng Wu10-27/+1003
[ChangLog][multimedia][winrt] The winrt backend now supports camera focus and focus lock for Windows Phone. Task-Id: QTBUG-46120 Change-Id: Idb222798284d887a6e90a4986c69274e0ef765f5 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-07-28winrt: Fix crash during certain video operationsPeng Wu1-27/+10
The abstract video buffer pointer was being reused and (improperly) deleted when its reference count went to zero. As QVideoFrame utilizes an explicitly shared pointer which also tracks the video buffer, simply reuse the QVideoFrame instance instead. Task-number: QTBUG-47373 Change-Id: Idadae205cb520a0a1d752aa20256c0567b3be699 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-06-26Merge remote-tracking branch 'origin/5.5.0' into 5.5Liang Qi13-13/+40
Change-Id: I5a5b387b93a4b9dbaa9710e78fd7bf1ca09aa3b3
2015-06-23winrt: Implement QImageEncoderControl for cameraPeng Wu7-15/+260
Implement QImageEncoderControl for camera still image capture. It provides the functions to set camera capture resolution and get supported resolutions list. Task-number: QTBUG-46456 Change-Id: Ideb1aa02d420be3a30d588bebf31714fa4fa6415 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-06-04WinRT: fix namespaced buildJoerg Bornemann13-13/+39
Change-Id: I06b18e2a1318bda826befde52ee1fd874e25dd47 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-06-03winrt: fix camera preview on Lumia 530Peng Wu1-0/+1
Lumia 530 has the same QTBUG-44838 device bug that gives black frames when blitting to the target texture for image preview. Add it to workaround blacklist. Task-number: QTBUG-45920 Change-Id: Ia411793b90e487fa57b943ed7f01e370bfb84a1f Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-05-21Updated WinRT license headers to use LGPLv3 instead of LGPLv21Jani Heikkinen22-220/+286
From 5.5.0 -> WinRT port is licensed with LGPLv3, see http://blog.qt.io/blog/2015/04/29/windows-10-support-in-qt/ Change-Id: I86e43ba051e3bc1dfb3eb9e1d442a9a12e9efdb7 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-04-23winrt: fix camera sample queue thread safetyPeng Wu1-5/+18
Replace sample buffer QVector with C array to avoid reallocations. The resource needs to be protected, so use atomic indexes to prevent writing into the same array element that is being read. Task-number: QTBUG-45667 Change-Id: Ifd30dd128765ea4794fe8614f25ef596bba891ee Reviewed-by: Andrew Knight <qt@panimo.net> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-04-16winrt: fix camera preview on Lumia 630Peng Wu1-1/+41
Certain devices give black frames when blitting to the target texture for image preview. However, a workaround has been found that simply mapping the buffer forces the frames to be rendered properly. As this degrades performance on devices with hardware buffers, a blacklist is introduced to specify which devices require this workaround. Task-number: QTBUG-44838 Change-Id: I137a1dc4e5126e7cf9ee00cb2d7e7722bf917efa Reviewed-by: Andrew Knight <qt@panimo.net>
2015-03-17Fix WinRT Audio elements cannot play Qt resouce audio filesPeng Wu1-1/+1
URL argument of Windows media API SetSourceFromByteStream can not be empty. Initial proper value for playing audio stream case. Task-number: QTBUG-42263 Change-Id: If0bb44b60d517228bfe8b6cb30afeeb4a8ac62d3 Reviewed-by: Andrew Knight <qt@panimo.net> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
2015-02-12Update copyright headersAntti Kokko22-488/+312
Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I1c6faa4f59f8eca54f01ef20941fa60161dd7872 Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
2014-12-11winrt: Add missing QAbstractVideoSurface::stop() call.Andrew Knight1-2/+4
This was preventing the surface from restarting with a different format. Change-Id: I1f86ddb1b16618f167183c7e2fcb32658df578f3 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2014-12-11winrt: Fix encoding propertiesAndrew Knight1-4/+17
These should match the capture mode. Additionally, there was a semantic error preventing the encoding properties from being properly selected. This fixes a bug in which the viewfinder was receiving frames too large for display as an OpenGL texture. Task-number: QTBUG-41065 Change-Id: Ia82c8f44bba1692a219edc5f9d78fc76c3d8a4ba Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2014-12-11winrt: Fix camera auto rotationAndrew Knight4-0/+26
There is no Windows Runtime API to find the camera sensor rotation, so assume that phones always have a camera mounting of 270 degrees. Tablet and webcams remain mounted at the default (0 degrees). As the frame is not flipped automatically by the system, the scan line direction is set to BottomToTop for front-facing cameras to achieve compatibility with other platforms. Task-number: QTBUG-41066 Change-Id: Icf17ecd4aca9fa9d5b24d94e5b21b63ee6f21f28 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
2014-08-30winrt: Add camera serviceAndrew Knight16-4/+2375
This adds a basic camera service with viewfinder (video renderer based), still image capture, and device selection support. Runtime apps must set the "webcam" and "microphone" device capabilities in order to access the hardware. This can be done by adding the following to the .pro file: WINRT_MANIFEST.capabilites_device += webcam microphone [ChangeLog] Enabled basic camera support in the winrt backend. Change-Id: If4f963ef645d93c757ae23aec9a9c8aae122324f Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2014-08-25winrt: Add media playback serviceAndrew Knight11-1/+1917
This introduces a MediaPlayer service based on the MFEngineEx API. Only scene graph video rendering is supported at this time. The video renderer control is abstracted in order to provide a base for future video nodes which do not source their content from the MF engine. [ChangeLog] Media player support was added to the winrt backend. Change-Id: I8155a1030466ea352fad0a87d1ae97a88983760c Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2014-08-25Introducing Windows Runtime backendAndrew Knight4-0/+144
This lays the foundation for using supported APIs in Media Foundation for the Windows Runtime family of devies. Due to the narrowing of supported MF classes, as well as classes that are only available on Windows 8 and newer, this backend is built as a new plugin rather than a modification to the existing wmf plugin. [ChangeLog] Added a new backend plugin, winrt, to support multimedia within Windows Runtime OSes. Change-Id: If64ac417127b7400baa5e56fe02b65f909a4dece Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>