You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1022 B
33 lines
1022 B
4 years ago
|
#!/usr/bin/env python3
|
||
|
|
||
|
import os
|
||
|
|
||
|
from tqdm import tqdm
|
||
|
|
||
|
from common.file_helpers import mkdirs_exists_ok
|
||
|
from tools.lib.logreader import LogReader
|
||
|
from tools.lib.route import Route
|
||
|
|
||
|
import argparse
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
parser = argparse.ArgumentParser()
|
||
|
parser.add_argument("route", help="The route name")
|
||
|
parser.add_argument("segment", type=int, help="The index of the segment")
|
||
|
args = parser.parse_args()
|
||
|
|
||
|
out_path = os.path.join("jpegs", f"{args.route.replace('|', '_')}_{args.segment}")
|
||
|
mkdirs_exists_ok(out_path)
|
||
|
|
||
|
r = Route(args.route)
|
||
3 years ago
|
path = r.log_paths()[args.segment] or r.qlog_paths()[args.segment]
|
||
|
lr = list(LogReader(path))
|
||
4 years ago
|
|
||
|
for msg in tqdm(lr):
|
||
3 years ago
|
if msg.which() == 'thumbnail':
|
||
|
with open(os.path.join(out_path, f"{msg.thumbnail.frameId}.jpg"), 'wb') as f:
|
||
|
f.write(msg.thumbnail.thumbnail)
|
||
|
elif msg.which() == 'navThumbnail':
|
||
|
with open(os.path.join(out_path, f"nav_{msg.navThumbnail.frameId}.jpg"), 'wb') as f:
|
||
|
f.write(msg.navThumbnail.thumbnail)
|