-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handling Recovering After Stalls on Tizen #1839
Comments
I have also seen video stalls on Tizen TVs with very specific firmware that the normal stall detection handling did not fix. We were able to recover playback by pausing and then trying to play the video again, and as such we ported the stall detection code app-side and changed the stall handling to pause and play the video instead. Sounds similar to what you are seeing, so perhaps it may be of interest to introduce separate handling for stall handling on Tizen versus any other platform that invokes a pause / play on the player, unless there is a better solution. |
Also, you may want to update your ticket as you have listed the TV models instead of the actual firmware information. You will want to go to Settings / Support / About this TV to retrieve this information. :) |
Thank you @skipness for filing this issue. Thank you @kevinscroggins-youi for helping out. I am putting together a change that will make the stall detector configurable via The three configurable attributes I am looking to expose are:
@skipness, what do you think of this solution? Since we don't have a good way to reproduce TV issues, once the change has been submitted, I will likely rely on you to verify that it allows you to work around the issue on Tizen. |
@kevinscroggins-youi Thanks for reminding, I have updated the ticket. |
Make the stall detector configurable via Player.configure. This should make it easier for developers to work around stall issues and make it easier for us to find ideal configuration for different platforms. This exposes: - Enabled : A flag for whether or not the player should initialize and use a stall detector. - Threshold : The number of seconds that must pass without progress before firing the stall-event. - Skip : The number of seconds to skip forward after a stall-event. To make enable possible, the stall detector was made optional and is now passed into the gap jumper. This allows Playhead to evaluate the config and create the detector as desired. Issue #1839 Change-Id: Ife1bf34b4cfc7b469f4b0beb312a06d5b5cd81a9
@skipness, the change has been submitted, so the configuration should be available. Here are the calls that you can use to change the various elements of it. Could you play with different values and left us know which combination worked best on TIZEN?
|
Closing due to inactivity. If this is still an issue for you or if you have further questions, you can ask us to reopen or have the bot reopen it by including |
@vaage Great! Thank you for this! Unfortunately based on my experience, the current method of recovering from stalls does not work on Tizen. The only thing that did work was pausing and after a 1tick delay, playing the video. I'm not sure if there is a better solution, but it would appear as though Tizen may require special handling for this situation. In our case, we only observed this behaviour specifically when backgrounding and restoring our application on a very specific 2018 Tizen TV. We have two other 2018 Tizen TVs that did not exhibit this behaviour. Hope this information is useful. I'm not entirely confident that this feature will fully resolve this issue. |
@shaka-bot reopen |
@kevinscroggins-youi in your original post, you said that not using stall detection resolved the issue for you. Is that still a viable option for you? If so, the configuration exposed the option for you to disable it when running on Tizen. If not, what is missing from Shaka Player to handle your use case? |
@vaage |
@vaage I did not, that was @skipness who indicated that disabling the stall detector fixed the stall from occurring. In my case, having the stall detector with alternate behaviour for pausing and then quickly playing the video fixed the stall on my end. I was experiencing a stall when restoring the application from the background on DRM encoded VOD playback specifically. I only saw it on a single 2018 device, so I will try to track that device down and test with this fix early next week and get back to you. Thanks for the follow up! |
@vaage I tested our app using the latest version of Shaka on the affected 2018 TV and it appears that the video playback no longer stalls on startup in general, so perhaps some other change may have unintentionally fixed this. In any case, I think it's safe to say that this is definitely fixed. Thanks! |
Have you read the FAQ and checked for duplicate open issues? Yes
What version of Shaka Player are you using? 2.4.7
Can you reproduce the issue with our latest release version? Yes
Can you reproduce the issue with the latest code from
master
? YesAre you using the demo app or your own custom app? Custom app
If custom app, can you reproduce the issue using our demo app? Yes
What browser and OS are you using? Tizen 3 & Tizen 4
For embedded devices (smart TVs, etc.), what model and firmware version are you using? UA40MU6310 (Tizen 3 / Software Version: T-KTMDCNC - 1262.0)
UA43NU7100 (Tizen 4 / Software Version: T-KTM2LDCNC - 1202.6)
What are the manifest and license server URIs? I cannot provide, sorry.
What did you do?
Play stream on TV
Make some seek by changing
currentTime
What did you expect to happen?
After seeking, stream can be play smoothly
What actually happened?
Sometimes stream will be stall after seeking, stream resume normal after trigger a play/pause or seek again.
I found that the fix suggested from #1704 can fix the above issue too by adding the following code in
stall_detector.js
:The text was updated successfully, but these errors were encountered: