Аудио Резак в Silverlight - PullRequest
       4

Аудио Резак в Silverlight

3 голосов
/ 26 февраля 2010

1. Я создал аудиоплеер в Silverlight.

в этом проигрывателе пользователь может выбрать часть песни для сохранения в качестве мелодии звонка.

но я получил длительность от .. но мне нужно вырезать частичную часть потока или аудиопотока и сохранить его на сервере.

Пожалуйста, подскажите, как я могу преобразовать выбранную длительность аудио в поток или байтовый массив ..?

- Дополнительная информация по этому вопросу: 2. Я создал рингтон аудио плеер в Silverlight. Внутри этого пользователя можно выбрать часть, которую можно вырезать и сохранить как аудиофайл.

Я не могу сохранить поток на диск .. он выдает следующие ошибки:

Ошибка 1. Попытка доступа к методу не удалась. Системный ввод-вывод FileInfo OpenWrite

Пожалуйста, помогите

- Дополнительная информация по этому вопросу: 3. Как использовать класс MediaStreamSample & MediaStreamSource в silverlight по отношению к MediaElement?

Поможет ли это вырезать часть аудиофайла, чтобы создать рингтон из песни?

Ответы [ 2 ]

1 голос
/ 26 февраля 2010

Если вам нужно сохранить на сервере, вам нужно передать эти данные на сервер.

Просто сохраняя его (как ответили), вы попытаетесь сохранить его на компьютере клиента. Что вам нужно сделать, это загрузить данные на сервер с помощью службы WCF или обработчика ASHX или чего-то подобного. Я сделал нечто подобное - загрузка файлов MP3 из клиента Silverlight в службу WCF через Stream, работает хорошо.

Далее: вам нужно убедиться, что любой процесс разделения, который вы используете, соответствует аудиоформату, то есть вы, вероятно, просто не можете разделить двоичный файл. Какой формат вы используете, mp3?

Я использовал что-то под названием mp3plt , прежде чем разбивать mp3-файлы. Возможно, вы сможете перекомпилировать исходный код в Silverlight-совместимую библиотеку, если предположить, что он написан в виде, который вы можете использовать, источник здесь .

Или вы можете заглянуть в спецификации mp3, чтобы увидеть, возможно ли просто разделить двоичный файл, в этом случае берется длительность, которую нужно сократить (ту, которую выбрал пользователь), и умножается на битрейт КБ / с * секунд = КБ) даст вам место в файле байта [], в котором вы можете вырезать.

0 голосов
/ 26 февраля 2010

Ошибка 1. Попытка доступа к методу не удалась. System IO FileInfo OpenWrit, вы получаете эту ошибку из соображений безопасности. Перед сохранением на диск вы должны предложить пользователю SaveFileDialog, а затем только сохранить файл на диск.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...