Open Broadcaster Software
Free, open source software for live streaming and recording
Main Page
Related Pages
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
format-conversion.h
Go to the documentation of this file.
1
/******************************************************************************
2
Copyright (C) 2013 by Hugh Bailey <obs.jim@gmail.com>
3
4
This program is free software: you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation, either version 2 of the License, or
7
(at your option) any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU General Public License for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program. If not, see <http://www.gnu.org/licenses/>.
16
******************************************************************************/
17
18
#pragma once
19
20
#include "../util/c99defs.h"
21
22
#ifdef __cplusplus
23
extern
"C"
{
24
#endif
25
26
/*
27
* Functions for converting to and from packed 444 YUV
28
*/
29
30
EXPORT
void
compress_uyvx_to_i420
(
31
const
uint8_t
*input,
uint32_t
in_linesize,
32
uint32_t
start_y,
uint32_t
end_y,
33
uint8_t
*output[],
const
uint32_t
out_linesize[]);
34
35
EXPORT
void
compress_uyvx_to_nv12
(
36
const
uint8_t
*input,
uint32_t
in_linesize,
37
uint32_t
start_y,
uint32_t
end_y,
38
uint8_t
*output[],
const
uint32_t
out_linesize[]);
39
40
EXPORT
void
convert_uyvx_to_i444
(
41
const
uint8_t
*input,
uint32_t
in_linesize,
42
uint32_t
start_y,
uint32_t
end_y,
43
uint8_t
*output[],
const
uint32_t
out_linesize[]);
44
45
EXPORT
void
decompress_nv12
(
46
const
uint8_t
*
const
input[],
const
uint32_t
in_linesize[],
47
uint32_t
start_y,
uint32_t
end_y,
48
uint8_t
*output,
uint32_t
out_linesize);
49
50
EXPORT
void
decompress_420
(
51
const
uint8_t
*
const
input[],
const
uint32_t
in_linesize[],
52
uint32_t
start_y,
uint32_t
end_y,
53
uint8_t
*output,
uint32_t
out_linesize);
54
55
EXPORT
void
decompress_422
(
56
const
uint8_t
*input,
uint32_t
in_linesize,
57
uint32_t
start_y,
uint32_t
end_y,
58
uint8_t
*output,
uint32_t
out_linesize,
59
bool
leading_lum);
60
61
#ifdef __cplusplus
62
}
63
#endif
decompress_422
EXPORT void decompress_422(const uint8_t *input, uint32_t in_linesize, uint32_t start_y, uint32_t end_y, uint8_t *output, uint32_t out_linesize, bool leading_lum)
convert_uyvx_to_i444
EXPORT void convert_uyvx_to_i444(const uint8_t *input, uint32_t in_linesize, uint32_t start_y, uint32_t end_y, uint8_t *output[], const uint32_t out_linesize[])
uint32_t
unsigned uint32_t
Definition:
vc_stdint.h:31
compress_uyvx_to_nv12
EXPORT void compress_uyvx_to_nv12(const uint8_t *input, uint32_t in_linesize, uint32_t start_y, uint32_t end_y, uint8_t *output[], const uint32_t out_linesize[])
compress_uyvx_to_i420
EXPORT void compress_uyvx_to_i420(const uint8_t *input, uint32_t in_linesize, uint32_t start_y, uint32_t end_y, uint8_t *output[], const uint32_t out_linesize[])
uint8_t
unsigned char uint8_t
Definition:
vc_stdint.h:27
decompress_nv12
EXPORT void decompress_nv12(const uint8_t *const input[], const uint32_t in_linesize[], uint32_t start_y, uint32_t end_y, uint8_t *output, uint32_t out_linesize)
EXPORT
#define EXPORT
Definition:
c99defs.h:49
decompress_420
EXPORT void decompress_420(const uint8_t *const input[], const uint32_t in_linesize[], uint32_t start_y, uint32_t end_y, uint8_t *output, uint32_t out_linesize)
libobs
media-io
format-conversion.h
Generated on Wed Mar 22 2017 08:54:25 for Open Broadcaster Software by
1.8.5