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

glorp
24th February 2013, 19:43
I realize you two know infinitely more than I do about it but I'm pretty sure I've been able to swap wtv splitters in WMC for recorded tv by using "Codec Tweak Tool" on several x64 systems. The Preferred splitters selections of that allow you to toggle back and forth between LAV and system merit. I know I've used it to switch between LAV splitter and the MS StreamBufferSource thingy multiple times.

Edit: NVM. You found Codec Tweak.

dansrfe
25th February 2013, 01:43
Is there a way to upmix 2.0 to 5.1 in LAV Audio? Thanks!

6233638
25th February 2013, 03:13
Is there a way to upmix 2.0 to 5.1 in LAV Audio? Thanks!I think you just need to set mixing to 5.1 and uncheck the "don't mix stereo sources" option.

AngelGraves13
25th February 2013, 07:27
Feature requests

* Bit-Matched - Inpput/Output bits do not change. 16-bit integer plays as 16-bit integer without conversion to 32-bit floating point or 24-bit integer. A way to disable any and all bit-changing in LAV Audio. I even listen to music with my X-Fi set to Audio Creation mode and "bit-matched" because it sounds the best.
Example: Lawrence of Arabia is 16-bit integer DTS-HD MA 5.1. I'm using the ArcSoft DTS Decoder and it decoding dts-hdma, but the output is 32-bit floating point. I'd like 16-bit integer to play as 16-bit integer and 24-bit integer to play as 24-bit integer. The best I can get by disabling all the checkboxes including Dithering under Output formats is that it still wants to do 32-bit floating point. If I only enable 16-bit integer, even 24-bit integer plays at 16-bit. If I enable 24-bit integer as well, then 16-bit integer plays at 24-bit integer. Why? Why can't it respect the bits and not change the output bits?
* DTS-HD Bit-rate - Use the Pin Info Output bit-rate for the stream bit-rate under the LAV Splitter so it shows the correct bit-rate in MPC-HC/BE.
Example: Input says 1536kbps regardless of the MA stream. The output under Pin Info for Baraka is "6144kbps" so maybe it should just use that as it's more accurate rather than using the core stream, even if the core is actually only 1506kbps sometimes.

Qaq
25th February 2013, 08:20
Example: Lawrence of Arabia is 16-bit integer DTS-HD MA 5.1. I'm using the ArcSoft DTS Decoder and it decoding dts-hdma, but the output is 32-bit floating point.
ArcSoft DTS Decoder is not used. Arcsoft outputs in integer (always) and ffmpeg outputs in 32float (always).

AngelGraves13
25th February 2013, 08:27
ArcSoft DTS Decoder is not used. Arcsoft outputs in integer (always) and ffmpeg outputs in 32float (always).

It is used. I've dropped the dtsdecoder file in the x86 directory and it says "dts-hd ma" I'm also using the x86 version of MPC BE.

This is the decoder file from TMT6.

nevcairiel
25th February 2013, 09:40
It already does bit-exact output, works just perfectly. If DTS outputs 32-bit float, then either the ArcSoft decoder is not working, OR you have mixing activated. Mixing always outputs 32-bit float because after mixing the audio changed anyway, and mixing is performed in float. There is no bit-exact anymore.

For the Pin Info, DTS-HD MA does not have a constant bitrate, so there is no one bitrate value thats accurate. The 6144kbps is the PCM bitrate, and not the DTS bitrate. This will most likely not change.

e-t172
25th February 2013, 21:13
* Bit-Matched - Inpput/Output bits do not change. 16-bit integer plays as 16-bit integer without conversion to 32-bit floating point or 24-bit integer. A way to disable any and all bit-changing in LAV Audio. I even listen to music with my X-Fi set to Audio Creation mode and "bit-matched" because it sounds the best.

Unless your system is broken (e.g. DirectSound on XP), or you're in the extreme case of listening through in-ear headphones at very high levels, I very much doubt you'll be able to hear the +3dB noise floor increase caused by an integer conversion. It is highly likely your brain is making you hear differences that aren't there. That happens extremely often when dealing with audio quality matters.

AngelGraves13
25th February 2013, 21:47
Unless your system is broken (e.g. DirectSound on XP), or you're in the extreme case of listening through in-ear headphones at very high levels, I very much doubt you'll be able to hear the +3dB noise floor increase caused by an integer conversion. It is highly likely your brain is making you hear differences that aren't there. That happens extremely often when dealing with audio quality matters.

I had the Mixer on, which is why it was 32-bit floating point. Turning off the Mixer makes it bit-matched.

e-t172
25th February 2013, 22:09
Which doesn't change the fact that enforcing "bit matching" at all costs brings no audible benefit in almost all circumstances.

filler56789
25th February 2013, 22:46
Unless your system is broken (e.g. DirectSound on XP),

Please tell us what is "broken" in XP's DirectSound implementation.
By "broken", I mean something so wrong that there is no fix nor workaround for it.

nevcairiel
25th February 2013, 23:09
Its broken in the sense that it relies on the audio driver to handle mixing and conversion, and *many* drivers are just broken in that regard. Even so-called "pro" audio devices sometimes don't have drivers that can handle 32-bit float.

filler56789
25th February 2013, 23:13
^ Thanks for the explanation. :goodpost:

dansrfe
26th February 2013, 05:44
I guess 2.0 doesn't upmix to 5.1 even with the "Don't mix stereo sources" checkbox unchecked. I'm not hearing anything coming out of the other channel speakers.

paradoxical
26th February 2013, 15:27
I guess 2.0 doesn't upmix to 5.1 even with the "Don't mix stereo sources" checkbox unchecked. I'm not hearing anything coming out of the other channel speakers.

Did you hear anything come out of the center channel? If so, it's upmixing, but upmixing is not magic. I listen to stereo source all the time upmixed to 5.1 with Dolby Prologic and the biggest benefit is the dialogue going to the center and quite often the rear surrounds get next to nothing.

dansrfe
26th February 2013, 18:14
Did you hear anything come out of the center channel? If so, it's upmixing, but upmixing is not magic. I listen to stereo source all the time upmixed to 5.1 with Dolby Prologic and the biggest benefit is the dialogue going to the center and quite often the rear surrounds get next to nothing.

I'm not hearing anything out of the center speaker. Just to make sure the values for Center, Surround and LFE that you have are 0.71, 0.71, and 1.58 right? Even at 1.0, 1.0, 1.58 I don't hear anything from the other channels...

paradoxical
26th February 2013, 18:39
I'm not hearing anything out of the center speaker. Just to make sure the values for Center, Surround and LFE that you have are 0.71, 0.71, and 1.58 right? Even at 1.0, 1.0, 1.58 I don't hear anything from the other channels...

Yeah, I have all at defaults.

LoopinFool
26th February 2013, 18:44
dansrfe,

I don't think it's just you.

In the LAV Audio properties, I set my speaker config to 5.1, enabled mixing, then played a stereo source.

The status tab shows all 6 channels on output, but the meters only show audio coming out of FL and FR.

The Mix Level sliders are labeled as applying to a downmix, not to this case. The Pro Logic options are labeled as "Matrix Encoding" which I believe also would only apply to a downmix.

I also just realized there's no Pro Logic decode option for this stereo expansion case. If ffmpeg supports it, that might be a nice option, and may be the only reasonable way to do this at all.

- LoopinFool

DragonQ
26th February 2013, 19:01
Surely that is by design? If you're listening to stereo on a 5.1 setup you should only get sound from the front left & right speakers. I assumed the benefit of upmixing to 5.1 (but keeping 4 channels empty) is so your PC's output can be 5.1 (or 7.1, etc.) all the time, without your A/V receiver or amp having to switch modes. But I dunno, I don't have any of these things, just a humble HDTV with stereo speakers. :p

nevcairiel
26th February 2013, 20:28
Its not meant to upmix, because simple matrix upmixing just sounds terrible IMHO, and more complicated approaches go beyond what i'm willing to do at this point.

Brotoles
27th February 2013, 13:00
I also posted this message on the madVR thread, but from madshi's response, it seems I should have posted this doubt here:

"I use K-lite Codec Pack for my multimedia needs. I have the latest version installed (9.7.5), and it comes with MPC-HC v1.6.6.6517, LAV Filters v0.55.2-16-gd6e6c1f and madVR v0.85.8

I use the LAV decoder filter for almost all of my video streams, and madVR as the video renderer. I have an nVidia GTX 670 with the latest WHQL drivers (v314.07), and Win7 x64.

When I playbak a DVD using this decoder-renderer combination, no subtitles or subtitle overlays (menu highlights, etc) are displayed. But when I use MPC-HC internal MPEG2 decoder and keep using madVR as the renderer, the subtitles and overlays are displayed just fine.

Now here's my doubt - is this a LAV issue, such as: it doesn't feed the subtitle stream correctly to the madVR renderer; or is it a madVR issue, such as: madVR isn't compatible yet with the way LAV handles subtitle streams?

Thank you all for your attention, and have a great day,

Brotoles"

This was the original message. Now here is madshi's reply:

"madVR is not responsible (or even able) to draw the subtitles at the moment. So the issue can't be with madVR, I think. Try asking nevcairiel about this in the LAV thread. He might need a sample of your DVD (menu)."

I thought that madVR was drawing the subtitles, but by madshi's reply, it seems that the subtitles are being rendered by MPC-HC internal subtitle renderer instead. So I tried using LAV decoder with the EVR Custom Renderer, and the subtitles also didn't show up, so it really seem like a LAV filter issue. I also updated the LAV filters to version 0.55.3 today, and the subtitles still don't work when using LAV as the MPEG2 decoder...

Thanks a lot for your great work, have a nice day!

nevcairiel
27th February 2013, 13:06
DVD menus and subtitles work just fine for me and many others here.
LAV itself draws the menus and subtitles for DVDs because its a rather special case.

Brotoles
27th February 2013, 13:13
Hi nevcairiel, I'm posting this message to say that LAV isn't the problem at all...

I checked the filters used when playing back a DVD, and it was Microsft's DTV-DVD video decoder, not LAV... It's that I install K-Lite's codec pack, and even though I configure the intial setup to use the LAV Video for decoding MPEG2, it wasn't using it for DVD.

So I went to LAV setup, and under the "Formats" tab, the "Enable DVD Video support" option was unchecked. I then checked it, and tried playing the DVD again: now MPC was telling me that the LAV Video decoder was being used, and the subtitles played perfectly!

Sorry to bother you without checking everything thourougly. But anyways, why is this "Enable DVD Video support" unchecked by default? Is this a K-Lite configuration thing, or is it LAV default behavior?

Once again, thanks a lot not only for your great work, but for your patience too :-)

nevcairiel
27th February 2013, 13:14
Its a K-Lite thing, LAV has it enabled by default.

sofakng
27th February 2013, 17:25
I'm new to DirectShow filters (I've been using XBMC for Linux) and I'm deciding on an MKV splitter (Haali vs LAV) and from what I've read LAV doesn't support MKV linking. Is this true? (i.e. an MKV file can link to other MKV files so playing the end of one file will automatically play the next one, etc)

I've also read about Haali supporting ordered chapters and multiple streams for the same video (i.e. Director's Cut, etc). Does anybody have more information on that?

DragonQ
27th February 2013, 17:29
LAV Splitter doesn't support ordered chapters yet. Not sure about the other thing. Aside from that the only time I have to use Haali Splitter is for TS-Doctor, where LAV Splitter doesn't do frame-accurate seeking properly and cuts often end up in the wrong places (Haali actually has issues with sometimes too but they are relatively rare).

Niyawa
27th February 2013, 19:41
I have question... like always.

A little fellow posted this in the KCP thread claiming that ffdshow tryouts have better performance than LAV when using 8 threads or more (http://i.imgur.com/DD4kUCu.png). I can't argue with numbers but I'm not sure if Null Renderer would be the right thing to use in this occasion... would it? Also, if anyone knows where comes the application in the screenie I provided I would appreciate a name.

nevcairiel
27th February 2013, 19:47
I bet thats 10-bit content, with LAV either doing proper dithering to 8-bit or handling 10-bit unchanged, and ffdshow doing 8-bit rounded output? Obviously thats going to be slightly faster. :p
LAV focuses on quality first, speed only second.

LAVs internal processing model also has a slight overhead, however it will pay off if you use a lot of processing in the graph (software deinterlacing, ffdshow raw with post-processing), because LAV can continue decoding in another thread while the main thread is doing the processing.
In future ffmpeg/libav updates, this overhead will also go down because it will be a lot easier to shuffle around frame references.

PS:
That tool is GraphStudio(Next)

Niyawa
27th February 2013, 19:50
I bet thats 10-bit content, with LAV either doing proper dithering to 8-bit or handling 10-bit unchanged, and ffdshow doing 8-bit rounded output? Obviously thats going to be slightly faster. :p
LAV focuses on quality first, speed only second.

PS:
That tool is GraphStudio(Next)
Quality always comes with a price, hahaha. Thanks for the app info. The difference is like of 2% so I'm not sure that makes so much of difference on actual playback anyway.

nevcairiel
27th February 2013, 20:02
You only really notice the difference when over-taxing your CPU anyway, if you run it on a thread count appropriate for your CPU, it won't matter.
Such high-thread counts are really only useful for benchmarking, during playback they do nothing but eat up more memory.

Niyawa
27th February 2013, 21:54
You only really notice the difference when over-taxing your CPU anyway, if you run it on a thread count appropriate for your CPU, it won't matter.
Such high-thread counts are really only useful for benchmarking, during playback they do nothing but eat up more memory.
I'll keep that in mind.

Mercury_22
28th February 2013, 00:08
Both DXVA are broken after latest (ffmpeg ?) updates

wanezhiling
28th February 2013, 02:13
My nightly builds are now available here: http://roy.orz.hm/lavf-w32-nightlies/

http://roy.orz.hm/lavf-w32-nightlies/lavf-my130228-045c141.7z
Cant register .ax:)

blexley
28th February 2013, 07:29
Which is better with Lav Filters Windows 8 Media Player or Media Player classic as some people are saying that the Win8 player is phoning home to Microsoft with logging?

nevcairiel
28th February 2013, 09:50
Both DXVA are broken after latest (ffmpeg ?) updates

Fixed again, the ffmpeg build script needed a small update after some configure changes in ffmpeg.

Mercury_22
28th February 2013, 10:46
Fixed again, the ffmpeg build script needed a small update after some configure changes in ffmpeg. :thanks: Working now :)

mark0077
28th February 2013, 19:44
guys, is there a trick to getting stereo to upmix to 5.1 with lav. I have mixing enabled, all other mixing settings set to default, Dolby Pro Logic II selected.

I can't hear any difference and the "Status" tab always only shows L and R output no matter what combination of options I select. I'm using LAV 0.55.3 along with Reclock as wasapi output device. Lav says its getting 2 channels in, 6 channels out. Reclock says its getting 6 channels in. I just can't hear anything from them.

SeeMoreDigital
28th February 2013, 19:53
Lav says its getting 2 channels in, 6 channels out. Reclock says its getting 6 channels in. I just can't hear anything from them.
How are you outputting the audio from your computer. Is it via 6Ch analogue, SPDIF or HDMI?

DragonQ
28th February 2013, 19:54
Nev went through this a few posts back. Outputting in 5.1/7.1 does not do "upmixing" of the original stereo signal. The rear and side channels will be blank.

mark0077
28th February 2013, 19:57
Ah ok sorry, I misunderstood its use, thanks.

ntropy
1st March 2013, 01:23
Would it be possible to allow playback of renamed .mpls file? In my situation I would like to duplicate .mpls files that point to tv episodes and rename them to include season and episode numbers in the name so that that are scan-able by XBMC. XBMC is currently able to play these renamed .mpls files internally, but when I set my externalplayer to MPC-HC with LAV, I encounter the "Cannot render the file" error.

Thanks!

filler56789
1st March 2013, 03:04
http://roy.orz.hm/lavf-w32-nightlies/lavf-my130228-045c141.7z
Cant register .ax:)

Same problem in lavf-my130301-ad71550.7z :scared: :mad:

blexley
1st March 2013, 09:58
Windows 8 pro N revision does not have MediaPlayer installed.

If i use MPC and Lav Filters with the version will i have any problems not having Windows codecs , are they needed at all?

Thanks

DragonQ
1st March 2013, 11:11
Windows codecs are not needed.

06_taro
1st March 2013, 11:34
Same problem in lavf-my130301-ad71550.7z :scared: :mad:

Does not seem to be any errors in sources, as I cannot reproduce it with my own build:
LAVFilters-0.55.3-14-git-r2655(ad71550).7z (http://www.nmm-hd.org/upload/get~8PzYdYrOvBE/LAVFilters-0.55.3-14-git-r2655(ad71550).7z)
LAVFilters-0.55.3-14-git-r2655(ad71550)-Installer.7z (http://www.nmm-hd.org/upload/get~HojrUa9iJnk/LAVFilters-0.55.3-14-git-r2655(ad71550)-Installer.7z)

Built by MSVC2012, tested on Win 8 Pro.

blexley
1st March 2013, 12:58
Windows codecs are not needed.

Thanks DragonQ

How will this effect the part of Lav filters option that chooses " Use Microsoft WMV9 DMO decoder WMV3 and VC-1 " ?

That is why i assumed it might be needed.

filler56789
1st March 2013, 17:57
Does not seem to be any errors in sources, as I cannot reproduce it with my own build:
LAVFilters-0.55.3-14-git-r2655(ad71550).7z (http://www.nmm-hd.org/upload/get~8PzYdYrOvBE/LAVFilters-0.55.3-14-git-r2655(ad71550).7z)
LAVFilters-0.55.3-14-git-r2655(ad71550)-Installer.7z (http://www.nmm-hd.org/upload/get~HojrUa9iJnk/LAVFilters-0.55.3-14-git-r2655(ad71550)-Installer.7z)

Built by MSVC2012, tested on Win 8 Pro.

:thanks:

Your build works as it should :) :) :)

somebug
1st March 2013, 23:39
I have some questions,

I find using Haali video renderer for blu-ray and mkv files best, but I also have the LAV filters installed. When I check my active filters while using Haali, I see LAV Video Decoder active as well. Is this normal/is it in anyway doing anything to the video, such as dithering and if so, how do I stop it?

Also are there are any issues with the x64 versions of the LAV Filters or will installing them alongside the x86 version be fine?

paradoxical
1st March 2013, 23:55
What would be abnormal about that? Also, LAV Decoder only does dithering if you force it to output, for example, 8-bit if you're feeding it a 10-bit source (obviously also hardware decoders can't decode anything but 8-bit). Otherwise it will output the source as is and let the renderer do the dithering. If you don't want it to do certain things disable those options.

Aspeh
2nd March 2013, 03:00
Windows 8 pro N revision does not have MediaPlayer installed.

If i use MPC and Lav Filters with the version will i have any problems not having Windows codecs , are they needed at all?

Thanks

Thanks DragonQ

How will this effect the part of Lav filters option that chooses " Use Microsoft WMV9 DMO decoder WMV3 and VC-1 " ?

That is why i assumed it might be needed.

Good Question

Can any experts answer this as i'm looking to upgrade my XP machines to Win 8 and was thinking of getting the N version as well as it doesn't have any Media player installed.Or would i be better getting the standard Windows 8 pro version for the WMV9 DMO decoder WMV3 and VC-1 option ???