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

iSeries
14th August 2012, 02:25
I don't believe it does but it wouldn't work with bitstreaming anyway. Bitstreaming passes the TrueHD/DTS-HD bitstream through to the receiver without decoding it so any processing of this sort would have to be done after it is decoded in the receiver.

Actually Reclock does have a DRC feature. And he asked for instructions on how to send audio to a receiver avoiding sudden increases in volume - this is one way to do it. Obviously he has to give up bitstreaming, but he did not say that bitstreaming was something he would not give up.

jmonier
14th August 2012, 06:12
Actually Reclock does have a DRC feature.

There is no DRC option in the ReClock configuration that I can see. Could you give specific instructions as to how to enable DRC in ReClock?

And he asked for instructions on how to send audio to a receiver avoiding sudden increases in volume - this is one way to do it. Obviously he has to give up bitstreaming, but he did not say that bitstreaming was something he would not give up.

His original question specifically related to using Normalize in LAV Audio while bitstreaming (Post #11949). His subsequent question responded to a post that was specifically aimed at bitstreaming.

The point that is pertinent to his original and subsequent question is that any audio processing has to be done after the bitstream is decoded. If you're bitstreaming to the receiver then decoding is done there and DRC HAS to be done in the receiver. All the other responses have been directed to that point.

kopija
14th August 2012, 07:07
I understand that bitstreaming is out.
Receiver stays, I am not that desperate!

jmonier
14th August 2012, 07:24
I understand that bitstreaming is out.
Receiver stays, I am not that desperate!

I could be mistaken, but it doesn't seem to me that LAV Audio has what you want. If I understand it correctly, "Normalize" has more to do with adjusting volume so that different programs have the same average volume than quieting loud passages in the same program. (Note that I have never used this kind of processing in LAV Audio or any other decoder so I am hardly an expert.)

ffdshow audio is more likely to have this capability but I have never looked into it.

Another poster said that ReClock will do this, but I can't figure out how.

ryrynz
14th August 2012, 07:42
ffdshow "night mode" discussions below are relevant since retaining bitstreaming is out.

http://forum.doom9.org/showthread.php?t=150415

http://www.hack7mc.com/2009/02/simple-ffdshow-audio-settings.html

iSeries
14th August 2012, 20:53
There is no DRC option in the ReClock configuration that I can see. Could you give specific instructions as to how to enable DRC in ReClock?


Simples - see attached screenshot under 'Sound Adaptation' (not my screenshot, grabbed off the net).

BetA13
14th August 2012, 21:22
I could be mistaken, but it doesn't seem to me that LAV Audio has what you want. If I understand it correctly, "Normalize" has more to do with adjusting volume so that different programs have the same average volume than quieting loud passages in the same program. (Note that I have never used this kind of processing in LAV Audio or any other decoder so I am hardly an expert.)

ffdshow audio is more likely to have this capability but I have never looked into it.

Another poster said that ReClock will do this, but I can't figure out how.

hy there..

i think u mean this option in ReClock..i dont use it doh..But itr is what u are looking for :)

http://www.abload.de/img/unbenanntyxlzc.jpg


hope that helps, greetz BetA

djmasturbeat
14th August 2012, 22:05
Back to working on my subtitle interface and dvd video support..

hooray for BOTH!

thanks for these filters, btw.

ddjmagic
15th August 2012, 11:08
I have a quick question about Blu-ray playback using index.bdmv.
How does Lav Filters determine the correct playlist to playback, does it simply just use the longest?
Only I have had a tried a few Blu-rays, 99% of the time it is correct but a couple of times it plays the wrong playlist - Usually an extremely long playlist like 3h33m, which is usually specials features in a loop.

nevcairiel
15th August 2012, 11:10
It tries to eliminate playlists which have loops or repeated clips in them, but thats not always reliable so it may end up on those wrong tracks in some situations.

Mercury_22
15th August 2012, 13:57
It tries to eliminate playlists which have loops or repeated clips in them, but thats not always reliable so it may end up on those wrong tracks in some situations.
Yes it does !
Looks like we really need those menus :p

ddjmagic
15th August 2012, 16:53
It tries to eliminate playlists which have loops or repeated clips in them, but thats not always reliable so it may end up on those wrong tracks in some situations.

Thanks for the answer. It works most of the time anyway, and Its not hard to change to the correct playlist :)
I didn't know if it used some kind of database/list or if it chose it by length/size etc.

kalston
15th August 2012, 18:29
I think the last blu-ray on which it failed me was Inception's French BD, it picked the 3h30 long playlist which is the film + commentaries, interviews and other special features.

It's not hard to change it to the right one anyway, so as far as I'm concerned it's the least critical feature to update :p (I only watch the films themselves and never touch the special features)

SamuriHL
15th August 2012, 18:29
Nev you grabbing VS 2012 off MSDN today?

nevcairiel
15th August 2012, 18:40
I don't have MSDN, and i'm also no student anymore, so no free upgrades this time around.
I would actually be more interested in giving Server 2012 a whirl, but what can you do.

SamuriHL
15th August 2012, 19:38
Yea, I'll be installing Server 2012 at work. That sucks you don't have MSDN or Dreamspark. UGH.

Mikey2
15th August 2012, 19:59
SamuriHL/nevcairiel - I apologize, I forgot to thank you for your responses to my question of if your audio decoded truly decodes DTS-MA at full-quality without any down-sampling or anything. (kopija's request and subsequent discussion on Bit-streaming reminded me...)

Correct me if I am wrong, but to sum-up: LAV Audio Decoder correctly decodes DTS-MA even though the input PIN only shows a 1536kbps core DTS signal. (I see DTS-HD MA on the status tab; I assume that is how I can see that it is working?)

Again, that is super-happy-fantastical! :D I only wish this was available a couple years ago, I could have saved a lot of money not buying my Xonar Audio-Card. (Back then the only way to get true lossless DTS-MA or Dolby TrueHD was to bit-stream it using this card in conjunction with the Arcsoft Renderer.)

But even cooler is that since I can now take-off the shackles of a mystery-PAP-shrouded bitstream, I can use AC3Filter for DRC, sync my stuff with ReClock, etc etc....

Thanks again!
MikeY

The MA extensions of DTS contain the extra channels. If it were only doing core, then you would only ever get 5.1. Trust us, we did a lot of testing around this when the ability was first added. Nev is hooking the ArcSoft decoder directly in code. The down-sampling, i.e. reducing the bit depth to 48/16 doesn't actually happen in the decoder but in the renderer. So we avoid that by using the decoder directly. In any case, yes, you are getting full DTS-HD MA decoding. At all the right bitdepth.


Yes, LAV (in combination with the ArcSoft DLL) can decode DTS-HD MA completely lossless.

SamuriHL
15th August 2012, 20:07
You are correct.

Mikey2
15th August 2012, 20:21
hy there..

i think u mean this option in ReClock..i dont use it doh..But itr is what u are looking for :)

http://www.abload.de/img/unbenanntyxlzc.jpg


hope that helps, greetz BetA

I don't want to get too far off-topic, but I would not recommend doing this if you are bit-streaming. If you are bit-streaming, then in that case ReClock decodes the stream, applies the DRC, then re-encodes it back to the stream format. This is generally not a good idea as it can be detrimental on sound-quality. (This is especially true if you are working with a losless signal such as DTS-MA (see my other posts on my woes on this subject. :o )

I would suggest doing what I do: use LAVAudio to decode to a PCM stream, then go ahead and apply DRC wherever you like.

I personally think AC3Filter is the best for that sort of thing. It is what I use, their DRC options are by far the most complex and interesting of anything else I have seen out there. (They even have a 27-page PDF that explains more than you would ever want to know on the topics of Loudness and Dynamic range. Loudness And Dynamic Range explained in depth (web version) (http://ac3filter.net/wiki/Loudness_and_dynamic_range)) Finally, they finally just updated it to allow for 7.1 signals, so it is no longer out-dated.

But ffdShow and ReClock, as mentioned, can also do it. I honestly haven't played around with LAVAudio for this - I basically use that just to decode to PCM.

I hope this helps!
MikeY

PS - I'm not in any way involved with AC3Filter, nor do I see it as "competition" for LAV - both have their place. Like most of the good filters (including LAV) It's freeware anyway.

blackjack12
16th August 2012, 00:39
While I love the LAV filters in general, have found that the deinterlacing performance of the LAV Video Decoder is inconsistent at best and poor at worst across a general mix of video types.

It is worst in allowing the AMD Radeon GPU’s to hardware deinterlace across all video formats. The hardware deinterlacing of the AMD cards appears in my tests to be the best across the board when it is used but the NVidia can produce very good results with LAV Video and CUVID.

Basic Testing:
Windows 7/Window 8 Preview (64 bit)
MPC-HC 1.6.3.5818 (32 bit) – some testing with 64 bit MPC-HC but not much and not focus (for 64 bit, EVR-CP used, no MadVR, no ArcSoft filters)
MadVR 82.5 (with and w/o latest ringing mods)
NVidia 560Ti and GT525M
NVidia Drivers 301.42 and 302.82 (Win 8) – LAV CUVID
Radeon HD 4890 and 6570
AMD Drivers 12.6 – LAV None, copy-back and native
LAV 51.3(also tested latest builds to this date)
LAV Splitter and LAV Audio used in all testing
ArcSoft Video Decoder 2.28.444.129 X86

All combinations that can be used with LAV and MadVR were looked at. Aggressive, frame rate, mode, software, etc. and details can be provided if needed but the test files are best way to look at. These were on 4 “desktop” type units and one laptop.

Using the ArcSoft Video Decoder provided the best and most consistent deinterlacing performance in my tests while the NVidia produced good to superb results depending on the video formats tested. Using the de-interlacing in MadVR worked with NVidia but found the internal GPU only with LAV Video and passing to the renderer yielded better results. For the AMD GPU’s tested the MadVR de-interlacing did not work on several files. Only software (YADIF) de-interlacing worked as noted briefly by someone earlier.

File clips that are good to test de-interlacing can be found in the Google Drive link listed below and downloaded for testing. These can be used to easily see issues quickly. All files are .mkv types prepared from the native and purchased video material using MakeMKV and then remuxing with the latest version of MKVMerge/Toolnix. The audio has been removed just to keep file size as small as possible. Watching the rolling credits is a great test of deinterlacing performance and quality in many cases.

Problematic file types but inconsistent: MPEG2i (DVD, check the rolling credits for large visual differences), VC-1i, H264i (AVC and all produced with Premiere Pro from and with interlaced content)

Google Drive link for excellent examples (they must be downloaded, viewing the preview in the YouTube format is useless):
https://docs.google.com/folder/d/0B_DzSqUkDhPoODB4eWRpN2dsOVU/edit

Hope these are helpful in testing and optimizing deinterlacing performance with the LAV Video Filters in the future.

Andy o
16th August 2012, 02:43
AFAIK at least madVR uses DXVA deinterlacing, so it's the same one that the GPU uses. For LAV, I think at least it does with NV cards. Perhaps it would be more helpful if you identified which exact combinations and files are giving you trouble?

nevcairiel
16th August 2012, 07:42
I did a quick check on your files, and all i can say is that your test is flawed for most of the files, because they are not interlaced.

Collateral (2004)-002.mkv / Daredevil (2003)-002.mkv / Good Year (2006)-002.mkv
These files are not interlaced. They contain progressive frames with soft-telecine flags. They also play just fine at 23.976 for me, no deinterlacing is performed, or should be performed.
It is possible that the weird timestamps in such a soft-telecine files confuse a renderer (it usually goes 33ms, 50ms, 33ms, 50ms instead of the usual 41ms, 41ms 41ms for 23.976), but even if thats the case, nothing LAV should need to worry about, and its certainly not related to deinterlacing, because the frames are not interlaced to begin with.

Life.S01E06-Insects-002.mkv
This is the only file in the set which is actually interlaced.
I'm not sure what your problem is supposed to be with this file, but it plays and deinterlaces just fine when i let EVR or madVR perform the deinterlacing.

Travis-002.mkv
This file is hard-telecined, but the frames are flagged as progressive. You can use the "Aggressive Deinterlacing" option in LAV Video to make it deinterlace these frames, however since its Telecined, you should really use an IVTC algorithm like madVR offers (need to manually turn it on at this time)

---
In general, LAV has no influence on the behaviour of the hardware deinterlacer. All it does is flag the frames as interlaced depending on the flags in the file, and sends the frame to the renderer. The renderer then takes full control of the deinterlacing.
You can influence the behaviour slightly with the "Aggressive Deinterlacing" option, which will flag all frames as interlaced under certain conditions (like when the file itself is marked as interlaced, like your Travis sample), but other then that, its out of the hands of the decoder.
I would generally recommend to activate "Aggressive Deinterlacing" when you have issues with interlaced or hard-telecined files, its probable that most other decoders do that as well.

blackjack12
16th August 2012, 15:13
Thanks Nev ... I will check the files again but if you view the actual material with ArcSoft vs. LAV you will see a huge difference in output especially in the scrolling credits. It is not a small difference.

All the files indicate as "interlaced " if the interlace option is turned on in MadVR even though they are "progressive". But they are all 29.97 fps material and that is what I see in playback ... they are not playing back at 23.976 for me.

Collateral/Daredevil/Good Year all go to "interlaced" and play at 29.97 or 59.4 with CUVID, 29.97 if MadVR ... please look at with the AMD GPU's. This is where see real problem. Something is not right. Why are they being seen as "interlaced" when they are not ...? Go to ArcSoft filters and all is good ... ?

Travis - going to "Agressive" with AMD GPU's does not work. Going to MadVR and turning on deinterlacing does work but then the files included that are "progressive" still turn on deinterlacing in MadVR and look terrible...?

With NVIDIA/CUVID things are much better and can be made to work but the files all indicate and respond as "interlaced" material.

Something is not right and not sure what it is ... thought all was good with using MadVR for deinterlacing but no ... will do some more when have time, but bottom line right now is ArcSoft no visual problems ... LAV problems ... :-(

Hopefully just have something configured incorrectly but really looks to me like LAV/MadVR/AMD driver somewhere is conflicting ...

nevcairiel
16th August 2012, 16:22
You could try this version if you want, it may help with the soft telecined files.
http://files.1f0.de/lavf/LAVFilters-0.51.3-33-g705b8b5.zip

Regarding why the files show up as interlaced. Well, thats just how soft-telecine works. The stream itself is marked as interlaced, but the frames are all progressive. In the same concept, the stream is marked as 29.970, but it only contains frames for 23.976. The way soft-telecine works, the renderer is supposed to repeat some of the fields to convert it to 29.97.
I don't know what ArcSoft does to the stream, maybe it resolves the soft-telecine and produces hard-telecine out of it (producing real 29.970), but thats the worst choice you can make. But i don't have TMT installed right now to grab the decoder.

In any case, all these soft-telecine files play absolutely smooth for me. When you test deinterlacing, i suggest to use EVR, its behaviour is more predictable, madVR is sometimes a bit too smart for its own good.
And for the record, if there were such big problems, other people would've complained before, i'm sure. :)

Anyway, go blame DVDs and broadcasts for being telecined and not proper progressive.
All the shit people have come up with over the years to keep backwards compat with decades old standards is just ludicrous. Just force people to buy a new TV now and then, it also helps the economy! :)

mkanet
16th August 2012, 18:11
Does anyone know if it's better to enable or disable Nvidia Adaptive vsynch for LAV video playback + EVR (for general video playback)?

I have an LCD display which accepts 60Hz, 59Hz,30Hz, 29Hz, 24Hz, 23.976Hz input.

Before I had Nvidia Adaptive vsynch option available to me, I've always enabled Vsynch + triple buffer for best results.

Also, I'm curious if adaptive vsynch would still work with reclock's cinema mode.

Thanks in advance

Asmodian
16th August 2012, 20:33
My experience has been that adaptive vsync is a bad idea for video playback. Adaptive vsync just turns off vsync if the fps is too low which I do not want. I guess it might be nice if you want tearing instead of judder for <30 fps video and leave the LCD at 60Hz. It would be better to change the refresh rate of the LCD to match the video's frame rate but using EVR this would be a manual change and using Windows with a 24Hz monitor isn't nice.

I would expect reclock's cinema mode to have no effect on vsync, adaptive or not, as reclock doesn't render any video.

blackjack12
17th August 2012, 06:56
Thanks Nev ... appreciate the notes and will test the new version and let you know what I find. Right now in the AMD GPU systems I have disabled the MPEG2 format for decoding with LAV and get great results with ArcSoft, MPC-HC DXVA or Microsoft filters. None have the problems that are seen with the LAV filters. ... Note: the "general" playback looks fine with LAV but the rolling credits really show pretty gross differences.

nevcairiel
17th August 2012, 07:19
The only thing i can imagine happening is that all these decoders simply ignore the soft-telecine flags completely, and thus avoiding any problems.
LAV on the other hand puts the soft-telecine flags on the output frames, so that the renderer can potentially deal with them if it wants to.

If the test build from before doesn't help, i can create a version which simply ignores the flags as well, and see if it makes any difference.

madshi
17th August 2012, 07:33
@blackjack12, what happens if you force deinterlacing off (press Ctrl+Alt+Shift+D multiple times) in madVR? Does that solve all problems?

Mercury_22
17th August 2012, 08:27
@Nev Is VS2012 (http://www.microsoft.com/en-us/download/details.aspx?id=30678) working for LAV ?

blackjack12
17th August 2012, 16:38
The only thing i can imagine happening is that all these decoders simply ignore the soft-telecine flags completely, and thus avoiding any problems.
LAV on the other hand puts the soft-telecine flags on the output frames, so that the renderer can potentially deal with them if it wants to.

If the test build from before doesn't help, i can create a version which simply ignores the flags as well, and see if it makes any difference.

@blackjack12, what happens if you force deinterlacing off (press Ctrl+Alt+Shift+D multiple times) in madVR? Does that solve all problems?

Nev and Madshi ... I will test further this evening California time. The files I posted previously are excellent to see results quickly.... The scrolling credits can look pretty ugly when things are not right. Even if you don't have access to the ArcSoft filters you can use the MPC-HC built in DXVA filters or the Microsoft DVD-TV ones and see good results for the MPEG2 files.

Nev my quick test with your test build looked much better but "Travis" still problem to get to work and not cause issues with other files.

Thanks and will let you know.

bejita7
17th August 2012, 17:10
Will LAV Filters 0.51.3 work correctly on Windows 8 RTM?

SamuriHL
17th August 2012, 17:22
Yes. It works fine.

nevcairiel
17th August 2012, 17:53
Nev my quick test with your test build looked much better but "Travis" still problem to get to work and not cause issues with other files.

Thanks and will let you know.

Here is another version, i actually added an option on the options panel to control it now.

http://files.1f0.de/lavf/LAVFilters-0.51.3-36-g76de254.zip

The "Remove Soft-Telecine" checkbox is the new one, and it has 3 states.
- Unchecked it behaves as any previous versions, it just sends the soft-telecine flags to the renderer
- Checked it removes all flags and adjusts the timestamp to 23.976
- In the "intermediate" state, it only removes the flags, but leaves the timestamps alone.

It would be great if you could test both the checked and the "half checked" mode, and see how they behave on your setup. I'm mostly interested to be able to determine which mode should be the default.
Specifically, i'm interested if the intermediate mode is enough to make it play properly, because its much safer to do then to try to fiddle with the timestamps.

Additionally, this version also includes a small fix for the "Travis" sample, it might work better now.

blackjack12
17th August 2012, 18:35
Will LAV Filters 0.51.3 work correctly on Windows 8 RTM?

Personal experience is that Windows 8 (preview 8400) has been a rock running media and related material.

The interface and navigation stuff you can decide if you like or can adjust ... but the core OS has been rock solid.

Have been running MPC-HC, LAV 51.3, MadVR, etc. without any OS issues since preview release.

SamuriHL
17th August 2012, 18:36
RTM hasn't changed that situation. I've also been running W8 since CP. Works perfectly.

clsid
17th August 2012, 19:03
The settings page is getting a bit crowded/messy now. Perhaps you could split the "Settings" group into two groups; Settings and Deinterlacing, splitting the current one into two columns. So move StreamAR below threads, and FieldOrder above Aggr. Deint.


Two minor things you forgot when changing StreamAR var type:
STDMETHODIMP_(BOOL) CLAVVideo::GetStreamAR()
dwVal = (BOOL)SendDlgItemMessage

blackjack12
17th August 2012, 22:22
Here is another version, i actually added an option on the options panel to control it now.

http://files.1f0.de/lavf/LAVFilters-0.51.3-36-g76de254.zip

The "Remove Soft-Telecine" checkbox is the new one, and it has 3 states.
- Unchecked it behaves as any previous versions, it just sends the soft-telecine flags to the renderer
- Checked it removes all flags and adjusts the timestamp to 23.976
- In the "intermediate" state, it only removes the flags, but leaves the timestamps alone.

It would be great if you could test both the checked and the "half checked" mode, and see how they behave on your setup. I'm mostly interested to be able to determine which mode should be the default.
Specifically, i'm interested if the intermediate mode is enough to make it play properly, because its much safer to do then to try to fiddle with the timestamps.

Additionally, this version also includes a small fix for the "Travis" sample, it might work better now.

Nev,

I will give much more detail when I have time to really test but wanted to let you know that initial testing with half checked mode with my "worst" case setup (Radeon 4890 GPU) is now working great ... Actually better than I can ever remember. But I just started testing with EVR to compare with EVR-CP and MadVR rendering and now realize that EVR is a much more "stable" rendering solution for most at this time. I never really looked at in the past as was using EVR-CP and MadVR.

So EVR works great ... EVR-CP some issues and MadVR a lot on a very quick look.

May have been a Render issue all along but other video filters (ArcSoft, MPC-HC, Microsoft) are sending something different that allows things to work across broader base.

Will let you and Madshi know and provide details. Anything specific you might want looked at, just let me know.

Thanks for responding ... will help out as I can.

I have over 16TB of video material of all types from purchased and ripped DVD's and Blu-Ray media and home video footage with 99% stored in Matroska container format. All instantly accessible from server and network on desktop, laptop and HTPC installs. I know all the "tough" ones that have seen in the past that have caused issues and can do quick tests.

Will also look at 64bit MPC-HC and LAV as well when have time.

Thanks for the great work and continuing improvements.

Quick take on my best HTPC software config today:
XMBC interface
MPC-HC for actual playback
LAV splitter, video, audio filters
EVR Render
DirectVobSub for subs

If/when MadVR matures will probably use but it is truly a 0.8.2.5 release right now (great work by Madshi but I cannot put in a general family/production mode at this time)

nevcairiel
17th August 2012, 22:25
The important part is to compare the setup you had issues with (ie. EVR-CP or madVR) with the new test version of LAV, and see if either setting of the option help.
Please also make sure the problem returns when you disable the new option, to make sure its not "fixed" by something else.

Anyway, i'll appreciate any detailed results you can provide.

Boltron
18th August 2012, 01:19
I was also using XMBC and MPC-HC (with LAV and madVR) for playback for a very long time. A few months ago I switched to MC17 and it is a big overall improvement. I still use LAV and madVR with MC17 but since they are integrated into MC17 I get so many more benefits. Also for music playback, MC17 can't be beat.

madshi
18th August 2012, 07:26
@blackjack12, I've asked you to test whether forcefully disabling deinterlacing in madVR fixes the problems you're seeing. You didn't reply to that at all yet. At this point in time neither nevcairiel (I think) nor I know whether the problem you're seeing is caused by deinterlacing being active when it shouldn't, or deinterlacing being inactive when it should be active, or by something else (e.g. deinterlacing not working as expected). Which is the most important question to clarify. So again: Does the problem you're seeing go away if you forcefully activate or deactivate deinterlacing in madVR by pressing Ctrl+Alt+Shift+D multiple times? This is a key question. For me (as the madVR developer), anyway.

Also it would help greatly if you could give us a list of selected video samples with which you see the most obvious problems, with a download URL, and a full description for each sample of which problems you see which with combination of renderer/splitter/decoder.

Thanks!

blackjack12
18th August 2012, 13:27
While I love the LAV filters in general, have found that the deinterlacing performance of the LAV Video Decoder is inconsistent at best and poor at worst across a general mix of video types.

It is worst in allowing the AMD Radeon GPU’s to hardware deinterlace across all video formats. The hardware deinterlacing of the AMD cards appears in my tests to be the best across the board when it is used but the NVidia can produce very good results with LAV Video and CUVID.

Basic Testing:
Windows 7/Window 8 Preview (64 bit)
MPC-HC 1.6.3.5818 (32 bit) – some testing with 64 bit MPC-HC but not much and not focus (for 64 bit, EVR-CP used, no MadVR, no ArcSoft filters)
MadVR 82.5 (with and w/o latest ringing mods)
NVidia 560Ti and GT525M
NVidia Drivers 301.42 and 302.82 (Win 8) – LAV CUVID
Radeon HD 4890 and 6570
AMD Drivers 12.6 – LAV None, copy-back and native
LAV 51.3(also tested latest builds to this date)
LAV Splitter and LAV Audio used in all testing
ArcSoft Video Decoder 2.28.444.129 X86

All combinations that can be used with LAV and MadVR were looked at. Aggressive, frame rate, mode, software, etc. and details can be provided if needed but the test files are best way to look at. These were on 4 “desktop” type units and one laptop.

Using the ArcSoft Video Decoder provided the best and most consistent deinterlacing performance in my tests while the NVidia produced good to superb results depending on the video formats tested. Using the de-interlacing in MadVR worked with NVidia but found the internal GPU only with LAV Video and passing to the renderer yielded better results. For the AMD GPU’s tested the MadVR de-interlacing did not work on several files. Only software (YADIF) de-interlacing worked as noted briefly by someone earlier.

File clips that are good to test de-interlacing can be found in the Google Drive link listed below and downloaded for testing. These can be used to easily see issues quickly. All files are .mkv types prepared from the native and purchased video material using MakeMKV and then remuxing with the latest version of MKVMerge/Toolnix. The audio has been removed just to keep file size as small as possible. Watching the rolling credits is a great test of deinterlacing performance and quality in many cases.

Problematic file types but inconsistent: MPEG2i (DVD, check the rolling credits for large visual differences), VC-1i, H264i (AVC and all produced with Premiere Pro from and with interlaced content)

Google Drive link for excellent examples (they must be downloaded, viewing the preview in the YouTube format is useless):
https://docs.google.com/folder/d/0B_DzSqUkDhPoODB4eWRpN2dsOVU/edit

Hope these are helpful in testing and optimizing deinterlacing performance with the LAV Video Filters in the future.

@blackjack12, I've asked you to test whether forcefully disabling deinterlacing in madVR fixes the problems you're seeing. You didn't reply to that at all yet. At this point in time neither nevcairiel (I think) nor I know whether the problem you're seeing is caused by deinterlacing being active when it shouldn't, or deinterlacing being inactive when it should be active, or by something else (e.g. deinterlacing not working as expected). Which is the most important question to clarify. So again: Does the problem you're seeing go away if you forcefully activate or deactivate deinterlacing in madVR by pressing Ctrl+Alt+Shift+D multiple times? This is a key question. For me (as the madVR developer), anyway.

Also it would help greatly if you could give us a list of selected video samples with which you see the most obvious problems, with a download URL, and a full description for each sample of which problems you see which with combination of renderer/splitter/decoder.

Thanks!

Madshi ... Refer back to my original post for a link to files and basic conditions. I incorrectly made a general "poor deinterlacing" title when the issues on several samples look like poor deinterlacing but the material is actually progressive.

The problems seen are obvious, poor or no de-interlacing with the VC-1i and H264i samples and gross distortion in the rolling credits on the MPEG2 samples (it looks like really poor deinterlacing even though samples are progressive)

"Forcing" deinterlacing off in MadVR does not help. I also started out making sure that deinterlacing was unchecked in the MadVR GUI.

Will be posting more in the Google docs link in a little while with a detailed report.

madshi
18th August 2012, 14:16
@blackjack12, the problem is that neither nevcairiel nor I seem to be able to reproduce the problem you're seeing. E.g. I've tried your Collateral sample in madVR and I can't get it to show any problems here. So the first step is to help us reproduce the problem. For that please:

(1) Name one sample which has problems.
(2) Which timecode does the problem start to become visible.
(3) Please post a screenshot of the "gross distortion".
(4) Which splitter are you using?
(5) Please make a screenshot of your LAV Decoder options setup.

Thanks!

blackjack12
18th August 2012, 18:30
@blackjack12, the problem is that neither nevcairiel nor I seem to be able to reproduce the problem you're seeing. E.g. I've tried your Collateral sample in madVR and I can't get it to show any problems here. So the first step is to help us reproduce the problem. For that please:

(1) Name one sample which has problems.
(2) Which timecode does the problem start to become visible.
(3) Please post a screenshot of the "gross distortion".
(4) Which splitter are you using?
(5) Please make a screenshot of your LAV Decoder options setup.

Thanks!

Madshi,

Will add all items in the report. Should be a couple of hours.

The latest test versions of LAV have "fixed" the issues with the MPEG2 files like Collateral ... but if you turn on Agressive and YADIF you will immediately see the problems still.

Finishing up and sending update soon.

Thanks for the good work ...

blackjack12
18th August 2012, 20:42
@blackjack12, the problem is that neither nevcairiel nor I seem to be able to reproduce the problem you're seeing. E.g. I've tried your Collateral sample in madVR and I can't get it to show any problems here. So the first step is to help us reproduce the problem. For that please:

(1) Name one sample which has problems.
(2) Which timecode does the problem start to become visible.
(3) Please post a screenshot of the "gross distortion".
(4) Which splitter are you using?
(5) Please make a screenshot of your LAV Decoder options setup.

Thanks!

Update and results with Radeon 4890 GPU system:

Basic Testing being done:
Windows 7/Window 8 Preview (64 bit)
MPC-HC 1.6.3.5818 (32 bit)
MadVR 82.5 (with and w/o latest ringing mods)
NVidia 560Ti and GT525M GPU
NVidia Drivers 301.42 and 302.82 (Win 8) – LAV CUVID
Radeon HD 4890 and 6570 GPU
AMD Drivers 12.6 – LAV None, copy-back and native
LAV 51.3 (test build 51.3-36-g76de254)
LAV Splitter and LAV Audio used in all testing
ArcSoft Video Decoder 2.28.444.129 X86

Screenshots, images of settings and all information is included in the link below. If more is needed please let me know.

https://docs.google.com/folder/d/0B_DzSqUkDhPoODB4eWRpN2dsOVU/edit

Best to download files you want to look at and not rely on the Google Drive preview.

The results with MadVR are still not good but the LAV test build “fixed” the MPEG2 problems accept for with Aggressive and YADIF on. However, see no effect with the telecine options. With EVR-CP and EVR the “Aggressive” on causes problems.

I will be doing the same tests for newer Radeon 6570 and NVidia 560Ti and GT525M later.

nevcairiel
18th August 2012, 22:29
I quickly glanced over the screenshots, and some things i don't understand.

All screenshots show madVR deinterlacing off. I'm confused, wasn't the whole point of this excercise to test madVRs deinterlacing?
How did the "BAD" screenshots come to be when it wasn't caused by madVRs deinterlacing?

In any case, "Good Year" has progressive frames, using aggressive mode on such files is probably not recommended, so it causing artifacts (especially with a "cheap" deinterlacer like YADIF) is somewhat to be expected.

Overall, i question your setup here. For the most reliable results you should turn off YADIF and turn off aggressive mode, that should get you somewhat similar behavior to other decoders (which are also the defaults). No matter what i try, using that setup, i do not get any problems playing these files.
In fact, this seems to be completely unrelated to soft telecine, so i might remove the new option again to avoid exposing needless settings and confusing people.

blackjack12
18th August 2012, 23:51
I quickly glanced over the screenshots, and some things i don't understand.

All screenshots show madVR deinterlacing off. I'm confused, wasn't the whole point of this excercise to test madVRs deinterlacing?
How did the "BAD" screenshots come to be when it wasn't caused by madVRs deinterlacing?

In any case, "Good Year" has progressive frames, using aggressive mode on such files is probably not recommended, so it causing artifacts (especially with a "cheap" deinterlacer like YADIF) is somewhat to be expected.

Overall, i question your setup here. For the most reliable results you should turn off YADIF and turn off aggressive mode, that should get you somewhat similar behavior to other decoders (which are also the defaults). No matter what i try, using that setup, i do not get any problems playing these files.
In fact, this seems to be completely unrelated to soft telecine, so i might remove the new option again to avoid exposing needless settings and confusing people.

Nev,

You have to look at the table and all the testing. ... I have a Ph.D. from MIT in physics and chemistry, have run very large businesses and know how to setup test matrices and look at the results. The setup is not in question, the question is what are the correct parameters to make this setup work.

While I have not spent the time and am not an expert on this video processing path, I do know that something is not lining up quite right under these conditions and under other conditions the issues are not there.

If I run MadVR for anything other than testing, the best case right now is Aggressive off, No YADIF when not using MadVR interlacing.

And no it was not to just test MadVR interlacing, I am trying to find the "best" solution that works across the board. I know all the MPEG2 files are progressive. ... But need one set of parameters that work... With ArcSoft and MadVR they do, with LAV and EVR-CP they do ... with LAV and MadVR they do not in this configuration (Radeon 4890 GPU, 12.6 drivers). With the newer Radeon 6570 some of the RED boxes go away andif you are testing with a newer Radeon GPU you may not see all the issues. I am updating with 6570 right now.

On the soft telecine, let me recheck and also with MadVR deinterlacing before we make any judgment.

Quick note on other tests that I will update ... there is something different in that true interlaced content is passed or reads at 59.4fps to EVR-CP with LAV but not with MadVR with the Catalyst drivers. However with NVidia and CUVID when it is selected it does show up as 59.94 with MadVR.

I will repeat the testing with interlacing on in MadVR.

I am sure as a developer you are saying this guy has got something wrong ... and I actually hope that I do, but I don't think so and once this is figured out, all will be better for it.

Again ... you guys are doing great stuff and I apologize for not being able to just dump all the info needed right away. ... But will get it to you ASAP.

QUICK UPDATE WITH MADVR INTERLACING:
Quick test with the interlace function on in MadVR. The MPEG2 files (Good Year, etc.) continue to indicate "interlaced" in MadVR even though they are not and look "BAD". Need to carefully check telecine settings but looks like if they are checked or Auto things are good! If press Ctrl+Alt+Shift+D to force deinterlacing off, all is well. The other files are deinterlaced correctly by MadVR.

Will update link with screen images for the MadVR "BAD" result (a non-interlaced stream still being read by MadVR as interlaced) and when forced off showing "GOOD" result. ... :-)

So the simple answer to Madshi is that forcing the interlacing off does work ... and I apologize for the complexity and confusion ... :-(

So ... figure out why progressive MPEG2 material is still read by MadVR as interlaced and/or produces "BAD" result when using LAV video decoder and I think all is great ...

Using ArcSoft video decoder also read as interlaced by MadVR but is does not cause the distortion ... but the quality is not nearly as good as when MadVR works and does the deinterlacing correctly ... OR the hardware does it with the decoder and a 59.94fps deinterlaced stream goes to renderer (that is what happens with LAV and EVR-CP and it is excellent) ... At least that is what I think happens based on what I see from the renderer information seen on screen.

Will post new images ASAP. ... thanks again

sneaker_ger
19th August 2012, 00:39
For me the good year sample starts as "deinterlacing: off", then turns to on after about 10 seconds. DGIndex also tells me that it is not 100% progressive. Film 99.69%. There's visible interlacing.

blackjack12
19th August 2012, 01:18
For me the good year sample starts as "deinterlacing: off", then turns to on after about 10 seconds. DGIndex also tells me that it is not 100% progressive. Film 99.69%. There's visible interlacing.

How do the rolling credits look and what are your conditions?

This is a clip from a direct rip from the owned DVD using latest MakeMKV and then remuxing with the latest MKVMerge.

MadVR continues to report interlaced immediately on all my systems. ... BUT with the new telecine option if checked or "auto" it now looks good on at least one system with Radeon 4890 GPU. If unchecked, it is awful unless forcing deinterlacing off per Madshi.

blackjack12
19th August 2012, 02:22
Nev,

You have to look at the table and all the testing. ... I have a Ph.D. from MIT in physics and chemistry, have run very large businesses and know how to setup test matrices and look at the results. The setup is not in question, the question is what are the correct parameters to make this setup work.

While I have not spent the time and am not an expert on this video processing path, I do know that something is not lining up quite right under these conditions and under other conditions the issues are not there.

If I run MadVR for anything other than testing, the best case right now is Aggressive off, No YADIF when not using MadVR interlacing.

And no it was not to just test MadVR interlacing, I am trying to find the "best" solution that works across the board. I know all the MPEG2 files are progressive. ... But need one set of parameters that work... With ArcSoft and MadVR they do, with LAV and EVR-CP they do ... with LAV and MadVR they do not in this configuration (Radeon 4890 GPU, 12.6 drivers). With the newer Radeon 6570 some of the RED boxes go away andif you are testing with a newer Radeon GPU you may not see all the issues. I am updating with 6570 right now.

On the soft telecine, let me recheck and also with MadVR deinterlacing before we make any judgment.

Quick note on other tests that I will update ... there is something different in that true interlaced content is passed or reads at 59.4fps to EVR-CP with LAV but not with MadVR with the Catalyst drivers. However with NVidia and CUVID when it is selected it does show up as 59.94 with MadVR.

I will repeat the testing with interlacing on in MadVR.

I am sure as a developer you are saying this guy has got something wrong ... and I actually hope that I do, but I don't think so and once this is figured out, all will be better for it.

Again ... you guys are doing great stuff and I apologize for not being able to just dump all the info needed right away. ... But will get it to you ASAP.

QUICK UPDATE WITH MADVR INTERLACING:
Quick test with the interlace function on in MadVR. The MPEG2 files (Good Year, etc.) continue to indicate "interlaced" in MadVR even though they are not and look "BAD". Need to carefully check telecine settings but looks like if they are checked or Auto things are good! If press Ctrl+Alt+Shift+D to force deinterlacing off, all is well. The other files are deinterlaced correctly by MadVR.

Will update link with screen images for the MadVR "BAD" result (a non-interlaced stream still being read by MadVR as interlaced) and when forced off showing "GOOD" result. ... :-)

So the simple answer to Madshi is that forcing the interlacing off does work ... and I apologize for the complexity and confusion ... :-(

So ... figure out why progressive MPEG2 material is still read by MadVR as interlaced and/or produces "BAD" result when using LAV video decoder and I think all is great ...

Using ArcSoft video decoder also read as interlaced by MadVR but is does not cause the distortion ... but the quality is not nearly as good as when MadVR works and does the deinterlacing correctly ... OR the hardware does it with the decoder and a 59.94fps deinterlaced stream goes to renderer (that is what happens with LAV and EVR-CP and it is excellent) ... At least that is what I think happens based on what I see from the renderer information seen on screen.

Will post new images ASAP. ... thanks again

How do the rolling credits look and what are your conditions?

This is a clip from a direct rip from the owned DVD using latest MakeMKV and then remuxing with the latest MKVMerge.

MadVR continues to report interlaced immediately on all my systems. ... BUT with the new telecine option if checked or "auto" it now looks good on at least one system with Radeon 4890 GPU. If unchecked, it is awful unless forcing deinterlacing off per Madshi.

Testing (3x) with MadVR used for interlacing. All true interlaced material looks good now... but the "progressive" MPEG2 files still show up as interlaced with MadVR and look "BAD". If the interlacing is forced off in MadVR all looks "GOOD". Also looks good if force all progressive with LAV video filter, but then none of the true interlaced material works.

Tested 3x and even did clean install and update of the LAV filters because thought the telecine check box had actually worked previoulsy, but could see no change this time ... :(

Quick results and screen shots can be found below:
https://docs.google.com/folder/d/0B_DzSqUkDhPoeUt4ZDA5TjBpMmc/edit

Shows the "BAD" progressive MPEG2 results as setup with LAV and MadVR and also the "GOOD" result when force deinterlacing off in MadVR.

Same results seen on 2 other systems with Radeon 6570 cards.

Hope this helps ... will test NVidia later.