![]() |
|
|
|||||
Регистрация: Aug 2012
Сообщений: 70
|
![]() Вечер добрый!
Товарищи-специалисты, подскажите пожалуйста, где что можно посмотреть по следующей теме. Стоит задача: необходимо записывать видео- и звуковую дорожку с веб-камеры(ну, это-то пожалуй самое простое, насколько я понимаю), затем склеивать это с другой звуковой дорожкой и сохранять на компьютере. Собственно, вопросы: 1. Можно ли это реализовать силами голого as3? И если можно, то не могли бы вы задать какое-то направление, "куда мне плыть-то"? 2. Если голый as3 тут не сработает, не подскажете какие фреймворки, библиотеки? Спасибо за внимание! |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
копайте в сторону red5 server + клиент на флэше.
В дистрах red5, в примерах, есть готовое приложение oflaDemo. Оно как-раз пишет поток, который транслирует флэшка через локалхост. Недавно делал похожую флэшку, только запись была каждый раз в новый файл. Но у oflaDemo, точно помню, был режим инкрементальной записи. Последний раз редактировалось undefined; 17.10.2012 в 05:17. |
|
|||||
Регистрация: Mar 2007
Сообщений: 319
|
|
|
|||||
Регистрация: Aug 2012
Сообщений: 70
|
Цитата:
Добавлено через 3 минуты Цитата:
|
|
|||||
Регистрация: Mar 2007
Сообщений: 319
|
да
Чтобы склеивать звуки нужно представлять как работают семплы http://help.adobe.com/ru_RU/as3/dev/...F1A087ED7.html к примеру package { import flash.display.Sprite; import flash.events.SampleDataEvent; import flash.media.Sound; import flash.utils.ByteArray; public class Test1 extends Sprite { [Embed(source = "s1.mp3")] private var soundClass1:Class; [Embed(source = "s2.mp3")] private var soundClass2:Class; private var bytes:ByteArray = new ByteArray(); public function Test1 () { var sound1:Sound = new soundClass1(); var sound2:Sound = new soundClass2(); var bytes1:ByteArray = new ByteArray(); var bytes2:ByteArray = new ByteArray(); sound1.extract(bytes1, 10000 * 44.1); sound2.extract(bytes2, 10000 * 44.1); bytes1.position = 0; bytes2.position = 0; while (bytes1.bytesAvailable && bytes2.bytesAvailable) { bytes.writeFloat(bytes1.readFloat() + bytes2.readFloat()); } bytes.position = 0; var sound3:Sound = new Sound(); sound3.addEventListener(SampleDataEvent.SAMPLE_DATA, onSampleData); sound3.play(); } private function onSampleData (event:SampleDataEvent):void { for (var i:int = 0; i < 8192; i++) { if (bytes.bytesAvailable == 0) { break; } event.data.writeFloat(bytes.readFloat()); event.data.writeFloat(bytes.readFloat()); } } } } |
|
|||||
Регистрация: Aug 2012
Сообщений: 70
|
Ага. Бегло проглядел - вроде ничего сложного. Мне казалось, что на деле это гораздо труднее реализуется)
Большое спасибо - буду изучать. |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Цитата:
Могу выслать дистр red5 в котором есть пример того приложения, oflaDemo. Там-же есть и тестовая флэшка для записи + переключалка режимов записи. |
|
|||||
Регистрация: Aug 2012
Сообщений: 70
|
Цитата:
Человек запускает приложение на FP, нажимает на кнопочку "запись", обезъяничает перед камерой, а по окончании своих свистоплясок получает возможность сохранить на своем компе файл. Т.е. нужно решение не для одного человека на локальной машине) |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:16. |
|
« Предыдущая тема | Следующая тема » |
Теги |
запись , звук , камера , сохранение , файл |
Опции темы | |
Опции просмотра | |
|
|