Можно ли уменьшить частоту аудиопотока во время выполнения с помощью Flash или FMS? - PullRequest
0 голосов
/ 11 февраля 2009

Я не эксперт в аудио, поэтому, если кто-нибудь из вас, я был бы признателен вам за понимание этого вопроса.

У моего клиента есть несколько подкастов MP3, хранящихся с относительно высокой скоростью передачи данных, и я хотел бы иметь возможность передавать эти файлы своим пользователям с "разными" скоростями передачи в зависимости от учетных данных этого пользователя. (Например, если вы являетесь аутентифицированным пользователем, вы можете получить полный, неизмененный поток, но если вы этого не сделаете, вы получите версию с более низкой скоростью передачи битов - или, по крайней мере, специально настроенную более низкое качество версия, чем оригинал.)

Похоже, есть два варианта: понижающая выборка в источнике и понижающая выборка в клиенте. В этом случае, зная, конечно, что исходный поток будет поступать к клиенту с высокой скоростью передачи битов (и что об этом следует подумать, что я понимаю), я бы предпочел как-то изменить поток на клиенте. , а не на сервере, по нескольким причинам.

Возможно ли это сделать только с помощью Flash Player и ActionScript, во время выполнения (даже со сторонней библиотекой), или для сценария, подобного этому, требуется решение на основе сервера? Если последнее, может ли Flash Media Server удовлетворить это требование? Опять же, я бы хотел избежать использования FMS, если смогу, поскольку у нее на самом деле нет на это бюджета, но если это единственный вариант и это действительно вариант , я открыт для рассмотрения это.

Заранее спасибо ...


Примечание: пожалуйста, не подвергайте сомнению разумность запроса - я понимаю, что это может звучать немного странно, но требования такие, какие они есть. В этом смысле для ответа на вопрос вы можете игнорировать источник и путь доставки битов; все, что я действительно ищу, это объяснение того, может ли (и в идеале, каким образом) клиент Flash воспроизводить аудиопоток MP3 во время выполнения, независимо от того, поступает ли звук по сетевому соединению или читается непосредственно с диска. Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 02 августа 2009

Если хранилище дорого, вы смотрели аудио AAC? Я верю, что Flash 9 и 10 в настольных браузерах будут воспроизводить его. По моему опыту, AAC занимает только половину размера сопоставимого MP3 (т.е. AAC на 80 кбит / с будет звучать так же, как MP3 на 160 кбит / с).

Что касается качества воспроизведения, если я правильно помню, в разделе «Параметры публикации» в редакторе Flash есть настройки воспроизведения звука. Может ли быть изменен битрейт воспроизведения во время выполнения - это то, в чем я не уверен.

0 голосов
/ 11 февраля 2009

Я бы предпочел изменить поток на клиенте, а не на сервере, по нескольким причинам.

Пожалуйста, объясните причины, потому что повторная выборка на стороне клиента обычно считается сумасшедшей: тратит пропускную способность, посылая версию более высокого качества пользователю, который ее не слышит, и рискуя хитрым пользователем, разрывающим поток более высокого качества при его получении. через сеть.

В любом случае Flash Player не предоставляет инструментов для обработки аудио, только воспроизводит его.

Вам не нужна FMS для обработки аудио на стороне сервера. У вас может быть серверный сценарий, который загружает недавно загруженные подкасты и сохраняет их обратно в виде файлов с более низкой скоростью передачи, которые могут быть предоставлены обычным пользователям через обычный веб-сервер. Для Python см. Например. PyMedia, py-lame; или даже сценарий оболочки, использующий lame или ffmpeg, или что-то из командной строки, должно быть довольно легко выполнить.

...