Получить список доступных форматов аудио файлов Windows - PullRequest
2 голосов
/ 30 сентября 2008

У меня есть программа на C #, которая должна воспроизводить аудиофайлы. Я выяснил, как воспроизводить любой звуковой файл, для которого в Windows установлен кодек, с помощью DirectShow, но теперь я хочу правильно заполнить поле фильтра типов файлов в диалоговом окне «Открыть». Я хотел бы автоматически перечислить любой формат файла, для которого Windows имеет кодек. Если какой-то случайный пользователь устанавливает кодек для неизвестного формата, в списке должны появиться связанные с ним расширения и описания файлов.

Есть идеи?

Ответы [ 4 ]

2 голосов
/ 30 сентября 2008

Если я правильно помню, кодек не знает, какие типы файлов, то есть расширения файлов, он поддерживает, поскольку кодек принимает в качестве входных данных некоторый поток, а не файл. Поэтому если вам нужно отобразить расширения файлов поддерживаемых форматов аудиофайлов, вам, скорее всего, не повезет, если у вас нет обширного списка расширений файлов и связанных кодеков, но даже тогда у вас возникнут проблемы с контейнером форматы и все такое.

Например, мой проигрыватель Windows Media успешно воспроизводит файлы m4b, но ничего о них не знает. Мне пришлось вручную связать его с типом файла.

0 голосов
/ 20 октября 2008

Вы можете использовать аудио-библиотеку .NET с открытым исходным кодом NAudio для перечисления всех кодеков ACM, установленных в вашей системе. Взгляните на класс AcmDriver.

0 голосов
/ 30 сентября 2008

Просто используйте мм кодек apis. Никогда не используйте реестр.

0 голосов
/ 30 сентября 2008

Вы можете найти в реестре Windows все типы файлов с типом содержимого «audio / *». В частности, посмотрите все ключи в разделе HKCR / Software / * / Content Type.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...