forked from jellyfin/Swiftfin
-
Notifications
You must be signed in to change notification settings - Fork 1
[Enhancement] Optimize playback buffering for challenging network conditions #4
Copy link
Copy link
Open
Labels
area: playbackVideo/audio playbackVideo/audio playbackenhancementNew feature or requestNew feature or request
Description
Description
A beta tester reported major stuttering and bitrate issues during playback when using a proxy server. While this specific case was likely environment-related (unfamiliar proxy server), it highlights an opportunity to review and potentially improve buffering behavior for users with challenging network conditions.
Current Implementation
VLC is configured with the following buffer settings in MediaPlayerProxy+VLC.swift:
configuration.options = [
"network-caching": 5000, // 5 seconds network buffer
"file-caching": 5000, // 5 seconds file buffer
"live-caching": 5000, // 5 seconds live stream buffer
"clock-jitter": 0, // Disabled
"clock-synchro": 0, // Disabled
]The transcoding profile uses:
minSegments: 2for HLS streaming- Auto bitrate detection via network speed test
Potential Improvements
- User-adjustable buffer settings - Allow users with poor connections to increase buffer sizes
- Adaptive buffering - Dynamically adjust buffer size based on network conditions
- Higher minimum segments - Increase
minSegmentsfrom 2 to reduce re-buffering - Bitrate test improvements - More accurate network speed testing for auto bitrate selection
- Documentation - Document existing settings users can adjust for playback issues
Affected Files
Shared/Objects/MediaPlayerManager/MediaPlayerProxy/MediaPlayerProxy+VLC.swiftShared/Objects/PlaybackBitrate/PlaybackBitrate.swiftSwiftfin tvOS/Views/SettingsView/PlaybackQualitySettingsView.swift
Context
Beta tester Harrison reported stuttering when using a proxy server they hadn't used before (couldn't connect to their normal HTTP server). The stuttering is likely due to the proxy adding latency, but this feedback provides a good opportunity to review buffering behavior.
Reporter
Beta tester Harrison (VID3, IMG2-4 in feedback)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area: playbackVideo/audio playbackVideo/audio playbackenhancementNew feature or requestNew feature or request