1

My NGINX web server has byte ranges enabled via add_header Accept-Ranges bytes; and I can successfully get byte ranges of podcast episodes via curl:

$ curl  -I -r 200-300 https://konradhoeffner.de/kirdiemtg/2019-01-02-muldrotha.aac
HTTP/2 206 
server: nginx/1.21.6
date: Fri, 19 Aug 2022 13:22:49 GMT
content-type: application/octet-stream
content-length: 101
last-modified: Fri, 19 Aug 2022 11:21:17 GMT
etag: "62ff722d-3119b7f"
content-range: bytes 200-300/51485567

However when using the Pocket Cast Android App with an RSS file that contains the very same AAC file URL, Pocket Cast reports "Unable to seek. File headers appear to be invalid.". What is wrong in the header and how can I fix this in my NGINX configuration?

Konrad Höffner
  • 195
  • 1
  • 9

1 Answers1

0

This was fixed by wrapping the AAC file inside an MPEG-4 container with the .m4a extension and waiting for Pocket Cast to update the RSS feed.

According to the Android Developer Guide, both .aac and .m4a are supported by Android and both should be seekable so I don't know why that is the case, I assume that the applications are just programmed that way.

Konrad Höffner
  • 195
  • 1
  • 9
  • Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Aug 28 '22 at 16:04