Создание аудио-каптюринга параллельно с видеопросомтром
От:
Аноним
Дата:
30.04.08 11:58
Оценка:
Доброго времени суток. Я в DirectShow новичок, поэтому не обессудьте...
Не подскажете, как выкрутиться из следующей проблемы.
Необходимо, чтоы параллельно с просмотром видео, шла запись звука (как там
в MS DX SDK "...dub your video...").
Строю граф, но вот беда: при перемотке видео, фильтр AudioCapture затыкается
(не навсегда, но достаточно надолго). Как это обойти?
Написать свой асинхронный pull фильтр для AudioCapture? А он его поддерживать
будет?
Только не говорите, что надо писать свой фильтр каптюринга...
Хотя, если надо — то надо. Но как его синхронизировать с перемоткой видео?
Фиг с ним, пусть не ездит по буферу параллельно с видео, хотя бы чтоб не
замолкал во время перемотки (а я каких-нибудь маркеров создам).
Хочется решить все методами DirectShow, а некак обычно часть — то, часть — сё,
а встакви — на ассемблере.
А, да. Язык — Delphi + библиотеки в FASMе. Так что без Си-шных оберток пожалуйста...
Re: Создание аудио-каптюринга параллельно с видеопросомтром
Здравствуйте, Аноним, Вы писали:
А>Хочется решить все методами DirectShow, а некак обычно часть — то, часть — сё, А>а встакви — на ассемблере. А>А, да. Язык — Delphi + библиотеки в FASMе. Так что без Си-шных оберток пожалуйста...
немного не понятно, вы хотите проигрывать видео файл и в это время захватывать с AudioCapture device и писать в файл? а вы не пробовали строить 2 отдельных графа (один проигрывает видео), второй захватывает и пишет?
Re: Создание аудио-каптюринга параллельно с видеопросомтром
От:
Аноним
Дата:
30.04.08 13:00
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Доброго времени суток. Я в DirectShow новичок, поэтому не обессудьте... А>Не подскажете, как выкрутиться из следующей проблемы. А>Необходимо, чтоы параллельно с просмотром видео, шла запись звука (как там А>в MS DX SDK "...dub your video..."). А>Строю граф, но вот беда: при перемотке видео, фильтр AudioCapture затыкается А>(не навсегда, но достаточно надолго). Как это обойти? А>Написать свой асинхронный pull фильтр для AudioCapture? А он его поддерживать А>будет? А>Только не говорите, что надо писать свой фильтр каптюринга... А>Хотя, если надо — то надо. Но как его синхронизировать с перемоткой видео? А>Фиг с ним, пусть не ездит по буферу параллельно с видео, хотя бы чтоб не А>замолкал во время перемотки (а я каких-нибудь маркеров создам).
А>Хочется решить все методами DirectShow, а некак обычно часть — то, часть — сё, А>а встакви — на ассемблере. А>А, да. Язык — Delphi + библиотеки в FASMе. Так что без Си-шных оберток пожалуйста...
лично мне не очень понятно — как граф щас выглядит?
звук откуда какой писаться должен? если просто с микрофона или "что я слышу" — то может и правда тупо 2-й граф запускать, который тупо пишет все время что сказано (метод "тупо" — мой любимый в программировании)... а для синхронизации IRefClock использовать
имхо
Re: Создание аудио-каптюринга параллельно с видеопросомтром
От:
Аноним
Дата:
30.04.08 15:37
Оценка:
Извините, что не уточнил. Пишется с источника (микрофон, линейный вход — не важно).
Граф упрощенно выглядит так:
FilSource (video) -> AviSplitter -> ffdshowVideoDecoder-> DirectVobSub -> VideoRenderer
|
MPEG Layer-3 Decoder -> Def.DirectSound Device
Realtek Audio Input -> WAVDest ->FileWriter
То есть два источника — два графа. Повторюсь, при перемотеке AudioInput глохнет.
Написал бы свой фильтр захвата, но как узнать, когда видео поток перематывается?
Re[2]: Создание аудио-каптюринга параллельно с видеопросомтр
Извините, что не уточнил. Пишется с источника (микрофон, линейный вход — не важно).
Граф упрощенно выглядит так:
FilSource (video) -> AviSplitter -> ffdshowVideoDecoder-> DirectVobSub -> VideoRenderer
|
MPEG Layer-3 Decoder -> Def.DirectSound Device
Realtek Audio Input -> WAVDest ->FileWriter
То есть два источника — два графа. Повторюсь, при перемотеке AudioInput глохнет.
Написал бы свой фильтр захвата, но как узнать, когда видео поток перематывается?
Re[2]: Создание аудио-каптюринга параллельно с видеопросомтр
Извините, что не уточнил. Пишется с источника (микрофон, линейный вход — не важно).
Граф упрощенно выглядит так:
FilSource (video) -> AviSplitter -> ffdshowVideoDecoder-> DirectVobSub -> VideoRenderer
|
MPEG Layer-3 Decoder -> Def.DirectSound Device
Realtek Audio Input -> WAVDest ->FileWriter
То есть два источника — два графа. Повторюсь, при перемотеке AudioInput глохнет.
Написал бы свой фильтр захвата, но как узнать, когда видео поток перематывается?