Libav
Main Page
Related Pages
Modules
Data Structures
Files
Examples
File List
Globals
libavcodec
vdpau.h
Go to the documentation of this file.
1
/*
2
* The Video Decode and Presentation API for UNIX (VDPAU) is used for
3
* hardware-accelerated decoding of MPEG-1/2, H.264 and VC-1.
4
*
5
* Copyright (C) 2008 NVIDIA
6
*
7
* This file is part of Libav.
8
*
9
* Libav is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU Lesser General Public
11
* License as published by the Free Software Foundation; either
12
* version 2.1 of the License, or (at your option) any later version.
13
*
14
* Libav is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
* Lesser General Public License for more details.
18
*
19
* You should have received a copy of the GNU Lesser General Public
20
* License along with Libav; if not, write to the Free Software
21
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22
*/
23
24
#ifndef AVCODEC_VDPAU_H
25
#define AVCODEC_VDPAU_H
26
52
#include <vdpau/vdpau.h>
53
#include <vdpau/vdpau_x11.h>
54
55
#include "
libavutil/attributes.h
"
56
57
#include "
avcodec.h
"
58
#include "
version.h
"
59
60
#if FF_API_BUFS_VDPAU
61
union
AVVDPAUPictureInfo
{
62
VdpPictureInfoH264
h264
;
63
VdpPictureInfoMPEG1Or2
mpeg
;
64
VdpPictureInfoVC1
vc1
;
65
VdpPictureInfoMPEG4Part2
mpeg4
;
66
};
67
#endif
68
82
typedef
struct
AVVDPAUContext
{
88
VdpDecoder
decoder
;
89
95
VdpDecoderRender *
render
;
96
97
#if FF_API_BUFS_VDPAU
98
103
attribute_deprecated
104
union
AVVDPAUPictureInfo
info
;
105
111
attribute_deprecated
112
int
bitstream_buffers_allocated
;
113
119
attribute_deprecated
120
int
bitstream_buffers_used
;
121
128
attribute_deprecated
129
VdpBitstreamBuffer *
bitstream_buffers
;
130
#endif
131
}
AVVDPAUContext
;
132
138
AVVDPAUContext
*
av_vdpau_alloc_context
(
void
);
139
151
int
av_vdpau_get_profile
(
AVCodecContext
*avctx, VdpDecoderProfile *profile);
152
153
#if FF_API_CAP_VDPAU
154
155
#define FF_VDPAU_STATE_USED_FOR_RENDER 1
156
161
#define FF_VDPAU_STATE_USED_FOR_REFERENCE 2
162
170
struct
vdpau_render_state
{
171
VdpVideoSurface
surface
;
172
173
int
state
;
174
176
union
AVVDPAUPictureInfo
info
;
177
180
int
bitstream_buffers_allocated
;
181
int
bitstream_buffers_used
;
183
VdpBitstreamBuffer *
bitstream_buffers
;
184
};
185
#endif
186
187
/* @}*/
188
189
#endif
/* AVCODEC_VDPAU_H */
Generated on Sun Jun 1 2014 17:55:34 for Libav by
1.8.1.2