diff options
Diffstat (limited to 'libavcodec/exif.c')
-rw-r--r-- | libavcodec/exif.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/exif.c b/libavcodec/exif.c index 984adafd10..0f3f80c976 100644 --- a/libavcodec/exif.c +++ b/libavcodec/exif.c @@ -48,9 +48,11 @@ static int exif_add_metadata(AVCodecContext *avctx, int count, int type, { switch(type) { case TIFF_DOUBLE : return ff_tadd_doubles_metadata(count, name, sep, gb, le, metadata); - case TIFF_SHORT : return ff_tadd_shorts_metadata(count, name, sep, gb, le, metadata); + case TIFF_SSHORT : return ff_tadd_shorts_metadata(count, name, sep, gb, le, 1, metadata); + case TIFF_SHORT : return ff_tadd_shorts_metadata(count, name, sep, gb, le, 0, metadata); + case TIFF_SBYTE : return ff_tadd_bytes_metadata(count, name, sep, gb, le, 1, metadata); case TIFF_BYTE : - case TIFF_UNDEFINED: return ff_tadd_bytes_metadata(count, name, sep, gb, le, metadata); + case TIFF_UNDEFINED: return ff_tadd_bytes_metadata(count, name, sep, gb, le, 0, metadata); case TIFF_STRING : return ff_tadd_string_metadata(count, name, gb, le, metadata); case TIFF_SRATIONAL: case TIFF_RATIONAL : return ff_tadd_rational_metadata(count, name, sep, gb, le, metadata); |