The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

12.07.2012 14:32  Доступна реализация на JavaScript звуковых кодеков MP3, Apple Lossless, FLAC и AAC

Разработчики сервиса Official.fm выступили с инициативой реализации популярных аудиокодеков на языке JavaScript. В настоящее время уже подготовлены самодостаточные JavaScript-модули с реализацией декодеров MP3, ALAC (Apple Lossless), FLAC и AAC, которые могут воспроизводить сжатые звуковые потоки на уровне выполняемого внутри браузера приложения, без необходимости наличия поддержки данных форматов в системе и без использования сторонних плагинов, таких как Adobe Flash.

С учётом роста производительности JavaScript-движков современных браузеров, библиотеки позволяют обеспечить декодирование звука с достаточно высоким битрейтом. Например, JavaScript-декодер MP3 обеспечивает беспроблемное проигрывание MP3-файлов с битрейтом вплоть до 320 KBit/sec. Для воспроизведения декодированного звука необходима поддержка браузером Web Audio API или Audio Data API. Исходные тексты JavaScript-библиотек размещены на GitHub и распространяются под лицензией GPLv2.

В процессе разработки кодеков, также было разработано несколько вспомогательных проектов. Например, подготовлен фреймворк Aurora.js, существенно упрощающий реализацию декодеров на JavaScript. Aurora предоставляет набор типовых функций для выполнения типичных операций обработки звука, таких как работа с бинарными данными, обеспечение цикла декодирования, разбор медиаконтейнеров и вывод звука через специфичные браузерные API. Код Aurora написан на CoffeeScript, который компилируется в JavaScript. Дополнительно реализован 128-битный вещественный тип longdouble.js и подготовлена библиотека Pitch.js, которую можно использовать для выделения голоса или определённых инструментов.

  1. Главная ссылка к новости (http://labs.official.fm/articl...)
  2. OpenNews: Представлен проект JSMad, с реализацией проигрывателя MP3 на языке JavaScript
Лицензия: CC-BY
Тип: Программы
Ключевые слова: javascript, mp3, flac, aac
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 14:47, 12/07/2012 [ответить] [смотреть все]
  • +3 +/
    а чо не GPLv3
     
     
  • 2.9, Crazy Alex, 15:16, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]
  • +4 +/
    Это порты софта с нормальных языков, они там стараются оригинальные лицензии соб... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.26, fr, 16:16, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Ясно, спасибо!
     
  • 2.27, dq0s4y71, 16:16, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    неправославно, да? ;)
     
     
  • 3.70, Аноним, 02:12, 13/07/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    > неправославно, да? ;)

    Да уж, жирновато как-то. Это не по нашему.

     
     
  • 4.81, Анонимъ, 14:57, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    А объясните доходчиво - чем для разработчика 3 лучше чем 2?
     
  • 1.2, эээ, 14:48, 12/07/2012 [ответить] [смотреть все]  
  • +1 +/
    отличненько
     
  • 1.3, greenman, 14:56, 12/07/2012 [ответить] [смотреть все]  
  • +/
    > Например, JavaScript-декодер MP3 обеспечивает беспроблемное проигрывание MP3-файлов с битрейтом вплоть до 320 KBit/sec.

    Небось, с загрузкой по крайней мере одного ядра i7 под 100%?

     
     
  • 2.5, скрипучаяЖаба, 15:04, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +3 +/
    Нет, жрёт на моём 4ядернике АМДешном 1-2%. На Хабре тема была с демками.
     
     
  • 3.7, ДяДя, 15:10, 12/07/2012 [^] [ответить] [смотреть все]  
  • +9 +/
    А на моём 4-х ядернике АМДешном VLC при проигрывании flac жрёт до 8%. Видать пришла пора на JavaScript переходить ;-)
     
     
  • 4.13, Аноним, 15:51, 12/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Угу, и конечно же он будет жрать меньше Бенчи давайте, сказки про чудеса для ба... весь текст скрыт [показать]
     
     
  • 5.34, Аноним, 17:03, 12/07/2012 [^] [ответить] [смотреть все]  
  • –3 +/
    http://wingolog.org/archives/2011/06/10/v8-is-faster-than-gcc
     
     
  • 6.47, Аноним, 18:58, 12/07/2012 [^] [ответить] [смотреть все]  
  • +9 +/
    Сравнение ситуации с проституцией?
     
  • 6.63, Аноним, 01:54, 13/07/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    Ну нифига ж себе бенч, такому подгону чисел от скрипткиддей даже Чуров позавидуе... весь текст скрыт [показать]
     
     
  • 7.72, arisu, 08:47, 13/07/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    мда совсем тухлый анонимус пошёл, без специального тэга шуток не понимает ну и... весь текст скрыт [показать]
     
  • 7.74, ыгчч, 10:06, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Мало этого, для gcc специально создана ситуация при которой он не может заинлайн... весь текст скрыт [показать]
     
     
  • 8.75, arisu, 10:21, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    чёрт знал бы, что эта шутка такой хороший детектор 8212 сам бы запостил фее... весь текст скрыт [показать]
     
  • 4.33, Аноним, 16:57, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Вы то ли троль, то ли где-то ошиблись, то ли что-то сильно поломали в системе, т... весь текст скрыт [показать]
     
     
  • 5.54, wasia, 20:28, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    все современный процессоры умеют снижать частоту в простое , т ч в зависимомти ... весь текст скрыт [показать]
     
     
  • 6.57, Аноним, 22:30, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну значит вариант не договаривает Хотя до такой степени врят-ли умеют снижать... весь текст скрыт [показать]
     
  • 5.56, ДяДя, 21:43, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Специально перепроверил 9 Kubuntu При этом cpufreq-info говорит, что частота ... весь текст скрыт [показать]
     
     
  • 6.77, Аноним, 11:15, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну значит у меня в Gennoo что-то заоптимизировано под процессор.
     
     
  • 7.78, Michael Shigorin, 13:25, 13/07/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    В зависимости от характера нагрузки в top можно просто не видеть пики, так xmms ... весь текст скрыт [показать]
     
  • 2.6, Аноним, 15:09, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Не жрет, нагрузка ни систему осталась в пределах погрешности - 1 нагрузки на... весь текст скрыт [показать] [показать ветку]
     
  • 2.39, tulskiy, 18:01, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    помнится, я написал новость про аудио плеер с декодерами на жаве, мне то же само... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.41, Нанобот, 18:22, 12/07/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    та по-большому счёту на любую, даже самую крутую прогрессивную новость, всегда н... весь текст скрыт [показать]
     
     
  • 4.64, Аноним, 01:57, 13/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    И главное - ни в коем случае не считать себя скрипткидисом а свои скриптошитовые... весь текст скрыт [показать]
     
  • 3.43, Crazy Alex, 18:29, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    с джавой на десктопе есть одна нехорошая проблема - jvm не умеет отдавать памят... весь текст скрыт [показать]
     
     
  • 4.48, tulskiy, 19:08, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    здесь не совсем правильно выразился звук у меня заикался, может быть и не из-за... весь текст скрыт [показать]
     
     
  • 5.59, Crazy Alex, 23:30, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Поподробнее насчёт отдачи джавой памяти и параметров можно Насколько я знаю, та... весь текст скрыт [показать]
     
     
  • 6.86, tulskiy, 10:38, 14/07/2012 [^] [ответить] [смотреть все]  
  • +/
    есть такие параметры как -XX MaxHeapFreeRatio 20 default 70 -XX MinHeapFreeRa... весь текст скрыт [показать]
     
     
  • 7.87, x0r, 14:50, 14/07/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    и в итоге получается JVM съевшее полпамяти системы - маскирует лики кривой прогр... весь текст скрыт [показать]
     
  • 5.65, Аноним, 01:59, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Видимо не уложилось в реалтайм и продолбало момент когда надо порцию расжатых да... весь текст скрыт [показать]
     
  • 2.53, ВовкаОсиист, 20:00, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    декодинг - это по сути жосткий секс с побитовыми и математическими операциями А... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.66, Аноним, 02:04, 13/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    А это смотря с чем сравнивать Если с мелкими блоками выписанного вручную SIMD а... весь текст скрыт [показать]
     
  • 1.8, ram_scan, 15:15, 12/07/2012 [ответить] [смотреть все]  
  • +3 +/
    Вот и дожили, воспроизведение mp3 в 320 килобитах - достижение. Помню во времена DX4-100 такими проблемами страдали. Куда мир то катится ?
     
     
  • 2.10, centosuser, 15:34, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    мир катится к компилируемому javascript везде и во всем.
     
     
  • 3.14, Аноним, 15:51, 12/07/2012 [^] [ответить] [смотреть все]  
  • +5 +/
    И это плохо.
     
     
  • 4.17, Аноним, 15:56, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Смотря с какой стороны посмотреть С другой стороны - сайт может подгрузить плее... весь текст скрыт [показать]
     
     
  • 5.21, ram_scan, 16:05, 12/07/2012 [^] [ответить] [смотреть все]  
  • +4 +/
    Лучше JS вернуть по состоянию на 10 лет тому как Чтобы из этого микроскопа не б... весь текст скрыт [показать]
     
     
  • 6.67, Аноним, 02:07, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Окей, а если хочется на лету синтезировать звук, по типу трекерной музыки, когда... весь текст скрыт [показать]
     
     
  • 7.73, arisu, 08:49, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    вот действительно, лучше бы плэйер всяких модулей портанули, чем унылый мопо3 и... весь текст скрыт [показать]
     
  • 7.84, ram_scan, 04:10, 14/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Да почему нельзя, можно Причем прям сейчас можно И раньше можно было Нельзя п... весь текст скрыт [показать]
     
  • 6.82, vasek, 21:05, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    да нет уж, JS всяко лучше флэша будет..
     
  • 5.31, rshadow, 16:45, 12/07/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Код Aurora написан на CoffeeScript, который компилируется в JavaScript вот ... весь текст скрыт [показать]
     
     
  • 6.69, Аноним, 02:08, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Мда, ну у нас для него NoScript есть ... весь текст скрыт [показать]
     
     
  • 7.83, ram_scan, 04:04, 14/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Это У ВАС он есть А у среднестатистической обезьяны он будет есть если будет ... весь текст скрыт [показать]
     
     
  • 8.85, arisu, 09:24, 14/07/2012 [^] [ответить] [смотреть все]  
  • +/
    so be it.
     
  • 3.16, Аноним, 15:52, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    > мир катится к компилируемому javascript везде и во всем.

    JIT'ируемому.

     
  • 3.19, ram_scan, 16:00, 12/07/2012 [^] [ответить] [смотреть все]  
  • +8 +/
    А накрена ? Вычислительные мощности за это время выросли суть не в сотню раз, а люди сначала гордятся тем что создали тормозной инструмент, а потом гордятся тем что решили этим инструментом задачу 15-летней давности ?

    Я помню время когда NT4 бойко работала на 128 метрах оперативы и на 600-м целике. А в гиге оперативы у меня шуршал citrix mf с двумя десятками пациентов. С точки зрения обезьяны которая в мсоффисе жмет кнопки с той поры не изменилось вообще ничего. Куда и ради чего просираются гигабайты с гигагерцами ?

     
     
  • 4.55, Maniaq, 21:39, 12/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    На аэро-интерфейсы и резиновые панельки в 14м офисе, ну и на прочую дребедень ... весь текст скрыт [показать]
     
  • 4.88, Vkni, 21:06, 14/07/2012 [^] [ответить] [смотреть все]  
  • +/
    NT4 бойко работала на 48-ми метрах - Ваши 128 - это жутки overkill ... весь текст скрыт [показать]
     
  • 4.89, Vkni, 21:17, 14/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Ну реально же в MS Word тот же алгоритм вёрстки не изменился Как был ужасный ре... весь текст скрыт [показать]
     
  • 1.20, JL2001, 16:04, 12/07/2012 [ответить] [смотреть все]  
  • +/
    на убунте 12.04 firefox 14.0~b11+build1-0ubuntu0.12.04.1~mfn1 почему-то жаваскриптовое аудио или совсем не играет или затыкается через 1-2 секунды
    в чём может быть проблема ? пользователь под которым запускается браузер добавлен в группу audio и звук на ютюбе есть
     
     
  • 2.22, Аноним, 16:09, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Браузер?
     
     
  • 3.30, JL2001, 16:43, 12/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    > Браузер?

    извиняюсь - firefox 14.0~b11+build1-0ubuntu0.12.04.1~mfn1

     
  • 2.76, Аноним, 10:43, 13/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –2 +/
    Убунта?
     
  • 1.23, добрый дядя, 16:10, 12/07/2012 [ответить] [смотреть все]  
  • +/
    разумнее не яваскрипт пропихивать, а создать легковесную JIT виртуальную машину без каких либо библиотек, т.е. минимальнейшую из возможных VM, потому что JVM и Mono(.net) у них слабая модульность

    почему все не кинулись юзать исключительно JVM или Mono? или PyPy? потому что есть минусы ввиде необходимости установки и большой размер, и зачастую лишние компоненты в поставке

    так что

     
     
  • 2.28, Аноним, 16:29, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    LLVM?
     
     
  • 3.36, Crazy Alex, 17:20, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Скорее NaCl-LLVM - чистый LLVM не кроссплатформенный
     
  • 2.49, Аноним, 19:35, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Над модульностью JVM работают... к ~9 версии нормально будет.
     
  • 1.35, FSA, 17:17, 12/07/2012 [ответить] [смотреть все]  
  • +/
    Железо не должно простаивать? Смысл декодировать аудио на JS?
     
     
  • 2.37, Crazy Alex, 17:21, 12/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Оно да - но, с другой стороны, покажите мне другой способ проиграть flac в брауз... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.38, pavlinux, 17:55, 12/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    lynx -dump http://music.yandex.ru > /dev/dsp
     
     
  • 4.44, Crazy Alex, 18:36, 12/07/2012 [^] [ответить] [смотреть все]  
  • +/
    даже если обычный пользователь умеет работать с консолью 1 lynx надо установит... весь текст скрыт [показать]
     
  • 4.60, Crazy Alex, 23:33, 12/07/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Чтобы дать пользователю возможность слушать музыку так как он привык А он сейча... весь текст скрыт [показать]
     
     
  • 5.79, bugmenot, 14:27, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    А поставить пользователю нормальные кодеки не судьба?
     
     
  • 6.80, Crazy Alex, 14:32, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Мало ли пользователей в интернете, всем не поставишь, знаете ли.
     
  • 4.90, ВКПб, 11:43, 15/07/2012 [^] [ответить] [смотреть все]  
  • +/
    html5 без флеша, кошерно!
     
     
  • 5.91, ВКПб, 11:55, 15/07/2012 [^] [ответить] [смотреть все]  
  • +/
    А нет, там флеш, морда на html.
     
  • 1.40, Аноним, 18:19, 12/07/2012 [ответить] [смотреть все]  
  • +3 +/
    Ждем видеокодеков высокой четкости на JS, чО.
     
  • 1.42, Нанобот, 18:24, 12/07/2012 [ответить] [смотреть все]  
  • +1 +/
    даёшь декодер для h.264 на javascript!
     
  • 1.46, arisu, 18:58, 12/07/2012 [ответить] [смотреть все]  
  • +3 +/
    извращенцы. ну есть же эмулятор x86 на JS — вот пусть и запускают там обычный x86 код.

    (немного испуганно) как бы действительно не накликать…

     
  • 1.50, Аноним, 19:37, 12/07/2012 [ответить] [смотреть все]  
  • +/
    Пусть уже перепишут systemd на своём js и будут счастливы!
     
  • 1.58, BrainFucker, 22:32, 12/07/2012 [ответить] [смотреть все]  
  • +/
    У меня в FireFox 13.0.1 ничего не играет у них.
     
     
  • 2.61, Nike, 01:07, 13/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    У меня тоже в Убунте в фаерфоксе не играет Зато в хромиуме играет, только там д... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.62, Nike, 01:11, 13/07/2012 [^] [ответить] [смотреть все]  
  • +/
    Да и движение ползунка не реализовано!
     
  • 2.71, Анон, 05:17, 13/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Firefox 13 проигрывает где-то 1 5 секунды и затыкается Эту 1 5 секунды, вроде ... весь текст скрыт [показать] [показать ветку]
     
  • 1.68, mf, 02:08, 13/07/2012 [ответить] [смотреть все]  
  • +/
    Ну звук есть. А видео декодеровать на яваскрипте кто будет? Канва вроде наместе. Шейдеры присутствуют.
     
  • 1.92, Миша, 06:34, 18/07/2012 [ответить] [смотреть все]  
  • +/
    Кому нужны тормозные кодеки на джаваскрипт?
    Давно уже можно целую систему, от начала и до конца, запилить на js, но какой в этом смысл, если нормально работать такая ОС будет только на десктопном i7 с 2-я мощными NVIDIA печками на борту и кучей проприетарных драйверов?
     
     
  • 2.93, Michael Shigorin, 12:23, 18/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Предъявите реализацию, интересно же Вчера обсуждали существующий erlang vm, раб... весь текст скрыт [показать] [показать ветку]
     
  • 1.94, Миша, 22:47, 18/07/2012 [ответить] [смотреть все]  
  • +/
    Вы можете просто погуглить и сразу всё найдёте
    операционная система на javascript,
    Используйте ключевые слова
    os javascript
    На английском море примеров.
     
     
  • 2.95, Michael Shigorin, 01:18, 19/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Погуглить-то можно много чего, а вот для начала узнать, что такое вообще операци... весь текст скрыт [показать] [показать ветку]
     
  • 1.96, Миша, 06:22, 19/07/2012 [ответить] [смотреть все]  
  • +/
    Драйвера можно писать на Java.

    Современная ОС лежит между драйверами для комплектующих и периферии с одной стороны и удобным юзабельным интерфейсом, осуществляющим простое взаимодействие между | драйверами, функциями ос,... <-----> и пользователем | - с другой.

    Любой мало-мальски продвинутый разработчик может взять WebKit, сделать/одолжить Java Script окружение, DE, и основные элементы современной системы написать/одолжить на java script, а драйвера можно взять из того же линукса.

     
     
  • 2.97, Michael Shigorin, 11:59, 19/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Предъявите это не говоря о том, что java javascript Пожалуйста, почитайт... весь текст скрыт [показать] [показать ветку]
     
  • 1.98, Миша, 15:35, 19/07/2012 [ответить] [смотреть все]  
  • +/
    На Вас грех обижаться. Придираетесь к каждому слову, ищите заговор между строк, но, я всё понимаю.

    Да, драйвера будут на С и ассемблере, но зато система не потеряет производительность.

    Я знаю где живут "драйвера", спасибо.

    linux.org.ru/news/java/1622003

    А лучший представитель Linux + WebKit + JavaScript/CSS/HTML5, это, пожалуй,
    HP webOS, которая уже давно стала Open webOS.
    GPLv2 — kernel
    ASLv2 — user-space

     
     
  • 2.99, Michael Shigorin, 18:18, 19/07/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    К каждому слову не по делу -- да И Вы ко мне придирайтесь, если глупости говор... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.100, arisu, 18:25, 19/07/2012 [^] [ответить] [смотреть все]  
  • +/
    пишем всё на обероне и не занимаемся извращениями.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor