chore(deps): update Silo fork to AetherEngine 7.1.0 - #1
Conversation
…replacement The AE#158 handover that keeps a PiP window alive across a native->native load() was gated on pictureInPictureActive alone. A host that mounts the engine's own AVPlayerLayer takes the nil-item gap on every next-episode transition, and on tvOS that gap can leave the layer black while the successor's audio and clock run. prepareForItemReplacement() arms a one-shot request that the next load() consumes; stop() cancels it and a non-native outgoing session ignores it. When the item is kept, NativeAVPlayerHost.prepareForItemHandover() retires the outgoing session's publishers before the engine subscribes for the successor, so the previous episode's EOF, readiness, rate and clock are not replayed. Main-actor hops queued by the outgoing item's KVO now drop on the session guard instead of writing into the successor. Silo-Server port of the fix first shipped from blurbery/AetherEngine 653be63, re-implemented against 6.67.2. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The bypass callsite never read pendingInPlaceItemHandover, so a PiP or host-requested handover across a native->native remote-HLS load still dropped the item to nil before the successor attached. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Import upstream 7.1.0 (2119d9f) and retain Silo native subtitle completion, source timeline offsets, and primary ASS rendering patches. Host-requested item handover is now provided upstream. The resulting tree matches the tested upstream-plus-subtitle-patches tree e16086442d9d43cb41330819ae7a38589a15ae81. Preserve existing fork history without importing upstream commit metadata rejected by the local privacy hook.
Fork main is already an ancestor of upstream 7.1.0. Keep the tested imported tree, including its later seek-axis fixes, when joining the histories.
There was a problem hiding this comment.
Quick104 has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
|
Important Review skippedToo many files! This PR contains 218 files, which is 118 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (218)
You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Macroscope skipped reviewing this pull request. Per-review cost limit exceeded (workspace setting). This review would cost an estimated $29.09, which exceeds your per-review limit of $10.00. The top 3 files driving up this estimate:
Tip To get this pull request reviewed, you can:
|
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This is substantially broader than a dependency bump: it changes supported platforms, playback pipelines, live buffering, subtitles, Dolby Vision, network transport, and public APIs, while adding certificate-trust and origin-relay behavior. The security-sensitive networking changes and the breadth of production runtime impact warrant human review. Not approved because:
Review your spending limits in Billing settings, or comment |
Summary
Silo's pinned fork was based on AetherEngine 6.67.2 and missed later seek, subtitle, HDR, and audio-session fixes. Import upstream 7.1.0 while preserving Silo's subtitle behavior.
What changed
7.1.0(2119d9f9e6655e3b94328207d4587261e80d69a2), including FFmpegBuild 3.3.0 and the iOS 18 / tvOS 18 / macOS 15 platform floors.nativeTimelineOffsetSeconds, and raw primary ASS events with normalized secondary and software PiP subtitles. Packaged HLS retains native text renditions for PiP and AirPlay.mainpreserves the identical tested source tree.The companion app update is silo-apple#298. The app pins
eabce40de1d59c1c03696d99de688730904979da. This PR's merge commit has the same tree as that revision.Test plan
swift test: 632 XCTest tests, one skipped, zero failures; 2,991 Swift Testing tests passed.Checklist
CHANGELOG.mdupdated with the imported release notes and retained subtitle fixesNote
Update Silo fork to AetherEngine 7.1.0 with new DV routing, TLS trust, and VOD packet cache
FFmpegBuildfrom 3.0.x to 3.3.x in Package.swiftEngineTLS.serverTrustEvaluatorso host apps can accept self-signed or custom-trust HTTPS origins, with relay fallback for refused origins in EngineTLS.swift and HLSOriginRelay.swiftPackage.swiftnow requires iOS 18+/tvOS 18+/macOS 15+ andFFmpegBuild3.3.x; consumers on older platforms or the 3.0.x dependency line will fail to resolve. The AV1VTCapabilityProbeno longer guards on OS availability, andSampleBufferRendereralways targetsAVSampleBufferVideoRendererinstead of conditionally using the display layer.Macroscope summarized 84a3dfa.
AI Disclosure
gpt-6-astrafor this contribution. GitHub review services did not report exact model identifiers.