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
vda_vt_internal.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg 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 GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef AVCODEC_VDA_VT_INTERNAL_H
20
#define AVCODEC_VDA_VT_INTERNAL_H
21
22
void
ff_vda_output_callback
(
void
*vda_hw_ctx,
23
CFDictionaryRef user_info,
24
OSStatus status,
25
uint32_t infoFlags,
26
CVImageBufferRef image_buffer);
27
28
int
ff_vda_default_init
(
AVCodecContext
*avctx);
29
void
ff_vda_default_free
(
AVCodecContext
*avctx);
30
31
typedef
struct
VTContext
{
32
// The current bitstream buffer.
33
uint8_t
*
bitstream
;
34
35
// The current size of the bitstream.
36
int
bitstream_size
;
37
38
// The reference size used for fast reallocation.
39
int
allocated_size
;
40
41
// The core video buffer
42
CVImageBufferRef
frame
;
43
}
VTContext
;
44
45
int
ff_videotoolbox_alloc_frame
(
AVCodecContext
*avctx,
AVFrame
*
frame
);
46
int
ff_videotoolbox_uninit
(
AVCodecContext
*avctx);
47
int
ff_videotoolbox_buffer_create
(
VTContext
*vtctx,
AVFrame
*
frame
);
48
int
ff_videotoolbox_h264_start_frame
(
AVCodecContext
*avctx,
49
const
uint8_t
*
buffer
,
50
uint32_t
size
);
51
int
ff_videotoolbox_h264_decode_slice
(
AVCodecContext
*avctx,
52
const
uint8_t
*
buffer
,
53
uint32_t
size
);
54
CFDataRef
ff_videotoolbox_avcc_extradata_create
(
AVCodecContext
*avctx);
55
#endif
/* AVCODEC_VDA_VT_INTERNAL_H */
AVFrame
This structure describes decoded (raw) audio or video data.
Definition:
frame.h:181
VTContext::bitstream
uint8_t * bitstream
Definition:
vda_vt_internal.h:33
ff_vda_output_callback
void ff_vda_output_callback(void *vda_hw_ctx, CFDictionaryRef user_info, OSStatus status, uint32_t infoFlags, CVImageBufferRef image_buffer)
Definition:
vda_h264.c:273
ff_videotoolbox_avcc_extradata_create
CFDataRef ff_videotoolbox_avcc_extradata_create(AVCodecContext *avctx)
Definition:
videotoolbox.c:82
uint8_t
uint8_t
Definition:
audio_convert.c:194
ff_videotoolbox_uninit
int ff_videotoolbox_uninit(AVCodecContext *avctx)
Definition:
videotoolbox.c:179
frame
static AVFrame * frame
Definition:
demuxing_decoding.c:53
ff_videotoolbox_alloc_frame
int ff_videotoolbox_alloc_frame(AVCodecContext *avctx, AVFrame *frame)
Definition:
videotoolbox.c:67
size
ptrdiff_t size
Definition:
opengl_enc.c:101
VTContext::allocated_size
int allocated_size
Definition:
vda_vt_internal.h:39
ff_vda_default_free
void ff_vda_default_free(AVCodecContext *avctx)
ff_videotoolbox_buffer_create
int ff_videotoolbox_buffer_create(VTContext *vtctx, AVFrame *frame)
Definition:
videotoolbox.c:117
VTContext
Definition:
ffmpeg_videotoolbox.c:35
VTContext::bitstream_size
int bitstream_size
Definition:
vda_vt_internal.h:36
ff_videotoolbox_h264_decode_slice
int ff_videotoolbox_h264_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
Definition:
videotoolbox.c:152
AVCodecContext
main external API structure.
Definition:
avcodec.h:1532
ff_vda_default_init
int ff_vda_default_init(AVCodecContext *avctx)
Definition:
vda_h264.c:330
ff_videotoolbox_h264_start_frame
int ff_videotoolbox_h264_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
Definition:
videotoolbox.c:136
buffer
GLuint buffer
Definition:
opengl_enc.c:102
VTContext::frame
CVImageBufferRef frame
Definition:
vda_vt_internal.h:42
Generated on Mon Feb 15 2016 15:20:42 for FFmpeg by
1.8.6