switch (this.SubtitleBehaviours.SelectedBurnInBehaviour)\r
{\r
case SubtitleBurnInBehaviourModes.None:\r
- // Do Nothing. Only tracks where the container requires it will be burned in.\r
+ foreach (var track in this.Task.SubtitleTracks)\r
+ {\r
+ if (track.SourceTrack.SubtitleType == SubtitleType.ForeignAudioSearch)\r
+ {\r
+ track.Forced = true;\r
+ break;\r
+ }\r
+ }\r
break;\r
case SubtitleBurnInBehaviourModes.ForeignAudio:\r
foreach (var track in this.Task.SubtitleTracks)\r
if (track.SourceTrack.SubtitleType == SubtitleType.ForeignAudioSearch)\r
{\r
track.Burned = true;\r
+ track.Forced = true;\r
this.SetBurnedToFalseForAllExcept(track);\r
break;\r
}\r
case SubtitleBurnInBehaviourModes.FirstTrack: \r
foreach (var track in this.Task.SubtitleTracks)\r
{\r
- // Set the first track.\r
- if (!burnInSet && track.SourceTrack.SubtitleType != SubtitleType.ForeignAudioSearch)\r
+ if (track.SourceTrack.SubtitleType == SubtitleType.ForeignAudioSearch) // Foreign Audio Search is always first in the list.\r
+ {\r
+ track.Forced = true;\r
+ continue;\r
+ }\r
+\r
+ if (!burnInSet)\r
{\r
burnInSet = true;\r
track.Burned = true;\r
if (track.SourceTrack.SubtitleType == SubtitleType.ForeignAudioSearch)\r
{\r
track.Burned = true;\r
+ track.Forced = true;\r
this.SetBurnedToFalseForAllExcept(track);\r
break;\r
}\r