Entregar conteúdo parcial ao podcast do iTunes [fechado]

1

Notamos que nossos Podcasts, quando transmitidos pelo iTunes, não conseguem "procurar" corretamente. Toda vez que você clica na linha do tempo, ele é reiniciado desde o começo.

Tenho certeza de que estamos entregando conteúdo parcial corretamente. Aqui estão os cabeçalhos de resposta:

$ curl --head -H "Range: bytes=5708077-" http://site.com/podcast.mp3
HTTP/1.1 206 Partial Content
Server: nginx/1.2.0
Date: Mon, 19 Nov 2012 06:13:05 GMT
Content-Type: audio/mpeg
Content-Length: 13403738
Connection: keep-alive
X-Powered-By: Express
Cache-Control: no-cache
Accept-Ranges: bytes
Content-Range: bytes 5708077-19111814/19111815
Access-Control-Allow-Origin: *

Isso parece certo? Há algo que está faltando que possa estar causando esse problema?

Deixe-me saber se mais informações são necessárias. Obrigado!

    
por bricker 19.11.2012 / 07:30

1 resposta

0

O problema era que, embora estivéssemos retornando os cabeçalhos adequados, ainda não estávamos realmente fornecendo o intervalo de bytes solicitado. A maneira correta de fornecer o intervalo de bytes correto com um aplicativo de nó (que está fornecendo o áudio do podcast) é adicionando as opções "start" e "end" ao objeto Readable Stream:

fs.createReadStream("podcast.mp3", { start: 0, end: 999 });
    
por 19.11.2012 / 08:31