Mercurial > libavcodec.hg
annotate raw.c @ 12266:48d6738904a9 libavcodec
Fix SPLATB_REG mess. Used to be a if/elseif/elseif/elseif spaghetti, so this
splits it into small optimization-specific macros which are selected for each
DSP function. The advantage of this approach is that the sse4 functions now
use the ssse3 codepath also without needing an explicit sse4 codepath.
author | rbultje |
---|---|
date | Sat, 24 Jul 2010 19:33:05 +0000 |
parents | 3ab26ab83911 |
children |
rev | line source |
---|---|
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
1 /* |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
2 * Raw Video Codec |
8629
04423b2f6e0b
cosmetics: Remove pointless period after copyright statement non-sentences.
diego
parents:
8256
diff
changeset
|
3 * Copyright (c) 2001 Fabrice Bellard |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
4 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
5 * This file is part of FFmpeg. |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
6 * |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
8 * modify it under the terms of the GNU Lesser General Public |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
9 * License as published by the Free Software Foundation; either |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
11 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
15 * Lesser General Public License for more details. |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
16 * |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
17 * You should have received a copy of the GNU Lesser General Public |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3777
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
3036
0b546eab515d
Update licensing information: The FSF changed postal address.
diego
parents:
2979
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
20 */ |
2967 | 21 |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
22 /** |
11644
7dd2a45249a9
Remove explicit filename from Doxygen @file commands.
diego
parents:
11622
diff
changeset
|
23 * @file |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
24 * Raw Video Codec |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
25 */ |
2967 | 26 |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
27 #include "avcodec.h" |
5264
810df021dbef
split rawvideo encoder and decoder in their own files
aurel
parents:
4872
diff
changeset
|
28 #include "raw.h" |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
29 |
11751
378caf7b42ef
Rename ff_raw_pixelFormatTags symbol to ff_raw_pix_fmt_tags.
stefano
parents:
11740
diff
changeset
|
30 const PixelFormatTag ff_raw_pix_fmt_tags[] = { |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
31 { PIX_FMT_YUV420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ |
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
32 { PIX_FMT_YUV420P, MKTAG('I', 'Y', 'U', 'V') }, |
3587
d4ab276e5987
Add YV12 support, patch by Steve Lhomme % steve P lhomme A free P fr %
gpoirier
parents:
3306
diff
changeset
|
33 { PIX_FMT_YUV420P, MKTAG('Y', 'V', '1', '2') }, |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
34 { PIX_FMT_YUV410P, MKTAG('Y', 'U', 'V', '9') }, |
9712 | 35 { PIX_FMT_YUV410P, MKTAG('Y', 'V', 'U', '9') }, |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
36 { PIX_FMT_YUV411P, MKTAG('Y', '4', '1', 'B') }, |
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
37 { PIX_FMT_YUV422P, MKTAG('Y', '4', '2', 'B') }, |
10457 | 38 { PIX_FMT_YUV422P, MKTAG('P', '4', '2', '2') }, |
11695
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
39 /* yuvjXXX formats are deprecated hacks specific to libav*, |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
40 they are identical to yuvXXX */ |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
41 { PIX_FMT_YUVJ420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */ |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
42 { PIX_FMT_YUVJ420P, MKTAG('I', 'Y', 'U', 'V') }, |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
43 { PIX_FMT_YUVJ420P, MKTAG('Y', 'V', '1', '2') }, |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
44 { PIX_FMT_YUVJ422P, MKTAG('Y', '4', '2', 'B') }, |
2912f70b4e71
Make the codec tags for the yuvjXXX pixel formats the same as the
stefano
parents:
11694
diff
changeset
|
45 { PIX_FMT_YUVJ422P, MKTAG('P', '4', '2', '2') }, |
11815
dfdb608a78ef
Remove weird empty line and perform vertical align.
stefano
parents:
11779
diff
changeset
|
46 { PIX_FMT_GRAY8, MKTAG('Y', '8', '0', '0') }, |
dfdb608a78ef
Remove weird empty line and perform vertical align.
stefano
parents:
11779
diff
changeset
|
47 { PIX_FMT_GRAY8, MKTAG(' ', ' ', 'Y', '8') }, |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
48 |
4494
ce643a22f049
Replace deprecated PIX_FMT names by the newer variants.
diego
parents:
4170
diff
changeset
|
49 { PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', '2') }, /* Packed formats */ |
ce643a22f049
Replace deprecated PIX_FMT names by the newer variants.
diego
parents:
4170
diff
changeset
|
50 { PIX_FMT_YUYV422, MKTAG('Y', '4', '2', '2') }, |
10457 | 51 { PIX_FMT_YUYV422, MKTAG('V', '4', '2', '2') }, |
10486 | 52 { PIX_FMT_YUYV422, MKTAG('V', 'Y', 'U', 'Y') }, |
10457 | 53 { PIX_FMT_YUYV422, MKTAG('Y', 'U', 'N', 'V') }, |
2142
caacb3f9ee51
Add UYVY support to libavcodec/raw.c patch by ("Todd.Kirby" <doubleshot at pacbell dot net>)
michael
parents:
2133
diff
changeset
|
54 { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'V', 'Y') }, |
5695 | 55 { PIX_FMT_UYVY422, MKTAG('H', 'D', 'Y', 'C') }, |
10457 | 56 { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'V') }, |
57 { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'Y') }, | |
58 { PIX_FMT_UYVY422, MKTAG('u', 'y', 'v', '1') }, | |
59 { PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', '1') }, | |
10880
1184d065c26a
Do not assign codec_tag to pix_fmt in rawdec.c, but in raw.c
cehoyos
parents:
10490
diff
changeset
|
60 { PIX_FMT_UYVY422, MKTAG('A', 'V', 'R', 'n') }, /* Avid AVI Codec 1:1 */ |
10884
867740c94988
Support decoding Avid 1:1x codec, (partially) fixes issue1684.
cehoyos
parents:
10880
diff
changeset
|
61 { PIX_FMT_UYVY422, MKTAG('A', 'V', '1', 'x') }, /* Avid 1:1x */ |
10885
e3e466b6bc5e
Support decoding of Avid uncompressed mov files, fixes issue 1685.
cehoyos
parents:
10884
diff
changeset
|
62 { PIX_FMT_UYVY422, MKTAG('A', 'V', 'u', 'p') }, |
10898 | 63 { PIX_FMT_UYVY422, MKTAG('V', 'D', 'T', 'Z') }, /* SoftLab-NSK VideoTizer */ |
11694
5e8fdcac294e
Add support to the Y411 codec tag, corresponding to the rawvideo pixel
stefano
parents:
11644
diff
changeset
|
64 { PIX_FMT_UYYVYY411, MKTAG('Y', '4', '1', '1') }, |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
65 { PIX_FMT_GRAY8, MKTAG('G', 'R', 'E', 'Y') }, |
11736 | 66 { PIX_FMT_NV12, MKTAG('N', 'V', '1', '2') }, |
67 { PIX_FMT_NV21, MKTAG('N', 'V', '2', '1') }, | |
11697
79a98585aa2d
Reorder nut specific codec tags and add a comment for marking them as
stefano
parents:
11696
diff
changeset
|
68 |
79a98585aa2d
Reorder nut specific codec tags and add a comment for marking them as
stefano
parents:
11696
diff
changeset
|
69 /* nut */ |
11622
5531833d63f4
Change ff_raw_pixelFormatTags RGB entries (RGB555, BGR555, RGB565,
stefano
parents:
10898
diff
changeset
|
70 { PIX_FMT_RGB555LE, MKTAG('R', 'G', 'B', 15) }, |
5531833d63f4
Change ff_raw_pixelFormatTags RGB entries (RGB555, BGR555, RGB565,
stefano
parents:
10898
diff
changeset
|
71 { PIX_FMT_BGR555LE, MKTAG('B', 'G', 'R', 15) }, |
5531833d63f4
Change ff_raw_pixelFormatTags RGB entries (RGB555, BGR555, RGB565,
stefano
parents:
10898
diff
changeset
|
72 { PIX_FMT_RGB565LE, MKTAG('R', 'G', 'B', 16) }, |
5531833d63f4
Change ff_raw_pixelFormatTags RGB entries (RGB555, BGR555, RGB565,
stefano
parents:
10898
diff
changeset
|
73 { PIX_FMT_BGR565LE, MKTAG('B', 'G', 'R', 16) }, |
11696
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
74 { PIX_FMT_RGB555BE, MKTAG(15 , 'B', 'G', 'R') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
75 { PIX_FMT_BGR555BE, MKTAG(15 , 'R', 'G', 'B') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
76 { PIX_FMT_RGB565BE, MKTAG(16 , 'B', 'G', 'R') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
77 { PIX_FMT_BGR565BE, MKTAG(16 , 'R', 'G', 'B') }, |
11840 | 78 { PIX_FMT_RGB444LE, MKTAG('R', 'G', 'B', 12) }, |
79 { PIX_FMT_BGR444LE, MKTAG('B', 'G', 'R', 12) }, | |
80 { PIX_FMT_RGB444BE, MKTAG(12 , 'B', 'G', 'R') }, | |
81 { PIX_FMT_BGR444BE, MKTAG(12 , 'R', 'G', 'B') }, | |
11696
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
82 { PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
83 { PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
84 { PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
85 { PIX_FMT_ARGB, MKTAG('A', 'R', 'G', 'B') }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
86 { PIX_FMT_RGB24, MKTAG('R', 'G', 'B', 24 ) }, |
9519a0e8cec6
Add missing nut-specific codec tags for rawvideo pixel formats.
stefano
parents:
11695
diff
changeset
|
87 { PIX_FMT_BGR24, MKTAG('B', 'G', 'R', 24 ) }, |
11737
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
88 { PIX_FMT_YUV411P, MKTAG('4', '1', '1', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
89 { PIX_FMT_YUV422P, MKTAG('4', '2', '2', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
90 { PIX_FMT_YUVJ422P, MKTAG('4', '2', '2', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
91 { PIX_FMT_YUV440P, MKTAG('4', '4', '0', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
92 { PIX_FMT_YUVJ440P, MKTAG('4', '4', '0', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
93 { PIX_FMT_YUV444P, MKTAG('4', '4', '4', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
94 { PIX_FMT_YUVJ444P, MKTAG('4', '4', '4', 'P') }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
95 { PIX_FMT_MONOWHITE,MKTAG('B', '1', 'W', '0') }, |
11740
87a5abd9b1ae
Fix typo ('B', 'O', 'W', '1') => ('B', '0', 'W', '1')
benoit
parents:
11737
diff
changeset
|
96 { PIX_FMT_MONOBLACK,MKTAG('B', '0', 'W', '1') }, |
11737
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
97 { PIX_FMT_BGR8, MKTAG('B', 'G', 'R', 8 ) }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
98 { PIX_FMT_RGB8, MKTAG('R', 'G', 'B', 8 ) }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
99 { PIX_FMT_BGR4, MKTAG('B', 'G', 'R', 4 ) }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
100 { PIX_FMT_RGB4, MKTAG('R', 'G', 'B', 4 ) }, |
11843
c2438ba304e0
Add support to B4BY and R4BY NUT codec tags added in NUT r672.
stefano
parents:
11840
diff
changeset
|
101 { PIX_FMT_RGB4_BYTE,MKTAG('B', '4', 'B', 'Y') }, |
c2438ba304e0
Add support to B4BY and R4BY NUT codec tags added in NUT r672.
stefano
parents:
11840
diff
changeset
|
102 { PIX_FMT_BGR4_BYTE,MKTAG('R', '4', 'B', 'Y') }, |
11737
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
103 { PIX_FMT_RGB48LE, MKTAG('R', 'G', 'B', 48 ) }, |
74a65e23c2e7
Add missing rawvideo pixel formats to codec tags mappings for nut.
stefano
parents:
11736
diff
changeset
|
104 { PIX_FMT_RGB48BE, MKTAG( 48, 'R', 'G', 'B') }, |
11779
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
105 { PIX_FMT_GRAY16LE, MKTAG('Y', '1', 0 , 16 ) }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
106 { PIX_FMT_GRAY16BE, MKTAG(16 , 0 , '1', 'Y') }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
107 { PIX_FMT_YUV420P16LE, MKTAG('Y', '3', 11 , 16 ) }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
108 { PIX_FMT_YUV420P16BE, MKTAG(16 , 11 , '3', 'Y') }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
109 { PIX_FMT_YUV422P16LE, MKTAG('Y', '3', 10 , 16 ) }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
110 { PIX_FMT_YUV422P16BE, MKTAG(16 , 10 , '3', 'Y') }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
111 { PIX_FMT_YUV444P16LE, MKTAG('Y', '3', 0 , 16 ) }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
112 { PIX_FMT_YUV444P16BE, MKTAG(16 , 0 , '3', 'Y') }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
113 { PIX_FMT_YUVA420P, MKTAG('Y', '4', 11 , 8 ) }, |
9371254837b5
Add support for the newly added Nut codec tags (added in Nut r669):
stefano
parents:
11751
diff
changeset
|
114 { PIX_FMT_Y400A, MKTAG('Y', '2', 0 , 8 ) }, |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
115 |
3306 | 116 /* quicktime */ |
117 { PIX_FMT_UYVY422, MKTAG('2', 'v', 'u', 'y') }, | |
10888 | 118 { PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', 'y') }, |
4619 | 119 { PIX_FMT_UYVY422, MKTAG('A', 'V', 'U', 'I') }, /* FIXME merge both fields */ |
9335 | 120 { PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') }, |
10490
27750570f2d4
add yuvs fourcc to raw.c and isom.c, fixes samples/mov/yuvs.mov
compn
parents:
10486
diff
changeset
|
121 { PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', 's') }, |
8256
765685da1483
partial WRAW fourcc support, might need image flipping
bcoudurier
parents:
8023
diff
changeset
|
122 { PIX_FMT_PAL8, MKTAG('W', 'R', 'A', 'W') }, |
11831
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
123 { PIX_FMT_RGB555LE,MKTAG('L', '5', '5', '5') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
124 { PIX_FMT_RGB565LE,MKTAG('L', '5', '6', '5') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
125 { PIX_FMT_RGB565BE,MKTAG('B', '5', '6', '5') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
126 { PIX_FMT_BGR24, MKTAG('2', '4', 'B', 'G') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
127 { PIX_FMT_BGRA, MKTAG('B', 'G', 'R', 'A') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
128 { PIX_FMT_RGBA, MKTAG('R', 'G', 'B', 'A') }, |
9b1da3f82dd7
More mov rawvideo fourcc supported by the rawvideo decoder
bcoudurier
parents:
11815
diff
changeset
|
129 { PIX_FMT_ABGR, MKTAG('A', 'B', 'G', 'R') }, |
11880 | 130 { PIX_FMT_GRAY16BE,MKTAG('b', '1', '6', 'g') }, |
131 { PIX_FMT_RGB48BE, MKTAG('b', '4', '8', 'r') }, | |
3306 | 132 |
11697
79a98585aa2d
Reorder nut specific codec tags and add a comment for marking them as
stefano
parents:
11696
diff
changeset
|
133 /* special */ |
79a98585aa2d
Reorder nut specific codec tags and add a comment for marking them as
stefano
parents:
11696
diff
changeset
|
134 { PIX_FMT_RGB565LE,MKTAG( 3 , 0 , 0 , 0 ) }, /* flipped RGB565LE */ |
79a98585aa2d
Reorder nut specific codec tags and add a comment for marking them as
stefano
parents:
11696
diff
changeset
|
135 |
8023
76f6a08c9fe6
Fix some icc warnings by using enum PixelFormat instead of int where appropriate.
cehoyos
parents:
5695
diff
changeset
|
136 { PIX_FMT_NONE, 0 }, |
1139
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
137 }; |
6842feb093c1
rawvideo patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michaelni
parents:
diff
changeset
|
138 |
2341 | 139 unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat fmt) |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
140 { |
11751
378caf7b42ef
Rename ff_raw_pixelFormatTags symbol to ff_raw_pix_fmt_tags.
stefano
parents:
11740
diff
changeset
|
141 const PixelFormatTag *tags = ff_raw_pix_fmt_tags; |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
142 while (tags->pix_fmt >= 0) { |
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
143 if (tags->pix_fmt == fmt) |
2979 | 144 return tags->fourcc; |
145 tags++; | |
1231
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
146 } |
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
147 return 0; |
b88dfc4bbf8c
* introducing new public interface in imgconvert.c
romansh
parents:
1195
diff
changeset
|
148 } |