!!! Только у нас на форуме !!! | |
Спектакли от дяди Пчёлки
для просмотра необходима регистрация |

Help! Mp3->wav на лету!
#1
Отправлено 03 фев 2006 - 01:07
Конфигурация:
Воспроизведение: WinMediaPlayer, WinAMP, аудио-видео редакторы...
Материал: MP3, AVI и др...
Коммутация: выход SPDIF (коаксиал) интегрированной карты AC97 соединени с SPDIF входом ресивера.
Описание проблемы:
Если проигрывать материал WAV, то все в порядке, звук в колонках есть (через ресивер).
Если проигрывать материал MP3, AC3, Dolbi Digital..., то звука в колонках нет при данной коммутации, а при аналоговой - есть.
Гипотеза: похоже в компе на SPDIF звук передается без преобразования формата.
Вопрос: можно ли чем-нибудь на лету конвертировать воспроизводимый материал в приемлемый формат, оптимально в PCM (ресивер понимает только DTS и PCM)?
Спасибо, Ильдар.
#2
Отправлено 03 фев 2006 - 01:19
Пока.
Олег.
#3
Отправлено 03 фев 2006 - 01:27
Говорят в UNIXах можно взять соответствующий декодер (транскодер), а выход направить не на запись в файл на диске, а на файл реального устройства (аудиокарты), т.е. создать цепочку прохождения сигнала.
А в Windows что-нибудь вроде плагина или библиотеки DirectX не встречалось (или хотя бы VST)?
Спасибо, Ильдар.
#4
Отправлено 03 фев 2006 - 01:54
Пока.
Олег.
P.S. Вот Kanst придёт, может поправит...
Сообщение отредактировано Ancle Fedor: 03 фев 2006 - 01:55
#5
Отправлено 03 фев 2006 - 01:54
#6
Отправлено 03 фев 2006 - 02:31
Вот бы узнать?
Graphedit - это софт или утилита.
К примеру для MIDI существовала утилита MIDI-Cable, которая позволяла соединить выходной поток одной программы с входом другой (правда она ничего не конвертила, ей не надо было).
Был еще кажется и AudioCable, так он вроде даже конвертировал, только PCM в PCM, но с разными частотами семплирования и разрядностью.
Вот я подумал, нет ли подобной утилиты, которая эмулировала бы выход аудио, перехватывала поток, конвертила MP3 в PCM, а далее передавала на реальный выход аудиокарты. И все это для SPDIF (в аналоге проблем нет, только жалко пропадает DAC ресивера, при том что в компе AC97).
Спасибо, Ильдар.
#7
Отправлено 04 фев 2006 - 04:54
На SPDIF ресивера подал сигнал с DVD плеера (BBK), так те же композиции с диска MP3 звучат.
В настройках DVD плеера на SPDIF выход можно направить PCM или RAW.
С PCM все понятно, плеер сам конвертирует материал в PCM, а его ресивер понимает.
А вот что значит RAW? Сырой формат исходника? При этом ресивер индицирует PCM.
Ancle Fedor что скажешь?
Нашел объяснение:
Из описания DVD плеера BBK969S:
- Коаксиальный и оптический аудиовыходы, обеспечивающие возможность воспроизведения цифрового звука в форматах Dolby Digital / DTS / LPCM .
Поэтому все, что не соответствует заявленным форматам, но читается плеером преобразуется им же в PCM.
Ресивер индикацией подтверждает.
Грустно, что плееры и софт на компе этого не делают.
Ильдар.
Сообщение отредактировано Ильдар old: 04 фев 2006 - 04:57
#8
Отправлено 04 фев 2006 - 05:06

Graphedit - утилита, которую можно найти вместе с K-Lite кодек паком. Или где нибудь отдельно. По интерфейсу он немного смахивает на тот роутер на скриншоте. Это альтернативные драйвера для Creative карт, которые позволяют вытворять со звуком - что угодно.
А на встроенной наверно можно использовать простой Graphedit.
#9
Отправлено 04 фев 2006 - 14:20
Прошу прощения за собственную глупость.
Как оказалось, проблемы не существует.
Ошибка была в самом начале, т.е. в сути эксперемента и следовательно в постановке вопроса.
По порядку (мое понимание, может кому сгодится):
- MP3 - формат хранения данных, на цыфровые выходы (SPDIF) не передается;
- воспроизводящее устройство (DVD плеер, soft-плеер, редактов...) перед передачей данных на SPDIF разворачивает их в PCM;
- ресивер понимает и принимает PCM, но только ОПРЕДЕЛЕННЫХ ФОРМАТОВ, с частотами семплирования 44100, 48k, 96k;
Сущность моей ошибки:
В самом начале я пытался воспроизвести MP3 файл с потоком 16kbit, что соответствует частоте 11025 Гц, и комп добросовестно передал на SPDIF сигнал PCM(11025).
Воспроизведение файлов с другими потоками прошло нормально.
Предположение:
- комп способен передавать на SPDIF сигналы PCM 11025, 22050, 44100, 48k, а может и другие...
- аппаратный DVD плеер перед отправкой сигнала преобразует его к 44100, 48k или 96k.
Сегодня постараюсь проверить воспроизведение MP3 с низким битрейтом на DVD плеере.
Всем удачи, Ильдар.
#10
Отправлено 04 фев 2006 - 14:33
Graphedit не может подойти под данные цели?

GraphEdit является частью DirectMedia SDK.
Дополнительная информация:
Может пропускать полученный с помощью одного из установленных в системе фильтров сигнал через любой другой кодек или фильтр, установленный и зарегистрированный в системе. Используется для прямого кодирования звукового потока DVD в MP3
#11
Отправлено 04 фев 2006 - 17:44

Для общего развития
AES/EBU - SPDIF
_http://www.epanorama.net/documents/audio/spdif.html
Пока.
Олег.
#12
Отправлено 04 фев 2006 - 21:49
К сожалению мало чем могу помочь, так как в подобные вопросы глубоко не вникал (за ненадобностью пока).Вот Kanst придёт, может поправит...
Могу только предложить поискать ответы на websound.ru (там статейка была про переделку 2.0 в 5.1, описанная процедура возможно подойдет) и на vlab.netsys.ru/forum/index.php? (там много технарей от звукотехники).
Можно и graphedit, но ИМХО геморроидальновато.
#13
Отправлено 04 фев 2006 - 22:04
Воспроизведение файлов с другими потоками прошло нормально."
В Foobar2000 (плеер от создателя Winamp) есть встроенный рессемлер.
Он поддерживает вывод от
8000HZ
до
96000HZ
_________________
Может как раз оно и надо....
Сообщение отредактировано MetroidZ: 04 фев 2006 - 22:06
#14
Отправлено 05 фев 2006 - 01:06
Ссылка многое прояснила.
Придется отредактировать и дополнить "свое понимание":
1 - частоты семплирования пригодные для передачи по SPDIF только: 44100 32k и 48k;
2 - в случае если исходный материал имеет иную частоту семплирования, комп его не ресемплирует, а на SPDIF передает "тишину", а точнее видимо только несущую.
(спросишь, как определил наличие "тишины": ресивер в случае отсутствия сигнала на SPDIF автоматически переходит на аналог, комп поключен и по цифре и по аналогу, но в случае воспроизведения MP3 с низким батрейтом соответствующим 11025 Гц ресивер не переключался на аналог, хотя и PCM не индицировал)
MetroidZ
Благодарю за участие.
Наверно в Foobar2000 можно решить проблему, но пока воздержусь по двум причинам:
1 (глобальная) - правильнее решить с помощью утилиты, которая всегда вставала бы между любым воспроизводящим софтом и реальной аудиокартой (я упоминал такую - AudioCable, который еще кроме ресемплинга позволяет нескольким программам пользоваться одной аудиокартой, т.е. микширует)
2 (личная) - не так актуально, поскольку исходники с такими частотами для меня редкость, и случай породивщий данную тему - нелепая случайность, за что и благодарен судьбе.
А Graphedit непременно поинтересуюсь, любопытно.
И все же еще раз спасибо за уделенное внимание.
До низкобитрейтного MP3 через DVD пока руки не дошли, дойдут отпишусь.
Всем Удачи, Ильдар.
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей