extern "C" {
#endif
-typedef void *VP9D_PTR;
+struct VP9Decompressor;
typedef struct {
int width;
void vp9_initialize_dec();
-int vp9_receive_compressed_data(VP9D_PTR comp,
+int vp9_receive_compressed_data(struct VP9Decompressor *pbi,
size_t size, const uint8_t **dest,
int64_t time_stamp);
-int vp9_get_raw_frame(VP9D_PTR comp, YV12_BUFFER_CONFIG *sd,
+int vp9_get_raw_frame(struct VP9Decompressor *pbi,
+ YV12_BUFFER_CONFIG *sd,
int64_t *time_stamp, int64_t *time_end_stamp,
vp9_ppflags_t *flags);
-vpx_codec_err_t vp9_copy_reference_dec(VP9D_PTR comp,
+vpx_codec_err_t vp9_copy_reference_dec(struct VP9Decompressor *pbi,
VP9_REFFRAME ref_frame_flag,
YV12_BUFFER_CONFIG *sd);
-vpx_codec_err_t vp9_set_reference_dec(VP9D_PTR comp,
+vpx_codec_err_t vp9_set_reference_dec(struct VP9Decompressor *pbi,
VP9_REFFRAME ref_frame_flag,
YV12_BUFFER_CONFIG *sd);
-int vp9_get_reference_dec(VP9D_PTR ptr, int index, YV12_BUFFER_CONFIG **fb);
+int vp9_get_reference_dec(struct VP9Decompressor *pbi,
+ int index, YV12_BUFFER_CONFIG **fb);
-VP9D_PTR vp9_create_decompressor(VP9D_CONFIG *oxcf);
+struct VP9Decompressor *vp9_create_decompressor(VP9D_CONFIG *oxcf);
-void vp9_remove_decompressor(VP9D_PTR comp);
+void vp9_remove_decompressor(struct VP9Decompressor *pbi);
#ifdef __cplusplus
} // extern "C"
pd[i].dqcoeff = pbi->dqcoeff[i];
}
-VP9D_PTR vp9_create_decompressor(VP9D_CONFIG *oxcf) {
+VP9D_COMP *vp9_create_decompressor(VP9D_CONFIG *oxcf) {
VP9D_COMP *const pbi = vpx_memalign(32, sizeof(VP9D_COMP));
VP9_COMMON *const cm = pbi ? &pbi->common : NULL;
return pbi;
}
-void vp9_remove_decompressor(VP9D_PTR ptr) {
+void vp9_remove_decompressor(VP9D_COMP *pbi) {
int i;
- VP9D_COMP *const pbi = (VP9D_COMP *)ptr;
if (!pbi)
return;
a->uv_height == b->uv_height && a->uv_width == b->uv_width;
}
-vpx_codec_err_t vp9_copy_reference_dec(VP9D_PTR ptr,
+vpx_codec_err_t vp9_copy_reference_dec(VP9D_COMP *pbi,
VP9_REFFRAME ref_frame_flag,
YV12_BUFFER_CONFIG *sd) {
- VP9D_COMP *pbi = (VP9D_COMP *) ptr;
VP9_COMMON *cm = &pbi->common;
/* TODO(jkoleszar): The decoder doesn't have any real knowledge of what the
}
-vpx_codec_err_t vp9_set_reference_dec(VP9D_PTR ptr, VP9_REFFRAME ref_frame_flag,
+vpx_codec_err_t vp9_set_reference_dec(VP9D_COMP *pbi,
+ VP9_REFFRAME ref_frame_flag,
YV12_BUFFER_CONFIG *sd) {
- VP9D_COMP *pbi = (VP9D_COMP *) ptr;
VP9_COMMON *cm = &pbi->common;
RefBuffer *ref_buf = NULL;
}
-int vp9_get_reference_dec(VP9D_PTR ptr, int index, YV12_BUFFER_CONFIG **fb) {
- VP9D_COMP *pbi = (VP9D_COMP *) ptr;
+int vp9_get_reference_dec(VP9D_COMP *pbi, int index, YV12_BUFFER_CONFIG **fb) {
VP9_COMMON *cm = &pbi->common;
if (index < 0 || index >= REF_FRAMES)
cm->frame_refs[ref_index].idx = INT_MAX;
}
-int vp9_receive_compressed_data(VP9D_PTR ptr,
+int vp9_receive_compressed_data(VP9D_COMP *pbi,
size_t size, const uint8_t **psource,
int64_t time_stamp) {
- VP9D_COMP *pbi = (VP9D_COMP *) ptr;
- VP9_COMMON *cm = &pbi->common;
+ VP9_COMMON *cm = NULL;
const uint8_t *source = *psource;
int retcode = 0;
/*if(pbi->ready_for_new_data == 0)
return -1;*/
- if (ptr == 0)
+ if (!pbi)
return -1;
+ cm = &pbi->common;
cm->error.error_code = VPX_CODEC_OK;
pbi->source = source;
return retcode;
}
-int vp9_get_raw_frame(VP9D_PTR ptr, YV12_BUFFER_CONFIG *sd,
+int vp9_get_raw_frame(VP9D_COMP *pbi, YV12_BUFFER_CONFIG *sd,
int64_t *time_stamp, int64_t *time_end_stamp,
vp9_ppflags_t *flags) {
int ret = -1;
- VP9D_COMP *pbi = (VP9D_COMP *) ptr;
if (pbi->ready_for_new_data == 1)
return ret;