Statistics
| Branch: | Revision:

ffmpeg / libavcodec / raw.c @ 9853bbb2

History | View | Annotate | Download (2.84 KB)

1 e8750b00 Fred Rothganger
/*
2
 * Raw Video Codec
3 406792e7 Diego Biurrun
 * Copyright (c) 2001 Fabrice Bellard
4 e8750b00 Fred Rothganger
 *
5 b78e7197 Diego Biurrun
 * This file is part of FFmpeg.
6
 *
7
 * FFmpeg is free software; you can redistribute it and/or
8 e8750b00 Fred Rothganger
 * modify it under the terms of the GNU Lesser General Public
9
 * License as published by the Free Software Foundation; either
10 b78e7197 Diego Biurrun
 * version 2.1 of the License, or (at your option) any later version.
11 e8750b00 Fred Rothganger
 *
12 b78e7197 Diego Biurrun
 * FFmpeg is distributed in the hope that it will be useful,
13 e8750b00 Fred Rothganger
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15
 * Lesser General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU Lesser General Public
18 b78e7197 Diego Biurrun
 * License along with FFmpeg; if not, write to the Free Software
19 5509bffa Diego Biurrun
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 e8750b00 Fred Rothganger
 */
21 115329f1 Diego Biurrun
22 e8750b00 Fred Rothganger
/**
23 bad5537e Diego Biurrun
 * @file libavcodec/raw.c
24 e8750b00 Fred Rothganger
 * Raw Video Codec
25
 */
26 115329f1 Diego Biurrun
27 e8750b00 Fred Rothganger
#include "avcodec.h"
28 3a763f0f Aurelien Jacobs
#include "raw.h"
29 e8750b00 Fred Rothganger
30 3a763f0f Aurelien Jacobs
const PixelFormatTag ff_raw_pixelFormatTags[] = {
31 63167088 Roman Shaposhnik
    { PIX_FMT_YUV420P, MKTAG('I', '4', '2', '0') }, /* Planar formats */
32
    { PIX_FMT_YUV420P, MKTAG('I', 'Y', 'U', 'V') },
33 0b23d689 Steve L'Homme
    { PIX_FMT_YUV420P, MKTAG('Y', 'V', '1', '2') },
34 63167088 Roman Shaposhnik
    { PIX_FMT_YUV410P, MKTAG('Y', 'U', 'V', '9') },
35 71b0654c Michael Niedermayer
    { PIX_FMT_YUV410P, MKTAG('Y', 'V', 'U', '9') },
36 63167088 Roman Shaposhnik
    { PIX_FMT_YUV411P, MKTAG('Y', '4', '1', 'B') },
37
    { PIX_FMT_YUV422P, MKTAG('Y', '4', '2', 'B') },
38 9853bbb2 Ben Littler
    { PIX_FMT_YUV422P, MKTAG('P', '4', '2', '2') },
39 63167088 Roman Shaposhnik
    { PIX_FMT_GRAY8,   MKTAG('Y', '8', '0', '0') },
40
    { PIX_FMT_GRAY8,   MKTAG(' ', ' ', 'Y', '8') },
41
42
43 71e445fc Diego Biurrun
    { PIX_FMT_YUYV422, MKTAG('Y', 'U', 'Y', '2') }, /* Packed formats */
44
    { PIX_FMT_YUYV422, MKTAG('Y', '4', '2', '2') },
45 9853bbb2 Ben Littler
    { PIX_FMT_YUYV422, MKTAG('V', '4', '2', '2') },
46
    { PIX_FMT_YUYV422, MKTAG('Y', 'U', 'N', 'V') },
47 3dc10d47 Todd Kirby
    { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'V', 'Y') },
48 32bbb99d Baptiste Coudurier
    { PIX_FMT_UYVY422, MKTAG('H', 'D', 'Y', 'C') },
49 9853bbb2 Ben Littler
    { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'V') },
50
    { PIX_FMT_UYVY422, MKTAG('U', 'Y', 'N', 'Y') },
51
    { PIX_FMT_UYVY422, MKTAG('u', 'y', 'v', '1') },
52
    { PIX_FMT_UYVY422, MKTAG('2', 'V', 'u', '1') },
53 63167088 Roman Shaposhnik
    { PIX_FMT_GRAY8,   MKTAG('G', 'R', 'E', 'Y') },
54 ba8a6218 Reynaldo H. Verdejo Pinochet
    { PIX_FMT_RGB555,  MKTAG('R', 'G', 'B', 15) },
55
    { PIX_FMT_BGR555,  MKTAG('B', 'G', 'R', 15) },
56 ce459e12 Reynaldo H. Verdejo Pinochet
    { PIX_FMT_RGB565,  MKTAG('R', 'G', 'B', 16) },
57
    { PIX_FMT_BGR565,  MKTAG('B', 'G', 'R', 16) },
58 fc3fc029 Jason Garrett-Glaser
    { PIX_FMT_RGB565,  MKTAG( 3 ,  0 ,  0 ,  0 ) },
59 63167088 Roman Shaposhnik
60 ed70a509 Baptiste Coudurier
    /* quicktime */
61
    { PIX_FMT_UYVY422, MKTAG('2', 'v', 'u', 'y') },
62 b0c59da2 Baptiste Coudurier
    { PIX_FMT_UYVY422, MKTAG('A', 'V', 'U', 'I') }, /* FIXME merge both fields */
63 3dd2f87e Jai Menon
    { PIX_FMT_YUYV422, MKTAG('y', 'u', 'v', '2') },
64 02a5ef53 Baptiste Coudurier
    { PIX_FMT_PAL8,    MKTAG('W', 'R', 'A', 'W') },
65 ed70a509 Baptiste Coudurier
66 95240bf3 Carl Eugen Hoyos
    { PIX_FMT_NONE, 0 },
67 e8750b00 Fred Rothganger
};
68
69 d07730dd Michael Niedermayer
unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat fmt)
70 63167088 Roman Shaposhnik
{
71 3a763f0f Aurelien Jacobs
    const PixelFormatTag * tags = ff_raw_pixelFormatTags;
72 63167088 Roman Shaposhnik
    while (tags->pix_fmt >= 0) {
73
        if (tags->pix_fmt == fmt)
74 bb270c08 Diego Biurrun
            return tags->fourcc;
75
        tags++;
76 63167088 Roman Shaposhnik
    }
77
    return 0;
78
}