Pergunta

Estou tentando entender e realmente identificar quando usar download progressivo vs. rtmp no flex/flash. Parece que o ponto principal é que o RTMP não é servido com HTTP, enquanto o download progressivo é. Como não é RTMP, o recurso é protegido, pois não há como conectar -se ao servidor RTMP de fora do SWF.

Mesmo que o usuário possa ver esse código de objeto e descobrir o local

<object data="http://media.example.com/jw-player/player.swf" >
    <param value="streamer=rtmp://sub.example.com/video
           &amp;file=1330/title/folder2/theflvresource.flv
           &amp;id=FlvPlayer" name="flashvars">
</object>

Eles não seriam capazes de se conectar ao RTMP. Portanto, o RTMP parece ser mais útil quando você deseja proteger um recurso? É tudo o que há para isso?

Foi útil?

Solução

Eu concordo com Xtat, mas quero adicionar muito mais.

Os prós e contras do RTMP (ou qualquer protocolo de streaming baseado em UDP) vs. 'Progressive Download' (que é realmente apenas um subconjunto de streaming baseado em HTTP) em minha opinião não tão folhada:

  • Streaming baseado em UDP
    • Prós
      • Atualmente significativamente mais difícil de furtar fluxos
      • Atualmente suporta o Live, que baseado em http não
      • Captação múltipla, o que pode ser desejável em intranets
    • Contras
      • Uso de recursos dramaticamente mais alto, em relação à abordagem baseada em HTTP
      • Necessidade de servidores especializados (FMS, Red5, Wowza, o que for)
      • Buffer mais perceptível
      • Questões de firewall, especialmente com clientes corporativos
  • Streaming baseado em HTTP
    • Prós
      • Morto simples
      • Posso procure na mídia. FLV e MP4 (com algum esforço)
    • Contras
      • Trivial para fluxos de furto. Por exemplo: downloader real
      • As transmissões ao vivo não são possíveis atualmente, mas dão um ano. A Apple está tornando isso uma realidade.
      • Sem múltipla castanha

Toda a abordagem baseada em HTTP está cheia de e/mas/se Situações, muitos mal -entendidos sobre o que é e não é possível e falta de definições comuns.

Existem duas características básicas que as pessoas estão analisando ao discutir o streaming baseado em HTTP: buscando e largura de banda regulada. A partir disso, obtemos todos esses termos como 'pseudo-transmissão', 'download progressivo', etc.

Essas são as definições que eu uso para descrever servidores de streaming baseados em HTTP:

  • taxa de bit regulada: O arquivo de mídia plano é analisado pelo servidor e envia mídia tão rápido quanto o jogador precisa reproduzir a mídia sem buffer.
  • buscando: A capacidade de um servidor da Web de procurar na mídia e criar efetivamente um novo 'arquivo' em tempo real para uso pelo cliente. Semelhante a uma solicitação de faixa de byte HTTP, exceto que cabeçalhos e meta-dados de mídia são adicionados/modificados.
  • Download progressivo: Basta enviar o arquivo, o mais rápido possível. Basicamente, coloque o arquivo de mídia no servidor da web que envia ao cliente de maneira 'idiota', como um grande arquivo .iso ou .zip.
  • pseudo streaming: A capacidade de um servidor da Web enviar arquivos de mídia ao cliente com uma taxa de bits regulamentada e procurar arquivos.

Outras dicas

Pessoalmente, o principal motivo para escolher o RTMP em vez do download progressivo é que ele permite que seu usuário pule para o meio de um vídeo sem precisar baixar o arquivo inteiro.

Hoje em dia, a menos que você precise gravar, não há realmente nenhum ponto no uso do RTMP. O HTTP é mais simples e, obviamente, muito mais suportado, mais fácil de depurar e, de fato, permite a busca, mesmo sobre o CDNS. É isso que eu configurei no Viddler.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top