Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Changes to address issues and support NetworkServer integration#90

Open
Robertsmania wants to merge 6 commits intovincentneo:improvements-1from
Robertsmania:improvements-1
Open

Changes to address issues and support NetworkServer integration#90
Robertsmania wants to merge 6 commits intovincentneo:improvements-1from
Robertsmania:improvements-1

Conversation

Copy link

Robertsmania commented Apr 22, 2023

NetworkServer - establishes a bonjour listener and accepts connections from iOS clients running the companion iOS app LosslessSwitcherRemote:
https://github.com/Robertsmania/LosslessSwitcherRemote

That may understandably be too much to consider pulling into the main LosslessSwitcher project. But other changes address these issues and can be taken individually:

Show both current and detected in menu bar and dropdown #89
#89

Manual set current to detected #88
#88

Setting to toggle auto-switch #87
#87

Display Bit Depth in addition to Sample Rate #86
#86

Manual bit depth override in menu - already in 44

Build 14 still switches Bit Depth when disabled #79
#79

Manual sample rate override in menu #44
#44

Bit depth not changing #2
#2

Robertsmania added 4 commits April 19, 2023 14:47
...ts-1 branch.

Still compatible with LosslessSwitcherRemote iOS app.
receiveClientMessage now gets the size from the client and reads the data based on that to accommodate different client.maximumDatagramSize limits.
sendServerResposne now calculates the data payload size and prepends that to the ServerResponse.
New support for .toggleBitDepthDetection, .setDeviceSampleRate/.setDeviceBitDepth with ASBD formats, .setCurrentToDetected
ResponseData now includes currentBitDepth, detectedBitDepth, bitDepthDetectionEnabled, sampleRatesForCurrentBitDepth, bitDepthsForCurrentSampleRate, timeStamp
cleanupInactiveConenction now tries to cancel failed and closed connections, rather than just removing everything thats not .ready.
CodableAudioStreamBasicDescription struct for sending/receing ASBD format arrays.
ClientRequest now supports .toggleBitDepthDetection, .setDeviceSampleRate/.setDeviceBitDepth with ASBD formats.
ClientMessage now has a timeStamp.

OutputDevices - updateClient() calls where appropriate.
AppDelegate - updateBitDepthDetectionMenuItemState - just like auto switch
Copy link
Owner

vincentneo commented May 7, 2023

That may understandably be too much to consider pulling into the main LosslessSwitcher project.

While I have yet to try the remote features, I do think that this is really cool. Maybe as a v2.0?

Right now I will probably consolidate what's good and bad about all the 9 betas released, and make an actual release of v1.1 before anything else, though.

Copy link
Author

Robertsmania commented May 10, 2023

I encourage you to consolidate and move forward with what you think works the best. I've focused my effort on the iOS companion app and network server without doing much of anything for the actual frequency/bitrate detection. In my use case I predominantly leave the auto-switch off and enjoy being able to change the settings remotely.

vincentneo and others added 2 commits February 24, 2024 23:48
It appears that Xcode is incorrectly attempting to load Network.framework from PrivateFrameworks rather than regular frameworks directory
fix build bug due to private framework conflicts
Thinkscape reviewed Apr 17, 2024
A toggle option for "Auto switching" is also shown.

The opposite happens, when the next track happens to have a lower sample rate.
app screenshot, with new display elements for Current and Detected frequencies, Set Rate </span>to <span>Current and Auto Swithing toggle
Copy link
Contributor

Thinkscape Apr 17, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a bit odd... not sure how permanent those are. Maybe that should be commited into the repo instead?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

1 more reviewer

Thinkscape Thinkscape left review comments

Reviewers whose approvals may not affect merge requirements

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

3 participants