4afd25fb5b
- New dashcamd: connects to camerad via VisionIPC, feeds raw NV12 frames directly to OMX H.264 encoder. Full 1928x1208 resolution, 4Mbps, 3-minute MP4 segments. Works regardless of UI state. - Added encode_frame_nv12() to OmxEncoder — skips RGBA->NV12 conversion - Suspends recording after 10 minutes of standstill - Disabled old screen recorder timer in onroad.cc - Suppress debug button alert (clpDebug event still fires for screen toggle) - launch_openpilot.sh self-cleans other instances before starting - Register DashcamDebug param in params.cc and manager.py - Add dashcamd to build system (SConscript) and process_config - Updated CLAUDE.md with all session changes - Added GOALS.md feature roadmap Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
17 lines
712 B
Python
17 lines
712 B
Python
Import('env', 'arch', 'common', 'messaging', 'visionipc', 'cereal')
|
|
|
|
clearpilot_env = env.Clone()
|
|
clearpilot_env['CPPPATH'] += ['#selfdrive/frogpilot/screenrecorder/openmax/include/']
|
|
# Disable --as-needed so static lib ordering doesn't matter
|
|
clearpilot_env['LINKFLAGS'] = [f for f in clearpilot_env.get('LINKFLAGS', []) if f != '-Wl,--as-needed']
|
|
|
|
if arch == "larch64":
|
|
omx_obj = File('#selfdrive/frogpilot/screenrecorder/omx_encoder.o')
|
|
clearpilot_env.Program(
|
|
'dashcamd',
|
|
['dashcamd.cc', omx_obj],
|
|
LIBS=[common, 'json11', cereal, visionipc, messaging,
|
|
'zmq', 'capnp', 'kj', 'm', 'OpenCL', 'ssl', 'crypto', 'pthread',
|
|
'OmxCore', 'avformat', 'avcodec', 'avutil', 'yuv']
|
|
)
|