amperfy

BLeeEZGPL-3.0活跃维护

一款 iOS/iPadOS/macOS 音乐播放客户端,可连接自建的 Ampache 或 Subsonic 服务器播放歌曲,适合想用 Apple 设备访问个人音乐库的人。

Amperfy is an iOS/iPadOS/macOS app to play songs from an Ampache or Subsonic server

v2.1.1发布于 2026-08-13 15:06 UTC1,847star +2 / 7 天166fork同步于 2026-11-10 17:48 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/BLeeEZ/amperfy.git
cd amperfy
硬件要求按 README 说明

README 未说明硬件要求,仅说明需要 Xcode 26 与 Swift 6 构建,运行平台为 iOS、iPadOS 和 macOS

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

用 Swift 写的 iOS/iPadOS/macOS 客户端,连接 Ampache 或 Subsonic 服务器播放音乐

一款 iOS/iPadOS/macOS 音乐播放客户端,可连接自建的 Ampache 或 Subsonic 服务器播放歌曲,适合想用 Apple 设备访问个人音乐库的人。

核心能力

  • 支持 Ampache 与 Subsonic 两种服务器协议
  • 多账号切换并支持离线模式播放
  • 支持 CarPlay、Siri 命令与 App Intents
  • 支持无缝播放、均衡器与 ReplayGain
  • 支持音乐、播客、电台与 Scrobbling

容易踩的坑

需自行准备可用的 Ampache 或 Subsonic 服务器,App 本身不提供音乐内容;真机测试 CarPlay 和 Siri 需具备 com.apple.developer.playable-content 与 com.apple.developer.siri 权限的开发者证书,否则需清空 Amperfy/Amperfy.entitlements 中的条目;构建需 Xcode 26 与 Swift 6 环境

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2.1.1
  1. v2.1.1v2.1.1 Custom HTTP Headers, Autoplay, Instant Mix最新正式版2026-08-13 · 2026-08-13 15:06 UTC

    Features

    • Support custom HTTP headers per account
    • Support autoplaying similar songs at the end of the play queue
    • Add "Instant Mix" via the server API to request similar songs
    • Support sharing songs
    • Display radio station metadata in player info
    • Always-on-top setting for the macOS mini player
    • Clicking a lyric line will seek to that point in the song
    • Seek directly on click (instead of click-and-drag) in the macOS player

    Bug Fixes

    • Fixed endless artwork downloads
    • Fixed playing a song directly when clicked in the Home random songs section
    • Fixed CarPlay displaying the album's song list instead of directly playing the album

    Contributors

    @jrmgx: seek directly on click (instead of click-and-drag) in the macOS mini player @thrandale: display radio station metadata in player info & clicking a lyric line will seek to that point in the song @elafargue: add "Instant Mix" via the server API to request similar songs @jesusjimsa: increased player artwork size @mikeliddle: always-on-top setting for the macOS mini player @jlandersen: improve player seek bar hit area @thisolivier: support sharing songs @RaulitoRS97: performance improvements @bmcwilliams96: fixed CarPlay displaying the album's song list instead of directly playing the album & support autoplaying similar songs at the end of the play queue @santiagorod92: support custom HTTP headers per account

    Thank you very much for your contributions.

  2. v2.1.0v2.1.0 Multi Account, Home tab, CarPlay & AppIntent rework2026-03-19 · 2026-03-19 07:10 UTC
    查看更新说明

    Features

    • Multi account support
    • Configurable Home tab
    • Reworked SiriShortcuts and Intents
    • Reworked CarPlay interface
    • Optional song rating display
    • Siri support for radios via voice command
    • Support radios in PlayID and SearchAndPlay intent
    • New setting to optionally save and use song playback progress
    • Library resync and logout can be done without restart
    • Volume slider available in iOS and iPadOS

    BugFixes

    • Fixed mini player title tear
    • Fixed NowPlayingInfo when player is paused
    • Fixed macOS crash in fullscreen when selecting the searchbar
    • Fixed cached scrobble times for Subsonic API

    Contributors

    @DCM4711: Display song rating @aaravchour: Add multiple audio visualizer @el-tiuri: Fixed cached scrobble times for Subsonic API @Exceen: Add section index titles to artists

    Thank you very much for your contributions.

    Development

    Update AudioStreaming to support OGG and FLAC gapless playback

  3. v2.0.0v2.0.0 Liquid Glass, Equalizer, Replay Gain2025-11-10 · 2025-11-10 19:50 UTC
    查看更新说明

    Features

    • Adaptation to Liquid Glass
    • Equalizer support
    • Support for replay gain received from server
    • Settings: configure transcoding format separately for WiFi and Cellular
    • Added pause quick action for music and podcast playback
    • Added audio visualizer and spectrum analyzer in player view
    • Display bitrate and audio format of the currently playing track in player view
    • Settings: configure light/dark mode
    • Songs: sort by "Date Added" for Subsonic API

    BugFixes

    • Fixed shuffle algorithm issue
    • Fixed crash on playlist update
    • Fixed crash when clicking "Random" on an empty radios list
    • Fixed scrobble timer
    • Fixed favorite swipe action color

    Contributors

    @jarrett-m: Configure transcoding format separately for WiFi and Cellular @Schlaubischlump: Supported to adopt to macOS26 @almottier: Added pause quick action for music and podcast playback @ericchianti: Songs: sort by "Date Added" for subsonic API @rossbates: Fixed scrobble timer @simonwehle: Fixed favourite swipe action color

    Thank you very much for your contributions.

    Development

    • Raise deployment target to iOS26 / iPadOS26 / macOS26
    • Use Icon Composer
    • Storyboard: refactor and reduce view controllers
  4. v1.2.3v1.2.3 Radios, Gapless Playback, Performance, enhanced Playlists2025-05-10 · 2025-05-10 18:36 UTC
    查看更新说明

    Features

    • Radios: add support for Ampache API and Subsonic API
    • Player: support gapless playback for appropriate media file formats
    • Performance: reduce CPU consumption for API requests and player
    • macOS: add volume slider
    • Artworks: downloaded artworks can be deleted in Settings
    • Playlists: add multiple library element to playlist via edit
    • Playlists: delete multiple songs at once from playlist
    • Playlists: add songs to multiple playlists at once
    • Playlists: show alert when duplicates are about to get added
    • Siri-Shortcut: add "Play Random Songs" intent
    • Tables: align columns and add ellipsis to playables
    • Cache: display alert before deleting cache
    • Transcoding: add option to let server decide which codec to use
    • macOS: restore window size, add edit and help menu
    • macOS: play songs via double click
    • macOS: delete songs from player queue via hover "X"
    • Player: improved error handling
    • Artworks: create light and dark mode versions of default artworks
    • Player: hide player mode change button if user hides podcasts from library category list
    • X-Callback-URL Docu: add example copy button
    • Player: reduce button count (move buttons inside options menu)
    • General: multiple performance improvements

    BugFixes

    • Album: fix queuing albums sorted by track number
    • PopupPlayer: fix moving elements after App opening
    • Siri-Shortcut: fix failing play request due to long response times (fetch only playlist before play)
    • Subsonic API: handle 404 status codes
    • Subsonic API: fix empty albums due to missing isDir attribute
    • Album collection: fix clipping title label
    • Swipe & Preview: refresh cell when favorite and cache is changed
    • macOS: fix reordering swipe actions
    • Collections: fix duration overflow
    • Preview: favorite and rating was interactable when in offline mode
    • macOS: resizing window distort Albums collection
    • Preview: fix detail size

    Contributors

    Thank you for your contributions:

    @Schlaubischlump: fix resizing the Albums collection, fix reordering swipe actions, restore macOS window size @cescofry: add "Play Random Songs" to Siri-Shortcut, fix time slider thumb image, add copy button to Callback-URL Docu @vincentcayadi: simplified bitrate handling @henry-2025: fix hovering track numbers @IH0kN3m: provide fix for Subsonic API @bilogic: fixed spelling

    Development

    • Adapt code base to Swift 6
    • SwiftFormat: use SwiftFormat to ensure code styling
    • Assets: podcast icon is available as SFSymbol
  5. v1.2.2v1.2.2 macOS Catalyst support, Lyrics2024-12-02 · 2024-12-02 07:12 UTC
    查看更新说明

    Features

    • macOS Catalyst: add platform support (@Schlaubischlump)
    • Lyrics (subsonic only): unsynced and synced lyrics are supported
    • Theme: add theme colours (@danielepintore)
    • Artists: support album artists filter
    • Albums: display as collection (grid size is adjustable) or as table
    • Sync: initial sync is skippable
    • CarPlay: add "Cached" tab
    • CarPlay: trigger artwork download and display on completion
    • Songs: sort by starred date sort setting for favourite songs (Subsonic only) (@danielepintore)
    • Songs: press to play songs add next songs to queue too
    • OfflineMode: notify user at each start that Offline Mode is active
    • SleepTimer: add option for 2 and 4 hours
    • X-Callback: add action for rating and favourite
    • Siri: log request and response in EventLogger

    BugFixes

    • Siri Intent: fetch elements before play
    • Scrobble: cache failed sync scrobbles too
    • Disabling shuffle mode in setting does not work everywhere
    • Player: song progress wasn't kept when App crashed or mode changed
    • Player: audio engine crash can be fixed by switching mode or play next song instead of App restart

    Contributors

    Thank you for your contributions:

    • @Schlaubischlump thank you for the effort to create a separate macOS Catalyst design
    • @danielepintore
    • @JLO64

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Logo Amperfy

    Basics

    Amperfy is an iOS/iPadOS/macOS app written in Swift to interact with an Ampache or Subsonic server.

    iOS

       

    macOS

    Features

    • Multi account
    • Offline mode
    • CarPlay
    • Gapless playback for appropriate media file formats
    • Music, Podcast and Radio support
    • Siri play media command, Siri Shortcuts and App Intents
    • Equalizer
    • Replay gain
    • Sleep timer
    • 5 star song rating
    • Favorite song
    • Sleep Timer
    • Scrobbling

    Requirements

    • Xcode 26, Swift 6

    Getting Started

    1. Check out the latest version of the project:
    git clone https://github.com/BLeeEZ/amperfy.git
    cd amperfy
    
    1. Open the Amperfy.xcodeproj file.

    2. Build and run the "Amperfy" scheme

    Real device testing: Amperfy has Apple CarPlay and Siri support. To test it on a real device a developer certificate with granted access to com.apple.developer.playable-content and com.apple.developer.siri is required. To test Amperfy without Apple CarPlay and Siri clear all entries in Amperfy/Amperfy.entitlements.

    Beta test releases

    For more information, and to participate in the public beta releases, please visit Amperfy Beta.

    Contribution

    Pull requests are always welcome. Please execute AmperfyKitTests to ensure code quality. Running tests will trigger SwiftFormat to apply the Google Swift Style Guide, as configured by Google-SwiftFormat-Config. You can also apply the code style manually by executing ./BuildTools/applyFormat.sh.

    Attributions

    Amperfy license: GPLv3

    Special thanks: Dirk Hildebrand