diff options
author | Moonchild <mcwerewolf@wolfbeast.com> | 2018-12-03 02:26:03 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-03 02:26:03 +0100 |
commit | 8d553fef63cec262d94c824d864b94d55a7d4807 (patch) | |
tree | 4e435a90f9eb8b6a3738e445d247973406d3a8a8 /dom/media/directshow/SampleSink.h | |
parent | d3e5569ee138378a0b26921206edd0b2627c24ab (diff) | |
parent | caabbb2a094d69852ca7e9a4aca63f53ed517596 (diff) | |
download | UXP-8d553fef63cec262d94c824d864b94d55a7d4807.tar UXP-8d553fef63cec262d94c824d864b94d55a7d4807.tar.gz UXP-8d553fef63cec262d94c824d864b94d55a7d4807.tar.lz UXP-8d553fef63cec262d94c824d864b94d55a7d4807.tar.xz UXP-8d553fef63cec262d94c824d864b94d55a7d4807.zip |
Merge pull request #895 from trav90/code-cleanup
Remove DirectShowReader
Diffstat (limited to 'dom/media/directshow/SampleSink.h')
-rw-r--r-- | dom/media/directshow/SampleSink.h | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/dom/media/directshow/SampleSink.h b/dom/media/directshow/SampleSink.h deleted file mode 100644 index 6a1af9fee..000000000 --- a/dom/media/directshow/SampleSink.h +++ /dev/null @@ -1,67 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* vim:set ts=2 sw=2 sts=2 et cindent: */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#if !defined(SampleSink_h_) -#define SampleSink_h_ - -#include "BaseFilter.h" -#include "DirectShowUtils.h" -#include "mozilla/RefPtr.h" -#include "mozilla/ReentrantMonitor.h" - -namespace mozilla { - -class SampleSink { -public: - SampleSink(); - virtual ~SampleSink(); - - // Sets the audio format of the incoming samples. The upstream filter - // calls this. This makes a copy. - void SetAudioFormat(const WAVEFORMATEX* aInFormat); - - // Copies the format of incoming audio samples into into *aOutFormat. - void GetAudioFormat(WAVEFORMATEX* aOutFormat); - - // Called when a sample is delivered by the DirectShow graph to the sink. - // The decode thread retrieves the sample by calling WaitForSample(). - // Blocks if there's already a sample waiting to be consumed by the decode - // thread. - HRESULT Receive(IMediaSample* aSample); - - // Retrieves a sample from the sample queue, blocking until one becomes - // available, or until an error occurs. Returns S_FALSE on EOS. - HRESULT Extract(RefPtr<IMediaSample>& aOutSample); - - // Unblocks any threads waiting in GetSample(). - // Clears mSample, which unblocks upstream stream. - void Flush(); - - // Opens up the sink to receive more samples in PutSample(). - // Clears EOS flag. - void Reset(); - - // Marks that we've reacehd the end of stream. - void SetEOS(); - - // Returns whether we're at end of stream. - bool AtEOS(); - -private: - // All data in this class is syncronized by mMonitor. - ReentrantMonitor mMonitor; - RefPtr<IMediaSample> mSample; - - // Format of the audio stream we're receiving. - WAVEFORMATEX mAudioFormat; - - bool mIsFlushing; - bool mAtEOS; -}; - -} // namespace mozilla - -#endif // SampleSink_h_ |