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 509 510 511

cruse
1st November 2011, 09:13
Would it make sense to integrate the LAV filters into FFdshow (at least the video ones anyway)? That way subtitle rendering, and all the other great filters it has would work .. just nicely.

Better idea would be to write own methods and donīt use the old-dated(?) ones that ffdshow uses... At least deinterlacing, deband, avisynth support (if possible) and subtitles. And for the audio filter new DRC, night mode and mixer... Then it would be fantastic:)

You can combine ffdshow processing and LAV Filter decoding by using the ffdshow raw video filter (e.g. in MediaPortal).

dukey
1st November 2011, 10:47
You can combine ffdshow processing and LAV Filter decoding by using the ffdshow raw video filter (e.g. in MediaPortal).

That's good to know. I'll give that a spin.

cegy
1st November 2011, 11:28
For h264 you could also try DGAVCdecdi : it also uses the CPU to decode, hence could be much faster if your CPU can handle it.

well atm i use lav splitter with the use coreavc as the h.264 decoder when used via dss plus how is this gonna help me ? as i NEED lav splitter to be only set as default for mpeg.ts :mad:

even tryed halli as the splitter as it makes the encoded file even worst then the link i posted :( (not something i would want to archive!)

THX-UltraII
1st November 2011, 12:39
gee had to wait 5 days to post this...

For NVIDIA cards you have to create a custom resolution to get exactly 23.976Hz/FPS.

My NVIDIA system settings are in german, so I don't know what the options are called in English but go to

Change Resolution -> button below resolution list -> Create User Specified Resolution

In the upper Display Mode box (1920x1080) select 23 Hz as frequency and progressive, expand Timings below, set Standard from automatic to manual and make sure those are the according numbers:

active pixels horizontal: 1920 vertical: 1080
front porch horizontal: 638 vertical: 4
sync width horizontal: 44 vertical: 5
total pixels horizontal: 2750 vertical: 1124
polarity horizontal: positive vertical: positive
refresh rate: 23.976

Test, save and make sure the new resolution is active. The tray icon should offer 23 Hz now with right click (although it lists the new resolution as 24 Hz in user specified res list).

Good Luck

thanks! I ll try this tonight but I wonder if your settings will work with my display. Isn t it so that I will need to make a totally different custom res?

THX-UltraII
1st November 2011, 12:40
another general question:

I want to use SVP (realtime Frame Interpolation) which will need a lot of GPU. How do I know how much GPU is already 'reserved' for CUVID?
Own a MSI Cyclone GTX460 1GB DDR5 oc edition overclocked@880Mhz.

cruse
1st November 2011, 13:31
thanks! I ll try this tonight but I wonder if your settings will work with my display. Isn t it so that I will need to make a totally different custom res?

This timing change is resolution not display related, so as long as your display is a full HD one with 1080p the values should be exactly the same.

The NVIDIA driver suite treats 24p literally as 24.000, although most "24" content actually is 23.976. So out of the box you sadly get an asynch mess from NVIDIA for most of the content out there.

After this simple change you wont need Reclock anymore (at least for drifting clocks caused by this).

THX-UltraII
1st November 2011, 13:43
Thanks for your quick reply. I know that both the 24 and 23 standard NVIDIA settings don t make sense at all (the 23Hz reports 23,971xx in madVR.

But I have some other things that I m dealing with atm which confuses me:

Here are my results with madVR and as you can see things are strange and something in the report by madVR is not correct:

NVIDIA 1080p custom 23Hz @23,976 (with everthing else standard)
- madVR reports 23,97495 in the top of the OSD (so a deviation of 0.00105).
- one frame dropped every 6 minutes says OSD
- 22 dropped frames after 120 minutes of playback says OSD

The above all seems 'correct', but now

NVIDIA 1080p custom 23Hz @23,978 (with everything else standard)
- madVR reports 23,97795 in the top of the OSD (so a deviation of 0.00195).
- one frame dropped every 18 minutes says OSD
- 2 frames dropped after 120 minutes of playback says OSD

The above just is not right. With this I mean that some of the information is incorrect. First off all the deviation is BIGGER then with the 23,976nvidia setting but the 'one frame dropped every' information is 'better' then the 23,976nvidia setting.
And the this that is the most strange to me is that I only got 2! dropped frames so this assumes it is almost perfect which does not correspond with the other information.

cruse
1st November 2011, 15:08
Don't know whether I'm reading it right, but I assume the second set is with the values I posted?

Those values are the closest you can get with the basic handles NVIDIA provides. So 2 dropped frames over the course of 120 mins is pretty great with all the hardware and different clocks in a PC. Seems like you are getting there.

I don't know how madVR calculates those values, perhaps madshi can chime in. But at least the "one frame dropped every X minutes" looks like extrapolation based on numbers it got right now.

nevcairiel
1st November 2011, 15:11
I'm sorry, but this is not the "How do i setup my NVIDIA card" thread, and i would appreciate if you move all these discussions elsewhere. AVS Forum for example already has alot of threads on the topic in its HTPC section.

THX-UltraII
1st November 2011, 15:57
I'm sorry, but this is not the "How do i setup my NVIDIA card" thread, and i would appreciate if you move all these discussions elsewhere. AVS Forum for example already has alot of threads on the topic in its HTPC section.

Sorry, you are right on this. I ll send a PM to cruse if I have more questions.

Keep up the good work you re doing! :thanks:

travolter
1st November 2011, 17:39
hi!
I have this problem: http://forum.doom9.org/showthread.php?t=162921

and I wanted to install Lav Filters to check if they can solve it.

Im noticing that Lav filters only install in XPsp2 and upper, and the manual bat installers do not register these .ax files.

Its possible to install them in XPsp1 using some trick? adding and registering some files to system32, install some extra component maybe?

Any help would be appreciated

nevcairiel
1st November 2011, 17:48
Only XP SP3 is supported, with anything before that you're on your own.

Pat357
1st November 2011, 17:51
well atm i use lav splitter with the use coreavc as the h.264 decoder when used via dss plus how is this gonna help me ? as i NEED lav splitter to be only set as default for mpeg.ts :mad:
even tryed halli as the splitter as it makes the encoded file even worst then the link i posted :( (not something i would want to archive!)
In Avisynth, DirectshowSource allows you to specify what filters (splitter, video & audio decoder) to use by giving it a .GRF file as input.
First create a .GRF (graphedit, graphstudio) with the filters you like to use.
Feed this graph to DirectshowSource in your .avs script. It looks a bit difficult, but its easy once you've done it.
See http://avisynth.org/mediawiki/DirectShowSource.

nevcairiel
1st November 2011, 18:16
LAV Filters 0.38

LAV Splitter
- New subtitle selection options (see release notes or readme)
- Improved handling of languages with more then one ISO 639-2 code (f.ex. German, French, etc)
- Improved seeking to the start of the file
- Added support for VobSubs in MP4
- Added support for MKV nested chapters
- Improved playback of RV40 in MKV
- Improved support of H264 in WTV

LAV Audio
- Fixed a crash with raw audio and SPDIF processing
- Improved support for COOK
- Improved DTS-in-WAV detection

LAV Video
- Fixed a issue that caused MPC-HCs EVR-CP to produce wrong colors when using CUVID decoding
- Support Multi-Threading and CUVID decoding for MPEG-1
- Improve decoder flushing
- Fixed a potential freeze on load and dynamic type changes
- Fixed a freeze on seeking with certain VP8 files
- Added support for UtVideo
- Added support for H264 4:2:2



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

I haven't really changed much over the last few days, and no new complaints came in, so i thought i might as well release this now.
The new subtitle logic is hopefully working properly now, i haven't really gotten any bug reports..

Anyhow, on the topic of the subtitle selection logic, i wrote a page on my page about the different modes, and trying to explain how the advanced mode works.
You can find it here: http://1f0.de/lav-splitter/lav-splitter-stream-selection/
Suggestions/Ideas on how to improve on the explanations are welcome!

A somewhat important note for people using the programmatic configuration interface of LAV Splitter: It of course had to be changed for the new subtitle options, but i hope it remained ABI compatible. But in any case, you should grab the new header file from the developer_info folder inside the .zip.

Have fun with this version!

fastplayer
1st November 2011, 18:29
I haven't really changed much over the last few days, and no new complaints came in, so i thought i might as well release this now.
On my end, the trunk builds were running flawlessly for the last couple of days. Thanks for 0.38! :)

glorp
1st November 2011, 18:53
LAV Filters 0.38
[CODE]Have fun with this version!

Thank you nev. You really deserve a lot of appreciation for all your work.

FWIW, the advanced subtitle config string in the RC version worked fine on every case I tested it with.

MasterNobody
1st November 2011, 19:47
nevcairiel
Used ffmpeg library wasn't updated to the latest? Lossless 10-bit 4:4:4 H.264, and lossless 4:2:2 H.264 are still broken.

Thunderbolt8
1st November 2011, 20:04
is it possible with the advanced subtitle system to prefer a default subtitle track over a forced title?

e.g. language is english, a complete english subtitle track is default, and there is also an english track for foreign language only, set to forced. what I want is always to load the (full) default track. the forced track should only be loaded automatically when I generally decide to disable all full language tracks (all independent from matching the movie and subtitle track language).

so basically a forced track should only be prefered over an other track when the forced track is also the default track at the same time, or generally matching movie language and subtitle language of another default track is detected.

ruinevil
1st November 2011, 21:22
Thanks for the new release. I'll try it out when I get back home.

All you need is ordered chapter support for MKV/OGM in the splitter and you will have supplanted FFDshow and Haali for most people.

I'm told ordered chapter support is really hard to implement, though.

zerowalker
1st November 2011, 23:38
Ehm, Just wondering, why does LAV got 4:2:2 support, but not FFDshow tryout?
I thought the later was superior and such, and LAV being a little more, The Best In A Box;O?

ruinevil
1st November 2011, 23:55
I thought LAV was drawn heavily from libav and made from scratch by nevcairiel, and tryouts was ffmpeg with tons of ancient hacks so stuff works.

zerowalker
2nd November 2011, 02:33
Oh;O
well, maybe;O
I have always thought ffdshow tryouts where like, the ultimate choice, as they update all the time, and has been alive for a very long time;O
But now i am confused if LAV is a better option;O
And i mean as in term of Quality, if there is no difference in quality then ffdshow got some neat features (like resize, wich makes subtitels nice) etc, and i donīt think you can do stuff like that with LAV right?
I am by no means complaining on it;O!
I think itīs very good, and very handy, as it just works;D

But can someone please illuminate the situation for me;D?

ruinevil
2nd November 2011, 03:08
96b9d1230bb9
Favor NV12 over YV12 output.
Today (10 hours ago)

is this before or after you released 0.38? I have an ATi card, and I'm told ATi sucks at YV12, but other than EVR based renderers, everything prefers YV12 output over NV12 output with LAVfilters.

golagoda
2nd November 2011, 03:40
LAV Filters 0.38
[...]
Have fun with this version!

Thanks, I'll be sure to test it out, keep up the great work as always.

millercentral
2nd November 2011, 04:59
One minor thing:

Your Advanced subtitle description on your website (http://1f0.de/lav-splitter/lav-splitter-stream-selection/) says to use a semi-colon or space to seperate rules (and uses semi-colons in all the examples), but the readme file says tokens should be seperated with a comma or a space (and uses spaces in all the examples). Do all three seperators work?

[EDIT: my second issue appears to be resolved with 0.38...]

nevcairiel
2nd November 2011, 07:07
96b9d1230bb9
Favor NV12 over YV12 output.
Today (10 hours ago)

is this before or after you released 0.38? I have an ATi card, and I'm told ATi sucks at YV12, but other than EVR based renderers, everything prefers YV12 output over NV12 output with LAVfilters.

That change was after 0.38.
I don't know what you mean with "everything". EVR/VMR prefer NV12, madVR doesn't care, HaaliVR doesn't support either - so all in all it seems like a solid choice.

ffdshow raw video has some issues with NV12 input, but you can just turn it off in ffdshow. VSFilter doesn't support NV12 at all (iirc), so it will just fall back to YV12.

There shouldn't be any problems, unless you use some bad software that accepts NV12, but doesn't really support it. In that case, you can still just turn it off in LAV Video.

Your Advanced subtitle description on your website (http://1f0.de/lav-splitter/lav-splitter-stream-selection/) says to use a semi-colon or space to seperate rules (and uses semi-colons in all the examples), but the readme file says tokens should be seperated with a comma or a space (and uses spaces in all the examples). Do all three seperators work?

Yes, all three work. I was told that space was kinda hard to interpret as a separator, so i changed the guide to use the semicolon, guess i didn't update the readme. ;)

madshi
2nd November 2011, 09:20
That change was after 0.38.
I don't know what you mean with "everything". EVR/VMR prefer NV12, madVR doesn't care, HaaliVR doesn't support either - so all in all it seems like a solid choice.

ffdshow raw video has some issues with NV12 input, but you can just turn it off in ffdshow. VSFilter doesn't support NV12 at all (iirc), so it will just fall back to YV12.

There shouldn't be any problems, unless you use some bad software that accepts NV12, but doesn't really support it. In that case, you can still just turn it off in LAV Video.
Agreed. I think the change to output NV12 by priority benefits ATI users who often (depending on driver version?) don't get any DXVA2 deinterlacing with YV12 output. That's a pretty strong argument for NV12. So as long as there's no significant disadvantage (and I'm not aware of any) of prefering NV12 it's the way to go IMHO.

hoborg
2nd November 2011, 10:29
I just noticed one problem.
I am using LAV splitter + audio decoder + FFDshow video decoder set to "WMV9" for VC-1 to decode VC-1 videos.
And auto setting for "enable VC-1 timestamp correction" doesnot work, it need to be set as enabled.
I am not sure when i tryed it last time, but "auto" was working OK, and now with .38 it does not.

nevcairiel
2nd November 2011, 10:41
I just noticed one problem.
I am using LAV splitter + audio decoder + FFDshow video decoder set to "WMV9" for VC-1 to decode VC-1 videos.
And auto setting for "enable VC-1 timestamp correction" doesnot work, it need to be set as enabled.
I am not sure when i tryed it last time, but "auto" was working OK, and now with .38 it does not.

I don't think "auto" was ever meant to work properly with ffdshow set to wmv9. Auto is tuned for ffdshow with avcodec, which sadly behaves completely different to "wmv9". Because it behaves completely differently based on the selection option, it will only ever work in one mode, and i decided to make that the avcodec mode. Its not going to be fixed.

If you want the MS decoder, use the MS DMO decoder directly, and not through ffdshow.

PS:
Nothing changed regarding those options for quite a while.

noee
2nd November 2011, 12:37
A somewhat important note for people using the programmatic configuration interface of LAV Splitter: It of course had to be changed for the new subtitle options, but i hope it remained ABI compatible. But in any case, you should grab the new header file from the developer_info folder inside the .zip.

Not sure if you've had any feedback yet, but it appears you didn't break anything existing. Thanks.

benus
2nd November 2011, 14:52
Greetings everyone.

May I just ask you whether there is a chance to add ac3 output from aac 5.1 on the fly using LAV Audio Decoder.
There is just huge amount of files on the internet with aac 5.1 audio track, and even more people willing to use their HDMI or SPDIF output to stream it to the receiver, especially the one that has got THX modes.
I appreciate all your hard work.
Take care.

nevcairiel
2nd November 2011, 15:00
May I just ask you whether there is a chance to add ac3 output from aac 5.1 on the fly using LAV Audio Decoder.

There is not. You can use ReClock for example to encode to AC3 on the fly.

TheShadowRunner
2nd November 2011, 15:31
Hi nev, thanks for 0.38.
Been testing a little and VP6 cropping isn't quite fixed yet.
Actually the fix that was implemented in 0.37 brought a small issue, for exemple on this video (http://www.square-enix.co.jp/music/sem/page/seiken20th/swf/movie/movie01.flv), there's a new green line on the side with 0.37/38.
Or this video (http://videoff7.free.fr/myth-cm.flv), for which the cropping fix did nothing (please check the right side).

nevcairiel
2nd November 2011, 15:40
You know, it would work just fine if you just used LAV Splitter for FLV splitting. :)

TheShadowRunner
2nd November 2011, 16:02
You know, it would work just fine if you just used LAV Splitter for FLV splitting. :)

Oh..!
The only reason I didn't switch to LAV Splitter is because I read it screws up the standard directshow .AVI splitting.
Is there any truth to this at all still?

nevcairiel
2nd November 2011, 17:01
You should not listen to rumors. In its default mode it will just take over AVI splitting, but if you disable it, the MS AVI Splitter should take over just fine. (Note that it should be disabled in the installer, if you disable it in LAV Splitters properties after installation, it might not work properly)

Anakunda
2nd November 2011, 17:11
Hello, is any good installing LAV filters bundle for someone using KMPlayer, CoreAVC and ffdshow codecs? I.E. does LAV provide some better performance than mentioned configuration?
I wanna give a try to everything new but also like to keep my PC tidy as possible so that I don't want any mess in codecs which work nice and as they should atm.

Another think I need to know is what happens if I install LAV filters over existing codecs. Will it take precedence over existing codecs for all supported formats, or do I have choice to choose prefereed codec for every format? Can I change default codecs later?

CruNcher
2nd November 2011, 17:34
@nev
nothing you can do about these freezing ?, i mean how does mpc-hc splitter avoids it ? it seems virtually the only one (most OS applications fail currently very strange also seeing that VLCs parser is not based on ffmpeg @ all) that does and i slowly wonder if cyberlinks splitter is actually based on its codebase though also other commercial splitter like Elecards has no issues with this ;) (i doubt this H.264 stream freezing inside mov/mp4 is wanted behavior)

nevcairiel
2nd November 2011, 17:45
nothing you can do about these freezing ?

The file is just broken. Report it to ffmpeg or libav or someone that cares.

cruse
2nd November 2011, 17:46
...better performance?... like to keep my PC tidy as possible...Will it take precedence over existing codecs for all supported formats, or do I have choice to choose prefereed codec for every format? Can I change default codecs later?

...better quality. It doesn't get tidier than with LAV Filters.

LAV Decoders and Splitter install with a very high merit, so they should take precedence over existing ones.

During install (and afterwards within configuration) you can choose which formats to decode with LAV Filters. Formats that are not selected should use codecs like before.

CruNcher
2nd November 2011, 17:54
@nev
Then this brakage must have happened in Finalcut already and i wonder why ffmpeg/vlc are reacting so harsh to this and others totally ignore it (whatever is going on @ the bitstream level)

TheShadowRunner
2nd November 2011, 17:56
You should not listen to rumors. In its default mode it will just take over AVI splitting, but if you disable it, the MS AVI Splitter should take over just fine. (Note that it should be disabled in the installer, if you disable it in LAV Splitters properties after installation, it might not work properly)

Hmm I had already registered the splitter manually before you added the bold part.. luckily nothing bad happened after I disabled .avi support. ^^;

But for the FLV cropping issue, while it fixed the cropping on the 2nd sample, the first sample (http://www.square-enix.co.jp/music/sem/page/seiken20th/swf/movie/movie01.flv) still has that green bar on the side (http://videoff7.free.fr/lavsplittbar.png), not on your setup?

nevcairiel
2nd November 2011, 18:07
But for the FLV cropping issue, while it fixed the cropping on the 2nd sample, the first sample (http://www.square-enix.co.jp/music/sem/page/seiken20th/swf/movie/movie01.flv) still has that green bar on the side (http://videoff7.free.fr/lavsplittbar.png), not on your setup?

I get no issues whatsoever on that sample using LAV Splitter + LAV Video.

Are you sure you linked me the right file? Mine says movie resolution 460x386, while yours claims 427x320 (from the madVR OSD)

TheShadowRunner
2nd November 2011, 18:13
I get no issues whatsoever on that sample using LAV Splitter + LAV Video.

Are you sure you linked me the right file? Mine says movie resolution 460x386, while yours claims 427x320 (from the madVR OSD)

Dang, I mixed up samples indeed.
This is the one (http://videoff7.free.fr/myth-cm.flv)giving the issue.
Yes, using Lav Splitter + Lav Videodec + madVR.

nevcairiel
2nd November 2011, 19:04
Dang, I mixed up samples indeed.
This is the one (http://videoff7.free.fr/myth-cm.flv)giving the issue.
Yes, using Lav Splitter + Lav Videodec + madVR.

I fixed the cropping with the Gabest FLV Splitter on that sample, however i don't get any issues with LAV Splitter to begin with.

CrAsH cro
2nd November 2011, 19:05
DTS in WAV is still not working in ne version of LAV audio filter ???

Is there anything to configure or???

fastplayer
2nd November 2011, 19:13
I fixed the cropping with the Gabest FLV Splitter on that sample, however i don't get any issues with LAV Splitter to begin with.
With that sample and using LAV Splitter (including Audio/Video), I see a green vertical line on the right side like in TheShadowRunner's screenshot (http://videoff7.free.fr/lavsplittbar.png).

nevcairiel
2nd November 2011, 19:16
With that sample and using LAV Splitter (including Audio/Video), I see a green vertical line on the right side like in TheShadowRunner's screenshot (http://videoff7.free.fr/lavsplittbar.png).

Thats funny, the line only appears if output is YV12, if its NV12 the line vanishes. Can someone explain that to me?
madshi? maybe a madVR bug? I don't get it in EVR. (For reference, sample here: http://videoff7.free.fr/myth-cm.flv)

I doubt its a decoder problem, as the line vanishes depending on which output format you use or renderer you use.

fastplayer
2nd November 2011, 19:20
Thats funny, the line only appears if output is YV12, if its NV12 the line vanishes. Can someone explain that to me?
Unfortunately, I can't. :o
I can only confirm your observation: With NV12 everything's fine and EVR-CP seems to be completely immune to this.

Edit: Well, EVR-CP doesn't support YV12, AFAICT. So there goes my "completely immune"... :D

nevcairiel
2nd November 2011, 19:28
Edit: Well, EVR-CP doesn't support YV12, AFAICT. So there goes my "completely immune"... :D

It does, just not with some recent ATI drivers.