Fix the wrong external audio map index if text subtitle exists

This commit is contained in:
Nyanmisaka 2022-04-10 22:45:36 +08:00 committed by nyanmisaka
parent cba6a4e3f3
commit 884ba4f3ed

View file

@ -2244,7 +2244,8 @@ namespace MediaBrowser.Controller.MediaEncoding
{ {
if (state.AudioStream.IsExternal) if (state.AudioStream.IsExternal)
{ {
int externalAudioMapIndex = state.SubtitleStream != null && state.SubtitleStream.IsExternal ? 2 : 1; bool hasExternalGraphicsSubs = state.SubtitleStream != null && state.SubtitleStream.IsExternal && !state.SubtitleStream.IsTextSubtitleStream;
int externalAudioMapIndex = hasExternalGraphicsSubs ? 2 : 1;
int externalAudioStream = state.MediaSource.MediaStreams.Where(i => i.Path == state.AudioStream.Path).ToList().IndexOf(state.AudioStream); int externalAudioStream = state.MediaSource.MediaStreams.Where(i => i.Path == state.AudioStream.Path).ToList().IndexOf(state.AudioStream);
args += string.Format( args += string.Format(