annotate faxcompr.h @ 12197:fbf4d5b1b664 libavcodec

Remove FF_MM_SSE2/3 flags for CPUs where this is generally not faster than regular MMX code. Examples of this are the Core1 CPU. Instead, set a new flag, FF_MM_SSE2/3SLOW, which can be checked for particular SSE2/3 functions that have been checked specifically on such CPUs and are actually faster than their MMX counterparts. In addition, use this flag to enable particular VP8 and LPC SSE2 functions that are faster than their MMX counterparts. Based on a patch by Loren Merritt <lorenm AT u washington edu>.
author rbultje
date Mon, 19 Jul 2010 22:38:23 +0000
parents 7dd2a45249a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
1 /*
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
2 * CCITT Fax Group 3 and 4 decompression
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
3 * Copyright (c) 2008 Konstantin Shishkov
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
4 *
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
5 * This file is part of FFmpeg.
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
6 *
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
11 *
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
15 * Lesser General Public License for more details.
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
16 *
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
20 */
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
21
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
22 /**
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
23 * CCITT Fax Group 3 and 4 decompression
11644
7dd2a45249a9 Remove explicit filename from Doxygen @file commands.
diego
parents: 10305
diff changeset
24 * @file
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
25 * @author Konstantin Shishkov
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
26 */
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
27 #ifndef AVCODEC_FAXCOMPR_H
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
28 #define AVCODEC_FAXCOMPR_H
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
29
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
30 #include "avcodec.h"
8474
cb4009996efa Merge ff_ccitt_unpack_1d and 2d.
michael
parents: 8466
diff changeset
31 #include "tiff.h"
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
32
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
33 /**
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
34 * initialize upacker code
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
35 */
8693
18737839ed27 Add missing void keyword to parameterless function declarations.
diego
parents: 8474
diff changeset
36 void ff_ccitt_unpack_init(void);
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
37
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
38 /**
8474
cb4009996efa Merge ff_ccitt_unpack_1d and 2d.
michael
parents: 8466
diff changeset
39 * unpack data compressed with CCITT Group 3 1/2-D or Group 4 method
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
40 */
8474
cb4009996efa Merge ff_ccitt_unpack_1d and 2d.
michael
parents: 8466
diff changeset
41 int ff_ccitt_unpack(AVCodecContext *avctx,
10305
86fadefa1143 cosmetics: reindent and reformat function declarations
kostya
parents: 10304
diff changeset
42 const uint8_t *src, int srcsize,
86fadefa1143 cosmetics: reindent and reformat function declarations
kostya
parents: 10304
diff changeset
43 uint8_t *dst, int height, int stride,
86fadefa1143 cosmetics: reindent and reformat function declarations
kostya
parents: 10304
diff changeset
44 enum TiffCompr compr, int opts);
8466
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
45
a11f1002f6b0 CCITT Fax Group 3 and 4 decompression by kostya.
michael
parents:
diff changeset
46 #endif /* AVCODEC_FAXCOMPR_H */