Skip to content

ADTS AAC file (audio/aac) from Navidrome transcoding won't play from cache — skips instantly at 0:00, no error #145

Closed

Description

@GAGEO3

Hi! Amperfy issue BLeeEZ/amperfy#621 points here and asks for a sample file that doesn't play, so here's one.

Sample

subtle-cupcake-rhythms-navidrome-256k.aac (~4.3 MB, hosted in a gist because the API can't attach files to issues)

  • Track: "subtle cupcake rhythms" by C418, from circle (2010), licensed CC BY 3.0. Transcoded from the original FLAC; no other changes.
  • Produced with Navidrome's default AAC transcoding command (ffmpeg 6.1.1):
    ffmpeg -i input.flac -ss 0 -map 0:a:0 -b:a 256k -v 0 -c:a aac -f adts -
    
  • Container: raw ADTS (ff f1 50 80 …), AAC-LC, 44.1 kHz, stereo, ~256 kbps
  • Served by Navidrome with Content-Type: audio/aac. Amperfy stores it as .aac and passes audio/aac as the MIME type, which AudioStreaming maps to kAudioFileAAC_ADTSType.
  • SHA-256: 4d2d8a2cb11a0768533332da1f609a6c11bf6c7ed4153f9391e2c9fda6473781
  • ffmpeg -i … -f null - decodes it cleanly. The real length is 2:16; ADTS has no duration header, and ffprobe's bitrate-based estimate says 2:30.

What happens

  1. In Amperfy, download the song with the server transcoding it to AAC.
  2. Play it from the cache.
  3. The track "plays" at 0:00 and immediately skips to the next one. On the server side, Amperfy reported Now Playing 5 times in 4 seconds, all at position 0.
  4. Amperfy's Event Log shows no error for the failed playback.

MP3 transcodes (-f mp3) from the same server play fine. Opus is a separate issue (#137 / #139).

Environment

  • Amperfy: 2.1.1 (build 22, App Store), which pins AudioStreaming 1.4.4 (Package.resolved at tag v2.1.1)
  • iPhone: iPhone 16 Pro, iOS 26.5.2
  • Server: Navidrome 0.61.2, ffmpeg 6.1.1

I used an AI assistant (Claude) to narrow this down and write the report. The device test and the observations above are mine.

Activity

  1. GAGEO3 commented on Oct 24, 2026

    @GAGEO3
    Author

    I made a mistake, it was a problem with navidrome, see more here

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions