DirectShow vmr bad motion playback from avi if not in native resolution












0















I have a fairly simple playback graph in a .Net Windows Application. (via DirectShowLib)



File Source ->  [Some Splitter] -> VMR7 || VMR9


The splitter could be lav, ffdhow, anything really, it is simply an intelligent connect.



The renderer will be VMR9 when available, VMR7 otherwise.



VMR is used for nothing clever, just to render the video windowless, and to capture samples when the user asks.



This has worked for years, the video could be anything including DV or MPEG2 (hence VMR for frame capture and not the Sample Grabber).



Just recently I have an issue on multiple Windows 10 systems that would all in fact use VMR9 (although VMR7 does not remedy the issue), apparent whilst playing certain avi files clipped smaller or larger than the original avi. Play at the original dimensions and the picture is fine.



Using the EVR rather than VMR solves all video issues, but it causes me some pain due to its image capture being the size of the output rectangle and not the source.



So I was wondering if anyone could shed any light on what I am experiencing whilst using VMR with avi files (multiple formats, DV / h264 ..). Note that graph studio and vlc player display the same issues.



enter image description here



enter image description here



The effect I would describe as serious ghosting on movement, note that the original video file if rendered on EVR or on VMR at source dimensions looks fine.



Really appreciate any thoughts.



---------------Extra Information-------------------------



Could well be worth knowing that all of the problem avi files are captured through a USB capture device from a composite / s-video source.










share|improve this question




















  • 1





    The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

    – Roman R.
    Nov 20 '18 at 16:19













  • Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

    – Gavin
    Nov 20 '18 at 16:29











  • @RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

    – Gavin
    Nov 20 '18 at 16:53
















0















I have a fairly simple playback graph in a .Net Windows Application. (via DirectShowLib)



File Source ->  [Some Splitter] -> VMR7 || VMR9


The splitter could be lav, ffdhow, anything really, it is simply an intelligent connect.



The renderer will be VMR9 when available, VMR7 otherwise.



VMR is used for nothing clever, just to render the video windowless, and to capture samples when the user asks.



This has worked for years, the video could be anything including DV or MPEG2 (hence VMR for frame capture and not the Sample Grabber).



Just recently I have an issue on multiple Windows 10 systems that would all in fact use VMR9 (although VMR7 does not remedy the issue), apparent whilst playing certain avi files clipped smaller or larger than the original avi. Play at the original dimensions and the picture is fine.



Using the EVR rather than VMR solves all video issues, but it causes me some pain due to its image capture being the size of the output rectangle and not the source.



So I was wondering if anyone could shed any light on what I am experiencing whilst using VMR with avi files (multiple formats, DV / h264 ..). Note that graph studio and vlc player display the same issues.



enter image description here



enter image description here



The effect I would describe as serious ghosting on movement, note that the original video file if rendered on EVR or on VMR at source dimensions looks fine.



Really appreciate any thoughts.



---------------Extra Information-------------------------



Could well be worth knowing that all of the problem avi files are captured through a USB capture device from a composite / s-video source.










share|improve this question




















  • 1





    The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

    – Roman R.
    Nov 20 '18 at 16:19













  • Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

    – Gavin
    Nov 20 '18 at 16:29











  • @RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

    – Gavin
    Nov 20 '18 at 16:53














0












0








0








I have a fairly simple playback graph in a .Net Windows Application. (via DirectShowLib)



File Source ->  [Some Splitter] -> VMR7 || VMR9


The splitter could be lav, ffdhow, anything really, it is simply an intelligent connect.



The renderer will be VMR9 when available, VMR7 otherwise.



VMR is used for nothing clever, just to render the video windowless, and to capture samples when the user asks.



This has worked for years, the video could be anything including DV or MPEG2 (hence VMR for frame capture and not the Sample Grabber).



Just recently I have an issue on multiple Windows 10 systems that would all in fact use VMR9 (although VMR7 does not remedy the issue), apparent whilst playing certain avi files clipped smaller or larger than the original avi. Play at the original dimensions and the picture is fine.



Using the EVR rather than VMR solves all video issues, but it causes me some pain due to its image capture being the size of the output rectangle and not the source.



So I was wondering if anyone could shed any light on what I am experiencing whilst using VMR with avi files (multiple formats, DV / h264 ..). Note that graph studio and vlc player display the same issues.



enter image description here



enter image description here



The effect I would describe as serious ghosting on movement, note that the original video file if rendered on EVR or on VMR at source dimensions looks fine.



Really appreciate any thoughts.



---------------Extra Information-------------------------



Could well be worth knowing that all of the problem avi files are captured through a USB capture device from a composite / s-video source.










share|improve this question
















I have a fairly simple playback graph in a .Net Windows Application. (via DirectShowLib)



File Source ->  [Some Splitter] -> VMR7 || VMR9


The splitter could be lav, ffdhow, anything really, it is simply an intelligent connect.



The renderer will be VMR9 when available, VMR7 otherwise.



VMR is used for nothing clever, just to render the video windowless, and to capture samples when the user asks.



This has worked for years, the video could be anything including DV or MPEG2 (hence VMR for frame capture and not the Sample Grabber).



Just recently I have an issue on multiple Windows 10 systems that would all in fact use VMR9 (although VMR7 does not remedy the issue), apparent whilst playing certain avi files clipped smaller or larger than the original avi. Play at the original dimensions and the picture is fine.



Using the EVR rather than VMR solves all video issues, but it causes me some pain due to its image capture being the size of the output rectangle and not the source.



So I was wondering if anyone could shed any light on what I am experiencing whilst using VMR with avi files (multiple formats, DV / h264 ..). Note that graph studio and vlc player display the same issues.



enter image description here



enter image description here



The effect I would describe as serious ghosting on movement, note that the original video file if rendered on EVR or on VMR at source dimensions looks fine.



Really appreciate any thoughts.



---------------Extra Information-------------------------



Could well be worth knowing that all of the problem avi files are captured through a USB capture device from a composite / s-video source.







video directshow






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 20 '18 at 16:59









Roman R.

57.2k465107




57.2k465107










asked Nov 20 '18 at 16:13









GavinGavin

1,67422029




1,67422029








  • 1





    The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

    – Roman R.
    Nov 20 '18 at 16:19













  • Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

    – Gavin
    Nov 20 '18 at 16:29











  • @RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

    – Gavin
    Nov 20 '18 at 16:53














  • 1





    The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

    – Roman R.
    Nov 20 '18 at 16:19













  • Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

    – Gavin
    Nov 20 '18 at 16:29











  • @RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

    – Gavin
    Nov 20 '18 at 16:53








1




1





The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

– Roman R.
Nov 20 '18 at 16:19







The artifact is pretty typical for interlaced content. That is, if the video is indeed interlaced (which is quite possible given the formats you mentioned as example), then behavior is mostly expected and you need to look into enabling deinterlacing for the presentation. Presumably EVR does this automatically.

– Roman R.
Nov 20 '18 at 16:19















Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

– Gavin
Nov 20 '18 at 16:29





Interesting, should I expect the artifacts to look worse when not in source resolution? I was starting to think it was scaling related, I am not even sure how to describe the second image I added. I will force deinterlacing and see where that gets me. Thanks.

– Gavin
Nov 20 '18 at 16:29













@RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

– Gavin
Nov 20 '18 at 16:53





@RomanR. Seems VMR is unhappy about the prospect in Graph Studio anyway. However, I added the following to my graph sourceforge.net/projects/deinterlace and it does indeed solve the ghosting, whilst introducing some colour space issues, but deinterlace for the win thanks. If you add that as an answer I will accept it.

– Gavin
Nov 20 '18 at 16:53












1 Answer
1






active

oldest

votes


















1














The presented artifact is typical for presentation of interlaced content without deinterlacing.



In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.



To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.






share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53397133%2fdirectshow-vmr-bad-motion-playback-from-avi-if-not-in-native-resolution%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    The presented artifact is typical for presentation of interlaced content without deinterlacing.



    In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.



    To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.






    share|improve this answer




























      1














      The presented artifact is typical for presentation of interlaced content without deinterlacing.



      In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.



      To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.






      share|improve this answer


























        1












        1








        1







        The presented artifact is typical for presentation of interlaced content without deinterlacing.



        In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.



        To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.






        share|improve this answer













        The presented artifact is typical for presentation of interlaced content without deinterlacing.



        In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.



        To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 20 '18 at 16:59









        Roman R.Roman R.

        57.2k465107




        57.2k465107
































            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53397133%2fdirectshow-vmr-bad-motion-playback-from-avi-if-not-in-native-resolution%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            這個網誌中的熱門文章

            Xamarin.form Move up view when keyboard appear

            Post-Redirect-Get with Spring WebFlux and Thymeleaf

            Anylogic : not able to use stopDelay()