esp32-audio-player 0.1.0
Audio player engine for ESP32
Loading...
Searching...
No Matches
tags.h File Reference

Metadata readers: ID3v2.2/2.3/2.4 (+unsynchronisation, extended header), ID3v1, FLAC Vorbis comments + PICTURE, Ogg Vorbis/Opus comments, RIFF INFO / id3 chunk, AIFF ID3 chunk, APEv2 (optional). More...

Include dependency graph for tags.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  track_tags_t
 

Macros

#define TAG_TEXT_MAX   128
 Field limits (bytes, UTF-8, including NUL).
 
#define TAG_GENRE_MAX   48
 

Functions

void tags_clear (track_tags_t *t)
 
int tags_read_file (const char *path, track_tags_t *out)
 Read tags from a file.
 
int tags_read_stream (core_stream_t *s, const char *path_hint, track_tags_t *out)
 

Detailed Description

Metadata readers: ID3v2.2/2.3/2.4 (+unsynchronisation, extended header), ID3v1, FLAC Vorbis comments + PICTURE, Ogg Vorbis/Opus comments, RIFF INFO / id3 chunk, AIFF ID3 chunk, APEv2 (optional).

Legacy 8-bit text goes through text_detect_legacy(), so CP1251 tags in old Russian MP3 files read correctly.

Macro Definition Documentation

◆ TAG_GENRE_MAX

#define TAG_GENRE_MAX   48

◆ TAG_TEXT_MAX

#define TAG_TEXT_MAX   128

Field limits (bytes, UTF-8, including NUL).

Longer values are truncated; this keeps memory bounded when a file carries 10 KB+ tag fields.

Function Documentation

◆ tags_clear()

void tags_clear ( track_tags_t *  t)

◆ tags_read_file()

int tags_read_file ( const char *  path,
track_tags_t *  out 
)

Read tags from a file.

Missing fields stay empty; if the title is empty the caller may use the file name. Returns CORE_OK even when the file has no tags at all; errors only for I/O problems or unsupported containers.

◆ tags_read_stream()

int tags_read_stream ( core_stream_t *  s,
const char *  path_hint,
track_tags_t *  out 
)