action #39251

Ensure videos are seekable for timed out jobs

Added by michalnowak over 1 year ago. Updated 4 months ago.

Status:RejectedStart date:07/08/2018
Priority:LowDue date:
Assignee:okurz% Done:

0%

Category:Feature requests
Target version:QA - future
Difficulty:
Duration:

Description

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.


Related issues

Related to openQA Project - action #42047: Mark (non) keyframes in OGV file correctly New 05/10/2018

History

#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= or make sure the test does not take that long or split it up into multiple chained ones.

#2 Updated by michalnowak over 1 year ago

In this case the job did not "explode", it was ended by openQA and put to incomplete state in a controlled manner. I think it is in realm of possibility to save the video correctly.

#3 Updated by okurz over 1 year ago

That's also true. I think we have mentioned the idea already somewhere else that actually timed out jobs should not be incomplete but failed.

#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.

#5 Updated by okurz 5 months ago

  • Subject changed from Video not seekable for incomplete jobs to Ensure videos are seekable for timed out jobs
  • Category changed from Concrete Bugs to Feature requests
  • Priority changed from Normal to Low
  • Target version set to future

#6 Updated by okurz 5 months ago

  • Related to action #42047: Mark (non) keyframes in OGV file correctly added

#7 Updated by okurz 4 months ago

  • Status changed from New to Rejected
  • Assignee set to okurz

I am convinced this will never be done. If the last resort of openQA MAX_JOB_TIME is hit the first problem to fix should be obvious, make sure the job does not time out. I doubt the video is needed for that.

Also available in: Atom PDF