OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #ifndef VP9_DECODER_VP9_DECODER_H_ | 11 #ifndef VP9_DECODER_VP9_DECODER_H_ |
12 #define VP9_DECODER_VP9_DECODER_H_ | 12 #define VP9_DECODER_VP9_DECODER_H_ |
13 | 13 |
14 #include "./vpx_config.h" | 14 #include "./vpx_config.h" |
15 | 15 |
16 #include "vpx/vpx_codec.h" | 16 #include "vpx/vpx_codec.h" |
17 #include "vpx_scale/yv12config.h" | 17 #include "vpx_scale/yv12config.h" |
18 | 18 #include "vp9/common/vp9_loopfilter_thread.h" |
19 #include "vp9/common/vp9_onyxc_int.h" | 19 #include "vp9/common/vp9_onyxc_int.h" |
20 #include "vp9/common/vp9_ppflags.h" | 20 #include "vp9/common/vp9_ppflags.h" |
21 #include "vp9/common/vp9_thread.h" | 21 #include "vp9/common/vp9_thread.h" |
22 | 22 #include "vp9/decoder/vp9_reader.h" |
23 #include "vp9/decoder/vp9_dthread.h" | |
24 | 23 |
25 #ifdef __cplusplus | 24 #ifdef __cplusplus |
26 extern "C" { | 25 extern "C" { |
27 #endif | 26 #endif |
28 | 27 |
29 // TODO(hkuang): combine this with TileWorkerData. | 28 // TODO(hkuang): combine this with TileWorkerData. |
30 typedef struct TileData { | 29 typedef struct TileData { |
31 VP9_COMMON *cm; | 30 VP9_COMMON *cm; |
32 vp9_reader bit_reader; | 31 vp9_reader bit_reader; |
33 DECLARE_ALIGNED(16, MACROBLOCKD, xd); | 32 DECLARE_ALIGNED(16, MACROBLOCKD, xd); |
34 } TileData; | 33 } TileData; |
35 | 34 |
| 35 typedef struct TileWorkerData { |
| 36 VP9_COMMON *cm; |
| 37 vp9_reader bit_reader; |
| 38 DECLARE_ALIGNED(16, MACROBLOCKD, xd); |
| 39 struct vpx_internal_error_info error_info; |
| 40 } TileWorkerData; |
| 41 |
36 typedef struct VP9Decoder { | 42 typedef struct VP9Decoder { |
37 DECLARE_ALIGNED(16, MACROBLOCKD, mb); | 43 DECLARE_ALIGNED(16, MACROBLOCKD, mb); |
38 | 44 |
39 DECLARE_ALIGNED(16, VP9_COMMON, common); | 45 DECLARE_ALIGNED(16, VP9_COMMON, common); |
40 | 46 |
41 int ready_for_new_data; | 47 int ready_for_new_data; |
42 | 48 |
43 int refresh_frame_flags; | 49 int refresh_frame_flags; |
44 | 50 |
45 int frame_parallel_decode; // frame-based threading. | 51 int frame_parallel_decode; // frame-based threading. |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 size_t data_sz, | 104 size_t data_sz, |
99 uint32_t sizes[8], int *count, | 105 uint32_t sizes[8], int *count, |
100 vpx_decrypt_cb decrypt_cb, | 106 vpx_decrypt_cb decrypt_cb, |
101 void *decrypt_state); | 107 void *decrypt_state); |
102 | 108 |
103 #ifdef __cplusplus | 109 #ifdef __cplusplus |
104 } // extern "C" | 110 } // extern "C" |
105 #endif | 111 #endif |
106 | 112 |
107 #endif // VP9_DECODER_VP9_DECODER_H_ | 113 #endif // VP9_DECODER_VP9_DECODER_H_ |
OLD | NEW |