Merge pull request #17419 from rwebster85/mp4-audio-subtitle-names
Check the "name" tag for audio/subtitle probe to fix MP4 not showing correctly - Fixes issue #17418
This commit is contained in:
@@ -757,11 +757,17 @@ namespace MediaBrowser.MediaEncoding.Probing
|
||||
|
||||
if (string.IsNullOrEmpty(stream.Title))
|
||||
{
|
||||
// mp4 missing track title workaround: fall back to handler_name if populated and not the default "SoundHandler"
|
||||
string handlerName = GetDictionaryValue(streamInfo.Tags, "handler_name");
|
||||
if (!string.IsNullOrEmpty(handlerName) && !string.Equals(handlerName, "SoundHandler", StringComparison.OrdinalIgnoreCase))
|
||||
// FFprobe exposes MP4 track names via the name tag rather than title
|
||||
stream.Title = GetDictionaryValue(streamInfo.Tags, "name");
|
||||
|
||||
if (string.IsNullOrEmpty(stream.Title))
|
||||
{
|
||||
stream.Title = handlerName;
|
||||
// fall back to handler_name if populated and not the default "SoundHandler"
|
||||
string handlerName = GetDictionaryValue(streamInfo.Tags, "handler_name");
|
||||
if (!string.IsNullOrEmpty(handlerName) && !string.Equals(handlerName, "SoundHandler", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
stream.Title = handlerName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -781,11 +787,17 @@ namespace MediaBrowser.MediaEncoding.Probing
|
||||
|
||||
if (string.IsNullOrEmpty(stream.Title))
|
||||
{
|
||||
// mp4 missing track title workaround: fall back to handler_name if populated and not the default "SubtitleHandler"
|
||||
string handlerName = GetDictionaryValue(streamInfo.Tags, "handler_name");
|
||||
if (!string.IsNullOrEmpty(handlerName) && !string.Equals(handlerName, "SubtitleHandler", StringComparison.OrdinalIgnoreCase))
|
||||
// FFprobe exposes MP4 track names via the name tag rather than title
|
||||
stream.Title = GetDictionaryValue(streamInfo.Tags, "name");
|
||||
|
||||
if (string.IsNullOrEmpty(stream.Title))
|
||||
{
|
||||
stream.Title = handlerName;
|
||||
// fall back to handler_name if populated and not the default "SubtitleHandler"
|
||||
string handlerName = GetDictionaryValue(streamInfo.Tags, "handler_name");
|
||||
if (!string.IsNullOrEmpty(handlerName) && !string.Equals(handlerName, "SubtitleHandler", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
stream.Title = handlerName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user