Ensure videos are seekable for timed out jobs
|Target version:||QA - future|
When job's result is "incomplete", very often the video is not seekable in web browser (Chrome 68 in my case). (One can workaround it by downloading the video and playing it in VLC/mplayer which prompt user to fix "frame index" or whatever.)
One such video is here: http://nilgiri.suse.cz/tests/744#downloads Job was ended by a 2 hour timeout.
#1 Updated by okurz over 1 year ago
My personal experience is that only the locally downloaded file and using "mpv" works reliable to show every frame. And then also only moving backward in big steps works, moving forward frame-wise.
IMHO it is not feasible to fix the video index in case of incompletes as, well, the job is incomplete for a reason. In the case of the mentioned job it's simple: The job timed out on 2h openQA timeout because the sum of the internal timeouts is longer than 2h. Simply make sure that this is not the case :) E.g. set MAX_JOB_TIME=
#4 Updated by mkittler over 1 year ago
@okurz openQA is using the Ogg container so there's no index (Ogg documentation about seeking).
Seeking is supposed to be implemented via 'interpolated bisection search'. How well that works seems to depend much on the implementation. I also have a good experience with MPV which btw doesn't require to download the file locally first. Firefox works also very well. And yes, Chromium not so much.
So when I don't overlook something, we can not improve anything when sticking with Ogg. The next best alternative is Matroska, which allows to add an index for efficient seeking in basically any player which supports the format at all. Then we would really need to take care that the video encoder writes the index when it is done - also due to any kind of error. This is doable but likely some effort. And if we fail to do so it would be even worse than before (Matroska files without index might be handled even worse than Ogg files).
In my opinion it isn't worth it.