fca07bf669
Тесты:
- libcuframes/tests/test_packet_ring.c — 2 scenarios:
1) normal flow: 1 pub × 1 sub × 2000 packets, varied sizes, GOP=30,
payload integrity check (seq в первых 8 байтах + pattern). PTS
monotonicity, first KEY seq, нет data errors.
2) slow consumer (10ms delay): publisher 200 fps, subscriber должен
detect OVERRUN, library resync на keyframe — verify received >10
даже на сильно медленном консьюмере.
- libcuframes/tests/CMakeLists.txt: add_test packet_ring_basic.
Docs:
- CHANGELOG.md: новая [Unreleased] секция с full v0.2 highlights и
явно declared limitations (sub-stream, audio, codec change → v0.3).
- docs/integrations/frigate.md: новая секция "v0.2: dual-input (detect +
record через один RTSP)" с config example, requirements, trade-offs.
Связано: #2, PR #4. Step 6 (final) перед снятием draft.
33 lines
1.4 KiB
CMake
33 lines
1.4 KiB
CMake
find_package(CUDAToolkit REQUIRED)
|
|
|
|
# Standalone test executables (без catch2 — простой ctest)
|
|
|
|
add_executable(test_pingpong test_pingpong.cu)
|
|
target_link_libraries(test_pingpong PRIVATE cuframes CUDA::cudart)
|
|
target_include_directories(test_pingpong PRIVATE
|
|
${CMAKE_SOURCE_DIR}/include)
|
|
add_test(NAME pingpong_basic COMMAND test_pingpong)
|
|
set_tests_properties(pingpong_basic PROPERTIES TIMEOUT 60)
|
|
|
|
add_executable(test_multi test_multi.cu)
|
|
target_link_libraries(test_multi PRIVATE cuframes CUDA::cudart)
|
|
target_include_directories(test_multi PRIVATE
|
|
${CMAKE_SOURCE_DIR}/include)
|
|
add_test(NAME multi_consumer COMMAND test_multi)
|
|
set_tests_properties(multi_consumer PROPERTIES TIMEOUT 60)
|
|
|
|
add_executable(test_stress test_stress.cu)
|
|
target_link_libraries(test_stress PRIVATE cuframes CUDA::cudart)
|
|
target_include_directories(test_stress PRIVATE
|
|
${CMAKE_SOURCE_DIR}/include)
|
|
add_test(NAME stress_4consumer COMMAND test_stress)
|
|
set_tests_properties(stress_4consumer PROPERTIES TIMEOUT 120)
|
|
|
|
# v0.2 — packet ring tests (host-only, без CUDA в test-коде)
|
|
add_executable(test_packet_ring test_packet_ring.c)
|
|
target_link_libraries(test_packet_ring PRIVATE cuframes)
|
|
target_include_directories(test_packet_ring PRIVATE
|
|
${CMAKE_SOURCE_DIR}/include)
|
|
add_test(NAME packet_ring_basic COMMAND test_packet_ring)
|
|
set_tests_properties(packet_ring_basic PROPERTIES TIMEOUT 120)
|