什么什么为什么| 给老师送什么礼物好| 什么梳子梳头最好| 看十全十美是什么生肖| sle是什么病的缩写| 邮戳是什么意思| 考护士证需要什么条件| 什么原因造成痫性发作| 肠系膜淋巴结炎吃什么药最有效| efg是什么意思| 晚的反义词是什么| 什么是飘窗| 梦见很多棺材是什么征兆| 左腹部是什么器官| 正缘是什么| 黑色的蛇是什么蛇| 眼睛发粘是什么原因| 特派员是什么级别| 现在做什么最赚钱| 吃辣流鼻涕是什么原因| 头上的旋有什么说法| 术后吃什么消炎药| 嗓子疼有痰吃什么药| 春宵一刻值千金是什么意思| 慕名而来是什么意思| nary是什么牌子的手表| 头皮痒挂什么科| 印度神油是什么东西| 痰湿吃什么食物| 安全期一般是什么时候| 心脏回流是什么意思| 意念灰是什么意思| 今天是什么日子啊| 苯佐卡因是什么药| 得性病有什么症状| 狗为什么不吃饭| 露水夫妻是什么意思| 灶性肠化是什么意思| 三八妇女节送什么好| 舍本逐末是什么意思| 属蛇本命佛是什么佛| 脾氨肽是什么| 诸葛亮为什么气死周瑜| 阿里巴巴是干什么的| 北京古代叫什么| 什么是音爆| 什么木头做菜板好| 洁面液是干什么用的| 腹腔气体多是什么原因| 胃炎吃什么中成药效果好| 子五行属什么| 晚上吃什么饭| 先明后不争什么意思| 头晕是什么原因引起| 喝苏打水有什么好处| 吃什么能生精和提高精子质量| 体育生能报什么专业| 麦乳精是什么| 春是什么生肖| 98年什么命| 怀孕两个星期有什么反应| 西红柿吃多了有什么坏处| 维生素d是什么东西| 佳字属于五行属什么| 伏地魔是什么意思| 油边是什么肉| 射手属于什么象星座| 类风湿吃什么食物好| 备孕需要做什么检查| orange是什么颜色| 12月13号什么星座| 跑步后脸红是什么原因| 藏族信仰什么教| 柏油样便见于什么病| 妞字五行属什么| 桑葚有什么好处| 伤口不愈合是什么原因| 吃什么补维生素b| 用什么补肾最好| 下面有异味是什么原因| 有何特长一般填什么好| 贼是什么生肖| 肠胃蠕动慢吃什么药| 羽毛球拍什么牌子好| 传染病检查项目有什么| 儿童查微量元素挂什么科| 星期天为什么不叫星期七| 小猫吃什么食物| 维密是什么意思| 吃牛油果有什么好处| 脾胃不好吃什么食物好| 冬瓜不能和什么一起吃| 眼白浑浊是什么原因| 结扎对男的有什么影响| gm是什么意思| 钵仔糕粉是什么粉| bkg是什么意思| 尿潴留吃什么药| 夏天喝什么茶好| 六味地黄丸有什么副作用吗| 为什么我的| lym是什么意思| 啦啦是什么意思| 肠梗阻是什么症状| 低血糖是什么原因| 脑梗什么东西不能吃| 吃什么东西可以降压| 宫颈癌做什么检查| wlp是什么意思| 离线缓存是什么意思| 鲁班发明了什么| 小孩喜欢趴着睡觉是什么原因| 音乐制作人是干什么的| 中国的国果是什么| 八路军为什么叫八路军| 紫苏是什么植物| 扁桃体2度是什么意思| 左下眼皮跳是什么原因| 胎儿偏小吃什么补得快| 嘴发酸是什么原因引起| 吃什么对肝最好| 心脏无力吃什么药最好| 桥本氏甲状腺炎是什么意思| 家伙是什么意思| 阿迪达斯是什么牌子| 人又不人鬼不鬼是什么生肖| 天秤座属于什么星象| 本番是什么意思| 海洋里面有什么动物| 女人肺气虚吃什么补最快| 今天生日什么星座| 细菌性阴道炎用什么药效果最好| 特殊情况是什么意思| 眉毛附近长痘痘是什么原因| 肋软骨炎吃什么药| 学分是什么| 拔牙挂什么科室| 饭前饭后吃药有什么区别| 尿潜血是什么原因造成的| 韩语欧巴是什么意思| c4是什么| 梦见下雪了是什么意思| 静字五行属什么| 球菌阳性是什么意思| 肠胃消化不好吃什么药| 嘴角生疮是什么原因| 子宫内膜厚是什么原因造成的| 什么是再生纤维素纤维| 室缺是什么意思| 烟青色是什么颜色| 女性外阴瘙痒用什么药| 幽门螺杆菌是什么| 藤茶有什么功效| 雪燕有什么功效| 理疗是什么| 12月10号什么星座| 奇妙的什么| 省纪委副书记是什么级别| 奶糕是什么| 左肺下叶钙化灶是什么意思| 四季春属于什么茶| 酒是什么时候发明的| 治疗心率过快用什么药效果好| 撸铁是什么意思| 电气石是什么东西| 突然眼睛充血是什么原因引起的| 哈尔滨市长什么级别| 快递什么时候上班| 杨五行属什么| 三个鬼是什么字| 甲鱼吃什么的| model什么意思| 电脑一体机什么牌子好| acca是什么专业| 记忆是什么| 挂名什么意思| 老佛爷是什么牌子| 火可念什么| 落地成盒什么意思| absolutvodka什么酒| 头发掉什么原因| 去皱纹用什么方法最好和最快| 三月十八是什么星座| 刚怀孕有什么特征| 伤官女是什么意思| 出梅是什么意思| 夏天有什么植物| 女性多吃什么滋补卵巢| 叶酸补什么| 梦见在水里游泳是什么意思| cv什么意思| 雄脱是什么意思| 天池为什么没有鱼| 不以为然什么意思| 清考是什么意思| 哗众取宠是什么意思| 高血压能吃什么| 什么的宝石| 维生素E什么牌子的效果最好| 玫瑰糠疹用什么药| jojo什么意思| id是什么意思的缩写| qn是什么医嘱| 涤塔夫是什么面料| 四月二十八什么星座| 自助是什么意思| 端午节干什么| 光宗耀祖是什么意思| 大肠杆菌用什么药治疗效果好| 缘是什么意思| 副军级是什么军衔| 咽喉痛吃什么药好得快| 什么动物没有心脏| 妊娠囊是什么意思| 三天没有大便是什么原因| 拍身份证照片穿什么颜色衣服好看| 欧芹在中国叫什么| 人潮汹涌是什么意思| nsaid是什么药| 电气火灾用什么灭火| 没有什么| 正比和反比是什么意思| 美籍华人是什么意思| 木耳与什么食物相克| 42天产后检查挂什么科| hc是胎儿的什么| 网罗是什么意思| 心脏回流是什么意思| 绿茶属于什么茶| 补气补血吃什么好| 喉咙有痰是什么原因| 肺部散在小结节是什么意思| 丹参与什么搭配最好| 经常嘴苦是什么原因| 得意忘形是什么意思| 刀厄痣是什么意思| 嘉靖为什么不杀海瑞| 通情达理是什么意思| 脾胃伏火是什么意思| 女性安全期是什么时候| 长颈鹿代表什么生肖| 登门拜访是什么意思| 小孩个子矮小吃什么促进生长发育| 地雷是什么意思| 胆固醇是什么东西| 属马的跟什么属相最配| 丢包率是什么意思| 拔了牙可以吃什么| hpv58阳性是什么意思| 黄鳝吃什么食物| 梦见跟别人打架是什么意思| 指鼻试验阳性代表什么| 汾酒属于什么香型| 龙虎山是什么地貌| 小月子能吃什么菜| 滋阴潜阳是什么意思| 手机账号是什么| 上海元宵节吃什么| 打嗝不停是什么原因| 因缘际会是什么意思| 鱼油有什么作用| 通灵是什么意思| 牙龈紫黑是什么原因| nc是什么| 百度

白内障的主要症状是什么


Directory: ../../../ffmpeg/
File: src/tests/checkasm/h264pred.c
Date: 2025-08-04 00:43:16
Exec Total Coverage
Lines: 61 65 93.8%
Functions: 5 5 100.0%
Branches: 85 120 70.8%

Line Branch Exec Source
1 /*
2 * Copyright (c) 2015 Henrik Gramner
3 *
4 * This file is part of FFmpeg.
5 *
6 * FFmpeg is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * FFmpeg is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with FFmpeg; if not, write to the Free Software Foundation, Inc.,
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 */
20
21 #include <string.h>
22 #include "checkasm.h"
23 #include "libavcodec/codec_id.h"
24 #include "libavcodec/h264pred.h"
25 #include "libavutil/common.h"
26 #include "libavutil/internal.h"
27 #include "libavutil/intreadwrite.h"
28 #include "libavutil/mem_internal.h"
29
30 static const int codec_ids[4] = { AV_CODEC_ID_H264, AV_CODEC_ID_VP8, AV_CODEC_ID_RV40, AV_CODEC_ID_SVQ3 };
31
32 static const char * const pred4x4_modes[4][15] = {
33 { /* H.264 */
34 [VERT_PRED ] = "vertical",
35 [HOR_PRED ] = "horizontal",
36 [DC_PRED ] = "dc",
37 [DIAG_DOWN_LEFT_PRED ] = "down_left",
38 [DIAG_DOWN_RIGHT_PRED] = "down_right",
39 [VERT_RIGHT_PRED ] = "vertical_right",
40 [HOR_DOWN_PRED ] = "horizontal_right",
41 [VERT_LEFT_PRED ] = "vertical_left",
42 [HOR_UP_PRED ] = "horizontal_up",
43 [LEFT_DC_PRED ] = "left_dc",
44 [TOP_DC_PRED ] = "top_dc",
45 [DC_128_PRED ] = "dc_128",
46 },
47 { /* VP8 */
48 [VERT_PRED ] = "vertical_vp8",
49 [HOR_PRED ] = "horizontal_vp8",
50 [VERT_LEFT_PRED] = "vertical_left_vp8",
51 [TM_VP8_PRED ] = "tm_vp8",
52 [DC_127_PRED ] = "dc_127_vp8",
53 [DC_129_PRED ] = "dc_129_vp8",
54 },
55 { /* RV40 */
56 [DIAG_DOWN_LEFT_PRED ] = "down_left_rv40",
57 [VERT_LEFT_PRED ] = "vertical_left_rv40",
58 [HOR_UP_PRED ] = "horizontal_up_rv40",
59 [DIAG_DOWN_LEFT_PRED_RV40_NODOWN] = "down_left_nodown_rv40",
60 [HOR_UP_PRED_RV40_NODOWN ] = "horizontal_up_nodown_rv40",
61 [VERT_LEFT_PRED_RV40_NODOWN ] = "vertical_left_nodown_rv40",
62 },
63 { /* SVQ3 */
64 [DIAG_DOWN_LEFT_PRED] = "down_left_svq3",
65 },
66 };
67
68 static const char * const pred8x8_modes[4][11] = {
69 { /* H.264 */
70 [DC_PRED8x8 ] = "dc",
71 [HOR_PRED8x8 ] = "horizontal",
72 [VERT_PRED8x8 ] = "vertical",
73 [PLANE_PRED8x8 ] = "plane",
74 [LEFT_DC_PRED8x8 ] = "left_dc",
75 [TOP_DC_PRED8x8 ] = "top_dc",
76 [DC_128_PRED8x8 ] = "dc_128",
77 [ALZHEIMER_DC_L0T_PRED8x8] = "mad_cow_dc_l0t",
78 [ALZHEIMER_DC_0LT_PRED8x8] = "mad_cow_dc_0lt",
79 [ALZHEIMER_DC_L00_PRED8x8] = "mad_cow_dc_l00",
80 [ALZHEIMER_DC_0L0_PRED8x8] = "mad_cow_dc_0l0",
81 },
82 { /* VP8 */
83 [PLANE_PRED8x8 ] = "tm_vp8",
84 [DC_127_PRED8x8] = "dc_127_vp8",
85 [DC_129_PRED8x8] = "dc_129_vp8",
86 },
87 { /* RV40 */
88 [DC_PRED8x8 ] = "dc_rv40",
89 [LEFT_DC_PRED8x8] = "left_dc_rv40",
90 [TOP_DC_PRED8x8 ] = "top_dc_rv40",
91 },
92 /* nothing for SVQ3 */
93 };
94
95 static const char * const pred16x16_modes[4][9] = {
96 { /* H.264 */
97 [DC_PRED8x8 ] = "dc",
98 [HOR_PRED8x8 ] = "horizontal",
99 [VERT_PRED8x8 ] = "vertical",
100 [PLANE_PRED8x8 ] = "plane",
101 [LEFT_DC_PRED8x8] = "left_dc",
102 [TOP_DC_PRED8x8 ] = "top_dc",
103 [DC_128_PRED8x8 ] = "dc_128",
104 },
105 { /* VP8 */
106 [PLANE_PRED8x8 ] = "tm_vp8",
107 [DC_127_PRED8x8] = "dc_127_vp8",
108 [DC_129_PRED8x8] = "dc_129_vp8",
109 },
110 { /* RV40 */
111 [PLANE_PRED8x8] = "plane_rv40",
112 },
113 { /* SVQ3 */
114 [PLANE_PRED8x8] = "plane_svq3",
115 },
116 };
117
118 static const uint32_t pixel_mask[3] = { 0xffffffff, 0x01ff01ff, 0x03ff03ff };
119
120 #define SIZEOF_PIXEL ((bit_depth + 7) / 8)
121 #define BUF_SIZE (3 * 16 * 17)
122
123 #define check_pred_func(func, name, mode_name) \
124 (mode_name && ((codec_ids[codec] == AV_CODEC_ID_H264) ? \
125 check_func(func, "pred%s_%s_%d", name, mode_name, bit_depth) : \
126 check_func(func, "pred%s_%s", name, mode_name)))
127
128 #define randomize_buffers() \
129 do { \
130 uint32_t mask = pixel_mask[bit_depth - 8]; \
131 int i; \
132 for (i = 0; i < BUF_SIZE; i += 4) { \
133 uint32_t r = rnd() & mask; \
134 AV_WN32A(buf0 + i, r); \
135 AV_WN32A(buf1 + i, r); \
136 } \
137 } while (0)
138
139 #define src0 (buf0 + 4 * 16) /* Offset to allow room for top and left */
140 #define src1 (buf1 + 4 * 16)
141
142 117 static void check_pred4x4(H264PredContext *h, uint8_t *buf0, uint8_t *buf1,
143 int codec, int chroma_format, int bit_depth)
144 {
145
2/2
✓ Branch 0 taken 78 times.
✓ Branch 1 taken 39 times.
117 if (chroma_format == 1) {
146 78 uint8_t *topright = buf0 + 2*16;
147 int pred_mode;
148
2/2
✓ Branch 1 taken 72 times.
✓ Branch 2 taken 6 times.
78 declare_func_emms(AV_CPU_FLAG_MMX | AV_CPU_FLAG_MMXEXT, void, uint8_t *src, const uint8_t *topright, ptrdiff_t stride);
149
150
2/2
✓ Branch 0 taken 1170 times.
✓ Branch 1 taken 78 times.
1248 for (pred_mode = 0; pred_mode < 15; pred_mode++) {
151
6/6
✓ Branch 0 taken 637 times.
✓ Branch 1 taken 533 times.
✓ Branch 2 taken 468 times.
✓ Branch 3 taken 169 times.
✓ Branch 10 taken 74 times.
✓ Branch 11 taken 563 times.
1170 if (check_pred_func(h->pred4x4[pred_mode], "4x4", pred4x4_modes[codec][pred_mode])) {
152
2/2
✓ Branch 1 taken 15096 times.
✓ Branch 2 taken 74 times.
15170 randomize_buffers();
153 74 call_ref(src0, topright, 12*SIZEOF_PIXEL);
154 74 call_new(src1, topright, 12*SIZEOF_PIXEL);
155
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 74 times.
74 if (memcmp(buf0, buf1, BUF_SIZE))
156 fail();
157
1/8
✗ Branch 1 not taken.
✓ Branch 2 taken 74 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
74 bench_new(src1, topright, 12*SIZEOF_PIXEL);
158 }
159 }
160 }
161 117 }
162
163 117 static void check_pred8x8(H264PredContext *h, uint8_t *buf0, uint8_t *buf1,
164 int codec, int chroma_format, int bit_depth)
165 {
166 int pred_mode;
167
2/2
✓ Branch 1 taken 108 times.
✓ Branch 2 taken 9 times.
117 declare_func_emms(AV_CPU_FLAG_MMX | AV_CPU_FLAG_MMXEXT, void, uint8_t *src, ptrdiff_t stride);
168
169
2/2
✓ Branch 0 taken 1287 times.
✓ Branch 1 taken 117 times.
1404 for (pred_mode = 0; pred_mode < 11; pred_mode++) {
170
9/10
✓ Branch 0 taken 936 times.
✓ Branch 1 taken 351 times.
✓ Branch 2 taken 858 times.
✓ Branch 3 taken 78 times.
✓ Branch 6 taken 429 times.
✓ Branch 7 taken 429 times.
✗ Branch 11 not taken.
✓ Branch 12 taken 78 times.
✓ Branch 14 taken 86 times.
✓ Branch 15 taken 850 times.
1287 if (check_pred_func(h->pred8x8[pred_mode], (chroma_format == 2) ? "8x16" : "8x8",
171 pred8x8_modes[codec][pred_mode])) {
172
2/2
✓ Branch 1 taken 17544 times.
✓ Branch 2 taken 86 times.
17630 randomize_buffers();
173 86 call_ref(src0, 24*SIZEOF_PIXEL);
174 86 call_new(src1, 24*SIZEOF_PIXEL);
175
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 86 times.
86 if (memcmp(buf0, buf1, BUF_SIZE))
176 fail();
177
1/8
✗ Branch 1 not taken.
✓ Branch 2 taken 86 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
86 bench_new(src1, 24*SIZEOF_PIXEL);
178 }
179 }
180 117 }
181
182 117 static void check_pred16x16(H264PredContext *h, uint8_t *buf0, uint8_t *buf1,
183 int codec, int chroma_format, int bit_depth)
184 {
185
2/2
✓ Branch 0 taken 78 times.
✓ Branch 1 taken 39 times.
117 if (chroma_format == 1) {
186 int pred_mode;
187
2/2
✓ Branch 1 taken 72 times.
✓ Branch 2 taken 6 times.
78 declare_func_emms(AV_CPU_FLAG_MMX | AV_CPU_FLAG_MMXEXT, void, uint8_t *src, ptrdiff_t stride);
188
189
2/2
✓ Branch 0 taken 702 times.
✓ Branch 1 taken 78 times.
780 for (pred_mode = 0; pred_mode < 9; pred_mode++) {
190
6/6
✓ Branch 0 taken 338 times.
✓ Branch 1 taken 364 times.
✓ Branch 2 taken 273 times.
✓ Branch 3 taken 65 times.
✓ Branch 10 taken 45 times.
✓ Branch 11 taken 293 times.
702 if (check_pred_func(h->pred16x16[pred_mode], "16x16", pred16x16_modes[codec][pred_mode])) {
191
2/2
✓ Branch 1 taken 9180 times.
✓ Branch 2 taken 45 times.
9225 randomize_buffers();
192 45 call_ref(src0, 48);
193 45 call_new(src1, 48);
194
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 45 times.
45 if (memcmp(buf0, buf1, BUF_SIZE))
195 fail();
196
1/8
✗ Branch 1 not taken.
✓ Branch 2 taken 45 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
45 bench_new(src1, 48);
197 }
198 }
199 }
200 117 }
201
202 117 static void check_pred8x8l(H264PredContext *h, uint8_t *buf0, uint8_t *buf1,
203 int codec, int chroma_format, int bit_depth)
204 {
205
4/4
✓ Branch 0 taken 78 times.
✓ Branch 1 taken 39 times.
✓ Branch 2 taken 39 times.
✓ Branch 3 taken 39 times.
117 if (chroma_format == 1 && codec_ids[codec] == AV_CODEC_ID_H264) {
206 int pred_mode;
207
2/2
✓ Branch 1 taken 33 times.
✓ Branch 2 taken 6 times.
39 declare_func_emms(AV_CPU_FLAG_MMXEXT, void, uint8_t *src, int topleft, int topright, ptrdiff_t stride);
208
209
2/2
✓ Branch 0 taken 468 times.
✓ Branch 1 taken 39 times.
507 for (pred_mode = 0; pred_mode < 12; pred_mode++) {
210
4/6
✓ Branch 0 taken 468 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 468 times.
✗ Branch 3 not taken.
✓ Branch 10 taken 78 times.
✓ Branch 11 taken 390 times.
468 if (check_pred_func(h->pred8x8l[pred_mode], "8x8l", pred4x4_modes[codec][pred_mode])) {
211 int neighbors;
212
2/2
✓ Branch 0 taken 312 times.
✓ Branch 1 taken 78 times.
390 for (neighbors = 0; neighbors <= 0xc000; neighbors += 0x4000) {
213 312 int has_topleft = neighbors & 0x8000;
214 312 int has_topright = neighbors & 0x4000;
215
216
6/6
✓ Branch 0 taken 280 times.
✓ Branch 1 taken 32 times.
✓ Branch 2 taken 32 times.
✓ Branch 3 taken 248 times.
✓ Branch 4 taken 32 times.
✓ Branch 5 taken 32 times.
312 if ((pred_mode == DIAG_DOWN_RIGHT_PRED || pred_mode == VERT_RIGHT_PRED) && !has_topleft)
217 32 continue; /* Those aren't allowed according to the spec */
218
219
2/2
✓ Branch 1 taken 57120 times.
✓ Branch 2 taken 280 times.
57400 randomize_buffers();
220 280 call_ref(src0, has_topleft, has_topright, 24*SIZEOF_PIXEL);
221 280 call_new(src1, has_topleft, has_topright, 24*SIZEOF_PIXEL);
222
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 280 times.
280 if (memcmp(buf0, buf1, BUF_SIZE))
223 fail();
224
1/8
✗ Branch 1 not taken.
✓ Branch 2 taken 280 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
280 bench_new(src1, has_topleft, has_topright, 24*SIZEOF_PIXEL);
225 }
226 }
227 }
228 }
229 117 }
230
231 /* TODO: Add tests for H.264 lossless H/V prediction */
232
233 13 void checkasm_check_h264pred(void)
234 {
235 static const struct {
236 void (*func)(H264PredContext*, uint8_t*, uint8_t*, int, int, int);
237 const char *name;
238 } tests[] = {
239 { check_pred4x4, "pred4x4" },
240 { check_pred8x8, "pred8x8" },
241 { check_pred16x16, "pred16x16" },
242 { check_pred8x8l, "pred8x8l" },
243 };
244
245 13 LOCAL_ALIGNED_16(uint8_t, buf0, [BUF_SIZE]);
246 13 LOCAL_ALIGNED_16(uint8_t, buf1, [BUF_SIZE]);
247 H264PredContext h;
248 int test, codec, chroma_format, bit_depth;
249
250
2/2
✓ Branch 0 taken 52 times.
✓ Branch 1 taken 13 times.
65 for (test = 0; test < FF_ARRAY_ELEMS(tests); test++) {
251
2/2
✓ Branch 0 taken 208 times.
✓ Branch 1 taken 52 times.
260 for (codec = 0; codec < 4; codec++) {
252 208 int codec_id = codec_ids[codec];
253
4/4
✓ Branch 0 taken 208 times.
✓ Branch 1 taken 312 times.
✓ Branch 2 taken 312 times.
✓ Branch 3 taken 208 times.
520 for (bit_depth = 8; bit_depth <= (codec_id == AV_CODEC_ID_H264 ? 10 : 8); bit_depth++)
254
4/4
✓ Branch 0 taken 468 times.
✓ Branch 1 taken 312 times.
✓ Branch 2 taken 468 times.
✓ Branch 3 taken 312 times.
780 for (chroma_format = 1; chroma_format <= (codec_id == AV_CODEC_ID_H264 ? 2 : 1); chroma_format++) {
255 468 ff_h264_pred_init(&h, codec_id, bit_depth, chroma_format);
256 468 tests[test].func(&h, buf0, buf1, codec, chroma_format, bit_depth);
257 }
258 }
259 52 report("%s", tests[test].name);
260 }
261 13 }
262

调教什么意思 呆子是什么意思 高血压头晕吃什么药 阴虚火旺吃什么药 莲子不能和什么一起吃
什么是抽动症 美如天仙是什么生肖 ti什么意思 2月28号是什么星座 月球是地球的什么
望远镜什么牌子好 迪奥口红属于什么档次 为什么新疆人不吃猪肉 pdo是什么意思 小蓝片是什么
肚脐左上方是什么部位 缺钾吃什么药 梦见死人复活是什么意思 预防医学是什么 立冬吃什么东西
联票是什么意思hcv7jop4ns7r.cn 意中人是什么意思hcv8jop9ns4r.cn 毛鸡蛋是什么hcv9jop4ns6r.cn 哪吒为什么叫哪吒luyiluode.com 阑尾炎可以吃什么水果hcv8jop0ns5r.cn
抗核抗体阳性是什么意思gysmod.com 肚子不舒服吃什么药hcv8jop0ns6r.cn 脚肿是什么病hcv8jop2ns2r.cn 喝什么茶叶减肥效果最好xianpinbao.com 肚子有水声是什么原因hcv9jop8ns3r.cn
低回声斑块是什么意思hcv8jop6ns3r.cn 毛泽东的女儿为什么姓李hcv9jop7ns4r.cn 然五行属什么hcv8jop0ns7r.cn 大腿根部是什么部位hcv8jop9ns4r.cn 癌抗原125是什么意思hcv9jop2ns7r.cn
任性妄为是什么意思zsyouku.com 迷走神经是什么hcv8jop9ns7r.cn 脖子痛什么原因引起的hcv9jop8ns2r.cn 凯子和马子是什么意思hcv9jop3ns5r.cn 挂匾是什么意思hcv8jop0ns3r.cn
百度