Repository navigation
Conversation
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
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.
Universal video analysis can send more extracted images than a model endpoint accepts in one request. Add an optional
VideoAnalyzerConfig.max_total_framescap after regular and action-adjacent keyframes are merged. The default isNone, preserving existing frame selection.When configured, selection keeps the extracted endpoints, prioritizes complete before/after pairs around recent actions, and fills remaining slots across the timeline. It preserves frame timestamps, image bytes, and the original recording. The model prompt explicitly describes the sampling limit so missing instants are not treated as observed. Native video analysis is unchanged.
Validation on Python 3.12:
ruff format --check .,ruff check .,scripts/quality_ratchet.py, andpyright --project pyright-core.jsonpassed.351ca8422f7b5b54e80a9c1ce03a222e02415b6bunder the same constraints reported 2,439 passed, 85 failed, and 9 skipped. All 85 baseline failures also occurred on the candidate. The additionaltest_perception_node_async_offloadingfailure concerned a missing background-persisted image record; it passed once in isolation on each revision without code changes. The original full-suite failure remains recorded; this is not a claim that the complete suite passes.The tests use synthetic frame bytes and mocked model calls. No device or live model acceptance is claimed for this public candidate.