begin work on embedded subtitles
This commit is contained in:
parent
78c061d4de
commit
00aaa246fd
|
@ -552,7 +552,6 @@ extension VLCPlayerViewController: PlayerOverlayDelegate {
|
|||
|
||||
/// Do not call when setting to index -1
|
||||
func didSelectSubtitleStream(index: Int) {
|
||||
|
||||
viewModel.subtitlesEnabled = true
|
||||
vlcMediaPlayer.currentVideoSubTitleIndex = Int32(index)
|
||||
|
||||
|
|
|
@ -471,9 +471,23 @@ extension VideoPlayerViewModel {
|
|||
}
|
||||
}
|
||||
|
||||
// MARK: Embedded SubtitleStreamViewModel
|
||||
// MARK: Embedded/Normal Subtitle Streams
|
||||
extension VideoPlayerViewModel {
|
||||
|
||||
func createEmbeddedSubtitleStream(with subtitleStream: MediaStream) -> URL {
|
||||
|
||||
guard let baseURL = URLComponents(url: streamURL, resolvingAgainstBaseURL: false) else { fatalError() }
|
||||
guard let queryItems = baseURL.queryItems else { fatalError() }
|
||||
|
||||
var newURL = baseURL
|
||||
var newQueryItems = queryItems
|
||||
|
||||
newQueryItems.removeAll(where: { $0.name == "SubtitleStreamIndex" })
|
||||
newQueryItems.removeAll(where: { $0.name == "SubtitleMethod" })
|
||||
|
||||
newURL.addQueryItem(name: "SubtitleMethod", value: "Encode")
|
||||
newURL.addQueryItem(name: "SubtitleStreamIndex", value: "\(subtitleStream.index ?? -1)")
|
||||
|
||||
return newURL.url!
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue