веб-сервисы amazon — потоковое аудио с S3 с поддержкой PHP и Range

В настоящее время я разрешаю пользователям прослушивать необработанные аудиофайлы, выступая в качестве прокси-сервера для s3:

$result = $s3Client->getObject(array(
'Bucket' => "Bucket",
'Key' => "Key
));

Затем просто установите соответствующие заголовки и поместите данные в тело.

Это работает, хотя у него есть два недостатка:

1) У больших файлов большая задержка, потому что загрузка с s3 требует времени

2) Chrome воспроизводит звук в своем собственном интерфейсе, но когда пользователь пытается использовать полосу прокрутки, отправляется запрос с необработанным заголовком «Range».

У кого-нибудь есть лучшее решение, которое решает эти две проблемы? Я посмотрел на Amazon S3 Stream Wrapper, но мне неясно, как заставить это передавать аудио обратно в браузер.

0

Решение

Используйте S3, чтобы обслуживать ваши медиа напрямую.

Если вы хотите ограничить доступ, вы можете предварительно подписать URL-адреса с помощью клиента S3. Эти URL-адреса могут быть настроены на работу только в течение нескольких минут.

Если по какой-то причине вы не можете просто связаться с S3 напрямую, вы можете в своем текущем скрипте просто перенаправить на S3 URL.

1

Другие решения

Других решений пока нет …