Mercurial > libavcodec.hg
comparison vdpau_render.h @ 8526:4c851747ee74 libavcodec
spelling/grammar and whitespace cosmetics
author | diego |
---|---|
date | Mon, 05 Jan 2009 11:49:15 +0000 |
parents | 2f94b161f9f7 |
children | 84ee6c59e2b0 |
comparison
equal
deleted
inserted
replaced
8525:53f8d9be29ee | 8526:4c851747ee74 |
---|---|
1 /* | 1 /* |
2 * Video Decode and Presentation API for UNIX (VDPAU) is used for | 2 * The Video Decode and Presentation API for UNIX (VDPAU) is used for |
3 * HW decode acceleration for MPEG-1/2, H.264 and VC-1. | 3 * hardware-accelerated decoding of MPEG-1/2, H.264 and VC-1. |
4 * | 4 * |
5 * Copyright (C) 2008 NVIDIA. | 5 * Copyright (C) 2008 NVIDIA |
6 * | 6 * |
7 * This file is part of FFmpeg. | 7 * This file is part of FFmpeg. |
8 * | 8 * |
9 * FFmpeg is free software; you can redistribute it and/or | 9 * FFmpeg is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Lesser General Public | 10 * modify it under the terms of the GNU Lesser General Public |
25 #define AVCODEC_VDPAU_RENDER_H | 25 #define AVCODEC_VDPAU_RENDER_H |
26 | 26 |
27 /** | 27 /** |
28 * \defgroup Decoder VDPAU Decoder and Renderer | 28 * \defgroup Decoder VDPAU Decoder and Renderer |
29 * | 29 * |
30 * VDPAU HW acceleration has two modules | 30 * VDPAU hardware acceleration has two modules |
31 * - VDPAU Decoding | 31 * - VDPAU decoding |
32 * - VDPAU Presentation | 32 * - VDPAU presentation |
33 * | 33 * |
34 * VDPAU decoding module parses all headers using FFmpeg | 34 * The VDPAU decoding module parses all headers using FFmpeg |
35 * parsing mechanism and uses VDPAU for the actual decoding. | 35 * parsing mechanisms and uses VDPAU for the actual decoding. |
36 * | 36 * |
37 * As per the current implementation, the actual decoding | 37 * As per the current implementation, the actual decoding |
38 * and rendering (API calls) are done as part of VDPAU | 38 * and rendering (API calls) are done as part of the VDPAU |
39 * presentation (vo_vdpau.c) module. | 39 * presentation (vo_vdpau.c) module. |
40 * | 40 * |
41 * @{ | 41 * @{ |
42 * \defgroup VDPAU_Decoding VDPAU Decoding | 42 * \defgroup VDPAU_Decoding VDPAU Decoding |
43 * \ingroup Decoder | 43 * \ingroup Decoder |
45 */ | 45 */ |
46 | 46 |
47 #include "vdpau/vdpau.h" | 47 #include "vdpau/vdpau.h" |
48 #include "vdpau/vdpau_x11.h" | 48 #include "vdpau/vdpau_x11.h" |
49 | 49 |
50 /** | 50 /** \brief The videoSurface is used for rendering. */ |
51 * \brief The videoSurface is used for render. | |
52 */ | |
53 #define FF_VDPAU_STATE_USED_FOR_RENDER 1 | 51 #define FF_VDPAU_STATE_USED_FOR_RENDER 1 |
54 | 52 |
55 /** | 53 /** |
56 * \brief The videoSurface is needed for reference/prediction, | 54 * \brief The videoSurface is needed for reference/prediction. |
57 * codec manipulates this. | 55 * The codec manipulates this. |
58 */ | 56 */ |
59 #define FF_VDPAU_STATE_USED_FOR_REFERENCE 2 | 57 #define FF_VDPAU_STATE_USED_FOR_REFERENCE 2 |
60 | 58 |
61 /** | 59 /** |
62 * \brief This structure is used as a CALL-BACK between the ffmpeg | 60 * \brief This structure is used as a callback between the FFmpeg |
63 * decoder (vd_) and presentation (vo_) module. | 61 * decoder (vd_) and presentation (vo_) module. |
64 * This is used for defining a video-frame containing surface, | 62 * This is used for defining a video frame containing surface, |
65 * picture-parameter, bitstream informations etc which are passed | 63 * picture parameter, bitstream information etc which are passed |
66 * between ffmpeg decoder and its clients. | 64 * between the FFmpeg decoder and its clients. |
67 */ | 65 */ |
68 struct vdpau_render_state{ | 66 struct vdpau_render_state { |
69 VdpVideoSurface surface; ///< used as rendered surface, never changed. | 67 VdpVideoSurface surface; ///< Used as rendered surface, never changed. |
70 | 68 |
71 int state; ///< Holds FF_VDPAU_STATE_* values | 69 int state; ///< Holds FF_VDPAU_STATE_* values. |
72 | 70 |
73 /** Picture Parameter information for all supported codecs */ | 71 /** picture parameter information for all supported codecs */ |
74 union _VdpPictureInfo { | 72 union _VdpPictureInfo { |
75 VdpPictureInfoH264 h264; | 73 VdpPictureInfoH264 h264; |
76 } info; | 74 } info; |
77 | 75 |
78 /** Describe size/location of the compressed video data */ | 76 /** Describe size/location of the compressed video data. */ |
79 int bitstreamBuffersAlloced; | 77 int bitstreamBuffersAlloced; |
80 int bitstreamBuffersUsed; | 78 int bitstreamBuffersUsed; |
81 VdpBitstreamBuffer *bitstreamBuffers; | 79 VdpBitstreamBuffer *bitstreamBuffers; |
82 }; | 80 }; |
83 | 81 |