| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| | |
Conflicts:
src/multimedia/audio/qaudioinput_win32_p.cpp
|
| |
| |
| |
| |
| |
| |
| | |
QAudioFormat::sampleRate() and QAudioFormat::channelCount() weren't
introduced until 4.7. Use frequency() and channels() instead.
Reviewed-by: Justin McPherson
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was causing a crash on windows because the buffer and period sizes
were worked out to 0 with an invalid sample size and dividing one by the
other is division by 0.
Task-number: QTMOBILITY-438
Reviewed-by: Justin McPherson
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As with playback mode, lack of support for CMMFDevSound::Pause() in
DevSound's recording mode causes problems on some devices.
Specifically, while QAudioInput works fine on the Nokia 5800, this
bug was observed on the Nokia N8. This fix means that suspending
and resuming audio input will work correctly on all devices.
Task-number: QTBUG-13506
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-13504
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When QAudioOutput::suspend() and QAudioOutput::resume() are called
repeatedly, with a short delay between each call, DevSound occasionally
raises a KErrOverflow error. The backend previously translated this
into QAudio::IOError, causing the object to transition into the
QAudio::Stopped state.
This error can be safely ignored, with playback resuming as soon as
more audio data is provided to DevSound. This patch therefore
suppresses the error.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Symbian backend holds buffers which are passed to it from DevSound,
exposing the memory of these buffers via the QIODevice interface.
When QAudioOutput::resume() is called, the backend re-starts data flow
by passing the buffer it holds back to DevSound. Previously, this
would not happen if the buffer was empty, potentially causing playback
to stall. This patch ensures that the buffer is always sent back to
DevSound, and data flow therefore always resumes.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If QAudioOutput::processedUSecs() is called very soon after
QAudioOutput::start(), the DevSound instance owned by the Symbian
backend may still be initializing. This patch causes the function to
return zero, rather than failing an assertion.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resuming recording causes buffers previously provided to the client
(via MDevSoundObserver::BufferToBeEmptied()) to be invalidated.
The buffers therefore must be discarded when recording is suspended.
Task-number: QTBUG-13058
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-13058
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| | |
ALSA can return a list of one empty item when no devices are available.
Task-number: QTBUG-12690
Reviewed-by: Andrew den Exter
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As with playback mode, lack of support for CMMFDevSound::Pause() in
DevSound's recording mode causes problems on some devices.
Specifically, while QAudioInput works fine on the Nokia 5800, this
bug was observed on the Nokia N8. This fix means that suspending
and resuming audio input will work correctly on all devices.
Task-number: QTBUG-13506
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-13504
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When QAudioOutput::suspend() and QAudioOutput::resume() are called
repeatedly, with a short delay between each call, DevSound occasionally
raises a KErrOverflow error. The backend previously translated this
into QAudio::IOError, causing the object to transition into the
QAudio::Stopped state.
This error can be safely ignored, with playback resuming as soon as
more audio data is provided to DevSound. This patch therefore
suppresses the error.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Symbian backend holds buffers which are passed to it from DevSound,
exposing the memory of these buffers via the QIODevice interface.
When QAudioOutput::resume() is called, the backend re-starts data flow
by passing the buffer it holds back to DevSound. Previously, this
would not happen if the buffer was empty, potentially causing playback
to stall. This patch ensures that the buffer is always sent back to
DevSound, and data flow therefore always resumes.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If QAudioOutput::processedUSecs() is called very soon after
QAudioOutput::start(), the DevSound instance owned by the Symbian
backend may still be initializing. This patch causes the function to
return zero, rather than failing an assertion.
Task-number: QTBUG-13059
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resuming recording causes buffers previously provided to the client
(via MDevSoundObserver::BufferToBeEmptied()) to be invalidated.
The buffers therefore must be discarded when recording is suspended.
Task-number: QTBUG-13058
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-13058
Reviewed-by: Derick Hawcroft
|
| |
| |
| |
| |
| |
| |
| | |
ALSA can return a list of one empty item when no devices are available.
Task-number: QTBUG-12690
Reviewed-by: Andrew den Exter
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
bin/syncqt
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
src/3rdparty/webkit/WebCore/bridge/qt/qt_instance.cpp
src/3rdparty/webkit/WebCore/bridge/qt/qt_runtime.h
src/3rdparty/webkit/WebCore/page/FrameView.cpp
src/3rdparty/webkit/WebCore/page/FrameView.h
src/3rdparty/webkit/WebCore/platform/ScrollView.cpp
src/3rdparty/webkit/WebCore/platform/ScrollView.h
src/corelib/plugin/quuid.cpp
src/gui/dialogs/qfontdialog.cpp
src/multimedia/audio/qaudiodevicefactory.cpp
src/opengl/qgl.cpp
src/openvg/qpaintengine_vg.cpp
tests/auto/qxmlquery/tst_qxmlquery.cpp
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-11900
Reviewed-by: Andrew den Exter
|
| |
| |
| |
| |
| |
| |
| | |
pointer increment
Task-number:QTBUG-11883
Reviewed-by:Andrew den Exter
|
| |
| |
| |
| |
| | |
Task-number:QTBUG-11755
Reviewed-by:Derick Hawcroft
|
| |
| |
| |
| | |
Reviewed-by:TrustMe
|
| |
| |
| |
| | |
Reviewed-by:TrustMe
|
| |
| |
| |
| |
| |
| | |
WAVE_FORMAT_EXTENSIBLE not in v6.0 ms SDK only in v6.1's
Reviewed-by:TrustMe
|
| |
| |
| |
| | |
Reviewed-by:Andrew den Exter
|
| |
| |
| |
| |
| | |
Task-number:QTBUG-11586
Reviewed-by:Derick Hawcroft
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
Task-number:QTBUG-11586
Reviewed-by:Andrew den Exter
|
|\ \ \
| | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/3rdparty/phonon/qt7/mediaobject.mm
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
src/plugins/phonon/mmf/mmf.pro
|
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-8878
Reviewed-by:Dmytro Poplavskiy
|
| | |
| | |
| | |
| | | |
Reviewed-by:Dmytro Poplavskiy
|
| |/
| |
| |
| | |
Reviewed-by:Dmytro Poplavskiy
|
|\ \
| |/
| |
| |
| |
| | |
Conflicts:
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-10009
Reviewed-by:Dmytro Poplavskiy
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
demos/spectrum/app/app.pro
src/gui/egl/qegl.cpp
tests/auto/qhttpnetworkconnection/qhttpnetworkconnection.pro
tests/auto/qmenu/tst_qmenu.cpp
|
| |
| |
| |
| |
| | |
Task-number:QTBUG-10760
Reviewed-by:Justin McPherson
|
| |
| |
| |
| |
| | |
Task-number:QTBUG-10759
Reviewed-by:Justin McPherson
|
| |\ |
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public:
Return correct formats supported lists from Symbian audio backend
|
| | | |
| | | |
| | | |
| | | | |
Reviewed-by:Gareth Stockwell
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
Docs stated that the bufferSize was a value in milliseconds.
Corrected this to bytes.
Reviewed-by: trustme
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* QAudioDeviceInfoInternal functions now call CMMFDevSound::InitializeL()
The root cause of QTBUG-10205 was that CMMFDevSound::IntitializeL()
was not called before CMMFDevSound::Capabilities(), resulting in
incorrect values being returned by QAudioDeviceInfo 'supported format'
functions. Resolving this was not straightforward because, while
QAudioDeviceInfo is an entirely synchronous API,
CMMFDevSound::InitializeL() is an asynchronous function. The changes
therefore include a while(QApplication::instance()->processEvents(...))
loop, which is not a particularly elegant solution.
* Encapsulated all interaction with CMMFDevSound API in DevSoundWrapper
class
Because the original bug fix required QAudioDeviceInfoInternal to call
CMMFDevSound::InitializeL(), MDevSoundObserver callback functions had
to be implemented in QAudioDeviceInfoInternal. Rather than pollute
QAudioDeviceInfoInternal, a new class, DevSoundWrapper, was created
which encapsulates all interaction with CMMFDevSound, and therefore
implements MDevSoundObserver. QAudioInputPrivate and
QAudioOutputPrivate now call CMMFDevSound via DevSoundWrapper, with
only the required MDevSoundObserver callbacks forwarded on via signals.
After fixing this bug, running the auto test suites exposed a number
of regressions which had been introduced by the necessary refactoring
described above; this commit therefore also includes fixes for the
following:
* No stateChanged() signal emitted during DevSound initialization
Previously, QAudioInput / QAudioOutput would emit a state change from
StoppedState to IdleState or ActiveState, as soon as start() was called.
In the case where the requested format is subsequently found to be
unsupported, in addition to the error() value being set to OpenError,
a second state change would be emitted, back to StoppedState. This is
not the behaviour exhibited by the other platforms' backends,
and therefore caused an auto test failure. Now, the backend only
transitions to IdleState / ActiveState on successful initialization.
* Stop emitting notify() signal when notifyInterval is set to zero
* Call CMMFDevSound::RecordInitL() from QAudioInput::resume() if no
buffer is currently held
This is necessary in order to restart the data flow.
* Call CMMFDevSound::BufferFilled() from QAudioOutput::resume() in push
mode
The auto test does not resume pushing data to QAudioOutput until
'bytesFree() >= periodSize()' becomes true. Because, for the Symbian
backend, periodSize() == bufferSize(), this condition is only met when a
new buffer is provided by DevSound via BufferToBeFilled().
Task-number: QTBUG-10205
|
| |
| |
| |
| |
| |
| |
| |
| | |
- fix deadlock with QAudioInput (win32) backend
- changed win32 backend to use QMutex lock
- setNotifyInterval(0) to disable notify() signal
Reviewed-by:Derick Hawcroft
|
| |
| |
| |
| | |
Reviewed-by:Derick Hawcroft
|
| |
| |
| |
| |
| | |
Task-number:QTBUG-9766
Reviewed-by:Derick Hawcroft
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-multimedia-staging:
Bug in QAudioOutput: Invalid use of "waveOutUnprepareHeader"
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixed freeBlocks func in both input and output
Task-number:QTBUG-9875
Reviewed-by:Andrew den Exter
|
| | |
| | |
| | |
| | | |
Reviewed-by: trustme
|