Медиа плеер / рекордер (фонон) - PullRequest
3 голосов
/ 05 мая 2011

Я хотел бы разработать медиаплеер / рекордер.

Основной целевой платформой является Windows, поддержка других ОС была бы хорошей, но это не является высоким приоритетом. Он должен уметь проигрывать такие форматы, как wav, mp3, avi. Также должна быть возможность записи аудио (микрофон) и видео (веб-камера или карта захвата).

Поскольку у меня есть некоторый опыт работы с QT и C ++, я посмотрел на фонон QT (4.7.2) с бэкэндом DS. Но, к сожалению, я не смог воспроизвести простой AVI, даже с примером MediaPlayer, который поставляется с демонстрационными примерами QT. Я мог только слышать звук, но не видел видео.

Разработчиком является 64-битная Vista. Я также попробовал это на другой 64-битной Vista без какой-либо удачи. На 32-битной Win7 (QT MinGW) это наконец-то сработало. Но когда я скопировал этот исполняемый файл MediaPlayer и его dll на 64-битные машины и попытался запустить его, он снова не удался.

Известна ли проблема с фононом QT на 64-битных машинах? Я также слышал о фононном VLC-фононе. Может ли это быть решением? Достаточно ли зрел QT phonon для разработки коммерческого приложения? Или, может быть, разумнее получить прямой доступ к directshow?

Спасибо

1 Ответ

2 голосов
/ 08 мая 2011

Directshow - это просто программный фреймворк или API, он не гарантирует, что вы сможете воспроизводить все возможные форматы видео на каждом компьютере, поскольку он использует кодеки , установленные в системе для распаковки аудио/ видео потоки.Кодек для одного конкретного формата может быть доступен в одной системе, а не в другой.Кроме того, 64-битная архитектура добавляет еще большую сложность, поскольку кодеки, построенные в 64-битном режиме, не могут использоваться в 32-битных приложениях и наоборот.Проблема, с которой вы сталкиваетесь в 32-битном проигрывателе Phonon, может быть вызвана отсутствующим или «не 32-битным совместимым» кодеком.VLC, с другой стороны, является автономным приложением, оно не зависит от DirectShow или какого-либо кодека, установленного в системе, поэтому было бы неплохо использовать его вместо DirectShow, однако вам нужно будет прочитать VLCюридические условия и решите, можете ли вы по-прежнему использовать его в своих целях.

...