diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2013-01-20 22:12:35 -0800 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2013-01-20 22:12:35 -0800 |
commit | e6bc38fd49c94726b45d5d5cc2b756ad8ec49ee0 (patch) | |
tree | 372ff5d7a56c1ea732d01ee4051293bf0309162b /libavcodec/wmv2dsp.h | |
parent | 8a4f26206d7914eaf2903954ce97cb7686933382 (diff) | |
download | ffmpeg-e6bc38fd49c94726b45d5d5cc2b756ad8ec49ee0.tar.gz |
wmv2: move IDCT to its own DSP context.
This allows us to remove FF_IDCT_WMV2, which serves no practical purpose
other than to be able to select the WMV2 IDCT for MPEG (or vice versa)
and get corrupt output.
Fate tests for all wmv2-related tests change, because (for some obscure
reason) they forced use of the MPEG IDCT. You would get the same changes
previously by not using -idct simple in the fate test (or replacing it
with -idct auto).
Diffstat (limited to 'libavcodec/wmv2dsp.h')
-rw-r--r-- | libavcodec/wmv2dsp.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libavcodec/wmv2dsp.h b/libavcodec/wmv2dsp.h new file mode 100644 index 0000000000..eaffcfc537 --- /dev/null +++ b/libavcodec/wmv2dsp.h @@ -0,0 +1,34 @@ +/* + * This file is part of Libav. + * + * Libav is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * Libav is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with Libav; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVCODEC_WMV2DSP_H +#define AVCODEC_WMV2DSP_H + +#include <stdint.h> +#include "dsputil.h" + +typedef struct WMV2DSPContext { + void (*idct_add)(uint8_t *dest, int line_size, DCTELEM *block); + void (*idct_put)(uint8_t *dest, int line_size, DCTELEM *block); + + int idct_perm; +} WMV2DSPContext; + +void ff_wmv2dsp_init(WMV2DSPContext *c); + +#endif /* AVCODEC_WMV2DSP_H */ |