На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! Правила раздела "Программирование звука"
0) Данный раздел предназначен для обсуждения проблем, возникающих при программировании задач, связанных с записью, обработкой, воспроизведением звука. Перед созданием темы подумайте, не будет ли она уместнее в разделах Разработка и тестирование программ, Наши исходники, а особенно Разовые заказы и подработки
1) На Раздел распространяются все Правила форума.Огромная просьба с ними внимательно ознакомиться.
2) Запрещается давать бессмысленные ответы вроде: "Снеси Мастдай", "ХП рулит", "Поставь Линукс" и т.д.
3) Запрещается создавать темы, в которых Вы намереваетесь получить ссылку на кряки, серийники и т.п. Также запрещено любое обсуждение p2p (peer-to-peer) сетей (BitTorrent, eDonkey и т.д.).
4) Реклама всякого рода пресекается беспощадно.
5) Используйте тэг [CODE] для выделения кода программы (непременно с указанием языка программирования - выбрать из списка. В противном случае бессмысленно!). Уважайте тех, кто будет читать ваш код!
6) Если решение вашей проблемы найдено, то не забываем помечать тему специальной функцией "Вопрос решён". Вам всего лишь требуется при написании последнего ответа поставить одну единственную галочку прямо над формой ответа.
7) Если вы хотите получить совет для конкретной платформы/языка программирования, обязательно укажите их в вопросе

8) Если не прикрепляются/не скачиваются файлы, читаем Не прикрепляется / не скачивается файл. Любые обсуждения в данном разделе проблем с приложением файлов считаются оффтопиком! Со всеми вытекающими.

9) NEW! Уважаемые новички! Мы приветствуем Ваше желание научить всех посетителей раздела правильному программированию. Но огромная просьба, перед тем, как писать поучения в старых (последний ответ - "старее" месяца, а особенно, если вопрошавший не появляется на форуме уже не первый месяц, в чем можно убедиться в его профиле) темах, хорошо подумать, будет ли кому-нибудь, кроме Вас cамих, это интересно. Попытки накрутки количества тематических сообщений за счёт поднятия древних неактуальных тем ("некрофилия") будут наказываться по велению левой пятки модераторского состава (см. пп.12, 13 Правил)



Нарушение Правил может повлечь наказание со стороны модераторов.



user posted imageFAQ Раздела user posted imageПоиск в Разделе user posted imageMSDN Library Online | Ваше мнение о модераторах: user posted imageBarazuk user posted imageRikkie
  
> mp3 -> pcm
    Подскажите, пожалуйста, оптимальный декодер для mp3 файликов в pcm такой, чтобы он мог работать из командной строки.

    (оптимальный для файлов с низким bitrate)

    p.s. ну или просто какой-нибудь ;)
      Поищи в сети lame.
      Умеет изменять частоту дискретизации и битрейт mp3 файлов, в том числе умеет их распаковывать в PCM WAV.
      Прога консольная, вроди GPL. Где-то даже исходники есть :)
      Мне очень понравилась.
        насколько я поняла, lame - это кодер mp3 (т.е. переделывает что-то в mp3)
        а мне нужно наоборот ))

        или я не права?

        Добавлено
        я оказалась не права )))
        но не могу разобраться с параметрами перекодировки:
        для проигрывания pcm файликов я использую CoolEdit 2000 и там используются следующие пареметры :
        Sample Rate - 8000 (варианты - 192000, 96000, 88200, 64000, 48000, 44100, 32000, 22050, 16000, 11025, 8000, 6000)
        Channels - mono (варианты - mono, stereo)
        Resolution - 8-bit (варианты - 8-bit, 16-bit, 32-bit(float))
        data formatted as - 8-bit Unsigned (варианты - 8-bit Unsigned, 8-bit Signed, 8-bit mu-Law Compressed, 8-bit A-Law Compressed)

        Каким параметрам какие switch в lame соответствуют?
          У меня под рукой сейчас его нет, запусти вот так lame -? >parm.txt и в файле parm.txt будет справка по всем ключам.
          Там вроди не сложно разобраться, терминология в принципе та же: sample rate, channels, etc...
          Если не получится, я тогда скачаю и посмотрю точнее :)
          Чего сейчас помню:
          -b <bitrate> - битрэйт
          --resample <sample_rate> - частота дискретизации выходного файла
          -m <mode> - mode=m/s (mono/stereo)
          Сообщение отредактировано: cppasm -
            Декодирование выполняется командой
            ExpandedWrap disabled
              lame --decode файл.mp3 файл.wav

            Что-то странное с этим LAME. на http://www.mp3dev.org/ (http://lame.sourceforge.net/) лежит версия 3.96.1, а в K-Lite Codecs Pack версии 2.63 вложена версия 3.97. Откуда?
            Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
              с sample rate я разобралась - это действительно --resample, спасибо cppasm ;)
              но прикол в том, что resample делается только в другой mp3 файл (а не в нужный мне pcm), но это в принципе неважно - можно сначала преобразовать в mp3 с нужным sample rate, а потом декодировать в pcm.

              НО!
              проблема в том, что lame на выходе всегда дает 16-bit файл, а мне нужно 8-bit. и где это менять я не знаю :unsure:

              и опять-таки непонятно как мне получить файл в нужном мне формате (8-bit a-law)
              lame выдает pcm в формате 16-bit INTEL PCM.

              нашла (с помощью хороших людей) другую программку - madplay.
              она умеет декодировать файлы в несколько конкретных форматов, в основном это 16-bit файлы, но есть и один 8-bit, причем (как удачно получилось) почти что в формате a-law, но не совсем - потому что он в формате mu-law.
              чем конкретно они различаются, я не знаю, знаю только что в америке стандарт - mu-law, во всех остальных странах - a-law.

              а как из одного в другой переделать я не знаю. :(
              может, подскажет кто? :rolleyes:
                А обязательно из команднной строки?
                А то к примеру COOLEDIT эти проблемы легко решает.
                А так уменя на работе был исходник из мр3 в рсм а другой из A,MU Law в рсм и обратно. Я в инете брал, где не помню, можно поискать.
                  обязательно из командной строки ))
                  мне надо, чтобы мой скрипт сам без моего участия перекодировал файлы
                  в принципе я и так использую CoolEdit ;)
                    Посмотри на http://www.codeproject.com/audio/madlldlib.asp, если подойдет передай мне приветик!
                      BBC, большое спасибо за советы!!
                      но, насколько я поняла, madlld на выходе дает 16-bit stereo, а мне надо 8-bit mono.
                      а madlldlib основана на madlld ...

                      а программка, которая переделывает m-law в a-law меня очень заинтересовала ;)
                      где такую можно достать?
                        из 16-bit stereo в 8-bit mono сконвертить не составляет ни какой проблемы и тут в форуме обсуждалось, поищи в архиве, а програмку в понедельник скину.
                          Я ее в инете нашел, вот ссылка http://paukoff.fromru.com/sound/index.html, там исходники, переделаешь для себя.
                          Но лучший вариант без всяких исходников:
                          Берешь файл в mu, COOLEDIT-том конвертишь его в wav, сравниваешь каждый байт,вычисляешь коэффициенты преобразования. Потом умножаешь из любого файла в mu каждый байт на коэффициент и получаешь wav. Быстро и просто!
                          Желаю успеха.
                            спасибо-спасибо BBC!!!!!!!
                            буду пробовать сама писать ))
                            там в этой статье http://paukoff.fromru.com/sound/index.html так все подробненько описано, что просто супер!!!
                              Ты функцию и алгоритм преобразования в этой статье конечно посмотри для общего развития, но я предлагаю другой путь, через таблицы коэффициентов преобразования из mu или a в wav, или наоборот. В принципе они стандартные, и наверника где-то есть, но я их найти не смог, пришлось составить свои. Зато по готовой таблице, только подключай нужную, хоть туда, хоть обратно(таблица-то одна) для 16 или 8 битного выходного файла, код минимальный, скорость высокая.
                                то есть, полученный из mp3 файлик (pcm, 8-bit, mono, mu-law) переделать в wav, а потом обратно в pcm a-law?
                                  Да можно сразу из mu в a-law через таблицу, умножишь на коэффициенты и все.
                                  Я вот только не врублюсь, зачем МР3 файл преобразовывать в РСМ и тут же обратно жать в a-law, с гораздо худшим результатом компресси. И чем в таком случае не угодил mu-law, ведь по результату сжатия mu-law и a-law совершенно идентичны.
                                    )))
                                    тем, что мне надо потом его прослушивать через телефон, а через него нормально слышно только pcm в формате a-law.
                                    (mu-law тоже, в принципе, слышно, только он ужасно хрипит)
                                      Цитата Cathy @
                                      через телефон


                                      Это во многом еще и от динамика телефона зависит. Там где он общий (Siemens, Motorola), все может слиться в помехах.
                                      Цитата Discovery @
                                      Думаю что США с удовольствием примет Беларусь в НАТО и ЕС.
                                        Так это для мобилы? Есть А, но нет mu? Если хочешь, дай мыло, пришлю exe-шник из командной строки
                                        mu(8000гц 8 бит) сразу в A(8000гц 8 бит). Если распаковывать в формат Windows PCM получится 8000гц 16 бит без потери качества. Для телефона сойдет.
                                          хочу!!!
                                          cathy2003@list.ru

                                          буду очень-очень признательна )))

                                          Добавлено
                                          To Green Light
                                          так в формате a-law все нормально звучит ))
                                          поэтому и хочу в него преобразовать
                                            Отправил!
                                              BBC, как мне тебя благодарить??????????

                                              уже попробовала - все работает как надо!!!!!!!!!!!

                                              p.s. есть в жизни счастье!!!!
                                                Я помог потому, что очень понравилась твоя картинка под именем, а не прислал сразу исходник потому, что
                                                хотелось пообщаться по-дольше. А если хочешь поблагодарить, то сделай так, чтобы твоя киска улыбнулась,
                                                только красиво. Буду очень рад!
                                                  Это я не умею )
                                                  я лучше так
                                                  :D :D :D :D :D :D :D :D :D
                                                  :D :D :D :D :D :D :D :D :D
                                                  :D :D :D :D :D :D :D :D :D
                                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                  0 пользователей:


                                                  Рейтинг@Mail.ru
                                                  [ Script Execution time: 0,1583 ]   [ 16 queries used ]   [ Generated: 19.03.19, 18:58 GMT ]