как улучшить мой код, чтобы улучшить качество видео?

StackOverflow https://stackoverflow.com/questions/843100

Вопрос

Я использую следующий код, чтобы использовать Windows Media Encoder для записи экрана.Я использую Windows Vista, разрешение экрана 1024 × 768, 32-разрядное.Моя проблема в том, что видео может быть успешно записано, но когда я воспроизводю записанное видео, качество видео не очень хорошее - напримерперсонажи очень неясны.Мне интересно, какие параметры я должен попытаться настроить, чтобы получить лучшее качество видео с регистратора?

Мой код,

            static WMEncoder encoder = new WMEncoder();

            IWMEncSourceGroup SrcGrp;
            IWMEncSourceGroupCollection SrcGrpColl;
            SrcGrpColl = encoder.SourceGroupCollection;
            SrcGrp = (IWMEncSourceGroup)SrcGrpColl.Add("SG_1");

            IWMEncVideoSource2 SrcVid;
            SrcVid = (IWMEncVideoSource2)SrcGrp.AddSource(WMENC_SOURCE_TYPE.WMENC_VIDEO);
            SrcVid.SetInput("ScreenCap://ScreenCapture1", "", "");
            IWMEncFile File = encoder.File;
            File.LocalFileName = "C:\\OutputFile.avi";

            // Choose a profile from the collection.
            IWMEncProfileCollection ProColl = encoder.ProfileCollection;
            IWMEncProfile Pro;
            for (int i = 0; i < ProColl.Count; i++)
            {
                Pro = ProColl.Item(i);
                if (Pro.Name == "Windows Media Video 8 for Local Area Network (384 Kbps)")
                {
                    SrcGrp.set_Profile(Pro);
                    break;
                }
            }

        encoder.Start();

заранее спасибо, Джордж

Это было полезно?

Решение

Видеокодеры используют определенное соотношение кбит/сек для ограничения размера генерируемого потока.Чем меньше кбит / с, тем меньше деталей вы получите из-за меньшего количества коэффициентов DCT и больших значений квантования.Другими словами:чем больше кбит / сек вы вкладываете в видео, тем больше деталей кодер может сохранить в потоке.

Судя по вашему коду, вы выбрали профиль, который использует 384 кбит / с, что не очень много для видео с разрешением 1024 * 768.Вам следует попробовать другие профили или установить битрейт, который вы хотите сами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top