Adobe Flash записывает сжатые образцы с микрофона - PullRequest
1 голос
/ 15 декабря 2011

Я хочу захватить аудиофрагменты с микрофона в моем приложении Adobe AIR, а затем сохранить их в файл FLV.У меня есть следующий код:

            mic.setSilenceLevel(0, DELAY_LENGTH);
            mic.codec  = SoundCodec.SPEEX;
            mic.encodeQuality = 6;
            mic.framesPerPacket = 1;
            mic.gain = 100;
            mic.addEventListener(SampleDataEvent.SAMPLE_DATA, micSampleDataHandler);

Проблема заключается в том, что я подозреваю, что в моем обработчике я получаю только необработанные образцы, а не сжатые образцы.Причина моего подозрения в том, что количество байтов, которые я получаю за сообщение, равно 20 мс (что я определяю как 1 speex frame) необработанного звука, а не сжатого звука.Кроме того, количество байтов не изменяется, если я изменяю кодировку.Чтение документации предполагает, что Adobe будет сжимать аудио только перед передачей на флеш-медиа-сервер или другой узел.Есть ли способ опубликовать и прочитать поток локально, чтобы получить сжатые образцы.?Или любой другой способ получить сжатые образцы?

1 Ответ

0 голосов
/ 15 декабря 2011

Вы можете закодировать вашу запись в mp3, используя http://code.google.com/p/flash-kikko/

Затем сохраните файл где-нибудь, чтобы включить его в FLV.

...