Question

J'utilise le code suivant pour tirer parti de Windows Media Encoder pour enregistrer l'écran. J'utilise Windows Vista, résolution d'écran 1024 & # 215; 768 & # 65292; 32 bits. Mon problème est, la vidéo pourrait être enregistrée avec succès, mais lorsque je lis la vidéo enregistrée, la qualité de la vidéo n'est pas très bonne - par exemple. les personnages sont très obscurs. Je me demande quels sont les paramètres que je devrais essayer d’ajuster pour obtenir une meilleure qualité de la vidéo de l’enregistreur?

Mon code,

            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();

merci d'avance, George

Était-ce utile?

La solution

Les encodeurs vidéo utilisent un certain rapport kbit / seconde pour limiter la taille du flux généré. Moins vous aurez de kbits / s, moins vous obtiendrez de détails en raison du nombre réduit de coefficients du DCT et de valeurs de quantification plus élevées. En d'autres termes: plus vous mettez de kbits / s dans la vidéo, plus l'encodeur peut stocker de détails dans le flux.

À en juger par votre code, vous avez choisi un profil qui utilise 384 kbit / s, ce qui n’est pas beaucoup pour une vidéo 1024 * 768. Vous devriez essayer d’autres profils ou définir le débit que vous souhaitez vous-même.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top