gecko/content/media/fmp4/wmf/WMFDecoderModule.h
Chris Pearce dc376585a3 Bug 962385 - Make WMF PlatformDecoderModule conform to new async interface. r=padenot
--HG--
rename : content/media/fmp4/wmf/WMFAudioDecoder.cpp => content/media/fmp4/wmf/WMFAudioOutputSource.cpp
rename : content/media/fmp4/wmf/WMFAudioDecoder.h => content/media/fmp4/wmf/WMFAudioOutputSource.h
rename : content/media/fmp4/wmf/WMFVideoDecoder.cpp => content/media/fmp4/wmf/WMFVideoOutputSource.cpp
rename : content/media/fmp4/wmf/WMFVideoDecoder.h => content/media/fmp4/wmf/WMFVideoOutputSource.h
2014-02-05 14:29:31 +13:00

50 lines
1.5 KiB
C++

/* -*- 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(WMFPlatformDecoderModule_h_)
#define WMFPlatformDecoderModule_h_
#include "PlatformDecoderModule.h"
namespace mozilla {
class WMFDecoderModule : public PlatformDecoderModule {
public:
WMFDecoderModule();
virtual ~WMFDecoderModule();
// Initializes the module, loads required dynamic libraries, etc.
// Main thread only.
nsresult Startup();
// Called when the decoders have shutdown. Main thread only.
// Does this really need to be main thread only????
virtual nsresult Shutdown() MOZ_OVERRIDE;
// Decode thread.
virtual MediaDataDecoder*
CreateH264Decoder(const mp4_demuxer::VideoDecoderConfig& aConfig,
mozilla::layers::LayersBackend aLayersBackend,
mozilla::layers::ImageContainer* aImageContainer,
MediaTaskQueue* aVideoTaskQueue,
MediaDataDecoderCallback* aCallback) MOZ_OVERRIDE;
// Decode thread.
virtual MediaDataDecoder* CreateAACDecoder(
const mp4_demuxer::AudioDecoderConfig& aConfig,
MediaTaskQueue* aAudioTaskQueue,
MediaDataDecoderCallback* aCallback) MOZ_OVERRIDE;
static void Init();
private:
static bool sIsWMFEnabled;
static bool sDXVAEnabled;
};
} // namespace mozilla
#endif