mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-10 03:45:46 +00:00
Bug 1349485. P5 - make AudioSink a non-ref-counting type. r=kikuo
MozReview-Commit-ID: EJmSTwkSdX6 --HG-- extra : rebase_source : 0972500aeb439d5d09cb111feb619cc22c751b9d
This commit is contained in:
parent
db128cb2b7
commit
5a77a04dac
@ -28,7 +28,6 @@ namespace media {
|
||||
|
||||
class AudioSink : private AudioStream::DataSource {
|
||||
using PlaybackParams = MediaSink::PlaybackParams;
|
||||
NS_INLINE_DECL_THREADSAFE_REFCOUNTING(AudioSink)
|
||||
|
||||
public:
|
||||
AudioSink(AbstractThread* aThread,
|
||||
@ -37,6 +36,8 @@ public:
|
||||
const AudioInfo& aInfo,
|
||||
dom::AudioChannel aChannel);
|
||||
|
||||
~AudioSink();
|
||||
|
||||
// Return a promise which will be resolved when AudioSink
|
||||
// finishes playing, or rejected if any error.
|
||||
RefPtr<GenericPromise> Init(const PlaybackParams& aParams);
|
||||
@ -65,8 +66,6 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
virtual ~AudioSink();
|
||||
|
||||
// Allocate and initialize mAudioStream. Returns NS_OK on success.
|
||||
nsresult InitializeAudioStream(const PlaybackParams& aParams);
|
||||
|
||||
|
@ -190,7 +190,7 @@ AudioSinkWrapper::Start(int64_t aStartTime, const MediaInfo& aInfo)
|
||||
mAudioEnded = !aInfo.HasAudio();
|
||||
|
||||
if (aInfo.HasAudio()) {
|
||||
mAudioSink = mCreator->Create();
|
||||
mAudioSink.reset(mCreator->Create());
|
||||
mEndPromise = mAudioSink->Init(mParams);
|
||||
|
||||
mEndPromise->Then(
|
||||
|
@ -89,7 +89,7 @@ private:
|
||||
|
||||
const RefPtr<AbstractThread> mOwnerThread;
|
||||
UniquePtr<Creator> mCreator;
|
||||
RefPtr<AudioSink> mAudioSink;
|
||||
UniquePtr<AudioSink> mAudioSink;
|
||||
RefPtr<GenericPromise> mEndPromise;
|
||||
|
||||
bool mIsStarted;
|
||||
|
Loading…
Reference in New Issue
Block a user