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)
 	{
