1 // Copyright 2016 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 MEDIA_FORMATS_AC3_AC3_UTIL_H_
6 #define MEDIA_FORMATS_AC3_AC3_UTIL_H_
7 
8 #include <stddef.h>
9 #include <stdint.h>
10 
11 #include "base/macros.h"
12 #include "media/base/media_export.h"
13 
14 namespace media {
15 
16 class MEDIA_EXPORT Ac3Util {
17  public:
18   // Returns the total number of audio samples in the given buffer, which
19   // contains several complete AC3 syncframes.
20   static int ParseTotalAc3SampleCount(const uint8_t* data, size_t size);
21 
22   // Returns the total number of audio samples in the given buffer, which
23   // contains several complete E-AC3 syncframes.
24   static int ParseTotalEac3SampleCount(const uint8_t* data, size_t size);
25 
26  private:
27   DISALLOW_COPY_AND_ASSIGN(Ac3Util);
28 };
29 
30 }  // namespace media
31 
32 #endif  // MEDIA_FORMATS_AC3_AC3_UTIL_H_
33