Log in

View Full Version : LAV Filters - DirectShow Media Splitter and Decoders


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 [298] 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508

aufkrawall
16th April 2013, 21:20
Hm, odd. Fraps Decoder now works with madVR?
In the past it always failed.

itsonlyjustincase
17th April 2013, 02:48
Is there a way to force 60 fps in Lav Video like it is possible with ffdshow ? (http://dsync.blogspot.fr/2010/12/playing-video-in-60-fps-instead-of.html)
The goal is to force my shitty video application to run smoother videos

nevcairiel
17th April 2013, 06:24
There is not, and probably never will be.

itsonlyjustincase
17th April 2013, 11:34
There is not, and probably never will be.

Thanks for your answer

SamKook
17th April 2013, 12:42
Since it's avisynth that's doing all the work and not ffdshow, nothing's stopping you from creating the script with the video you want to play and then playing the script(which loads the video explicitely since LAV has no avisynth support like ffdshow) instead of the video which LAV will support without problem.

It's a bit more troublesome though and you'd probably want to make a bat file that create that script automatically and then launch your player so that all you'd have to do is drag and drop the video on it.

Edit: Or maybe not. I thought it was using LAV for the RAW video since I wasn't seeing the ffdshow icon, but there's actually no filters(other than the renderers and the source file) in the filter list so, my bad.

itsonlyjustincase
17th April 2013, 14:01
Since it's avisynth that's doing all the work and not ffdshow, nothing's stopping you from creating the script with the video you want to play and then playing the script(which loads the video explicitely since LAV has no avisynth support like ffdshow) instead of the video which LAV will support without problem.

It's a bit more troublesome though and you'd probably want to make a bat file that create that script automatically and then launch your player so that all you'd have to do is drag and drop the video on it.

Edit: Or maybe not. I thought it was using LAV for the RAW video since I wasn't seeing the ffdshow icon, but there's actually no filters(other than the renderers and the source file) in the filter list so, my bad.

:) thanks anyway

huhn
17th April 2013, 14:13
Is there a way to force 60 fps in Lav Video like it is possible with ffdshow ? (http://dsync.blogspot.fr/2010/12/playing-video-in-60-fps-instead-of.html)
The goal is to force my shitty video application to run smoother videos

try madvr smooth motion.

clsid
17th April 2013, 17:03
You can also use ffdshow video processor in combination with the LAV Video decoder. Either by adding the ffdshow raw video filter in MPC-HC external filters, or by enabling raw video in the ffdshow video decoder.

On a related note, since ffdshow r4505 it is possible to conditionally register the various ffdshow filters (when registering manually, it is not yet exposed in the installer). This for example allows registering only the processing filters. Perhaps this is an incentive to increase priority of issue #32 (http://code.google.com/p/lavfilters/issues/detail?id=32)? I propose a simple checkbox to toggle the feature on/off plus a textfield to supply a whitelist of apps where the processors may be inserted. Basic regex support should allow targeting most players with a short string (mpc*;*player*). Whitelist is important since for many DS apps (games/video converters/webcam stuff) processing is unneeded or even unwanted.

woody777
17th April 2013, 19:09
I searched the thread and found some conversation regarding interlaced video quality, but it's honestly over my head and I didn't really understand any of it.

I have a handful of MKVs made from old DVDs that look really bad using LAV/EVR. They look a bit better using Microsoft decoders/EVR. Is there a setting in LAV I can play with to make the video look smoother? It's tough to describe, but it looks sort of like this: http://upload.wikimedia.org/wikipedia/commons/1/19/Interlaced_video_frame_%28car_wheel%29.jpg

It's very obvious when characters talk -- their mouths are all lines.

paradoxical
17th April 2013, 19:21
Enable the deinterlacing option in LAV. Or if you also use MadVR, you can enable IVTC or video deinterlacing depending on whether your source is telecined film or not.

woody777
17th April 2013, 19:38
Enable the deinterlacing option in LAV. Or if you also use MadVR, you can enable IVTC or video deinterlacing depending on whether your source is telecined film or not.

Thanks! Do you know what the option is called and where it is? I'll hunt around for it too.

paradoxical
17th April 2013, 19:46
Thanks! Do you know what the option is called and where it is? I'll hunt around for it too.

Yeah, it's called "deinterlacing". It's in the LAV Video options. You can choose between either hardware deinterlacing or software deinterlacing using YADIF.

woody777
17th April 2013, 20:09
Yeah, it's called "deinterlacing". It's in the LAV Video options. You can choose between either hardware deinterlacing or software deinterlacing using YADIF.

Thanks! hardware deinterlacing was greyed out... maybe because I don't have a video card??? I selected software deinterlacing 50/60p (I think that's the right one... I'm in the US). It looks quite a bit better!

paradoxical
17th April 2013, 20:15
Thanks! hardware deinterlacing was greyed out... maybe because I don't have a video card??? I selected software deinterlacing 50/60p (I think that's the right one... I'm in the US). It looks quite a bit better!

Yes, you need to be using hardware decoding to use the hardware deinterlacing.

woody777
17th April 2013, 20:47
Yes, you need to be using hardware decoding to use the hardware deinterlacing.

Thanks for your help!

itsonlyjustincase
17th April 2013, 22:48
try madvr smooth motion.

Thanks guy but my main problem is that my software cannot support multiple decoders. I can choose through win7dsfilter which on is gonna handle H264 that's all :(

itsonlyjustincase
17th April 2013, 22:50
You can also use ffdshow video processor in combination with the LAV Video decoder. Either by adding the ffdshow raw video filter in MPC-HC external filters, or by enabling raw video in the ffdshow video decoder.

On a related note, since ffdshow r4505 it is possible to conditionally register the various ffdshow filters (when registering manually, it is not yet exposed in the installer). This for example allows registering only the processing filters. Perhaps this is an incentive to increase priority of issue #32 (http://code.google.com/p/lavfilters/issues/detail?id=32)? I propose a simple checkbox to toggle the feature on/off plus a textfield to supply a whitelist of apps where the processors may be inserted. Basic regex support should allow targeting most players with a short string (mpc*;*player*). Whitelist is important since for many DS apps (games/video converters/webcam stuff) processing is unneeded or even unwanted.

Thanks guy but my main problem is that my software cannot support multiple decoders. I can choose through win7dsfilter which on is gonna handle H264 that's all :(

DragonQ
17th April 2013, 23:03
I searched the thread and found some conversation regarding interlaced video quality, but it's honestly over my head and I didn't really understand any of it.

I have a handful of MKVs made from old DVDs that look really bad using LAV/EVR. They look a bit better using Microsoft decoders/EVR. Is there a setting in LAV I can play with to make the video look smoother? It's tough to describe, but it looks sort of like this: http://upload.wikimedia.org/wikipedia/commons/1/19/Interlaced_video_frame_%28car_wheel%29.jpg

It's very obvious when characters talk -- their mouths are all lines.

For some reason your videos aren't being deinterlaced properly. What player are you using? EVR should deinterlace correctly using your GPU when used with any of LAV's decoder options.

Thanks! hardware deinterlacing was greyed out... maybe because I don't have a video card??? I selected software deinterlacing 50/60p (I think that's the right one... I'm in the US). It looks quite a bit better!

What GPU do you have? An on-board one? I don't know of any GPUs that can't perform hardware deinterlacing with EVR but maybe some really old ones can't.

Yes, you need to be using hardware decoding to use the hardware deinterlacing.
Incorrect. You only need to be using CUVID if you want LAV to perform the deinterlacing. Typically the renderer does the deinterlacing, which can be done with any kind of decoding.

woody777
18th April 2013, 01:58
For some reason your videos aren't being deinterlaced properly. What player are you using? EVR should deinterlace correctly using your GPU when used with any of LAV's decoder options.



What GPU do you have? An on-board one? I don't know of any GPUs that can't perform hardware deinterlacing with EVR but maybe some really old ones can't.


Incorrect. You only need to be using CUVID if you want LAV to perform the deinterlacing. Typically the renderer does the deinterlacing, which can be done with any kind of decoding.

I am using an on-board GPU. It's a first generation Intel i5. I'm using LAV decoder and EVR renderer. My player is Windows Media Center (Windows 7) and I'm using Shark007 to tweak.

paradoxical
18th April 2013, 02:28
Incorrect. You only need to be using CUVID if you want LAV to perform the deinterlacing. Typically the renderer does the deinterlacing, which can be done with any kind of decoding.

Well, yes. The "hardware deinterlacing" that was being referred to was the LAV Video option which requires you to choose hardware decoding. So, no, it was not incorrect. You just misunderstood the context.

DragonQ
18th April 2013, 10:52
I am using an on-board GPU. It's a first generation Intel i5. I'm using LAV decoder and EVR renderer. My player is Windows Media Center (Windows 7) and I'm using Shark007 to tweak.
In that case EVR should be doing hardware deinterlacing for you regardless of your decoder. It's probably Windows Media Center's fault. :D

nevcairiel
18th April 2013, 13:47
Obviously not, its a DirectShow filter.
There is basically no advantage for users in the switch to Media Foundation, so why do you even care?

It would be impossible to maintain two filters (resource-wise), and MPC-HC is hardly the only player in this world that uses LAV, and WMP/WMC are the only other players that use MF. A compelling argument for anyone to switch, this is not. :)

nevcairiel
18th April 2013, 14:09
He is not a user, but a developer.
It is easier to work with for developers, but that doesn't mean it has any advantages for users. :p

In fact, for the first 5 years, it has only disadvantages for users, because you suddenly cannot use all the DirectShow filters anymore.

nevcairiel
18th April 2013, 14:23
Its pretty simple:

For codec developers:
- There are no players that support it

For player developers:
- There are no codecs that support it

So even if i would create a MF LAV, there would be essentially no player to use it, and if someone would create a player using MF, there would only be Microsoft filters to use, and even if both MPC-HC and LAV would move to MF, there would still be no ReClock or madVR, and there also would be no other player to use with more features (like a full media center)

Its just impossible to get everyone to switch, especially because some products like ReClock are basically EOL themself, but there are no alternatives which serve the same purpose available.
There is also loads of legacy codecs which may only work in DirectShow, and you would drop support for those as well.

You ever heard of the Chicken/Egg problem? :p

All in all, the problems and limitations it would bring because of the smaller ecosystem outweigh the advantages at this time.

nevcairiel
18th April 2013, 14:50
Maybe if you would create a MF LAV, then maybe someone would create a MF MPC-HC, and maybe if MF LAV and MF MPC-HC have been created, maybe someone would create a MF madVR... and maybe if all of those things were created maybe someone would create a MF based ReClock successor... and so on... ?

Maybe you want to pay me so i can quit my job and work on that? :)

I'm not going to waste my free time on some exercise which has no real-world benefits today. There is not going to be a MF LAV any time soon, even if MPC-HC would use MF - its not my primary player anyway.
Playback doesn't magically get better by using MF, these "advantages" Wikipedia lists sound like marketing talk from Microsoft.

paradoxical
18th April 2013, 15:02
From the following list:

http://en.wikipedia.org/wiki/Media_Foundation#Benefits_over_DirectShow

it looks like as if Media Foundation has some nice benefits over DirectShow?

Well let's actually look at this eh?

Is scalable for high-definition content and DRM-protected content.


DirectShow can play high-definiation content just fine. Even 4k. The DRM part isn't an advantage for users.

Allows DirectX Video Acceleration to be used outside of the DirectShow infrastructure. DXVA 2.0 is available to user-mode components without using the DirectShow video renderer.

Is this really that useful for a media player which is going to use a renderer anyway?

Provides better resilience to CPU, I/O, and memory stress for low-latency glitch-free playback of audio and video. Video tearing has been minimized. The improved video processing support also enables high color spaces and enhanced full-screen playback. Enhanced video renderer (EVR) which is also available for DirectShow, offers better timing support and improved video processing.


Can't say I've ever seen tearing these days anymore. We already get higher color spaces with LAV and MadVR. Also, MadVR is better than EVR anyway so who cares if EVR is slightly better because of MF?

Media Foundation extensibility enables different content protection systems to operate together.


Again, how does that benefit any user?

Media Foundation uses the Multimedia Class Scheduler Service (MMCSS), a new system service in Windows Vista, Windows 7 & Windows 8. MMCSS enables multimedia applications to ensure that their time-sensitive processing receives prioritized access to CPU resources.

While this sounds nice, I can't really say that I've seen any need for it or that it's going to provide such a huge benefit that we should all just dump DirectShow over it. Just changing the thread priority seems to do well enough as is.

As nev says, there are no real-world benefits for end users that they can't already get with the current DirectShow components we have now. The only people truly benefiting from MF are the DRM people.

nevcairiel
18th April 2013, 15:05
Is this really that useful for a media player which is going to use a renderer anyway?

Its even wrong, DXVA 2.0 can be used without a renderer in DirectShow as well, because all you need is D3D APIs. Thats how DXVA2 Copy-Back works, it doesn't use any DirectShow specifics, and can function without a renderer.

paradoxical
18th April 2013, 15:09
So the question becomes, jq963152, what exactly is the vital feature of MediaFoundation that you need that is somehow not provided by DirectShow components right now? Just saying "it's better and more modern" is not an answer because of all the time costs involved in porting and/or rewriting all the current code.

madshi
18th April 2013, 15:12
wikipedia's list of advantages is mostly incorrect, I believe. AFAIK, MF brings no benefits worth mentioning to *users*. It might bring some benefits to developers. But even that is only true if developers switch over to MF and stop doing DirectShow at the same time. If you still want to support DirectShow, supporting MF in addition to that just means more work, without any benefits.

At this point in time I do not plan to add MF support to madVR - *ever*.

paradoxical
18th April 2013, 15:15
wikipedia's list of advantages is mostly incorrect, I believe. AFAIK, MF brings no benefits worth mentioning to *users*. It might bring some benefits to developers. But even that is only true if developers switch over to MF and stop doing DirectShow at the same time. If you still want to support DirectShow, supporting MF in addition to that just means more work, without any benefits.

At this point in time I do not plan to add MF support to madVR - *ever*.

Yeah, that's why it's been marked as "This section does not cite any references or sources." for nearly a year now. Whoever wrote it doesn't actually cite anything. It truly sounds like someone copy and pasted some marketing bullet points.

paradoxical
18th April 2013, 15:22
Its even wrong, DXVA 2.0 can be used without a renderer in DirectShow as well, because all you need is D3D APIs. Thats how DXVA2 Copy-Back works, it doesn't use any DirectShow specifics, and can function without a renderer.

True, though it's easily dismissed before you get to that point since a media player without a video renderer is rather silly.

It may be possible that when that line was written there weren't DXVA2 copy-back implementations? *shrug*

DragonQ
18th April 2013, 15:24
Will DirectShow support ever be dropped from future versions of Windows? That's usually the only reason anyone ever ports code to newer frameworks.

paradoxical
18th April 2013, 15:26
Will DirectShow support ever be dropped from future versions of Windows? That's usually the only reason anyone ever ports code to newer frameworks.

VfW still exists more than a decade past it's deprecation so it's doubtful.

nevcairiel
18th April 2013, 15:27
Will DirectShow support ever be dropped from future versions of Windows? That's usually the only reason anyone ever ports code to newer frameworks.

Windows Store/Metro applications cannot use DirectShow, afaik.
Not a big loss for me. :p

I did not say that.

One of the MPC-HC developers said (wrote) that, see
But you are the one making a fuss about it, so you should have your own arguments, or stop.
If your whole argument is "some developer said it is more modern", then your whole pursuit is rather pointless. Yes, it is more modern. Does that make it better? Maybe. Does that make it worth migrating a whole ecosystem to it? Nope.

Anyway this is getting terribly off-topic. I made my opinion for LAV about this very clear.
If you want to continue discussing the merits of MF over DS, feel free to create your own dedicated thread about it.

paradoxical
18th April 2013, 15:36
After post #14907 i did no longer comment about it. You and others were the ones going on with the discussion. Not me.

Yes, what you posted is called "baiting".

Aurora13
18th April 2013, 16:19
Hi nevcairiel,

Is it possible/easy to add an 5.0 speaker option in the Mixing options? I do not have a subwoofer. I now have to use ffdshow to get the LFE channel rerouted to the front speakers.

Or is there another way?

Thanks in advance.

Regards

andyvt
18th April 2013, 19:28
Windows Store/Metro applications cannot use DirectShow, afaik.


This is pretty much the only reason I'm aware of to use MF unless your player needs to support DRM. AFAIK, it is the only supported way to enable HDCP + protected playback w/o explicit help from the GPU OEMs is via MF.

e-t172
19th April 2013, 01:11
Is it possible/easy to add an 5.0 speaker option in the Mixing options? I do not have a subwoofer. I now have to use ffdshow to get the LFE channel rerouted to the front speakers.

Unless you have main speakers with very good bass response (meaning, very expensive speakers), I recommend against sending them the LFE signal, as it is likely to generate significant amounts of distortion.

Hera
19th April 2013, 02:00
Don't you need MF for Modern UI?
AFAICT there is no good player for Modern UI that matches subtitle and format support of last generation media players like Media Player Classic Home Cinema...

dbcooper
19th April 2013, 03:07
Don't you need MF for Modern UI?
AFAICT there is no good player for Modern UI that matches subtitle and format support of last generation media players like Media Player Classic Home Cinema...

Isn't the metro win8 VLC beta nearly ready?

wanezhiling
19th April 2013, 16:53
http://www.sendspace.com/file/1mbqgl

LAV does not support Blizzard codec?

nevcairiel
19th April 2013, 18:26
http://www.sendspace.com/file/1mbqgl

LAV does not support Blizzard codec?

Its just MPEG4 with a special FourCC, i added the FourCC now.

nevcairiel
19th April 2013, 19:18
LAV Filters 0.56.2

LAV Splitter
- Emit the EC_LENGTH_CHANGED event when the edition is changed, to help players update their playback duration

LAV Video
- dxva2: fixed corruption/dropped frames after seeking in interlaced MPEG-2/VC-1 streams
- dxva2: fixed corruption after seeking in interlaced H.264 on AMD GPUs
- dxva2: fixed decoding of H.264 on AMD UVD/UVD+ GPUs (HD 2xxx/3xxx Series)
- dxva2: disabled wmv3 decoding on AMD UVD/UVD+ GPUs (until it can be fixed)
- Fixed colorspace used for YUV Fraps to always be BT.709
- Added support for MPEG-4 Video with the BLZ0 FourCC (used in older Blizzard games)


Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.56.2.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.56.2.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.56.2-x64.zip)

In case you missed 0.56, release notes are here (http://forum.doom9.org/showthread.php?p=1623515#post1623515).

A whole bunch of DXVA2 related fixes. One from a regression in 0.56 (the first), the others related to AMD, hopefully without introducing any new issues.

As always, please report any issues, particularly regressions, directly to me, so that they can be fixed. :)

Have a great weekend, everyone!

wanezhiling
19th April 2013, 19:25
Have a great weekend.:thanks:

kerimcem
19th April 2013, 20:53
@nevcairiel
very thanks...nevcairiel...:)
mp4 h.264 pillarboxing improved..works well....
wmv-vc1(dxva) waiting....
mpeg2 dxva disabled? mpeg2 dxva not work..(vob dvd files)

Reino
19th April 2013, 21:02
- Fixed colorspace used for YUV Fraps to always be BT.709Fix confirmed. Thanks a lot!
BT.709 isn't a colorspace, but a luma coefficient.

DragonQ
19th April 2013, 21:02
fixed decoding of H.264 on AMD UVD/UVD+ GPUs (HD 2xxx/3xxx Series)
Do you mean Intel GPUs?

paradoxical
19th April 2013, 21:08
Do you mean Intel GPUs?

No, he means what he typed out (http://en.wikipedia.org/wiki/Comparison_of_AMD_graphics_processing_units#Radeon_R600_.28HD_2xxx.2C_HD_3xxx.29_Series).

nevcairiel
19th April 2013, 21:14
BT.709 isn't a colorspace, but a luma coefficient.

Technically the correct term is transfer matrix, but the variable in ffmpeg is called colorspace, so i kinda stuck with that there. :P


mpeg2 dxva disabled? mpeg2 dxva not work..(vob dvd files)

Only 6000 series and above support mpeg2 on AMD systems.

kerimcem
19th April 2013, 21:53
Technically the correct term is

Only 6000 series and above support mpeg2 on AMD systems.
thanks... potplayer dxva mode mpeg2 work....hd3650
http://l1304.hizliresim.com/18/m/m80fz.jpg