feat(zed): recover corrupted frame gaps in MCAP export
Make ZED MCAP export skip corrupted frame runs until recovery and treat unreadable tail frames as end-of-stream instead of hard failing conversion. Update bundled nearest-mode export to emit partial bundles during corruption gaps, extend BundleManifest with explicit member status and skipped-frame counts, and only write payload messages for present cameras. Tighten batch probing so bundled MCAP validation checks /bundle coverage and per-camera message counts, and improve failure excerpts to include stderr tail output. Also add a local cppzmq CMake fallback, refresh the multi-record tester for the new bundle schema, and document the mixed NVENC limitations in the README.
This commit is contained in:
+12
-2
@@ -28,6 +28,14 @@ if (NOT TARGET OpenSSL::Crypto AND DEFINED OPENSSL_CRYPTO_LIBRARY)
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${OPENSSL_INCLUDE_DIR}")
|
||||
endif()
|
||||
find_package(cppzmq QUIET)
|
||||
set(CPPZMQ_LOCAL_ROOT "${CMAKE_CURRENT_LIST_DIR}/../cppzmq" CACHE PATH "Path to a local cppzmq checkout")
|
||||
if (NOT TARGET cppzmq::cppzmq AND NOT TARGET cppzmq)
|
||||
if (EXISTS "${CPPZMQ_LOCAL_ROOT}/zmq.hpp")
|
||||
add_library(cppzmq::cppzmq INTERFACE IMPORTED GLOBAL)
|
||||
set_target_properties(cppzmq::cppzmq PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${CPPZMQ_LOCAL_ROOT}")
|
||||
endif()
|
||||
endif()
|
||||
if (DEFINED CVMMAP_STREAMER_USE_SYSTEM_CNATS)
|
||||
message(FATAL_ERROR
|
||||
"CVMMAP_STREAMER_USE_SYSTEM_CNATS was removed; use CVMMAP_CNATS_PROVIDER=system")
|
||||
@@ -161,8 +169,10 @@ protobuf_generate(
|
||||
TARGET cvmmap_streamer_depth_proto
|
||||
LANGUAGE cpp
|
||||
PROTOC_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
PROTOS "${CMAKE_CURRENT_LIST_DIR}/proto/cvmmap_streamer/DepthMap.proto"
|
||||
IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}")
|
||||
PROTOS
|
||||
"${CMAKE_CURRENT_LIST_DIR}/proto/cvmmap_streamer/DepthMap.proto"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/proto/cvmmap_streamer/BundleManifest.proto"
|
||||
IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}/proto")
|
||||
add_library(cvmmap_streamer_protobuf INTERFACE)
|
||||
target_include_directories(cvmmap_streamer_foxglove_proto
|
||||
PUBLIC
|
||||
|
||||
Reference in New Issue
Block a user