|
|
@ -6,6 +6,7 @@ import argparse |
|
|
|
import numpy as np |
|
|
|
import numpy as np |
|
|
|
import multiprocessing |
|
|
|
import multiprocessing |
|
|
|
import time |
|
|
|
import time |
|
|
|
|
|
|
|
import signal |
|
|
|
|
|
|
|
|
|
|
|
import cereal.messaging as messaging |
|
|
|
import cereal.messaging as messaging |
|
|
|
from msgq.visionipc import VisionIpcServer, VisionStreamType |
|
|
|
from msgq.visionipc import VisionIpcServer, VisionStreamType |
|
|
@ -18,8 +19,8 @@ V4L2_BUF_FLAG_KEYFRAME = 8 |
|
|
|
|
|
|
|
|
|
|
|
ENCODE_SOCKETS = { |
|
|
|
ENCODE_SOCKETS = { |
|
|
|
VisionStreamType.VISION_STREAM_ROAD: "roadEncodeData", |
|
|
|
VisionStreamType.VISION_STREAM_ROAD: "roadEncodeData", |
|
|
|
VisionStreamType.VISION_STREAM_WIDE_ROAD: "wideRoadEncodeData", |
|
|
|
|
|
|
|
VisionStreamType.VISION_STREAM_DRIVER: "driverEncodeData", |
|
|
|
VisionStreamType.VISION_STREAM_DRIVER: "driverEncodeData", |
|
|
|
|
|
|
|
VisionStreamType.VISION_STREAM_WIDE_ROAD: "wideRoadEncodeData", |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
def decoder(addr, vipc_server, vst, nvidia, W, H, debug=False): |
|
|
|
def decoder(addr, vipc_server, vst, nvidia, W, H, debug=False): |
|
|
@ -147,10 +148,14 @@ if __name__ == "__main__": |
|
|
|
|
|
|
|
|
|
|
|
vision_streams = [ |
|
|
|
vision_streams = [ |
|
|
|
VisionStreamType.VISION_STREAM_ROAD, |
|
|
|
VisionStreamType.VISION_STREAM_ROAD, |
|
|
|
VisionStreamType.VISION_STREAM_WIDE_ROAD, |
|
|
|
|
|
|
|
VisionStreamType.VISION_STREAM_DRIVER, |
|
|
|
VisionStreamType.VISION_STREAM_DRIVER, |
|
|
|
|
|
|
|
VisionStreamType.VISION_STREAM_WIDE_ROAD, |
|
|
|
] |
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
vsts = [vision_streams[int(x)] for x in args.cams.split(",")] |
|
|
|
vsts = [vision_streams[int(x)] for x in args.cams.split(",")] |
|
|
|
cvipc = CompressedVipc(args.addr, vsts, args.nvidia, debug=(not args.silent)) |
|
|
|
cvipc = CompressedVipc(args.addr, vsts, args.nvidia, debug=(not args.silent)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# register exit handler |
|
|
|
|
|
|
|
signal.signal(signal.SIGINT, lambda sig, frame: cvipc.kill()) |
|
|
|
|
|
|
|
|
|
|
|
cvipc.join() |
|
|
|
cvipc.join() |
|
|
|