Я разрабатываю приложение, которое позволяет записывать видео с веб-камеры.
(с использованием Visual Studio 2008, C #)
Требуемая степень сжатия составляет приблизительно 10 секунд = 1 МБ. Я нашел единственный, который подходит для этого: тот, что из DivX Codec Pack , но, похоже, он не бесплатный. Или, может быть, нет, я не уверен: он устанавливается через DivXInstaller, который загружает много мусора, который мне не нужен, и на панели управления DivX есть ярлык: DivX Codec, пробная версия, осталось 15 дней И этот ярлык не меняется более двух недель ...
Другой хорошей альтернативой является компрессор VP40®. Коэффициент сжатия составляет от 1 сек до 1 мб. Но у него есть некоторые странные проблемы с Windows XP, и я пока не могу понять, что с ним не так.
Есть вопросы, которые у меня сейчас есть:
- Есть ли хороший установщик для DivX Codec Pack, который установит
только этот пакет, без добавления 200 МБ веса мусора?
- Существуют ли другие хорошие видео компрессоры, совместимые с DirectShow?
Те, что у меня по умолчанию (например, Microsoft Video 1, DV Video
Кодировщик и т. Д.) Либо имеют плохой коэффициент сжатия, либо ужасно
плохое качество записанного видео.
- Ну, конечно, предпочтителен бесплатный компрессор.
P.S. Извините за мой плохой английский.
кусок кода:
// the part of method to record video
capture = new Capture(filters.VideoInputDevices[VCB.SelectedIndex], filters.AudioInputDevices[ACB.SelectedIndex]);
// VCB & ACB are the combobox for video & audio capture devices
capture.VideoCompressor = filters.VideoCompressors[CCB.SelectedIndex];
// that's the video compressor, that is used
//and then:
try
{
capture.PreviewWindow = panelVideo;
Log.CreateLogFiles("Video panel initialized");
}
catch (Exception ex) { Log.CreateLogFiles(ex); }
capture.Filename = "Somestring";
capture.Start();