Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: source/libvpx/vp9/decoder/vp9_decoder.h

Issue 232133009: libvpx: Pull from upstream (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/libvpx/
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « source/libvpx/vp9/decoder/vp9_decodemv.c ('k') | source/libvpx/vp9/decoder/vp9_decoder.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3 *
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #ifndef VP9_DECODER_VP9_DECODER_H_
12 #define VP9_DECODER_VP9_DECODER_H_
13
14 #include "./vpx_config.h"
15
16 #include "vpx/vpx_codec.h"
17 #include "vpx_scale/yv12config.h"
18
19 #include "vp9/common/vp9_onyxc_int.h"
20 #include "vp9/common/vp9_ppflags.h"
21
22 #include "vp9/decoder/vp9_decoder.h"
23 #include "vp9/decoder/vp9_dthread.h"
24 #include "vp9/decoder/vp9_thread.h"
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 typedef struct {
31 int width;
32 int height;
33 int version;
34 int max_threads;
35 int inv_tile_order;
36 } VP9D_CONFIG;
37
38 typedef struct VP9Decoder {
39 DECLARE_ALIGNED(16, MACROBLOCKD, mb);
40
41 DECLARE_ALIGNED(16, VP9_COMMON, common);
42
43 VP9D_CONFIG oxcf;
44
45 int64_t last_time_stamp;
46 int ready_for_new_data;
47
48 int refresh_frame_flags;
49
50 int decoded_key_frame;
51
52 int initial_width;
53 int initial_height;
54
55 int do_loopfilter_inline; // apply loopfilter to available rows immediately
56 VP9Worker lf_worker;
57
58 VP9Worker *tile_workers;
59 int num_tile_workers;
60
61 VP9LfSync lf_row_sync;
62 } VP9Decoder;
63
64 void vp9_initialize_dec();
65
66 int vp9_receive_compressed_data(struct VP9Decoder *pbi,
67 size_t size, const uint8_t **dest,
68 int64_t time_stamp);
69
70 int vp9_get_raw_frame(struct VP9Decoder *pbi,
71 YV12_BUFFER_CONFIG *sd,
72 int64_t *time_stamp, int64_t *time_end_stamp,
73 vp9_ppflags_t *flags);
74
75 vpx_codec_err_t vp9_copy_reference_dec(struct VP9Decoder *pbi,
76 VP9_REFFRAME ref_frame_flag,
77 YV12_BUFFER_CONFIG *sd);
78
79 vpx_codec_err_t vp9_set_reference_dec(VP9_COMMON *cm,
80 VP9_REFFRAME ref_frame_flag,
81 YV12_BUFFER_CONFIG *sd);
82
83 int vp9_get_reference_dec(struct VP9Decoder *pbi,
84 int index, YV12_BUFFER_CONFIG **fb);
85
86
87 struct VP9Decoder *vp9_decoder_create(const VP9D_CONFIG *oxcf);
88
89 void vp9_decoder_remove(struct VP9Decoder *pbi);
90
91 #ifdef __cplusplus
92 } // extern "C"
93 #endif
94
95 #endif // VP9_DECODER_VP9_DECODER_H_
OLDNEW
« no previous file with comments | « source/libvpx/vp9/decoder/vp9_decodemv.c ('k') | source/libvpx/vp9/decoder/vp9_decoder.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698