• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# This file will be copied into //third_party/externals/libgav1 via the new_local_repository
2# rule in WORKSPACE.bazel, so all files should be relative to that path.
3
4cc_library(
5    name = "libgav1",
6    srcs = [
7        "src/buffer_pool.cc",
8        "src/buffer_pool.h",
9        "src/decoder.cc",
10        "src/decoder_impl.cc",
11        "src/decoder_impl.h",
12        "src/decoder_settings.cc",
13        "src/decoder_state.h",
14        "src/dsp/arm/average_blend_neon.cc",
15        "src/dsp/arm/average_blend_neon.h",
16        "src/dsp/arm/cdef_neon.cc",
17        "src/dsp/arm/cdef_neon.h",
18        "src/dsp/arm/common_neon.h",
19        "src/dsp/arm/convolve_10bit_neon.cc",
20        "src/dsp/arm/convolve_neon.cc",
21        "src/dsp/arm/convolve_neon.h",
22        "src/dsp/arm/distance_weighted_blend_neon.cc",
23        "src/dsp/arm/distance_weighted_blend_neon.h",
24        "src/dsp/arm/film_grain_neon.cc",
25        "src/dsp/arm/film_grain_neon.h",
26        "src/dsp/arm/intra_edge_neon.cc",
27        "src/dsp/arm/intra_edge_neon.h",
28        "src/dsp/arm/intrapred_cfl_neon.cc",
29        "src/dsp/arm/intrapred_cfl_neon.h",
30        "src/dsp/arm/intrapred_directional_neon.cc",
31        "src/dsp/arm/intrapred_directional_neon.h",
32        "src/dsp/arm/intrapred_filter_neon.cc",
33        "src/dsp/arm/intrapred_filter_neon.h",
34        "src/dsp/arm/intrapred_neon.cc",
35        "src/dsp/arm/intrapred_neon.h",
36        "src/dsp/arm/intrapred_smooth_neon.cc",
37        "src/dsp/arm/intrapred_smooth_neon.h",
38        "src/dsp/arm/inverse_transform_10bit_neon.cc",
39        "src/dsp/arm/inverse_transform_neon.cc",
40        "src/dsp/arm/inverse_transform_neon.h",
41        "src/dsp/arm/loop_filter_10bit_neon.cc",
42        "src/dsp/arm/loop_filter_neon.cc",
43        "src/dsp/arm/loop_filter_neon.h",
44        "src/dsp/arm/loop_restoration_10bit_neon.cc",
45        "src/dsp/arm/loop_restoration_neon.cc",
46        "src/dsp/arm/loop_restoration_neon.h",
47        "src/dsp/arm/mask_blend_neon.cc",
48        "src/dsp/arm/mask_blend_neon.h",
49        "src/dsp/arm/motion_field_projection_neon.cc",
50        "src/dsp/arm/motion_field_projection_neon.h",
51        "src/dsp/arm/motion_vector_search_neon.cc",
52        "src/dsp/arm/motion_vector_search_neon.h",
53        "src/dsp/arm/obmc_neon.cc",
54        "src/dsp/arm/obmc_neon.h",
55        "src/dsp/arm/super_res_neon.cc",
56        "src/dsp/arm/super_res_neon.h",
57        "src/dsp/arm/warp_neon.cc",
58        "src/dsp/arm/warp_neon.h",
59        "src/dsp/arm/weight_mask_neon.cc",
60        "src/dsp/arm/weight_mask_neon.h",
61        "src/dsp/average_blend.cc",
62        "src/dsp/average_blend.h",
63        "src/dsp/cdef.cc",
64        "src/dsp/cdef.h",
65        "src/dsp/cdef.inc",
66        "src/dsp/common.h",
67        "src/dsp/constants.cc",
68        "src/dsp/constants.h",
69        "src/dsp/convolve.cc",
70        "src/dsp/convolve.h",
71        "src/dsp/convolve.inc",
72        "src/dsp/distance_weighted_blend.cc",
73        "src/dsp/distance_weighted_blend.h",
74        "src/dsp/dsp.cc",
75        "src/dsp/dsp.h",
76        "src/dsp/film_grain.cc",
77        "src/dsp/film_grain.h",
78        "src/dsp/film_grain_common.h",
79        "src/dsp/intra_edge.cc",
80        "src/dsp/intra_edge.h",
81        "src/dsp/intrapred.cc",
82        "src/dsp/intrapred.h",
83        "src/dsp/intrapred_cfl.cc",
84        "src/dsp/intrapred_cfl.h",
85        "src/dsp/intrapred_directional.cc",
86        "src/dsp/intrapred_directional.h",
87        "src/dsp/intrapred_filter.cc",
88        "src/dsp/intrapred_filter.h",
89        "src/dsp/intrapred_smooth.cc",
90        "src/dsp/intrapred_smooth.h",
91        "src/dsp/inverse_transform.cc",
92        "src/dsp/inverse_transform.h",
93        "src/dsp/inverse_transform.inc",
94        "src/dsp/loop_filter.cc",
95        "src/dsp/loop_filter.h",
96        "src/dsp/loop_restoration.cc",
97        "src/dsp/loop_restoration.h",
98        "src/dsp/mask_blend.cc",
99        "src/dsp/mask_blend.h",
100        "src/dsp/motion_field_projection.cc",
101        "src/dsp/motion_field_projection.h",
102        "src/dsp/motion_vector_search.cc",
103        "src/dsp/motion_vector_search.h",
104        "src/dsp/obmc.cc",
105        "src/dsp/obmc.h",
106        "src/dsp/obmc.inc",
107        "src/dsp/smooth_weights.inc",
108        "src/dsp/super_res.cc",
109        "src/dsp/super_res.h",
110        "src/dsp/warp.cc",
111        "src/dsp/warp.h",
112        "src/dsp/weight_mask.cc",
113        "src/dsp/weight_mask.h",
114        "src/dsp/x86/average_blend_sse4.cc",
115        "src/dsp/x86/average_blend_sse4.h",
116        "src/dsp/x86/cdef_avx2.cc",
117        "src/dsp/x86/cdef_avx2.h",
118        "src/dsp/x86/cdef_sse4.cc",
119        "src/dsp/x86/cdef_sse4.h",
120        "src/dsp/x86/common_avx2.h",
121        "src/dsp/x86/common_avx2.inc",
122        "src/dsp/x86/common_sse4.h",
123        "src/dsp/x86/common_sse4.inc",
124        "src/dsp/x86/convolve_avx2.cc",
125        "src/dsp/x86/convolve_avx2.h",
126        "src/dsp/x86/convolve_sse4.cc",
127        "src/dsp/x86/convolve_sse4.h",
128        "src/dsp/x86/convolve_sse4.inc",
129        "src/dsp/x86/distance_weighted_blend_sse4.cc",
130        "src/dsp/x86/distance_weighted_blend_sse4.h",
131        "src/dsp/x86/film_grain_sse4.cc",
132        "src/dsp/x86/film_grain_sse4.h",
133        "src/dsp/x86/intra_edge_sse4.cc",
134        "src/dsp/x86/intra_edge_sse4.h",
135        "src/dsp/x86/intrapred_cfl_sse4.cc",
136        "src/dsp/x86/intrapred_cfl_sse4.h",
137        "src/dsp/x86/intrapred_directional_sse4.cc",
138        "src/dsp/x86/intrapred_directional_sse4.h",
139        "src/dsp/x86/intrapred_filter_sse4.cc",
140        "src/dsp/x86/intrapred_filter_sse4.h",
141        "src/dsp/x86/intrapred_smooth_sse4.cc",
142        "src/dsp/x86/intrapred_smooth_sse4.h",
143        "src/dsp/x86/intrapred_sse4.cc",
144        "src/dsp/x86/intrapred_sse4.h",
145        "src/dsp/x86/inverse_transform_sse4.cc",
146        "src/dsp/x86/inverse_transform_sse4.h",
147        "src/dsp/x86/loop_filter_sse4.cc",
148        "src/dsp/x86/loop_filter_sse4.h",
149        "src/dsp/x86/loop_restoration_10bit_avx2.cc",
150        "src/dsp/x86/loop_restoration_10bit_sse4.cc",
151        "src/dsp/x86/loop_restoration_avx2.cc",
152        "src/dsp/x86/loop_restoration_avx2.h",
153        "src/dsp/x86/loop_restoration_sse4.cc",
154        "src/dsp/x86/loop_restoration_sse4.h",
155        "src/dsp/x86/mask_blend_sse4.cc",
156        "src/dsp/x86/mask_blend_sse4.h",
157        "src/dsp/x86/motion_field_projection_sse4.cc",
158        "src/dsp/x86/motion_field_projection_sse4.h",
159        "src/dsp/x86/motion_vector_search_sse4.cc",
160        "src/dsp/x86/motion_vector_search_sse4.h",
161        "src/dsp/x86/obmc_sse4.cc",
162        "src/dsp/x86/obmc_sse4.h",
163        "src/dsp/x86/super_res_sse4.cc",
164        "src/dsp/x86/super_res_sse4.h",
165        "src/dsp/x86/transpose_sse4.h",
166        "src/dsp/x86/warp_sse4.cc",
167        "src/dsp/x86/warp_sse4.h",
168        "src/dsp/x86/weight_mask_sse4.cc",
169        "src/dsp/x86/weight_mask_sse4.h",
170        "src/film_grain.cc",
171        "src/film_grain.h",
172        "src/frame_buffer.cc",
173        "src/frame_buffer_utils.h",
174        "src/frame_scratch_buffer.h",
175        "src/gav1/decoder.h",
176        "src/gav1/decoder_buffer.h",
177        "src/gav1/decoder_settings.h",
178        "src/gav1/frame_buffer.h",
179        "src/gav1/status_code.h",
180        "src/gav1/symbol_visibility.h",
181        "src/gav1/version.h",
182        "src/inter_intra_masks.inc",
183        "src/internal_frame_buffer_list.cc",
184        "src/internal_frame_buffer_list.h",
185        "src/loop_restoration_info.cc",
186        "src/loop_restoration_info.h",
187        "src/motion_vector.cc",
188        "src/motion_vector.h",
189        "src/obu_parser.cc",
190        "src/obu_parser.h",
191        "src/post_filter.h",
192        "src/post_filter/cdef.cc",
193        "src/post_filter/deblock.cc",
194        "src/post_filter/deblock_thresholds.inc",
195        "src/post_filter/loop_restoration.cc",
196        "src/post_filter/post_filter.cc",
197        "src/post_filter/super_res.cc",
198        "src/prediction_mask.cc",
199        "src/prediction_mask.h",
200        "src/quantizer.cc",
201        "src/quantizer.h",
202        "src/quantizer_tables.inc",
203        "src/reconstruction.cc",
204        "src/reconstruction.h",
205        "src/residual_buffer_pool.cc",
206        "src/residual_buffer_pool.h",
207        "src/scan_tables.inc",
208        "src/status_code.cc",
209        "src/symbol_decoder_context.cc",
210        "src/symbol_decoder_context.h",
211        "src/symbol_decoder_context_cdfs.inc",
212        "src/threading_strategy.cc",
213        "src/threading_strategy.h",
214        "src/tile.h",
215        "src/tile/bitstream/mode_info.cc",
216        "src/tile/bitstream/palette.cc",
217        "src/tile/bitstream/partition.cc",
218        "src/tile/bitstream/transform_size.cc",
219        "src/tile/prediction.cc",
220        "src/tile/tile.cc",
221        "src/tile_scratch_buffer.cc",
222        "src/tile_scratch_buffer.h",
223        "src/utils/array_2d.h",
224        "src/utils/bit_mask_set.h",
225        "src/utils/bit_reader.cc",
226        "src/utils/bit_reader.h",
227        "src/utils/block_parameters_holder.cc",
228        "src/utils/block_parameters_holder.h",
229        "src/utils/blocking_counter.h",
230        "src/utils/common.h",
231        "src/utils/compiler_attributes.h",
232        "src/utils/constants.cc",
233        "src/utils/constants.h",
234        "src/utils/cpu.cc",
235        "src/utils/cpu.h",
236        "src/utils/dynamic_buffer.h",
237        "src/utils/entropy_decoder.cc",
238        "src/utils/entropy_decoder.h",
239        "src/utils/entropy_decoder_test_data.inc",
240        "src/utils/executor.cc",
241        "src/utils/executor.h",
242        "src/utils/logging.cc",
243        "src/utils/logging.h",
244        "src/utils/memory.h",
245        "src/utils/queue.h",
246        "src/utils/raw_bit_reader.cc",
247        "src/utils/raw_bit_reader.h",
248        "src/utils/reference_info.h",
249        "src/utils/segmentation.cc",
250        "src/utils/segmentation.h",
251        "src/utils/segmentation_map.cc",
252        "src/utils/segmentation_map.h",
253        "src/utils/stack.h",
254        "src/utils/threadpool.cc",
255        "src/utils/threadpool.h",
256        "src/utils/types.h",
257        "src/utils/unbounded_queue.h",
258        "src/utils/vector.h",
259        "src/version.cc",
260        "src/warp_prediction.cc",
261        "src/warp_prediction.h",
262        "src/yuv_buffer.cc",
263        "src/yuv_buffer.h",
264    ],
265    hdrs = [
266        "src/gav1/decoder.h",
267        "src/gav1/decoder_buffer.h",
268        "src/gav1/decoder_settings.h",
269        "src/gav1/frame_buffer.h",
270        "src/gav1/status_code.h",
271        "src/gav1/symbol_visibility.h",
272        "src/gav1/version.h",
273    ],
274    includes = ["src"],
275    local_defines = [
276        "LIBGAV1_MAX_BITDEPTH=12",
277        "LIBGAV1_THREADPOOL_USE_STD_MUTEX",
278        "LIBGAV1_ENABLE_LOGGING=0",
279    ],
280    visibility = ["//visibility:public"],
281    #copts = WEBP_COPTS,
282)
283