diff options
Diffstat (limited to '')
-rw-r--r-- | dom/media/webcodecs/WebCodecsUtils.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/dom/media/webcodecs/WebCodecsUtils.h b/dom/media/webcodecs/WebCodecsUtils.h index 196c57421d..b2a8f17398 100644 --- a/dom/media/webcodecs/WebCodecsUtils.h +++ b/dom/media/webcodecs/WebCodecsUtils.h @@ -9,17 +9,18 @@ #include "ErrorList.h" #include "MediaData.h" +#include "PlatformEncoderModule.h" #include "js/TypeDecls.h" #include "mozilla/Maybe.h" #include "mozilla/MozPromise.h" #include "mozilla/Result.h" #include "mozilla/TaskQueue.h" +#include "mozilla/dom/AudioDataBinding.h" #include "mozilla/dom/BindingDeclarations.h" #include "mozilla/dom/Nullable.h" #include "mozilla/dom/UnionTypes.h" #include "mozilla/dom/VideoEncoderBinding.h" #include "mozilla/dom/VideoFrameBinding.h" -#include "PlatformEncoderModule.h" namespace mozilla { @@ -218,7 +219,7 @@ struct WebCodecsConfigurationChangeList { // Convert this to the format the underlying PEM can understand RefPtr<EncoderConfigurationChangeList> ToPEMChangeList() const; - nsString ToString() const; + nsCString ToString() const; nsTArray<WebCodecsEncoderConfigurationItem> mChanges; @@ -235,12 +236,20 @@ VideoColorSpaceInit FallbackColorSpaceForWebContent(); Maybe<CodecType> CodecStringToCodecType(const nsAString& aCodecString); -nsString ConfigToString(const VideoDecoderConfig& aConfig); +nsCString ConfigToString(const VideoDecoderConfig& aConfig); +// Returns true if a particular codec is supported by WebCodecs. bool IsSupportedVideoCodec(const nsAString& aCodec); +bool IsSupportedAudioCodec(const nsAString& aCodec); -} // namespace dom +// Returns the codec string to use in Gecko for a particular container and +// codec name given by WebCodecs. This maps pcm description to the profile +// number, and simply returns the codec name for all other codecs. +nsCString ConvertCodecName(const nsCString& aContainer, + const nsCString& aCodec); +uint32_t BytesPerSamples(const mozilla::dom::AudioSampleFormat& aFormat); +} // namespace dom } // namespace mozilla #endif // MOZILLA_DOM_WEBCODECS_WEBCODECSUTILS_H |