Shaka Packager SDK
Loading...
Searching...
No Matches
container_names.h
1// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef PACKAGER_MEDIA_BASE_CONTAINER_NAMES_H_
6#define PACKAGER_MEDIA_BASE_CONTAINER_NAMES_H_
7
8#include <cstdint>
9#include <string>
10
11namespace shaka {
12namespace media {
13
16enum MediaContainerName {
17 CONTAINER_UNKNOWN, // Unknown
18 CONTAINER_AAC, // AAC (Advanced Audio Coding)
19 CONTAINER_AC3, // AC-3
20 CONTAINER_AIFF, // AIFF (Audio Interchange File Format)
21 CONTAINER_AMR, // AMR (Adaptive Multi-Rate Audio)
22 CONTAINER_APE, // APE (Monkey's Audio)
23 CONTAINER_ASF, // ASF (Advanced / Active Streaming Format)
24 CONTAINER_ASS, // SSA (SubStation Alpha) subtitle
25 CONTAINER_AVI, // AVI (Audio Video Interleaved)
26 CONTAINER_BINK, // Bink
27 CONTAINER_CAF, // CAF (Apple Core Audio Format)
28 CONTAINER_DTS, // DTS
29 CONTAINER_DTSHD, // DTS-HD
30 CONTAINER_DV, // DV (Digital Video)
31 CONTAINER_DXA, // DXA
32 CONTAINER_EAC3, // Enhanced AC-3
33 CONTAINER_FLAC, // FLAC (Free Lossless Audio Codec)
34 CONTAINER_FLV, // FLV (Flash Video)
35 CONTAINER_GSM, // GSM (Global System for Mobile Audio)
36 CONTAINER_H261, // H.261
37 CONTAINER_H263, // H.263
38 CONTAINER_H264, // H.264
39 CONTAINER_HLS, // HLS (Apple HTTP Live Streaming PlayList)
40 CONTAINER_IRCAM, // Berkeley/IRCAM/CARL Sound Format
41 CONTAINER_MJPEG, // MJPEG video
42 CONTAINER_MOV, // QuickTime / MOV / MPEG4
43 CONTAINER_MP3, // MP3 (MPEG audio layer 2/3)
44 CONTAINER_MPEG2PS, // MPEG-2 Program Stream
45 CONTAINER_MPEG2TS, // MPEG-2 Transport Stream
46 CONTAINER_MPEG4BS, // MPEG-4 Bitstream
47 CONTAINER_OGG, // Ogg
48 CONTAINER_RM, // RM (RealMedia)
49 CONTAINER_SRT, // SRT (SubRip subtitle)
50 CONTAINER_SWF, // SWF (ShockWave Flash)
51 CONTAINER_TTML, // TTML file.
52 CONTAINER_VC1, // VC-1
53 CONTAINER_WAV, // WAV / WAVE (Waveform Audio)
54 CONTAINER_WEBM, // Matroska / WebM
55 CONTAINER_WEBVTT, // WebVTT file.
56 CONTAINER_WTV, // WTV (Windows Television)
57 CONTAINER_WVM, // WVM (Widevine Classic Format)
58 CONTAINER_MAX // Must be last
59};
60
62MediaContainerName DetermineContainer(const uint8_t* buffer, int buffer_size);
63
66MediaContainerName DetermineContainerFromFormatName(
67 const std::string& format_name);
68
71MediaContainerName DetermineContainerFromFileName(const std::string& file_name);
72
73} // namespace media
74} // namespace shaka
75
76#endif // PACKAGER_MEDIA_BASE_CONTAINER_NAMES_H_
All the methods that are virtual are virtual for mocking.