Project

General

Profile

Actions

coordination #68923

closed

openQA Project (public) - coordination #103938: [saga][epic] Scale up: Efficient handling of large storage on o3

[epic] Use external videoencoder in production auto_review:"External encoder not accepting data"

Added by mkittler over 4 years ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Start date:
2020-11-13
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Tags:

Description

Motivation

os-autoinst supports "external videoencoder" where we can configure command lines to call other commands. With more efficient video encoders we can save storage space and hence avoid space issues and can store results for a longer time which helps especially for bug investigation discovered by openQA tests.

Acceptance criteria

  • AC1: DONE One worker runs with an external video encoder configured -> #77839
  • AC2: DONE The configured external video encoder provides significantly smaller video files instead of the default ones -> #77839
  • AC3: DONE The worker is not overstressed by the external video encoder, i.e. not more jobs failing or incompleting due to an overstressed worker -> #77839
  • AC4: All o3 workers run the same (exceptions allowed if required and documented) -> #77842
  • AC5: The same as above for OSD -> #77845
  • AC6: No more workarounds in OSD due to inefficient video encoder -> #77848

Suggestions

  • Install ffmpeg on the worker.
  • Try to find a good encoder setting. Likely VP9 would make sense so ffmpeg -hide_banner -nostats -r 24 -f image2pipe -vcodec ppm -i - -pix_fmt yuv420p -c:v libvpx-vp9 -crf 35 -b:v 1500k -cpu-used 0 would be a start. Also consider AV1 (see #75256).
  • Check whether the resulting videos work (including seeking).
  • Try it on one worker host first. As not all worker hosts have the same hardware the setting might need to be tweaked per worker host.
  • Monitor the CPU usage of ffmpeg e.g. via htop and also the overall performance of the worker, e.g. check for incomplete jobs due to performance issues.
  • I'd refrain from using non-royalty free formats to avoid any legal problems.
  • Adopt any special handling of videos in our production instances:

Subtasks 3 (0 open3 closed)

action #77839: Use external videoencoder in production on one o3 workerResolvedokurz2020-11-13

Actions
action #77842: Use external videoencoder in production on all o3 machines size:MResolvedmkittler2020-11-13

Actions
openQA Project (public) - action #129955: Second attempt to try out AV1 video codec as potential new default as of 2023 size:MResolvedmkittler

Actions

Related issues 5 (0 open5 closed)

Related to openQA Project (public) - action #67342: Support using a "generic" video encoder like ffmpeg instead of only relying on the one provided by os-autoinst itselfResolvedmkittler2020-05-27

Actions
Related to openQA Project (public) - action #70873: Test fails because auto_review:"Encoder not accepting data":retry, video is missingResolvedokurz2020-09-022020-11-14

Actions
Related to openQA Project (public) - action #75256: Try out AV1 video codec as potential new defaultResolvedmkittler2020-10-25

Actions
Related to openQA Infrastructure (public) - action #76987: re-encode some videos from existing results to save spaceResolvedokurz2020-11-04

Actions
Related to openQA Infrastructure (public) - action #129244: [alert][grafana] File systems alert for WebUI /results size:MResolvedmkittler2023-05-122023-05-30

Actions
Actions

Also available in: Atom PDF