@@ -174,7 +174,7 @@ def _numpy_avbuffer_free(
174174 Py_DECREF (cython .cast (object , opaque ))
175175
176176
177- _cinit_bypass_sentinel = object ( )
177+ _cinit_bypass_sentinel = cython . declare ( object , object () )
178178
179179# `pix_fmt`s supported by Frame.to_ndarray() and Frame.from_ndarray()
180180supported_np_pix_fmts = {
@@ -266,87 +266,90 @@ def _numpy_avbuffer_free(
266266
267267# Mapping from format name to (itemsize, dtype) for formats where planes
268268# are simply concatenated into shape (height, width, channels).
269- _np_pix_fmt_dtypes : dict [str , tuple [cython .uint , str ]] = {
270- "abgr" : (4 , "uint8" ),
271- "argb" : (4 , "uint8" ),
272- "bayer_bggr8" : (1 , "uint8" ),
273- "bayer_gbrg8" : (1 , "uint8" ),
274- "bayer_grbg8" : (1 , "uint8" ),
275- "bayer_rggb8" : (1 , "uint8" ),
276- "bayer_bggr16le" : (2 , "uint16" ),
277- "bayer_bggr16be" : (2 , "uint16" ),
278- "bayer_gbrg16le" : (2 , "uint16" ),
279- "bayer_gbrg16be" : (2 , "uint16" ),
280- "bayer_grbg16le" : (2 , "uint16" ),
281- "bayer_grbg16be" : (2 , "uint16" ),
282- "bayer_rggb16le" : (2 , "uint16" ),
283- "bayer_rggb16be" : (2 , "uint16" ),
284- "bgr24" : (3 , "uint8" ),
285- "bgr48be" : (6 , "uint16" ),
286- "bgr48le" : (6 , "uint16" ),
287- "bgr8" : (1 , "uint8" ),
288- "bgra" : (4 , "uint8" ),
289- "bgra64be" : (8 , "uint16" ),
290- "bgra64le" : (8 , "uint16" ),
291- "gbrap" : (1 , "uint8" ),
292- "gbrap10be" : (2 , "uint16" ),
293- "gbrap10le" : (2 , "uint16" ),
294- "gbrap12be" : (2 , "uint16" ),
295- "gbrap12le" : (2 , "uint16" ),
296- "gbrap14be" : (2 , "uint16" ),
297- "gbrap14le" : (2 , "uint16" ),
298- "gbrap16be" : (2 , "uint16" ),
299- "gbrap16le" : (2 , "uint16" ),
300- "gbrapf32be" : (4 , "float32" ),
301- "gbrapf32le" : (4 , "float32" ),
302- "gbrp" : (1 , "uint8" ),
303- "gbrp10be" : (2 , "uint16" ),
304- "gbrp10le" : (2 , "uint16" ),
305- "gbrp12be" : (2 , "uint16" ),
306- "gbrp12le" : (2 , "uint16" ),
307- "gbrp14be" : (2 , "uint16" ),
308- "gbrp14le" : (2 , "uint16" ),
309- "gbrp16be" : (2 , "uint16" ),
310- "gbrp16le" : (2 , "uint16" ),
311- "gbrp9be" : (2 , "uint16" ),
312- "gbrp9le" : (2 , "uint16" ),
313- "gbrpf32be" : (4 , "float32" ),
314- "gbrpf32le" : (4 , "float32" ),
315- "gray" : (1 , "uint8" ),
316- "gray10be" : (2 , "uint16" ),
317- "gray10le" : (2 , "uint16" ),
318- "gray12be" : (2 , "uint16" ),
319- "gray12le" : (2 , "uint16" ),
320- "gray14be" : (2 , "uint16" ),
321- "gray14le" : (2 , "uint16" ),
322- "gray16be" : (2 , "uint16" ),
323- "gray16le" : (2 , "uint16" ),
324- "gray8" : (1 , "uint8" ),
325- "gray9be" : (2 , "uint16" ),
326- "gray9le" : (2 , "uint16" ),
327- "grayf32be" : (4 , "float32" ),
328- "grayf32le" : (4 , "float32" ),
329- "rgb24" : (3 , "uint8" ),
330- "rgb48be" : (6 , "uint16" ),
331- "rgb48le" : (6 , "uint16" ),
332- "rgb8" : (1 , "uint8" ),
333- "rgba" : (4 , "uint8" ),
334- "rgba64be" : (8 , "uint16" ),
335- "rgba64le" : (8 , "uint16" ),
336- "rgbaf16be" : (8 , "float16" ),
337- "rgbaf16le" : (8 , "float16" ),
338- "rgbaf32be" : (16 , "float32" ),
339- "rgbaf32le" : (16 , "float32" ),
340- "rgbf32be" : (12 , "float32" ),
341- "rgbf32le" : (12 , "float32" ),
342- "yuv444p" : (1 , "uint8" ),
343- "yuv444p16be" : (2 , "uint16" ),
344- "yuv444p16le" : (2 , "uint16" ),
345- "yuva444p16be" : (2 , "uint16" ),
346- "yuva444p16le" : (2 , "uint16" ),
347- "yuvj444p" : (1 , "uint8" ),
348- "yuyv422" : (2 , "uint8" ),
349- }
269+ _np_pix_fmt_dtypes = cython .declare (
270+ dict [str , tuple [cython .uint , str ]],
271+ {
272+ "abgr" : (4 , "uint8" ),
273+ "argb" : (4 , "uint8" ),
274+ "bayer_bggr8" : (1 , "uint8" ),
275+ "bayer_gbrg8" : (1 , "uint8" ),
276+ "bayer_grbg8" : (1 , "uint8" ),
277+ "bayer_rggb8" : (1 , "uint8" ),
278+ "bayer_bggr16le" : (2 , "uint16" ),
279+ "bayer_bggr16be" : (2 , "uint16" ),
280+ "bayer_gbrg16le" : (2 , "uint16" ),
281+ "bayer_gbrg16be" : (2 , "uint16" ),
282+ "bayer_grbg16le" : (2 , "uint16" ),
283+ "bayer_grbg16be" : (2 , "uint16" ),
284+ "bayer_rggb16le" : (2 , "uint16" ),
285+ "bayer_rggb16be" : (2 , "uint16" ),
286+ "bgr24" : (3 , "uint8" ),
287+ "bgr48be" : (6 , "uint16" ),
288+ "bgr48le" : (6 , "uint16" ),
289+ "bgr8" : (1 , "uint8" ),
290+ "bgra" : (4 , "uint8" ),
291+ "bgra64be" : (8 , "uint16" ),
292+ "bgra64le" : (8 , "uint16" ),
293+ "gbrap" : (1 , "uint8" ),
294+ "gbrap10be" : (2 , "uint16" ),
295+ "gbrap10le" : (2 , "uint16" ),
296+ "gbrap12be" : (2 , "uint16" ),
297+ "gbrap12le" : (2 , "uint16" ),
298+ "gbrap14be" : (2 , "uint16" ),
299+ "gbrap14le" : (2 , "uint16" ),
300+ "gbrap16be" : (2 , "uint16" ),
301+ "gbrap16le" : (2 , "uint16" ),
302+ "gbrapf32be" : (4 , "float32" ),
303+ "gbrapf32le" : (4 , "float32" ),
304+ "gbrp" : (1 , "uint8" ),
305+ "gbrp10be" : (2 , "uint16" ),
306+ "gbrp10le" : (2 , "uint16" ),
307+ "gbrp12be" : (2 , "uint16" ),
308+ "gbrp12le" : (2 , "uint16" ),
309+ "gbrp14be" : (2 , "uint16" ),
310+ "gbrp14le" : (2 , "uint16" ),
311+ "gbrp16be" : (2 , "uint16" ),
312+ "gbrp16le" : (2 , "uint16" ),
313+ "gbrp9be" : (2 , "uint16" ),
314+ "gbrp9le" : (2 , "uint16" ),
315+ "gbrpf32be" : (4 , "float32" ),
316+ "gbrpf32le" : (4 , "float32" ),
317+ "gray" : (1 , "uint8" ),
318+ "gray10be" : (2 , "uint16" ),
319+ "gray10le" : (2 , "uint16" ),
320+ "gray12be" : (2 , "uint16" ),
321+ "gray12le" : (2 , "uint16" ),
322+ "gray14be" : (2 , "uint16" ),
323+ "gray14le" : (2 , "uint16" ),
324+ "gray16be" : (2 , "uint16" ),
325+ "gray16le" : (2 , "uint16" ),
326+ "gray8" : (1 , "uint8" ),
327+ "gray9be" : (2 , "uint16" ),
328+ "gray9le" : (2 , "uint16" ),
329+ "grayf32be" : (4 , "float32" ),
330+ "grayf32le" : (4 , "float32" ),
331+ "rgb24" : (3 , "uint8" ),
332+ "rgb48be" : (6 , "uint16" ),
333+ "rgb48le" : (6 , "uint16" ),
334+ "rgb8" : (1 , "uint8" ),
335+ "rgba" : (4 , "uint8" ),
336+ "rgba64be" : (8 , "uint16" ),
337+ "rgba64le" : (8 , "uint16" ),
338+ "rgbaf16be" : (8 , "float16" ),
339+ "rgbaf16le" : (8 , "float16" ),
340+ "rgbaf32be" : (16 , "float32" ),
341+ "rgbaf32le" : (16 , "float32" ),
342+ "rgbf32be" : (12 , "float32" ),
343+ "rgbf32le" : (12 , "float32" ),
344+ "yuv444p" : (1 , "uint8" ),
345+ "yuv444p16be" : (2 , "uint16" ),
346+ "yuv444p16le" : (2 , "uint16" ),
347+ "yuva444p16be" : (2 , "uint16" ),
348+ "yuva444p16le" : (2 , "uint16" ),
349+ "yuvj444p" : (1 , "uint8" ),
350+ "yuyv422" : (2 , "uint8" ),
351+ },
352+ )
350353
351354
352355@cython .cfunc
0 commit comments