16fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org/* 26fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 36fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * 46fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * Use of this source code is governed by a BSD-style license 56fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * that can be found in the LICENSE file in the root of the source 66fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * tree. An additional intellectual property rights grant can be found 76fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * in the file PATENTS. All contributing project authors may 86fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org * be found in the AUTHORS file in the root of the source tree. 96fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org */ 106fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org 116fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org 12d851b91d14ef0bd71acdce7b90c9a8f1af1181adjohannkoenig@chromium.org#ifndef VP9_DECODER_VP9_DECODEFRAME_H_ 13d851b91d14ef0bd71acdce7b90c9a8f1af1181adjohannkoenig@chromium.org#define VP9_DECODER_VP9_DECODEFRAME_H_ 146fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org 15dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 16dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.orgextern "C" { 17dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 18dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 1910a9a0d835561a7f2300c561c514efcf374554d6fgalligan@chromium.orgstruct VP9Common; 2093a74791c8e808ea76001ee07693aa2a5fdd3500johannkoenig@chromium.orgstruct VP9Decoder; 2195aa45d73048f952dcaad0037429cc6751b34f2fjohannkoenig@google.comstruct vp9_read_bit_buffer; 226fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org 23f9586bb54d74c97d07b09eb2512f8569c9c1c025fgalligan@chromium.orgvoid vp9_init_dequantizer(struct VP9Common *cm); 2493a74791c8e808ea76001ee07693aa2a5fdd3500johannkoenig@chromium.org 2588b47b29cc274dd19cddc37c1ce1834d97df282efgalligan@chromium.orgvoid vp9_decode_frame(struct VP9Decoder *pbi, 2688b47b29cc274dd19cddc37c1ce1834d97df282efgalligan@chromium.org const uint8_t *data, const uint8_t *data_end, 2788b47b29cc274dd19cddc37c1ce1834d97df282efgalligan@chromium.org const uint8_t **p_data_end); 286fefe538d859300e7febe78271828198c10f1b52fgalligan@chromium.org 2995aa45d73048f952dcaad0037429cc6751b34f2fjohannkoenig@google.comint vp9_read_sync_code(struct vp9_read_bit_buffer *const rb); 3095aa45d73048f952dcaad0037429cc6751b34f2fjohannkoenig@google.comvoid vp9_read_frame_size(struct vp9_read_bit_buffer *rb, 3195aa45d73048f952dcaad0037429cc6751b34f2fjohannkoenig@google.com int *width, int *height); 32ac4e313c19203132648a2a271703b6ee76fe4284johannkoenig@chromium.orgBITSTREAM_PROFILE vp9_read_profile(struct vp9_read_bit_buffer *rb); 3395aa45d73048f952dcaad0037429cc6751b34f2fjohannkoenig@google.com 34dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 35dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org} // extern "C" 36dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 37dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 38d851b91d14ef0bd71acdce7b90c9a8f1af1181adjohannkoenig@chromium.org#endif // VP9_DECODER_VP9_DECODEFRAME_H_ 39