#include "avcodec.h"
#include "bytestream.h"
#include "config.h"
#include "lzw.h"
#include "tiff.h"
#include "tiff_data.h"
#include "faxcompr.h"
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/imgutils.h"
#include "libavutil/avstring.h"
Go to the source code of this file.
Data Structures | |
struct | TiffContext |
Defines | |
#define | RET_GEOKEY(TYPE, array, element) |
#define | RET_GEOKEY_VAL(TYPE, array) |
#define | ADD_METADATA(count, name, sep) |
Functions | |
static unsigned | tget_short (GetByteContext *gb, int le) |
static unsigned | tget_long (GetByteContext *gb, int le) |
static double | tget_double (GetByteContext *gb, int le) |
static unsigned | tget (GetByteContext *gb, int type, int le) |
static void | free_geotags (TiffContext *const s) |
static const char * | get_geokey_name (int key) |
static int | get_geokey_type (int key) |
static int | cmp_id_key (const void *id, const void *k) |
static const char * | search_keyval (const TiffGeoTagKeyName *keys, int n, int id) |
static char * | get_geokey_val (int key, int val) |
static char * | doubles2str (double *dp, int count, const char *sep) |
static char * | shorts2str (int16_t *sp, int count, const char *sep) |
static int | add_doubles_metadata (int count, const char *name, const char *sep, TiffContext *s) |
static int | add_shorts_metadata (int count, const char *name, const char *sep, TiffContext *s) |
static int | add_string_metadata (int count, const char *name, TiffContext *s) |
static int | add_metadata (int count, int type, const char *name, const char *sep, TiffContext *s) |
static void av_always_inline | horizontal_fill (unsigned int bpp, uint8_t *dst, int usePtr, const uint8_t *src, uint8_t c, int width, int offset) |
static int | tiff_unpack_strip (TiffContext *s, uint8_t *dst, int stride, const uint8_t *src, int size, int lines) |
static int | init_image (TiffContext *s) |
static int | tiff_decode_tag (TiffContext *s) |
static int | decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt) |
static av_cold int | tiff_init (AVCodecContext *avctx) |
static av_cold int | tiff_end (AVCodecContext *avctx) |
Variables | |
AVCodec | ff_tiff_decoder |
Definition in file tiff.c.
#define ADD_METADATA | ( | count, | |||
name, | |||||
sep | ) |
Value:
if (ret = add_metadata(count, type, name, sep, s) < 0) {\ av_log(s->avctx, AV_LOG_ERROR, "Error allocating temporary buffer\n");\ return ret;\ }
Referenced by tiff_decode_tag().
#define RET_GEOKEY | ( | TYPE, | |||
array, | |||||
element | ) |
Value:
if (key >= TIFF_##TYPE##_KEY_ID_OFFSET &&\ key - TIFF_##TYPE##_KEY_ID_OFFSET < FF_ARRAY_ELEMS(ff_tiff_##array##_name_type_map))\ return ff_tiff_##array##_name_type_map[key - TIFF_##TYPE##_KEY_ID_OFFSET].element;
Definition at line 105 of file tiff.c.
Referenced by get_geokey_name(), and get_geokey_type().
#define RET_GEOKEY_VAL | ( | TYPE, | |||
array | ) |
Value:
if (val >= TIFF_##TYPE##_OFFSET &&\ val - TIFF_##TYPE##_OFFSET < FF_ARRAY_ELEMS(ff_tiff_##array##_codes))\ return av_strdup(ff_tiff_##array##_codes[val - TIFF_##TYPE##_OFFSET]);
Referenced by get_geokey_val().
static int add_doubles_metadata | ( | int | count, | |
const char * | name, | |||
const char * | sep, | |||
TiffContext * | s | |||
) | [static] |
static int add_metadata | ( | int | count, | |
int | type, | |||
const char * | name, | |||
const char * | sep, | |||
TiffContext * | s | |||
) | [static] |
static int add_shorts_metadata | ( | int | count, | |
const char * | name, | |||
const char * | sep, | |||
TiffContext * | s | |||
) | [static] |
static int add_string_metadata | ( | int | count, | |
const char * | name, | |||
TiffContext * | s | |||
) | [static] |
static int cmp_id_key | ( | const void * | id, | |
const void * | k | |||
) | [static] |
static int decode_frame | ( | AVCodecContext * | avctx, | |
void * | data, | |||
int * | data_size, | |||
AVPacket * | avpkt | |||
) | [static] |
static char* doubles2str | ( | double * | dp, | |
int | count, | |||
const char * | sep | |||
) | [static] |
static void free_geotags | ( | TiffContext *const | s | ) | [static] |
static const char* get_geokey_name | ( | int | key | ) | [static] |
static int init_image | ( | TiffContext * | s | ) | [static] |
static const char* search_keyval | ( | const TiffGeoTagKeyName * | keys, | |
int | n, | |||
int | id | |||
) | [static] |
static unsigned tget | ( | GetByteContext * | gb, | |
int | type, | |||
int | le | |||
) | [static] |
static double tget_double | ( | GetByteContext * | gb, | |
int | le | |||
) | [static] |
static unsigned tget_long | ( | GetByteContext * | gb, | |
int | le | |||
) | [static] |
static unsigned tget_short | ( | GetByteContext * | gb, | |
int | le | |||
) | [static] |
Definition at line 67 of file tiff.c.
Referenced by add_shorts_metadata(), decode_frame(), tget(), and tiff_decode_tag().
static int tiff_decode_tag | ( | TiffContext * | s | ) | [static] |
static av_cold int tiff_end | ( | AVCodecContext * | avctx | ) | [static] |
static av_cold int tiff_init | ( | AVCodecContext * | avctx | ) | [static] |
Initial value:
{ .name = "tiff", .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_TIFF, .priv_data_size = sizeof(TiffContext), .init = tiff_init, .close = tiff_end, .decode = decode_frame, .capabilities = CODEC_CAP_DR1, .long_name = NULL_IF_CONFIG_SMALL("TIFF image"), }