OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // This file contains an implementation of a VP9 bitstream parser. The main | 5 // This file contains an implementation of a VP9 bitstream parser. The main |
6 // purpose of this parser is to support hardware decode acceleration. Some | 6 // purpose of this parser is to support hardware decode acceleration. Some |
7 // accelerators, e.g. libva which implements VA-API, require the caller | 7 // accelerators, e.g. libva which implements VA-API, require the caller |
8 // (chrome) to feed them parsed VP9 frame header. | 8 // (chrome) to feed them parsed VP9 frame header. |
9 // | 9 // |
10 // See content::VP9Decoder for example usage. | 10 // See content::VP9Decoder for example usage. |
11 // | 11 // |
12 #ifndef MEDIA_FILTERS_VP9_PARSER_H_ | 12 #ifndef MEDIA_FILTERS_VP9_PARSER_H_ |
13 #define MEDIA_FILTERS_VP9_PARSER_H_ | 13 #define MEDIA_FILTERS_VP9_PARSER_H_ |
14 | 14 |
15 #include <stddef.h> | 15 #include <stddef.h> |
16 #include <stdint.h> | 16 #include <stdint.h> |
| 17 #include <sys/types.h> |
17 | 18 |
18 #include <deque> | 19 #include <deque> |
19 | 20 |
20 #include "base/macros.h" | 21 #include "base/macros.h" |
21 #include "media/base/media_export.h" | 22 #include "media/base/media_export.h" |
22 #include "media/filters/vp9_raw_bits_reader.h" | 23 #include "media/filters/vp9_raw_bits_reader.h" |
23 | 24 |
24 namespace media { | 25 namespace media { |
25 | 26 |
26 const int kVp9MaxProfile = 4; | 27 const int kVp9MaxProfile = 4; |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
281 | 282 |
282 // The parsing context to keep track of references. | 283 // The parsing context to keep track of references. |
283 ReferenceSlot ref_slots_[kVp9NumRefFrames]; | 284 ReferenceSlot ref_slots_[kVp9NumRefFrames]; |
284 | 285 |
285 DISALLOW_COPY_AND_ASSIGN(Vp9Parser); | 286 DISALLOW_COPY_AND_ASSIGN(Vp9Parser); |
286 }; | 287 }; |
287 | 288 |
288 } // namespace media | 289 } // namespace media |
289 | 290 |
290 #endif // MEDIA_FILTERS_VP9_PARSER_H_ | 291 #endif // MEDIA_FILTERS_VP9_PARSER_H_ |
OLD | NEW |