For its database, minidlna scans files' metadata for titles, only basing titles on filenames when no title is found in a file's metadata. This patch causes minidlna to ignore metadata titles and always use filenames (minus extension) as titles. --- a/metadata.c 2023-05-31 04:25:59.000000000 -0400 +++ b/metadata.c 2024-06-22 22:22:45.996650941 -0400 @@ -390,21 +390,9 @@ if( song.year ) xasprintf(&m.date, "%04d-01-01", song.year); m.duration = duration_str(song.song_length); - if( song.title && *song.title ) - { - m.title = trim(song.title); - if( (esc_tag = escape_tag(m.title, 0)) ) - { - free_flags |= FLAG_TITLE; - m.title = esc_tag; - } - } - else - { - free_flags |= FLAG_TITLE; - m.title = strdup(name); - strip_ext(m.title); - } + free_flags |= FLAG_TITLE; + m.title = strdup(name); + strip_ext(m.title); for( i = ROLE_START; i < N_ROLE; i++ ) { if( song.contributor[i] && *song.contributor[i] ) @@ -1557,11 +1545,8 @@ strftime(m.date, 20, "%FT%T", modtime); } - if( !m.title ) - { - m.title = strdup(name); - strip_ext(m.title); - } + m.title = strdup(name); + strip_ext(m.title); if (!m.disc && !m.track) {