diff --git a/components/JFVideo.brs b/components/JFVideo.brs
index ffc69f3a..950400a6 100644
--- a/components/JFVideo.brs
+++ b/components/JFVideo.brs
@@ -21,9 +21,9 @@ sub onState(msg)
m.bufferCheckTimer.control = "start"
m.bufferCheckTimer.ObserveField("fire", "bufferCheck")
else if m.top.state = "error"
- if m.playReported or NOT m.top.retryWithTranscoding
- m.top.retryWithTranscoding = false ' If playback was reported, don't retry with transcoding
-
+ if not m.playReported and m.top.transcodeAvailable
+ m.top.retryWithTranscoding = true ' If playback was not reported, retry with transcoding
+ else
' If an error was encountered, Display dialog
dialog = createObject("roSGNode", "Dialog")
dialog.title = tr("Error During Playback")
@@ -32,7 +32,7 @@ sub onState(msg)
dialog.observeField("buttonSelected", "dialogClosed")
m.top.getScene().dialog = dialog
end if
-
+
' Stop playback and exit player
m.top.control = "stop"
m.top.backPressed = true
diff --git a/components/JFVideo.xml b/components/JFVideo.xml
index f3baf3a1..237c1d67 100644
--- a/components/JFVideo.xml
+++ b/components/JFVideo.xml
@@ -13,6 +13,7 @@
+
diff --git a/source/VideoPlayer.brs b/source/VideoPlayer.brs
index e99162cd..774de6e1 100644
--- a/source/VideoPlayer.brs
+++ b/source/VideoPlayer.brs
@@ -191,17 +191,16 @@ sub AddVideoContent(video, mediaSourceId, audio_stream_idx = 1, subtitle_idx = -
' For h264 video, Roku spec states that it supports and Encoding level 4.1 and 4.2.
' The device can decode content with a Higher Encoding level but may play it back with certain
- ' artifacts. If the user preference is set, and the only reason the server says we need to
+ ' artifacts. If the user preference is set, and the only reason the server says we need to
' transcode is that the Envoding Level is not supported, then try to direct play but silently
' fall back to the transcode if that fails.
- video.retryWithTranscoding = false
if get_user_setting("playback.tryDirect.h264ProfileLevel") = "true" and playbackInfo.MediaSources[0].TranscodingUrl <> invalid and forceTranscoding = false and playbackInfo.MediaSources[0].MediaStreams[0].codec = "h264"
transcodingReasons = getTranscodeReasons(playbackInfo.MediaSources[0].TranscodingUrl)
if transcodingReasons.Count() = 1 and transcodingReasons[0] = "VideoLevelNotSupported"
video.directPlaySupported = true
- video.retryWithTranscoding = true
+ video.transcodeAvailable = true
end if
- end if
+ end if
if video.directPlaySupported
protocol = LCase(playbackInfo.MediaSources[0].Protocol)