76 lines
2.6 KiB
Python
76 lines
2.6 KiB
Python
|
import os
|
||
|
import subprocess
|
||
|
from . import res
|
||
|
|
||
|
def start_workflow():
|
||
|
res.bootstrap_folder_structure()
|
||
|
|
||
|
# hevc diagrams
|
||
|
hevc_diagrams = res.get_diagrams_hevc()
|
||
|
|
||
|
# to complete data structure for rendering
|
||
|
data = {
|
||
|
"aggregated_metrics": {
|
||
|
"hevc": {
|
||
|
"encoding_time": {},
|
||
|
"filesize_percentage": {},
|
||
|
"vmaf_score": {}
|
||
|
}
|
||
|
},
|
||
|
"diagrams": {
|
||
|
"hevc": {
|
||
|
"encoding_time": hevc_diagrams["encoding_time"],
|
||
|
"filesize_percentage": hevc_diagrams["filesize_percentage"],
|
||
|
"vmaf_score": hevc_diagrams["vmaf_score"]
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# hevc metrics
|
||
|
aggregated_metrics_hevc = res.read_dict_from_json_file(
|
||
|
os.path.join(
|
||
|
res.get_path_results_aggregations(),
|
||
|
res.get_filename_results_aggregations_hevc()
|
||
|
)
|
||
|
)
|
||
|
for preset in aggregated_metrics_hevc.keys():
|
||
|
for crf in aggregated_metrics_hevc[preset].keys():
|
||
|
data["aggregated_metrics"]["hevc"]["encoding_time"]["mean"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["encoding_time"]["mean"],
|
||
|
2
|
||
|
)
|
||
|
data["aggregated_metrics"]["hevc"]["encoding_time"]["median"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["encoding_time"]["median"],
|
||
|
2
|
||
|
)
|
||
|
data["aggregated_metrics"]["hevc"]["filesize_percentage"]["mean"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["filesize_percentage"]["mean"],
|
||
|
2
|
||
|
)
|
||
|
data["aggregated_metrics"]["hevc"]["filesize_percentage"]["median"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["filesize_percentage"]["median"],
|
||
|
2
|
||
|
)
|
||
|
data["aggregated_metrics"]["hevc"]["vmaf_score"]["mean"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["vmaf_score"]["mean"],
|
||
|
2
|
||
|
)
|
||
|
data["aggregated_metrics"]["hevc"]["vmaf_score"]["median"] = round(
|
||
|
aggregated_metrics_hevc[preset][crf]["vmaf_score"]["median"],
|
||
|
2
|
||
|
)
|
||
|
|
||
|
# av1 metrics
|
||
|
data["aggregated_metrics"]["av1"] = res.read_dict_from_json_file(
|
||
|
os.path.join(
|
||
|
res.get_path_results_aggregations(),
|
||
|
res.get_filename_results_aggregations_av1()
|
||
|
)
|
||
|
)
|
||
|
|
||
|
# render the template
|
||
|
res.render_template(
|
||
|
os.path.join(res.get_path_templates(), "README.md.tmpl"),
|
||
|
os.path.join(res.get_path_project(), "README.md"),
|
||
|
data
|
||
|
)
|