Я разрабатываю приложение на С# с помощью Directshow.NET. Я использую виртуальную камеру, которая поможет записывать экран рабочего стола. Итак, мой график:
Виртуальная камера ---> конвертер цветового пространства ---> захват семплов ---> писатель ASF.
При написании кода я использовал пользовательский .prx
, который я сгенерировал с помощью Windows Media Profile Editor
и настроил в IConfigAsfWriter
используя WMCreateProfileManager
.
В файле .prx режим CBR
, кодек Windows Media Video 9
и частота кадров 15fps
с битрейтом видео 759 Кбит/с, но видео все равно выглядит размытым. Если я увеличу битрейт видео, например, до 5 Мбит / с, то этой размытости не будет, но увеличение битрейта приведет к большому размеру файла (54 секунды размера файла записи составляют 10 МБ).
Я попробовал другой график, используя виртуальную камеру graphEdit
---> AVI mux ---> File Writer, но это также генерировало большой файл .avi.
Как я могу записывать видео без эффекта размытия, сохраняя минимальный размер файла, например. 1 минута видео размером до 2-3 Мб? Нужно ли использовать какой-либо видеокомпрессор?