-static void prores_idct_put_c(uint16_t *out, ptrdiff_t linesize, int16_t *block, const int16_t *qmat)
+static void put_pixels_10(uint16_t *dst, ptrdiff_t linesize, const int16_t *in)
+{
+ put_pixel(dst, linesize, in, 10);
+}
+
+static void put_pixels_12(uint16_t *dst, ptrdiff_t linesize, const int16_t *in)
+{
+ put_pixel(dst, linesize, in, 12);
+}
+
+static void prores_idct_put_10_c(uint16_t *out, ptrdiff_t linesize, int16_t *block, const int16_t *qmat)
+{
+ ff_prores_idct_10(block, qmat);
+ put_pixels_10(out, linesize >> 1, block);
+}
+
+static void prores_idct_put_12_c(uint16_t *out, ptrdiff_t linesize, int16_t *block, const int16_t *qmat)