Shaka Packager SDK
ec3_audio_util.h
1 // Copyright 2016 Google Inc. All rights reserved.
2 //
3 // Use of this source code is governed by a BSD-style
4 // license that can be found in the LICENSE file or at
5 // https://developers.google.com/open-source/licenses/bsd
6 //
7 // Enhanced AC3 audio utility functions.
8 
9 #ifndef PACKAGER_MEDIA_CODECS_EC3_AUDIO_UTIL_H_
10 #define PACKAGER_MEDIA_CODECS_EC3_AUDIO_UTIL_H_
11 
12 #include <stddef.h>
13 #include <stdint.h>
14 #include <vector>
15 
16 namespace shaka {
17 namespace media {
18 
22 bool CalculateEC3ChannelMap(const std::vector<uint8_t>& ec3_data,
23  uint32_t* channel_map);
24 
28 size_t GetEc3NumChannels(const std::vector<uint8_t>& ec3_data);
29 
34 bool CalculateEC3ChannelMPEGValue(const std::vector<uint8_t>& ec3_data,
35  uint32_t* ec3_channel_mpeg_value);
36 
40 bool GetEc3JocComplexity(const std::vector<uint8_t>& ec3_data,
41  uint32_t* ec3_joc_complexity);
42 
43 } // namespace media
44 } // namespace shaka
45 
46 #endif // PACKAGER_MEDIA_CODECS_EC3_AUDIO_UTIL_H_
All the methods that are virtual are virtual for mocking.