/src/libvpx/vp9/encoder/vp9_treewriter.h
Line | Count | Source |
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 VPX_VP9_ENCODER_VP9_TREEWRITER_H_ |
12 | | #define VPX_VP9_ENCODER_VP9_TREEWRITER_H_ |
13 | | |
14 | | #include "vpx_dsp/bitwriter.h" |
15 | | |
16 | | #ifdef __cplusplus |
17 | | extern "C" { |
18 | | #endif |
19 | | |
20 | | void vp9_tree_probs_from_distribution(vpx_tree tree, |
21 | | unsigned int branch_ct[/* n - 1 */][2], |
22 | | const unsigned int num_events[/* n */]); |
23 | | |
24 | | struct vp9_token { |
25 | | int value; |
26 | | int len; |
27 | | }; |
28 | | |
29 | | void vp9_tokens_from_tree(struct vp9_token *, const vpx_tree_index *); |
30 | | |
31 | | static INLINE void vp9_write_tree(vpx_writer *w, const vpx_tree_index *tree, |
32 | | const vpx_prob *probs, int bits, int len, |
33 | 91.6M | vpx_tree_index i) { |
34 | 303M | do { |
35 | 303M | const int bit = (bits >> --len) & 1; |
36 | 303M | vpx_write(w, bit, probs[i >> 1]); |
37 | 303M | i = tree[i + bit]; |
38 | 303M | } while (len); |
39 | 91.6M | } Unexecuted instantiation: vp9_cx_iface.c:vp9_write_tree Unexecuted instantiation: vp9_firstpass.c:vp9_write_tree Unexecuted instantiation: vp9_mcomp.c:vp9_write_tree Unexecuted instantiation: vp9_encoder.c:vp9_write_tree Unexecuted instantiation: vp9_picklpf.c:vp9_write_tree Unexecuted instantiation: vp9_quantize.c:vp9_write_tree Unexecuted instantiation: vp9_ratectrl.c:vp9_write_tree Unexecuted instantiation: vp9_rd.c:vp9_write_tree Unexecuted instantiation: vp9_segmentation.c:vp9_write_tree Unexecuted instantiation: vp9_speed_features.c:vp9_write_tree Unexecuted instantiation: vp9_svc_layercontext.c:vp9_write_tree Unexecuted instantiation: vp9_tokenize.c:vp9_write_tree Unexecuted instantiation: vp9_aq_variance.c:vp9_write_tree Unexecuted instantiation: vp9_aq_360.c:vp9_write_tree Unexecuted instantiation: vp9_aq_cyclicrefresh.c:vp9_write_tree Unexecuted instantiation: vp9_aq_complexity.c:vp9_write_tree Unexecuted instantiation: vp9_alt_ref_aq.c:vp9_write_tree Unexecuted instantiation: vp9_skin_detection.c:vp9_write_tree Unexecuted instantiation: vp9_noise_estimate.c:vp9_write_tree Unexecuted instantiation: vp9_ext_ratectrl.c:vp9_write_tree Unexecuted instantiation: vp9_temporal_filter.c:vp9_write_tree Unexecuted instantiation: vp9_tpl_model.c:vp9_write_tree Unexecuted instantiation: vp9_mbgraph.c:vp9_write_tree vp9_bitstream.c:vp9_write_tree Line | Count | Source | 33 | 90.5M | vpx_tree_index i) { | 34 | 300M | do { | 35 | 300M | const int bit = (bits >> --len) & 1; | 36 | 300M | vpx_write(w, bit, probs[i >> 1]); | 37 | 300M | i = tree[i + bit]; | 38 | 300M | } while (len); | 39 | 90.5M | } |
Unexecuted instantiation: vp9_context_tree.c:vp9_write_tree Unexecuted instantiation: vp9_encodeframe.c:vp9_write_tree Unexecuted instantiation: vp9_encodemb.c:vp9_write_tree vp9_encodemv.c:vp9_write_tree Line | Count | Source | 33 | 1.10M | vpx_tree_index i) { | 34 | 3.23M | do { | 35 | 3.23M | const int bit = (bits >> --len) & 1; | 36 | 3.23M | vpx_write(w, bit, probs[i >> 1]); | 37 | 3.23M | i = tree[i + bit]; | 38 | 3.23M | } while (len); | 39 | 1.10M | } |
Unexecuted instantiation: vp9_ethread.c:vp9_write_tree Unexecuted instantiation: vp9_frame_scale.c:vp9_write_tree Unexecuted instantiation: vp9_lookahead.c:vp9_write_tree Unexecuted instantiation: vp9_multi_thread.c:vp9_write_tree Unexecuted instantiation: vp9_rdopt.c:vp9_write_tree Unexecuted instantiation: vp9_pickmode.c:vp9_write_tree Unexecuted instantiation: vp9_treewriter.c:vp9_write_tree Unexecuted instantiation: temporal_filter_sse4.c:vp9_write_tree Unexecuted instantiation: highbd_temporal_filter_sse4.c:vp9_write_tree |
40 | | |
41 | | static INLINE void vp9_write_token(vpx_writer *w, const vpx_tree_index *tree, |
42 | | const vpx_prob *probs, |
43 | 9.95M | const struct vp9_token *token) { |
44 | 9.95M | vp9_write_tree(w, tree, probs, token->value, token->len, 0); |
45 | 9.95M | } Unexecuted instantiation: vp9_cx_iface.c:vp9_write_token Unexecuted instantiation: vp9_firstpass.c:vp9_write_token Unexecuted instantiation: vp9_mcomp.c:vp9_write_token Unexecuted instantiation: vp9_encoder.c:vp9_write_token Unexecuted instantiation: vp9_picklpf.c:vp9_write_token Unexecuted instantiation: vp9_quantize.c:vp9_write_token Unexecuted instantiation: vp9_ratectrl.c:vp9_write_token Unexecuted instantiation: vp9_rd.c:vp9_write_token Unexecuted instantiation: vp9_segmentation.c:vp9_write_token Unexecuted instantiation: vp9_speed_features.c:vp9_write_token Unexecuted instantiation: vp9_svc_layercontext.c:vp9_write_token Unexecuted instantiation: vp9_tokenize.c:vp9_write_token Unexecuted instantiation: vp9_aq_variance.c:vp9_write_token Unexecuted instantiation: vp9_aq_360.c:vp9_write_token Unexecuted instantiation: vp9_aq_cyclicrefresh.c:vp9_write_token Unexecuted instantiation: vp9_aq_complexity.c:vp9_write_token Unexecuted instantiation: vp9_alt_ref_aq.c:vp9_write_token Unexecuted instantiation: vp9_skin_detection.c:vp9_write_token Unexecuted instantiation: vp9_noise_estimate.c:vp9_write_token Unexecuted instantiation: vp9_ext_ratectrl.c:vp9_write_token Unexecuted instantiation: vp9_temporal_filter.c:vp9_write_token Unexecuted instantiation: vp9_tpl_model.c:vp9_write_token Unexecuted instantiation: vp9_mbgraph.c:vp9_write_token vp9_bitstream.c:vp9_write_token Line | Count | Source | 43 | 8.84M | const struct vp9_token *token) { | 44 | 8.84M | vp9_write_tree(w, tree, probs, token->value, token->len, 0); | 45 | 8.84M | } |
Unexecuted instantiation: vp9_context_tree.c:vp9_write_token Unexecuted instantiation: vp9_encodeframe.c:vp9_write_token Unexecuted instantiation: vp9_encodemb.c:vp9_write_token vp9_encodemv.c:vp9_write_token Line | Count | Source | 43 | 1.10M | const struct vp9_token *token) { | 44 | 1.10M | vp9_write_tree(w, tree, probs, token->value, token->len, 0); | 45 | 1.10M | } |
Unexecuted instantiation: vp9_ethread.c:vp9_write_token Unexecuted instantiation: vp9_frame_scale.c:vp9_write_token Unexecuted instantiation: vp9_lookahead.c:vp9_write_token Unexecuted instantiation: vp9_multi_thread.c:vp9_write_token Unexecuted instantiation: vp9_rdopt.c:vp9_write_token Unexecuted instantiation: vp9_pickmode.c:vp9_write_token Unexecuted instantiation: vp9_treewriter.c:vp9_write_token Unexecuted instantiation: temporal_filter_sse4.c:vp9_write_token Unexecuted instantiation: highbd_temporal_filter_sse4.c:vp9_write_token |
46 | | |
47 | | #ifdef __cplusplus |
48 | | } // extern "C" |
49 | | #endif |
50 | | |
51 | | #endif // VPX_VP9_ENCODER_VP9_TREEWRITER_H_ |