Repository navigation
NAT-551: Capability checks and acceptance fixes - #176
Open
eugene-mux wants to merge 2 commits into
Open
eugene-mux wants to merge 2 commits into
eugene-mux wants to merge 2 commits into
Conversation
Open
eugene-mux
marked this pull request as ready for review
November 6, 2026 21:57
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
Complete the capability, configuration and compatibility fixes for Android Upload SDK 1.1.0. Targets
releases/v1.1.0.Changes
build()gets an independent upload session. Chunk sizes round down to 256 KiB multiples (minimum 256 KiB); negative retries become zero.Resample; the SDK AAR contains no native libraries.Compatibility
Android 6.0 (API 23) remains supported for original-file uploads, without local standardization. Conversion requires Android 7.0 (API 24)+ and a supported input/device. This is the accepted scope for 1.1.0.
Validation
Log evidence
Release SDK logging is off by default. Enable a logcat logger with
MuxUploadSdk.useLogger(MuxUploadSdk.logcatLogger()); filter byMuxUploadStandardization.Recorded S23 conversion and A02 decoder-fallback lines:
Note
Medium Risk
Changes core standardization planning, codec preflight, and upload
UploadInfo/Buildersemantics; behavior shifts are broad but localized to the upload pipeline with heavy test coverage.Overview
Standardization and conversion
Planning is split into
propose(policy-only) andplan(merged with device/source capability probes). A newSdrPlanningCapabilityProberuns real preflight (decode, audio, tone-map, encoder) before conversion is approved; H.264 targets prefer High and fall back to Baseline when preflight selects a weaker encoder. Export and validation useSdrEncodingTargets.withEncoderso output matches the encoder actually used. StructuredMuxUploadStandardizationlogs (StandardInputDiagnostics) trace inspection, capabilities, plan selection, conversion, payload choice, and failures—documented in the README withMuxUploadSdk.useLogger.Inspection and prep
Sample scanning drops the 1 GiB / 5s ceilings (full-file scan like iOS; cancellation still between reads; 250k-sample bound kept). Upload preparation wires the probe, emits diagnostics, and only exports when the final plan is Convert (fallback/original paths skip export and avoid codec queries where appropriate).
Transport and public API
MuxUpload.Builder:chunkSizeis rounded down to 256 KiB multiples (minimum 256 KiB);retriesPerChunkclamps negatives to 0;optOutOfEventTrackingnow persists correctly; eachbuild()copiesUploadInfoso reused builders get independent sessions. HdrHandling KDoc reflects real preserve/tone-map behavior.Dependencies and dead code
libyuv removed from the library; unused
Resampledeleted.Metrics and sample app
UploadMetrics and demo
extractThumbnailuse explicitMediaMetadataRetrieverrelease for older API levels. Example UI addsnavigationBarsPadding, allows upload when preview is missing (“Preview unavailable”), and documents API 23 vs 24+ standardization in the README.Tests
Planner, preparation, preflight, conversion adapter, and builder behavior are expanded or updated for the new flow and normalization rules.
Reviewed by Cursor Bugbot for commit a8083a7. Bugbot is set up for automated code reviews on this repo. Configure here.