2009-03-27 20 views

Respuesta

32

Sí lo es. En primer lugar, debe crear un depósito en su cuenta S3, que está todo en minúsculas, es único a nivel mundial y es compatible con DNS; así que, por ejemplo, creé un cubo llamado 'media.torusknot.com'.

Luego, para que todo se vea bien, debe crear una entrada DNS CNAME para mapear un subdominio de su sitio a ese cubo S3. Eso le permitirá acceder a los archivos que cargue en ese depósito S3 a través de "http://media.example.com/somefile.mp3". Solo necesita configurar las ACL en los archivos & del depósito para asegurarse de que se permita el acceso público.

Finalmente, si desea transmitir archivos de video a través de un reproductor Flash desde S3 a otro dominio, también debe decirle a Flash que está bien que el contenido sea extraído de un dominio diferente. Crear un archivo llamado ‘/crossdomain.xml’ en el cubo, con estos contenidos:

<cross-domain-policy> 
<site-control permitted-cross-domain-policies="all"/> 
</cross> 

que permite a los medios de comunicación para acceder desde cualquier lugar - puede ser más específico si quieres, pero este es el enfoque más simple.

recursos relacionados:

+7

Tenga en cuenta, sin embargo, que los medios no se transmiten realmente (como con Red5 o Flash Media Server) pero se descargan progresivamente, por lo que los archivos multimedia terminan como archivos fácilmente identificables en el caché del navegador. Dependiendo de la licencia esto podría ser un problema con el contenido protegido por terceros – Argelbargel

+0

También preste atención al tráfico, porque si el archivo crossdomain no protege contra otros sitios que enlazan al MP3, creo que cualquiera podría usar este MP3 en su Flash jugador = pagas el ancho de banda. Pero no lo he probado. – BerggreenDK

+0

@BerggreenDK Última respuesta aquí, pero puede resolver eso haciendo que el depósito sea privado y otorgue a los clientes que son URL firmadas autenticadas a través de una API. Estas URL solo serían válidas durante un intervalo de tiempo predefinido. Haría esto independientemente de establecer una ACL pública en S3 generalmente no es algo que desea salvo en circunstancias específicas como alojar un sitio web en S3 (consulte las recientes filtraciones de datos que implican políticas de cubo deficiente en S3, que es, sin dudas, una cuestión de malas políticas de seguridad y falta de conocimiento). – polythene

-2

no te recomiendo soluciones de Flash Media Server como Wowza combinado con Flowplayer de widget de flash.

+0

sin necesidad de un widget flash, consulte la solución de @caveman para la solución compatible con Amazon S3 y Cloudfront – yacc

24

Para actualizar la respuesta a esta pregunta, si desea realmente transmitir a los clientes, puede utilizar Amazon Cloudfront en la parte superior de su cubo S3 (como lo menciona Rudolf). Cree una "distribución de transmisión" en Cloudfront que apunte a su categoría S3.

Esto se transmitirá a través de RTMP (bueno para dispositivos web y Android). Puede usar JW Player o un reproductor similar para reproducir los archivos transmitidos.

Cloudfront Streaming utiliza Adobe Flash Media Server 3.5.

También existe la posibilidad de reproducir contenido seguro utilizando direcciones URL firmadas.

+2

gracias, esta es la información que estaba buscando desesperadamente. u hombre! – r3wt

+2

¡Esto debe marcarse verde! –

+0

Si bien esto parece confirmar que estamos tomando el camino correcto, no encuentro librerías de software/reproductores. ¿Hay alguna, y cómo debería buscarla? ¿Podría traer algunos ejemplos? Echando un vistazo a las "bibliotecas RMTP" existentes, encuentro 'JWplayer' y' Wowza', por supuesto, así como 'Adobe flash' y' Gnash'. ¿No hay ningún reproductor popular y gratuito basado en HTML que sea compatible con esto? Me he perdido algo ? * (Tengo la intención de desarrollar una aplicación de transmisión en PHP. En el medio/largo plazo, debe volverse comercial, que es una de las razones por las que alojaremos archivos en AWS S3) * – Balmipour