23#ifndef GAVL_METADATA_H_INCLUDED
24#define GAVL_METADATA_H_INCLUDED
32#include <gavl/gavldefs.h>
33#include <gavl/value.h>
58#define GAVL_METADATA_DATE_STRING_LEN 11
63#define GAVL_METADATA_DATE_TIME_STRING_LEN 20
67gavl_metadata_set_from_string(gavl_dictionary_t * m,
106GAVL_PUBLIC
const char *
120GAVL_PUBLIC
const char *
134 const char * key,
const char * glue);
257 int day,
char * ret);
289 const gavl_dictionary_t * m2);
330GAVL_PUBLIC gavl_dictionary_t *
331gavl_metadata_add_image_uri(gavl_dictionary_t * m,
334 const char * mimetype,
337GAVL_PUBLIC
const char *
338gavl_dictionary_get_string_image_uri(
const gavl_dictionary_t * m,
342 const char ** mimetype);
344GAVL_PUBLIC
const char *
345gavl_dictionary_get_string_image_max(
const gavl_dictionary_t * m,
348 const char * mimetype);
351gavl_metadata_add_image_embedded(gavl_dictionary_t * m,
354 const char * mimetype,
355 const uint8_t * image_data,
358GAVL_PUBLIC
const gavl_dictionary_t *
359gavl_dictionary_get_image_max(
const gavl_dictionary_t * m,
362 const char * mimetype);
364GAVL_PUBLIC
const gavl_dictionary_t *
365gavl_dictionary_get_image_max_proto(
const gavl_dictionary_t * m,
368 const char * mimetype,
const char * protocol);
372gavl_metadata_add_src(gavl_dictionary_t * m,
const char * key,
373 const char * mimetype,
const char * location);
376const gavl_dictionary_t *
377gavl_metadata_get_src(
const gavl_dictionary_t * m,
const char * key,
int idx,
378 const char ** mimetype,
const char ** location);
382gavl_metadata_get_src_nc(gavl_dictionary_t * m,
const char * key,
int idx);
386int gavl_metadata_has_src(
const gavl_dictionary_t * m,
const char * key,
387 const char * location);