Commit Graph
153 Commits
Author SHA1 Message Date
True Zhuanjia 0e92af13eb update c-module 2026-08-16 13:21:00 +08:00
True Zhuanjia f762ecc3b2 detailed definitions for connection termination errors 2026-06-05 16:53:40 +08:00
True Zhuanjia ed39f85508 - c-module update
- minor fixes
2026-05-22 02:35:34 +08:00
True Zhuanjia e402c17fa6 adopted qiin2333's network related common-c commits 2026-05-19 15:39:23 +08:00
True Zhuanjia 09981df37e - mic audio encryption for sunshine-foundation
- merge c-module updates from upstream
2026-05-18 22:12:26 +08:00
TrueZhuanjia 4d1619346d update c module for "ABSMOUSE" widget 2025-11-04 21:56:24 +08:00
TrueZhuanjia e0c556da10 feat: mute in background switch 2025-11-03 16:18:21 +08:00
TrueZhuanjia 928b765700 compatibility fix from c-module 2025-09-10 20:47:35 +08:00
TrueZhuanjia c3941df7e9 - feat: mic redirection (with Sunshine-Foundation) 2025-09-08 16:47:27 +08:00
TrueZhuanjia d67a40f155 c-module source file reference update 2025-09-01 22:04:55 +08:00
TrueZhuanjia b506917382 update c-module for mic implementation 2025-09-01 10:41:51 +08:00
Acaki b3664d0e2d refactor: remove unnecessary changes 2025-08-16 04:09:02 +08:00
Acaki d69688678d fix: build 2025-07-12 02:00:33 +08:00
Travis Thieman df2b67ac99 Fix thread sync
Reformat Metal files

Rewrite Metal render loop to not use DisplayLink so we can use the amazing afterMinimumDuration API call

Improve frame drop algorithm

Misc fixes to HDR <-> SDR switching, deprecation warning cleanup

Fix AVSB mode

Fix renderingBackend selected value

Add Rendering Backend setting to iPhone

Let users choose which renderer to use. Refactor metrics into a singleton

Fix tvOS build

Port moonlight-qt's Metal renderer

Bump imgui to latest

Misc tweaks and refactoring

Switch iOS to use Opus float32 audio, in line with other clients.  It was already being sent from the server as float32, so this is simply decoding it with less loss of dynamic range.

Give FrameQueue a faster data structure and full test coverage. Remove pts frame pacing, it's not a fit for iOS.

Don't allow very transparent opacity for middle stats overlay box

Change wording to select button instead of remote button

Add tvOS gesture for double-clicking remote button to show/hide stats

Remove kVTDecodeFrame_1xRealTimePlayback, this was found to seriously impact decode times

Move decode time stat out of async block

Enabe FQ logging

Misc cleanup/fixes

iPad: 26 will require UIRequiresFullScreen to be false, and for all orientations to be supported

Updated iPhone and iPad settings panels

Add setting for graph opacity. Enable stats and graphs to be toggled via two finger swipe

Fix wait time in displaylink, fix settings spacing, stats fixes

Settings for frame queue size, graphs. Misc refactoring and cleanup

Bump moonlight-common-c

Improve logging readability

Fix host frametime and frame queue stats to be recorded during input not output. Show min/max/avg decode time

Add bytes per frame graph

Started on settings changes, both modes working very well

Misc refactoring, move graphs around, both pacing functions working well

Set frameDropTarget to 2 always

Use raw RTP timestamps without converting to floating point for even more accurate playback

Standard frame pacing: remove +3 logic

Switch to NSRunLoopCommonModes for displayLink

Add frame pacing algorithm based on moonlight-qt's Pacer class as a simpler baseline

Switch to os_unfair_lock, misc tweaks

Large refactor that now uses VTDecompressionSession based on PR535 from felipejfc. This now allows more control over queue size and allows dropping arbitrary frames, but introduces a lot of new problems

bump moonlight-common-c to fix 32-bit rollover issue

LiWait timing graph

Add displaylink interval graph

Graphs checkpoint

ImGui graph working checkpoint

ImGui working checkpoint

Add pending frames to stats, add a define for verbose logging

DisplayLink WIP

Add imgui & implot modules

Frame pacing: alternate method based on thieman's pullFrames thread

Frame pacing: simplify displayLink, support passing targetTimestamp down to the sample buffer

Point to my common-c with some timing changes.

Add stats gestures: 2-finger swipe down to show stats, and 2-finger swipe up to hide

Limit refresh rate to 60 when in low power mode

Display screen refresh rate in stats overlay, remove decode time and explain why it can't be measured

Adjust the refresh rate of the display to match the stream framerate and improve battery life

Don't use presentationTimeMs when creating CMSampleTimingInfo

Fix overlayView build for iOS

Refactor CADisplayLink callback for improved frame delivery. Support a user-configurable buffered frame count.

[opt] Use UILabel for stats overlay
2025-07-11 21:02:13 +08:00
TrueZhuanjia 6a9891adee c-module ready 2025-07-04 21:00:04 +08:00
TrueZhuanjia 24fd69e7dc softkeyboard & layout osw gesture interaction 2025-06-14 01:12:16 +08:00
TrueZhuanjia 5a77571d6f otherSection 2025-06-10 00:14:08 +08:00
TrueZhuangjia e7998c3559 disable session disconnection in background 2025-05-14 11:22:10 +08:00
TrueZhuangjia 238eb816d0 update c-module 2 2025-04-09 15:03:26 +08:00
TrueZhuangjia 0f054bb96f update c-module 2025-04-08 22:17:57 +08:00
TrueZhuangjia 33a8e02c5f update moonlight-common-c to 2024.10.21 2024-11-22 21:59:51 +08:00
True Zhuanjia 873269e410 Native touch oriented improvements 2024-06-01 16:37:04 +08:00
Cameron Gutman c3ad7578fe Update moonlight-common-c to resolve build warning 2024-02-25 16:44:47 -06:00
Cameron Gutman 796f87713f Update moonlight-common-c with RTSP encryption and QoS improvements 2024-02-25 15:44:35 -06:00
Cameron Gutman 303303bf6b Update moonlight-common-c with finalized encryption changes 2024-01-19 19:18:21 -06:00
Cameron Gutman 5501d85762 Update moonlight-common-c with new encryption support 2024-01-15 15:11:32 -06:00
Cameron Gutman 62c6661267 Update moonlight-common-c for X-SS-Connect-Data support 2023-12-29 22:32:39 -06:00
Cameron Gutman 485c5e10db Update moonlight-common-c with fix for v4-mapped v6 addresses 2023-12-28 16:13:36 -06:00
Cameron Gutman e69cd3dbbc Define __APPLE_USE_RFC_3542 at the project level for IPV6_PKTINFO
For some reason, the definition in unix.c is not working as expected.
2023-12-27 22:27:09 -06:00
Cameron Gutman e05a6e4ec1 Update moonlight-common.xcodeproj to recommended build settings 2023-12-27 22:17:22 -06:00
Cameron Gutman 77485f2d8d Display error codes when the connection is terminated 2023-12-22 14:46:23 -06:00
Cameron Gutman 401d9fbae7 Update moonlight-common-c with new bitrate logic 2023-12-03 20:21:12 -06:00
Cameron Gutman 9366c763d6 Update moonlight-common-c with multi-homed host fix 2023-11-03 23:14:51 -05:00
Cameron Gutman 628252ed28 Update moonlight-common-c 2023-10-20 17:04:15 -05:00
Cameron Gutman 0879bf0583 Update moonlight-common-c 2023-10-13 23:38:11 -05:00
Cameron Gutman d1c35144e1 Update moonlight-common-c 2023-09-18 21:20:45 -05:00
Cameron Gutman 20d0087bdc Plumb trigger rumble and motion sensor callbacks 2023-06-28 21:27:46 -05:00
Cameron Gutman 924e79d00f Update moonlight-common-c 2023-03-04 12:12:35 -06:00
Cameron Gutman eefe8522c4 Plumb HDR metadata from Sunshine 2023-02-02 23:11:27 -06:00
Cameron Gutman eab25181e3 Update moonlight-common-c to fix streaming from Sunshine 2022-12-06 17:23:44 -06:00
Cameron Gutman be0c071fb5 Update moonlight-common-c 2022-12-02 20:41:40 -06:00
Cameron Gutman 7c65bfcc77 Update moonlight-common-c for speculative RFI support 2022-10-09 17:34:17 -05:00
Cameron Gutman 66f8b6f40c Update moonlight-common-c with additional GFE 3.26 fixes 2022-10-04 20:23:26 -05:00
Cameron Gutman 6eaf9274b8 Upgrade project to Xcode 14 defaults
This drops support for iOS 11 and below (which appears to have already happened on the App Store side anyway)
2022-10-04 20:22:37 -05:00
Cameron Gutman dbc83234e9 Update moonlight-common-c 2022-10-03 23:10:56 -05:00
Cameron Gutman 054b3ae45e Enable RFI for HEVC only 2022-10-02 23:20:59 -05:00
Cameron Gutman d896101ed2 Try to recover if the frame header parsing fails 2022-09-28 17:43:17 -05:00
Cameron Gutman c21f638399 Fix large frame header size for GFE 3.26 2022-09-23 00:03:46 -05:00
Cameron Gutman 6d94c8515e Fix mishandling of IDR frames with a SEI or AUD NAL 2022-09-12 00:05:55 -05:00
Cameron Gutman 65e40279ea Fix handling of 3 byte Annex B start sequences 2022-09-05 18:55:16 -05:00