FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavcodec
mjpegenc.h
Go to the documentation of this file.
1
/*
2
* MJPEG encoder
3
* Copyright (c) 2000, 2001 Fabrice Bellard
4
* Copyright (c) 2003 Alex Beregszaszi
5
* Copyright (c) 2003-2004 Michael Niedermayer
6
*
7
* Support for external huffman table, various fixes (AVID workaround),
8
* aspecting, new decode_frame mechanism and apple mjpeg-b support
9
* by Alex Beregszaszi
10
*
11
* This file is part of FFmpeg.
12
*
13
* FFmpeg is free software; you can redistribute it and/or
14
* modify it under the terms of the GNU Lesser General Public
15
* License as published by the Free Software Foundation; either
16
* version 2.1 of the License, or (at your option) any later version.
17
*
18
* FFmpeg is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21
* Lesser General Public License for more details.
22
*
23
* You should have received a copy of the GNU Lesser General Public
24
* License along with FFmpeg; if not, write to the Free Software
25
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
26
*/
27
28
/**
29
* @file
30
* MJPEG encoder.
31
*/
32
33
#ifndef AVCODEC_MJPEGENC_H
34
#define AVCODEC_MJPEGENC_H
35
36
#include <stdint.h>
37
38
#include "
mpegvideo.h
"
39
40
typedef
struct
MJpegContext
{
41
uint8_t
huff_size_dc_luminance
[12];
//FIXME use array [3] instead of lumi / chrom, for easier addressing
42
uint16_t
huff_code_dc_luminance
[12];
43
uint8_t
huff_size_dc_chrominance
[12];
44
uint16_t
huff_code_dc_chrominance
[12];
45
46
uint8_t
huff_size_ac_luminance
[256];
47
uint16_t
huff_code_ac_luminance
[256];
48
uint8_t
huff_size_ac_chrominance
[256];
49
uint16_t
huff_code_ac_chrominance
[256];
50
}
MJpegContext
;
51
52
int
ff_mjpeg_encode_init
(
MpegEncContext
*
s
);
53
void
ff_mjpeg_encode_close
(
MpegEncContext
*
s
);
54
void
ff_mjpeg_encode_mb
(
MpegEncContext
*
s
, int16_t
block
[12][64]);
55
56
#endif
/* AVCODEC_MJPEGENC_H */
Generated on Sun Mar 8 2015 02:34:56 for FFmpeg by
1.8.2