Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.217.144.32] |
|
Сообщ.
#1
,
|
|
|
Вот, очень интересная задача, я думаю, что ответ на мой вопрос будет очень полезен для многих. Итак, есть _видео_ файл, нужно каким-то образом (ну не нашел я ничего в документации DXSDK) отобразить графически звуковую дорожку (типа как это делается в любом звуковом редакторе или как это отображается в Adobe Premiere). Как это рисовать - не проблема, но вот где выкопать данные, с которые, собственно нужно визуализировать, я не нашел, в интерфейсах IBasicAudio и IAudioData все слишком на выоском уровне, т.е. кроме регулировки звука и информации о компрессии ничего нет... Может кто-нибудь уже решал такую задачу, подскажите, плз, где копать.
|
Сообщ.
#2
,
|
|
|
Ты доки по DX 8/8.1 смотрел? Там они много поменяли.
|
Сообщ.
#3
,
|
|
|
Ты когда будешь делать AVIFileOpen, то обнаружишь несколько потоков (2 как минимум).
В AVISTREAMINFO есть параметр fccType. Проверяй по нему что это за поток. Если твой звук, то ... (Должно быть так). |
Сообщ.
#4
,
|
|
|
Да, это понятно, как определить - есть-ли звуковой поток и какой он из загруженных - это не сложно, а вот как получить прямой доступ к содержимому этой дорожки, т.е. как сгенерировать PeakLevel таблицу из этого потока, т.е. где брать данные ? С видео - все просто - есть возможность покадровой обработки, а с аудио как ? Возможно, мой вопрос звучит глупо, но я действительно не пойму - как это сделать... Объясните, плз.
Спасибо !!! |
Сообщ.
#5
,
|
|
|
2CodeMaster: Я использую DXSDK 8.1, доки я, разумеется, перерыл как смог, возможно, я что-то пропустил. Решения пока нет. Хотя, проблема ведь банальная... Я уверен, что кто-нибудь уже сталкивался с этим.
|
Сообщ.
#6
,
|
|
|
По всей видимости :
1. Писать In-Place Filter не годится, т.к. нужно заполнить Waveform таблицу еще до воспроизведения. 2. Писать Рендер фильтр можно только при условии, что нужно будет собирать граф дважды, т.е. первый раз для генерации таблицы, а второй, непосредственно, для воспроизведения. ---- т.е. второй вариант, как я понимаю единственный, т.к. других просто нет, т.е. никто их не предлагает , а я сам более ничего выдумать не могу. Очень хотелось бы услышать ваше мнения и предложения по второму пункту, т.е. как это все-таки сделать, чтобы не криво было и при этом минимум временных затрат при чтении звуковой дорожки. Спасибо ! |