Как запустить видео с закрытым контентом из Cloudfront, используя RTMP с Flowplayer - PullRequest
3 голосов
/ 25 июня 2010

Шаги для воспроизведения:

  1. настройка S3 ковша
  2. настройка потоковой передачи
  3. генерация пары ключей облачного фронта
  4. скачать файл .PEM с закрытым ключом RSA
  5. сгенерировать XML из ключа RSA, используя http://www.jensign.com/opensslkey/opensslkey.cs
  6. загрузить файл "testUnsecure.flv", установить свойства ACL, чтобы каждый мог его просмотреть.
  7. Настройка веб-страницы с использованием следующего сценария Java:

    var p = flowplayer ("rtmpPlayer", {src: "flowplayer-3.1.5.swf", высота: "480px"}, { плагины: { RTMP: { url: 'flowplayer.rtmp-3.1.3.swf', netConnectionUrl: 'rtmp: //s3py83uop6xa8x.cloudfront.net/cfx/st', objectEncoding: '0' } }, клип: { автозапуск: ложь, url: 'flv: testUnsecure' , провайдер: 'rtmp' } });

  8. Это работает!

Тогда сделал это:

  1. Загрузить testSecure.flv, установить ACL, чтобы сделать его приватным
  2. Создайте подписанный URL и создайте строку. URL в JavaScript выглядит так:

URL: 'FLV: testSecure% 3fExpires% 3d1277469187% 26Signature% 3dE5OleaO26fwLi6jIKTa4inc8I4P86AgTg5x8SmleTSTyf5C5AfnQyqaFXLDjiF0kiqdplhauA8Kw% 7eS37EpRBAn-aJrJScVlw7aZ-SAL24MTLMZ9foSkCd2ai9KjS8AuuweJRwPWmf4eLDpI4X4f3k3H7UUVcq8SX92ed5fCB91w_% 26Key-пара-Id% 3dAPKAJUIBASIKTLFDSDFA'

Это не удалось. Видео просто висит там ....

Кто-нибудь знает, как

  1. Создать подписанный URL для частного видео с помощью C #?
  2. Воспроизведение видео в Flowplayer или JWPLayer (я буду использовать любой, с которым смогу работать!)

Еще несколько очков - Я использую код, идентичный этому, для генерации подписанного URL: http://beckelman.net/post/2010/03/30/Policy-Signing-in-C-for-Streaming-Private-Content-From-Amazon-CloudFront.aspx

Я куплю выпивку для всех, кто живет в радиусе 100 миль от меня, если вы, ребята, сможете это решить.

1 Ответ

5 голосов
/ 29 июня 2010

Правильно - на всякий случай, если кто-нибудь наткнется на это и столкнется с той же проблемой, вот что я сделал, чтобы исправить это:

  1. Создание идентификатора доступа к источнику облака (я сделал это через C #, но мог бы сделать это с помощью Cloudberry)
  2. Загрузить cloudberry для S3 - версия для сообщества
  3. Найдите FLV-файл в дистрибутиве в cloudberry (то есть в потоковом дистрибутиве), щелкните правой кнопкой мыши и в свойствах убедитесь, что идентификация доступа источника имеет доступ на чтение - это был ключевой бит.

В противном случае приведенный выше код был действительно правильным.

...