add some copyright notice
[fdkaac.git] / src / metadata.h
... / ...
CommitLineData
1/*
2 * Copyright (C) 2013 nu774
3 * For conditions of distribution and use, see copyright notice in COPYING
4 */
5#ifndef METADATA_H
6#define METADATA_H
7
8#include "m4af.h"
9
10typedef struct aacenc_tag_entry_t {
11 uint32_t tag;
12 char *name;
13 char *data;
14 uint32_t data_size;
15} aacenc_tag_entry_t;
16
17typedef struct aacenc_tag_store_t {
18 aacenc_tag_entry_t *tag_table;
19 unsigned tag_count;
20 unsigned tag_table_capacity;
21} aacenc_tag_store_t;
22
23typedef struct aacenc_translate_generic_text_tag_ctx_t {
24 unsigned track, track_total, disc, disc_total;
25 void (*add)(void *, const aacenc_tag_entry_t *);
26 void *add_ctx;
27} aacenc_translate_generic_text_tag_ctx_t;
28
29typedef void (*aacenc_tag_callback_t)(void *ctx, const char *key,
30 const char *value, uint32_t size);
31
32void aacenc_translate_generic_text_tag(void *ctx, const char *key,
33 const char *val, uint32_t size);
34
35
36void aacenc_add_tag_to_store(aacenc_tag_store_t *store, uint32_t tag,
37 const char *key, const char *value,
38 uint32_t size, int is_file_name);
39
40void aacenc_add_tag_entry_to_store(void *store, const aacenc_tag_entry_t *tag);
41
42void aacenc_free_tag_store(aacenc_tag_store_t *store);
43
44void aacenc_write_tags_from_json(m4af_ctx_t *m4af, const char *json_filename);
45
46void aacenc_write_tag_entry(void *m4af, const aacenc_tag_entry_t *tag);
47
48#endif
This page took 0.009022 seconds and 4 git commands to generate.