• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • Examples
  • File List
  • Globals

libavcodec/internal.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of Libav.
00003  *
00004  * Libav is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * Libav is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with Libav; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
00017  */
00018 
00024 #ifndef AVCODEC_INTERNAL_H
00025 #define AVCODEC_INTERNAL_H
00026 
00027 #include <stdint.h>
00028 
00029 #include "libavutil/pixfmt.h"
00030 #include "avcodec.h"
00031 
00032 typedef struct InternalBuffer {
00033     uint8_t *base[AV_NUM_DATA_POINTERS];
00034     uint8_t *data[AV_NUM_DATA_POINTERS];
00035     int linesize[AV_NUM_DATA_POINTERS];
00036     int width;
00037     int height;
00038     enum PixelFormat pix_fmt;
00039     uint8_t **extended_data;
00040     int audio_data_size;
00041     int nb_channels;
00042 } InternalBuffer;
00043 
00044 typedef struct AVCodecInternal {
00049     int buffer_count;
00050 
00055     InternalBuffer *buffer;
00056 
00063     int is_copy;
00064 
00065 #if FF_API_OLD_DECODE_AUDIO
00066 
00070     int sample_count;
00071 #endif
00072 } AVCodecInternal;
00073 
00074 struct AVCodecDefault {
00075     const uint8_t *key;
00076     const uint8_t *value;
00077 };
00078 
00082 int ff_is_hwaccel_pix_fmt(enum PixelFormat pix_fmt);
00083 
00092 AVHWAccel *ff_find_hwaccel(enum CodecID codec_id, enum PixelFormat pix_fmt);
00093 
00098 int ff_match_2uint16(const uint16_t (*tab)[2], int size, int a, int b);
00099 
00100 unsigned int avpriv_toupper4(unsigned int x);
00101 
00102 int avpriv_lock_avformat(void);
00103 int avpriv_unlock_avformat(void);
00104 
00110 #define FF_MAX_EXTRADATA_SIZE ((1 << 28) - FF_INPUT_BUFFER_PADDING_SIZE)
00111 
00127 int ff_alloc_packet(AVPacket *avpkt, int size);
00128 
00129 #endif /* AVCODEC_INTERNAL_H */
Generated on Sun Apr 22 2012 21:54:01 for Libav by doxygen 1.7.1