Index: libs/libmythtv/avformatdecoder.cpp =================================================================== --- libs/libmythtv/avformatdecoder.cpp (revision 10951) +++ libs/libmythtv/avformatdecoder.cpp (working copy) @@ -1499,20 +1499,21 @@ { qBubbleSort(tracks[kTrackTypeSubtitle]); int trackNo = ringBuffer->DVD()->GetTrack(kTrackTypeSubtitle); - bool captionmode = GetNVP()->GetCaptionMode(); - if (captionmode && - (trackNo < 0 || trackNo >= (int)GetTrackCount(kTrackTypeSubtitle))) - { - GetNVP()->SetCaptionsEnabled(false, false); - } - else - { - SetTrack(kTrackTypeSubtitle, trackNo); - if (!ringBuffer->InDVDMenuOrStillFrame() && - !captionmode && trackNo >= 0) + uint captionmode = GetNVP()->GetCaptionMode(); + if (captionmode == kDisplayAVSubtitle) { + if (trackNo < 0 || trackNo >= (int)GetTrackCount(kTrackTypeSubtitle)) { - GetNVP()->SetCaptionsEnabled(true, false); + GetNVP()->SetCaptionsEnabled(false, false); } + else + { + SetTrack(kTrackTypeSubtitle, trackNo); + if (!ringBuffer->InDVDMenuOrStillFrame() && trackNo >= 0) + { + SetTrack(kTrackTypeSubtitle, trackNo); + GetNVP()->SetCaptionsEnabled(true, false); + } + } } } }