DirectShow vmr bad motion playback from avi if not in native resolution
up vote
0
down vote
favorite
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.
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
add a comment |
up vote
0
down vote
favorite
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.
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
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 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 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 at 16:53
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
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.
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
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.
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
video directshow
edited Nov 20 at 16:59
Roman R.
56.6k464107
56.6k464107
asked Nov 20 at 16:13
Gavin
1,65421929
1,65421929
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 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 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 at 16:53
add a comment |
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 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 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 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 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 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 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 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 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 at 16:53
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
accepted
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.
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
up vote
1
down vote
accepted
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.
add a comment |
up vote
1
down vote
accepted
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.
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
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.
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.
answered Nov 20 at 16:59
Roman R.
56.6k464107
56.6k464107
add a comment |
add a comment |
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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 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 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 at 16:53