mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
6a6aa3a1ea
This is an integrated patch which includes: 1. Bug 891705: [MediaEncoder] Implement WebM 1.0 container writer. r=giles, r=gps 2. Bug 950567: [MediaEncoder] Phase-in libmkv library. r=giles 3. bug 883749: Implement Vorbis encoding. r=rillian 4. bug 881840: Implement VP8 track encoder. r=rillian
33 lines
927 B
C++
33 lines
927 B
C++
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-*/
|
|
/* 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/. */
|
|
|
|
#ifndef TrackMetadataBase_h_
|
|
#define TrackMetadataBase_h_
|
|
|
|
#include "nsTArray.h"
|
|
#include "nsCOMPtr.h"
|
|
namespace mozilla {
|
|
|
|
// A class represent meta data for various codec format. Only support one track information.
|
|
class TrackMetadataBase
|
|
{
|
|
public:
|
|
NS_INLINE_DECL_THREADSAFE_REFCOUNTING(TrackMetadataBase)
|
|
enum MetadataKind {
|
|
METADATA_OPUS, // Represent the Opus metadata
|
|
METADATA_VP8,
|
|
METADATA_VORBIS,
|
|
METADATA_AVC,
|
|
METADATA_AAC,
|
|
METADATA_UNKNOWN // Metadata Kind not set
|
|
};
|
|
virtual ~TrackMetadataBase() {}
|
|
// Return the specific metadata kind
|
|
virtual MetadataKind GetKind() const = 0;
|
|
};
|
|
|
|
}
|
|
#endif
|