Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-12-29 04:40:34 +0400
committerMichael Niedermayer <michaelni@gmx.at>2011-12-29 04:40:34 +0400
commit6071e4d87a9b257c3f7b5912825ede9caa757624 (patch)
treeaeaad3a1d7eb0b27f20a66665740d2a96e99f7c2 /libavcodec/ivi_dsp.h
parent7e5cbb3c2d96c27d526aa69cbdbd1ab23739d7e5 (diff)
parent8f5216905f88510c9a74cd91a424902aa989b9a1 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: v410dec: Check for sufficient input data. Fixes crash fate: Add v210 codec regression tests mpegts: adjustable minimum PES payload mpegts: properly output large audio packets avformat: Add SMJPEG demuxer. Indeo 4 decoder Conflicts: doc/general.texi libavcodec/v410dec.c libavcodec/version.h libavformat/mpegtsenc.c libavformat/smjpeg.c libavformat/version.h tests/codec-regression.sh Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/ivi_dsp.h')
-rw-r--r--libavcodec/ivi_dsp.h39
1 files changed, 38 insertions, 1 deletions
diff --git a/libavcodec/ivi_dsp.h b/libavcodec/ivi_dsp.h
index 4fb2f80035..5a3441764c 100644
--- a/libavcodec/ivi_dsp.h
+++ b/libavcodec/ivi_dsp.h
@@ -1,7 +1,7 @@
/*
* DSP functions for Indeo Video Interactive codecs (Indeo4 and Indeo5)
*
- * Copyright (c) 2009 Maxim Poliakovski
+ * Copyright (c) 2009-2011 Maxim Poliakovski
*
* This file is part of FFmpeg.
*
@@ -44,6 +44,43 @@ void ff_ivi_recompose53(const IVIPlaneDesc *plane, uint8_t *dst,
const int dst_pitch, const int num_bands);
/**
+ * Haar wavelet recomposition filter for Indeo 4
+ *
+ * @param[in] plane pointer to the descriptor of the plane being processed
+ * @param[out] dst pointer to the destination buffer
+ * @param[in] dst_pitch pitch of the destination buffer
+ * @param[in] num_bands number of wavelet bands to be processed
+ */
+void ff_ivi_recompose_haar(const IVIPlaneDesc *plane, uint8_t *dst,
+ const int dst_pitch, const int num_bands);
+
+/**
+ * two-dimensional inverse Haar 8x8 transform for Indeo 4
+ *
+ * @param[in] in pointer to the vector of transform coefficients
+ * @param[out] out pointer to the output buffer (frame)
+ * @param[in] pitch pitch to move to the next y line
+ * @param[in] flags pointer to the array of column flags:
+ * != 0 - non_empty column, 0 - empty one
+ * (this array must be filled by caller)
+ */
+void ff_ivi_inverse_haar_8x8(const int32_t *in, int16_t *out, uint32_t pitch,
+ const uint8_t *flags);
+
+/**
+ * DC-only two-dimensional inverse Haar transform for Indeo 4.
+ * Performing the inverse transform in this case is equivalent to
+ * spreading DC_coeff >> 3 over the whole block.
+ *
+ * @param[in] in pointer to the dc coefficient
+ * @param[out] out pointer to the output buffer (frame)
+ * @param[in] pitch pitch to move to the next y line
+ * @param[in] blk_size transform block size
+ */
+void ff_ivi_dc_haar_2d(const int32_t *in, int16_t *out, uint32_t pitch,
+ int blk_size);
+
+/**
* two-dimensional inverse slant 8x8 transform
*
* @param[in] in pointer to the vector of transform coefficients