Repository navigation
feat: add lucy-2.6 realtime model at 720p - #17
Merged
Merged
Conversation
lucy-2.6 is the successor to lucy-2.5 and a field-for-field clone of its realtime entry: /v1/stream, 1280x720 at 30 fps, fast speed tier. - Inserted right after lucy-2.5 in the realtime registry; kRealtime's std::array size literal goes 8 -> 9. - Listed in the fast-mode docs (README, ConnectOptions::speed, Speed::Fast, realtime_warmup example). - lucy-latest still resolves to lucy-2.5; it is unchanged here.
decartdev
approved these changes
Oct 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Registers
lucy-2.6, the successor tolucy-2.5, on the realtime surface. It mirrors the JS SDK registry, the source of truth that this package's tests are written against. The model is already served in production; this PR only makes it reachable through the typed SDK surface.lucy-2.6is opt-in by explicit name.lucy-lateststill resolves tolucy-2.5; flipping the alias is a follow-up. The alias entry, its comments, geometry and speeds are untouched.?speed=fastand bills it like 2.5, so the entry advertisesSpeed::Fastand 2.6 joins the fast-mode model lists.lucy-2.5is unchanged. This change is purely additive.Geometry was confirmed against the deployed model config:
1280x720at 30 fps for realtime, a field-for-field clone oflucy-2.5's realtime entry. This SDK is realtime-only, so there is no batch entry.Usage
Changes
src/models.cppkRealtimeentry{"lucy-2.6", 30, 1280, 720, true, /*fastSpeed=*/true}right afterlucy-2.5, and thestd::array<Entry, N>size literal goes from 8 to 9include/decart/models.h"lucy-2.6"added to the list of canonical names in therealtime()doc commentinclude/decart/realtime/types.h,include/decart/realtime/realtime.h,README.md,examples/realtime_warmup.cpplucy-2.6tests/test_models.cpp/v1/stream, 30 fps, 1280x720,supportedSpeeds == {Fast}); 2.6 added to the explicit fast checks and thewithFastset;canonicalOnlycount goes from 5 to 6tests/test_stream_url.cppsupportsSpeed(lucy-2.6, Fast)positive checkNo version bump.
Verification
Linux (Amazon Linux 2023) / GCC 11.5 / CMake 3.22 / Ninja:
./scripts/format.sh --check(clang-format 15.0.7)cmake --preset release -DDECART_LIVEKIT_VERSION=1.11.0+cmake --build --preset release -- -k 0realtime_warmup.cpp,test_models.cppandtest_stream_url.cpp. All 5 executables fail to link locally (4 examples +decart_tests): the prebuilt LiveKit 1.11.0 Linux binaries require glibc 2.38 and a newer libstdc++ (GLIBCXX_3.4.30), and this VM has glibc 2.34. This is a limit of the VM, unrelated to this change. CI on ubuntu-latest/macOS/Windows is the authoritative full-build check.cmake -B build/norealtime -S . -G Ninja -DCMAKE_BUILD_TYPE=Release -DDECART_BUILD_REALTIME=OFF -DDECART_BUILD_TESTS=ON -DDECART_BUILD_EXAMPLES=ON+cmake --build build/norealtimectest --test-dir build/norealtime --output-on-failure./build/norealtime/tests/decart_teststest_models.cppandtest_stream_url.cpp; onlytest_messages.cpp(realtime-only, untouched here, no model names) is excluded in this config.lucy-2.6registry line removedModelNotFound), so the new assertions do pin the changeCompatibility
Additive, and source- and ABI-compatible.
kRealtimeis a file-localconstexprin an anonymous namespace, so growing it changes no exported symbol, type layout or function signature. Existing model names, includinglucy-2.5andlucy-latest, behave exactly as before.Follow-ups
lucy-latesttolucy-2.6once the server-side alias moves.