iPads, MP3s, Dragonfly.


We ran into a bug where MP3s hosted as "resources" on Refinery worked fine on most platforms, but Safari on iPads would play the first minute or so on a loop, and the controls didn't work (no way to pause).

After some false leads, we compared HTTP headers with a site where MP3s play just fine. The crucial difference was Accept-Ranges: bytes. WordPress would serve partial content; Refinery (via Dragonfly) gives you the whole file or nothing. My hypothesis: Mobile Safari would rather annoy the user than download the whole file.

A longer-term fix would be to hack Dragonfly to support partial content, or not use Refinery resources for our MP3s. But for now, we're just serving the MP3s via a direct link to S3, using Dragonfly's remote_url method.

More posts:
comments powered by Disqus