(Breaking!) Add some exif tags

This commit is contained in:
simon 2020-02-06 19:21:50 -05:00
parent 3282ab56ba
commit df41c251e4
5 changed files with 57 additions and 5 deletions

View File

@ -5,8 +5,11 @@ strip sist2
version=$(./sist2 --version) version=$(./sist2 --version)
echo "Version ${version}" echo "Version ${version}"
docker build . -t simon987/sist2:${version} -t simon987/sist2:latest docker build . -t simon987/sist2:${version} -t simon987/sist2:latest \
-t docker.pkg.github.com/simon987/sist2/sist2:latest -t docker.pkg.github.com/simon987/sist2/sist2:${version}
docker push simon987/sist2:${version} docker push simon987/sist2:${version}
docker push simon987/sist2:latest docker push simon987/sist2:latest
docker push docker.pkg.github.com/simon987/sist2/sist2:latest
docker push docker.pkg.github.com/simon987/sist2/sist2:${version}
docker run --rm -it simon987/sist2 -v docker run --rm -it simon987/sist2 -v

View File

@ -118,6 +118,22 @@ char *get_meta_key_text(enum metakey meta_key) {
return "font_name"; return "font_name";
case MetaParent: case MetaParent:
return "parent"; return "parent";
case MetaExifMake:
return "exif_make";
case MetaExifSoftware:
return "exif_software";
case MetaExifExposureTime:
return "exif_exposure_time";
case MetaExifFNumber:
return "exif_fnumber";
case MetaExifFocalLength:
return "exif_focal_length";
case MetaExifUserComment:
return "exif_user_comment";
case MetaExifIsoSpeedRatings:
return "exif_iso_speed_ratings";
case MetaExifModel:
return "exif_model";
default: default:
return NULL; return NULL;
} }
@ -255,6 +271,14 @@ void read_index_bin(const char *path, const char *index_id, index_func func) {
case MetaGenre: case MetaGenre:
case MetaFontName: case MetaFontName:
case MetaParent: case MetaParent:
case MetaExifMake:
case MetaExifSoftware:
case MetaExifExposureTime:
case MetaExifFNumber:
case MetaExifFocalLength:
case MetaExifUserComment:
case MetaExifIsoSpeedRatings:
case MetaExifModel:
case MetaTitle: { case MetaTitle: {
buf.cur = 0; buf.cur = 0;
while ((c = getc(file)) != 0) { while ((c = getc(file)) != 0) {

View File

@ -193,6 +193,22 @@ append_video_meta(AVFormatContext *pFormatCtx, AVFrame *frame, document_t *doc,
APPEND_TAG_META(doc, tag, MetaArtist) APPEND_TAG_META(doc, tag, MetaArtist)
} else if (strcmp(tag->key, "ImageDescription") == 0) { } else if (strcmp(tag->key, "ImageDescription") == 0) {
APPEND_TAG_META(doc, tag, MetaContent) APPEND_TAG_META(doc, tag, MetaContent)
} else if (strcmp(tag->key, "Make") == 0) {
APPEND_TAG_META(doc, tag, MetaExifMake)
} else if (strcmp(tag->key, "Model") == 0) {
APPEND_TAG_META(doc, tag, MetaExifModel)
} else if (strcmp(tag->key, "Software") == 0) {
APPEND_TAG_META(doc, tag, MetaExifSoftware)
} else if (strcmp(tag->key, "FNumber") == 0) {
APPEND_TAG_META(doc, tag, MetaExifFNumber)
} else if (strcmp(tag->key, "FocalLength") == 0) {
APPEND_TAG_META(doc, tag, MetaExifFocalLength)
} else if (strcmp(tag->key, "UserComment") == 0) {
APPEND_TAG_META(doc, tag, MetaExifUserComment)
} else if (strcmp(tag->key, "ISOSpeedRatings") == 0) {
APPEND_TAG_META(doc, tag, MetaExifIsoSpeedRatings)
} else if (strcmp(tag->key, "ExposureTime") == 0) {
APPEND_TAG_META(doc, tag, MetaExifExposureTime)
} }
} }
} }

View File

@ -2,9 +2,9 @@
#define SIST2_TYPES_H #define SIST2_TYPES_H
#define META_INT_MASK 0xF0 #define META_INT_MASK 0x80
#define META_STR_MASK 0xE0 #define META_STR_MASK 0x40
#define META_LONG_MASK 0xD0 #define META_LONG_MASK 0x20
#define IS_META_INT(key) (key & META_INT_MASK) == META_INT_MASK #define IS_META_INT(key) (key & META_INT_MASK) == META_INT_MASK
#define IS_META_LONG(key) (key & META_LONG_MASK) == META_LONG_MASK #define IS_META_LONG(key) (key & META_LONG_MASK) == META_LONG_MASK
#define IS_META_STR(meta) (meta->key & META_STR_MASK) == META_STR_MASK #define IS_META_STR(meta) (meta->key & META_STR_MASK) == META_STR_MASK
@ -31,6 +31,15 @@ enum metakey {
MetaTitle = 12 | META_STR_MASK, MetaTitle = 12 | META_STR_MASK,
MetaFontName = 13 | META_STR_MASK, MetaFontName = 13 | META_STR_MASK,
MetaParent = 14 | META_STR_MASK, MetaParent = 14 | META_STR_MASK,
MetaExifMake = 15 | META_STR_MASK,
MetaExifSoftware = 16 | META_STR_MASK,
MetaExifExposureTime = 17 | META_STR_MASK,
MetaExifFNumber = 18 | META_STR_MASK,
MetaExifFocalLength = 19 | META_STR_MASK,
MetaExifUserComment = 20 | META_STR_MASK,
MetaExifModel = 21 | META_STR_MASK,
MetaExifIsoSpeedRatings = 22 | META_STR_MASK,
//Note to self: this will break after 31 entries
}; };
#define INDEX_TYPE_BIN "binary" #define INDEX_TYPE_BIN "binary"

File diff suppressed because one or more lines are too long