View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
CruNcher
3rd May 2011, 18:16
*.ts nothing found yet seems perfect :) though not with MPC-HCs decoder as i reported for 2 kind of streams and the crashes of cyberlinks decoder with 2 other streams but with Lav cuvid its excelent except the Mpeg-2 Studio Profile issue, that currently requires some manual switching and the 60p issue in VMR9 renderless ;)
Though i only currently look @ does playback and does playback sync (Hardware accelerated) nothing else (no fast forward or other seek operation related things)
Just a side note also Load time is crazy good eliminating all the other not needed stuff :) switching with the mouse forward/backward button between streams is a breeze.
n3w813
3rd May 2011, 18:17
Just to make sure, with DTS-HD unchecked, it worked, right?
Which audio renderer are you using? If you're not using it already, try with ReClock - if you are, try without. :p
Also, NVIDIA or AMD? Which driver?
If all else fails, i can add some simple detection if there are HD frames in the stream, and if not fallback to "normal" DTS - and make that optional for people where its required.
Actually, I haven't tried with DTS-HD unchecked yet, I'll try that tonight.
I'm using Reclock but I'll try DirectSound or Wave tonight.
I'm using a Nvidia GTS450 with the latest 270.61 drivers, Win7 32bit.
You're awesome :thanks: Do you have a donation Paypal account? I, and I'm sure many others, would love to donate for all your hard work. :D
Sebastiii
3rd May 2011, 18:25
Not sure, when I get home tonight, I'll try playing a DD track in between and see what happens.
My AVR is a Harman Kardon AVR254, shouldn't be that dumb right? :rolleyes: I'll check to see if they have any firmware updates for the unit.
I have an Harman too AVR355 and i have frequently this issue (AVR stay on DTS-HD)with ffdshow and like lav audio match ffdshow output, i think we should have the same, it seems that it didn't happen with TMT or PowerDVD.
nevcairiel
3rd May 2011, 18:31
Actually, I haven't tried with DTS-HD unchecked yet, I'll try that tonight.
Please run a DTS-HD MA file, then stop the player, change the option, and run your normal DTS file - if that works i can probably add some option.
If it doesn't .. we'll have to think up a new solution. Maybe send one frame of silent PCM or something to reset the receiver..
madshi
3rd May 2011, 18:37
I didn't mean it was "impossible" in general, just not with the tools i use, that is ffmpeg. :p
My response was more aimed at SamuriHL's comment than at yours.
I don't feel like writing a parser for DTS-HD just for a display issue... :)
I don't think it's worth it, either.
http://forum.doom9.org/showthread.php?p=1495749#post1495749
The only time i've seen that error was with AC3Filter, get rid of that and it should work.
I have the same issue ("Unspecified error" ) using ffdshow audio processor (or processing with ffdshow audio) when playing a mkv or m2ts with multiple audio tracks (test with LAVFilters-0.24-45-g054fb45). It's ok with a single track or multi tracks and mpchc internal splitter.
FYI audio switching is working now with potplayer and lavfsplitter :) but subtitles seems to be broken in last potplayer version and working with mpchc, so deadlock. :(
CruNcher
3rd May 2011, 18:45
nev this one is interesting http://forum.doom9.org/showpost.php?p=1497836&postcount=17127 <- it causes lav cuvid to crash in nvcuvid.dll @ the error Cyberlink crunches through it skiping the bad frames in DXVA without problems
nevcairiel
3rd May 2011, 18:50
crashes in nvcuvid.dll are nothing i can really prevent, except if i write really alot of code that validates frames ...
CruNcher
3rd May 2011, 18:56
Hmm strange CoreAVC CUDA doesn't crash
nevcairiel
3rd May 2011, 18:57
They have a full software decoder, they already have the code to validate H264 frames before trying to decode them. :p
CruNcher
3rd May 2011, 19:02
so lav cuvid is a security risk currently ;)
nevcairiel
3rd May 2011, 19:03
It'll just crash, nothing else.
nevcairiel
3rd May 2011, 19:09
I was meaning to post these earlier, but somehow got distracted by actually watching stuff.
New builds for tonight - 0.24-57 .. its time for a release, that number is getting too high!
Because requested earlier, today in both x86 and x64.
Notable changes for today: ffmpeg update that fixes an AVI sync issue and adds E-AC3 in MP4 support; Addition of the ITrackInfo interace; Opening m2ts files in a BD struct should parse language info as well now.
Oh and i finally found the actual cause of the corrupted codec name thing, hooray. :)
x86 here (http://files.1f0.de/lavf/LAVFilters-0.24-57-g2efa8c0.zip) -- x64 here (http://files.1f0.de/lavf/LAVFilters-0.24-57-g2efa8c0-x64.zip)
I should really finish this forced subtitle option............
----------
After talking with some other people, the bitstreaming issues really seems to be specific to Harman Kardon AVRs - really a shame, i thought those were high quality. It seems to also affect ffdshow - maybe there is something specific one needs to do to reset the connection, but then i thought that would be the audio renderers job...
I hope we can figure this out, though.
SamuriHL
3rd May 2011, 19:26
My response was more aimed at SamuriHL's comment than at yours.
Yea, I was unaware that it could be parsed, so, that's interesting. So, if you can parse it, let's get to decoding it. :p No? What do you mean it doesn't work like that? Damnit! :D
Andy o
3rd May 2011, 19:36
Thanks again, nev.
And oh, please, don't get me started on Harman Kardon, especially for HTPCs.
Because requested earlier, today in both x86 and x64.
Thanks.
Did some more testing on WMA, LAV Audio works fine in x64 with both LAV Splitter and MS ASF Reader, but x86 only works with LAV Splitter. Maybe I somehow broke my windows :p
SamuriHL
3rd May 2011, 19:47
Thanks again, nev.
And oh, please, don't get me started on Harman Kardon, especially for HTPCs.
BAHAHHAHAHA. :D I knew you'd chime in on that. :)
m2ts on Blu-rays typically don't contain the language code at all, at least on the discs i tested with. If it did, it would show there.
Tested quickly a 1tb drive I had handy with following films (full BD's):
dead awake
delgo
doctor dolittle
don giovanni
enen
entre lobos
everafter
fair game
ghost machine
goo naam gwa neui aka needing you
grizzly man
harjunpaa ja pahan pappi and harjunpaa and pahan pappi
hope floats
if you are the one 2
jay and silent bob strike back
jeff beck rock and roll party honoring les paul
last night
le placard
little fockers
madagascar (disk 1)
madagascar (disk 2)
megamind
mein kampf
mniejsze zlo
mythos wald
new kids turbo
out of sight
potiche
tangled 2d
Each film contained language codes for both PGS and audio streams (tested via dropping main .M2TS into TSMUXER). No films on that disk contained any main .M2TS without language codes. Like mentioned though, I have seen it.
Actually, I'm using EAC3TO -> TSMUXER to remux the full disks to .TS (where the language codes are working) anyway but just to mention that.
Cheers,
-jj-
Andy o
3rd May 2011, 20:06
BAHAHHAHAHA. :D I knew you'd chime in on that. :)
Sorry, just a quick aside regarding the Pios and DTS-HD MA 2.0. I was gonna send you a PM but just in case this would help others who have Pio receivers and have read my previous posts with this problem.
I had used Pioneer's support form to send an email days ago. Today I got a call from a Pioneer rep regarding the problem and is sending me a letter to take to an service center for a free firmware upgrade. He said that I needed one, which implied that there was one (VSX-01TXH), and that it fixed the problem, though he wasn't explicit. I'll see what happens.
He only asked for my serial number, warranty didn't even get mentioned (for Elite receivers it's supposed to be 2 years). Maybe firmware updates don't require warranty.
SamuriHL
3rd May 2011, 20:10
Fascinating. I wonder if my best buy where I bought it would be able to do the firmware upgrade on the 21THX if I need one...that's a scary thought.
nevcairiel
3rd May 2011, 20:16
I'm still kinda glad how i had no serious issues at all with my Onkyo. :)
All i could wish for was some better configuration at times, so i have to compensate through software. :p
Yamaha also seems to run problem free, from what i gathered.
CruNcher
3rd May 2011, 20:23
Argg i just wanted to move on with testing finaly and the new release broke something again :(
i get crashes now in msvcr100.dll with some samples :(
SamuriHL
3rd May 2011, 20:26
I'm still kinda glad how i had no serious issues at all with my Onkyo. :)
All i could wish for was some better configuration at times, so i have to compensate through software. :p
Yamaha also seems to run problem free, from what i gathered.
I HATE Onkyo. I had mine die on me just as everyone else who had the same model did. It's sitting in my garage as we speak as I didn't bother sending it out to get fixed. Now my parent in laws just got an Onkyo HiT and I have to go set it up in a little bit for them. My wife's not able to get it to work. sigh. I'll stick with my Pio's. :)
I'm still kinda glad how i had no serious issues at all with my Onkyo. :)
All i could wish for was some better configuration at times, so i have to compensate through software. :p
Yamaha also seems to run problem free, from what i gathered.
Yep, I can't complain about my Yamaha :)
CruNcher
3rd May 2011, 20:33
http://files.1f0.de/lavf/LAVFilters-0.24-57-g2efa8c0.zip crashes with http://www.mediafire.com/download.php?7hddy3klaxz9kyf <- crashing msvcr100.dll why ever now :( worked fine before last tested working rev was LAVFilters-0.24-45-g054fb45
I hope this is a compile issue again :) as im not sure how a ffmpeg update should cause a crash in msvcr100.dll, but never say never :)
x86 here (http://files.1f0.de/lavf/LAVFilters-0.24-57-g2efa8c0.zip)
An extra confirmation; this fixes my avi sync issue. :thanks:
n3w813
3rd May 2011, 20:36
Thanks again, nev.
And oh, please, don't get me started on Harman Kardon, especially for HTPCs.
Sorry to be OT, but what issues are there with HTPCs and HK receivers? Maybe you can point me to another forum thread link that discusses this :)
What brands of receivers are good for HTPC? Yamaha, Onkyo, Pioneer?
SamuriHL
3rd May 2011, 20:39
Sorry to be OT, but what issues are there with HTPCs and HK receivers? Maybe you can point me to another forum thread link that discusses this :)
What brands of receivers are good for HTPC? Yamaha, Onkyo, Pioneer?
Search AVSForums. There's quite a few posts over there about it. Personally I like my Pio's. Andy also has a Pio now. Yamaha's good, as well. Onkyo is hit or miss. On the high end, they're decent. Midrange, quality suffers but it's hard to argue the features for the price.
nevcairiel
3rd May 2011, 21:02
I have a Onkyo TX-SR607, and it works just perfectly. Its not entry-level, got some nice reviews when it came out, and until today i havent heard people report serious breakage. Not sure what i would go with when i would get a new one for 3D some day.. there rarely are proper comparisons, so you're stuck reading reviews no-end. :p
nevcairiel
3rd May 2011, 21:06
http://files.1f0.de/lavf/LAVFilters-0.24-57-g2efa8c0.zip crashes with http://www.mediafire.com/download.php?7hddy3klaxz9kyf <- crashing msvcr100.dll why ever now :( worked fine before last tested working rev was LAVFilters-0.24-45-g054fb45
I hope this is a compile issue again :) as im not sure how a ffmpeg update should cause a crash in msvcr100.dll, but never say never :)
Fixed - was a problem with some new feature.
New build here, also fixes some slight audio issues
http://files.1f0.de/lavf/LAVFilters-0.24-60-g64b193c.zip
SamuriHL
3rd May 2011, 21:10
The 607 is the "fixed" version of my 606. The 606 was designed poorly and almost everyone that had one developed the exact same issue at nearly the exact same time in the life of the unit. And people who sent them in and got them back said they worked for a while, but, died again. So I never bothered. I've been super happy with my Pio ever since. So much so that I put a cheap 821-k Pio in my bedroom. Not as good as my 21TXH but it was cheap so all good. The onkyo 607 doesn't seem to have the same problem as my 606 so consider yourself lucky. ;)
nevcairiel
3rd May 2011, 21:12
Next time i would probably aim higher in the food chain, when i get the 607 i was still a poor student. :p
SamuriHL
3rd May 2011, 21:13
Yea, I didn't have a lot of money when I did the 606, either. Bang for buck was high. Build quality wasn't. Lesson learned. I spent a lot more on the 21TXH. Glad I did.
Andy o
3rd May 2011, 21:16
Sorry to be OT, but what issues are there with HTPCs and HK receivers? Maybe you can point me to another forum thread link that discusses this :)
What brands of receivers are good for HTPC? Yamaha, Onkyo, Pioneer?
LOL from a quick search I see that I have already ranted enough over a couple years, elsewhere. Here (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=80517&view=findpost&p=702559) is a quick summary, and a sort of chronicle of my troubles is at the original (http://www.avsforum.com/avs-vb/showthread.php?p=15852660#post15852660) threads (http://www.avsforum.com/avs-vb/showthread.php?p=15856517#post15856517) at AVS (also look at subsequent posts made by me in those).
It's not a problem with just one model, I believe their way of doing things is not good. There's a reason why most receivers don't offer an OSD through HDMI or have to resort to clever (Marantz uses an extra analog connection and switches to it automatically when it's OSD time) or not-so-clever (Kuro-link) workarounds. HK reprocesses the video in the AVR, completely unnecessarily, and the only dubious benefit is an OSD.
nevcairiel
3rd May 2011, 21:26
I have another request for testing:
Please turn "Enable Video Stream Parsing" OFF (keep Audio parsing ON, and Timestamp Generation OFF), and test some files, and report what (if anything) breaks. I'm mostly interested in H264 (and mostly in MPEG-TS or on Blu-ray - all those weirdly broken DVB files and crazy mastered discs), but any reports with that configuration are welcome.
Note: The option does not affect MKV at all - at least not for H264, its always off there.
If you find a file that breaks, please also state with which decoder - thanks!
Andy o
3rd May 2011, 23:59
I have a blu-ray with regular DTS audio that doesn't bitstream. Remuxed to mkv, and no go either. Weird thing is that DTS-HD MA blu-rays do bitstream the core. I'm using your latest builds posted right above of LAV audio and splitter. I don't get a signal on the receiver, and switching to ffdshow does bitstream. Unfortunately I don't think I have another blu-ray with DTS core, I'll try remuxing an mkv of a DTS-HD movie with only the core selected though.
Andy o
4th May 2011, 00:37
OK I did some more testing and something strange is going on with DTS. It was the DTS-HD bitstream check. I send a DTS bitstream to my receiver with DTS-HD bitstream enabled on LAV audio, with that blu-ray it didn't stream the legacy DTS. DTS-HD bitstream disabled, DTS streams fine.
With the DTS-HD MA mkv I remuxed to DTS only, the DTS stream does get recognized and decoded by the receiver when DTS-HD bitstream is enabled, but my receiver switches MCACC (Pioneer's room correction) off. This only should happen when the receiver is getting multichannel higher-than 96kHz (i.e. 176 or 192 kHz). You mentioned the relationship between DTS-HD and 192kHz PCM. I'm not very clear on that, but LAV audio might be doing something extra when not bitstreaming DTS-HD, and DTS-HD bitstreaming is enabled.
Weirder with this second disc, besides the MCACC being turned off, the receiver displays "DTS-ES MTRX". When I disable DTS-HD bitstreaming, it displays "ES MATRIX". Puzzling, it's supposedly decoding the same DTS stream, I don't know why it would have two different displays for the same format (DTS-ES Matrix mode). This is probably beside the point, but it does suggest LAV audio is sending something slightly different.
This doesn't happen with ffdshow, btw.
joeydrunk
4th May 2011, 04:27
Why is reclock necessary to avoid the Windows audio engine for lpcm? Will lav filters ever be able use the wasapi exclusive mode so I can get rid of reclock?
Andy o
4th May 2011, 05:36
nev has said that's the job of the audio renderer, not the splitter or decoder.
nevcairiel
4th May 2011, 06:44
I have a blu-ray with regular DTS audio that doesn't bitstream. Remuxed to mkv, and no go either. Weird thing is that DTS-HD MA blu-rays do bitstream the core. I'm using your latest builds posted right above of LAV audio and splitter. I don't get a signal on the receiver, and switching to ffdshow does bitstream. Unfortunately I don't think I have another blu-ray with DTS core, I'll try remuxing an mkv of a DTS-HD movie with only the core selected though.
Sounds like you're dealing with the same problem the HK folks are dealing with - your receiver is unable to deal with normal DTS in a DTS-HD frame.
I'll add a small parser soon that can detect if the stream is actually DTS or DTS-HD, and switch to normal DTS mode when appropriate. Right now everything is sent as DTS-HD when the checkbox is on, because that worked perfectly on my AVR.
All format descriptions that look like that ( <fourcc> / <hex code> ) are actually undetected formats, but just let me know and i can fix them.
I have another request for testing:
Please turn "Enable Video Stream Parsing" OFF (keep Audio parsing ON, and Timestamp Generation OFF), and test some files, and report what (if anything) breaks. I'm mostly interested in H264 (and mostly in MPEG-TS or on Blu-ray - all those weirdly broken DVB files and crazy mastered discs), but any reports with that configuration are welcome.
Note: The option does not affect MKV at all - at least not for H264, its always off there.
If you find a file that breaks, please also state with which decoder - thanks!
I've run a bunch of tests on DVB recordings with LAVFilters-0.24-60-g64b193c and put the results (http://www.mediafire.com/?82acnyskt4n43hn) in an Excel 2007 format table. The table width shouldn't be a problem with that new 30 inch beast. Admittedly I have to scroll a little on my tiny 27" 1920x1200 (with the Win7 taskbar on the left). ;)
The audio format descriptions look weird (see the "reported audio" column). These are from the MPC-HC file properties dialog (or from LAV Splitter audio pin info). The listed audio tracks in the filters menu look fine though (and I suppose subtypes etc.).
The table also addresses the ts/h264 video parsing issue. With the four decoders I've tested here, it seems to me that disabling video parsing for (DVB-sourced) H.264 in TS is mostly fine.
The exception is CoreAVC (2.5.5) which looks buggy with interlaced content. Using their bob option instead of hw deint makes it even worse (chokes EVR-CP). I think it's mostly better to keep parsing on for this particular decoder, but even that has its issues (causes wrong field order and still needs FTC with some files).
MPC-HC DXVA decoder has some issues, but I don't think parsing on/off has much effect either way. The Microsoft and PDVD11 decoders are pretty much problem free with these samples. Some startup glitching with MS. Cyberlink (but only with DXVA mode) is probably better also for other reasons (I won't elaborate on those here).
Tested with ATI and hw deint + pulldown detection enabled in CCC. Hopefully Nvidia cards will behave the same with their ivtc driver option enabled (I think they do, but I can't say for sure). The only progressive sample (720p50) is problem free with all decoders.
I focused on DVB-S2/DVB-T/DVB-T2 recordings and DXVA (CoreAVC, Microsoft, MPC-HC, PDVD11 decoders). If someone else wants to expand with other decoders (LAV CUVID, Arcsoft, ffdshow, DiAVC etc.) or samples from other sources (BD, ATSC, ISDB, DMB, Hauppauge HDPVR, DVB-C etc.) feel free to edit the .xlsx or just post your findings here or whatever.
The Discovery HD sample is here (http://www.multiupload.com/QV2UOR1QLO). All other samples used have been uploaded and linked to at some point earlier in the thread, either be me or by someone else. Let me know if you need them and I can try to dig up the links or upload them again.
As usual, all tests were done quickly, and nothing double-checked or proof-read, so there may be mistakes.
nevcairiel
4th May 2011, 08:09
The CoreAVC problem is really CoreAVCs fault - its DXVA mode is still terribly broken, and the field order thing is a long standing issue.
But i'll run some tests myself in CUDA and Software mode, and DXVA mode on NVIDIA, for comparison.
If CoreAVC DXVA would be perfect with parsing on, i would consider making an exception for it, but even with parsing on, its still broken in many cases.
CoreAVC may be one of the best software decoders, but its DXVA implementation is really one of the worst out there.
With my earlier comment on the format descriptions, i mean the entrys in the Stream Selector generated by LAV - the Pin infos will only show something useful when MPC-HC knows the format in question - which it generally really doesn't.
Thanks for the detailed testing, i'll go over it in detail soon.
Skinleech
4th May 2011, 08:13
Hey nev,
Possibly not needed anymore but just to chime in that bitstreaming on 0.24 with my ATI 5450 to my Onkyo 876 all seems good. AC3, THD, DTS & DTS-HD MA all showed up perfectly on the AVR, the only thing I watched last night had an AC3 track which played fine. I've not tested DTS-HD HR or EAC3 yet but can report back on those if needed.
Great work, thank you!
With my earlier comment on the format descriptions, i mean the entrys in the Stream Selector generated by LAV - the Pin infos will only show something useful when MPC-HC knows the format in question - which it generally really doesn't.
OK, but for ac3 in avi files it looks fine and says "Dolby AC3", but in ts files it says "aLaw" for AC3. It also seems weird that one instance of MP2 in ts is reported as "IEEE Float" and the other ones as "0x0004".
If CoreAVC DXVA would be perfect with parsing on, i would consider making an exception for it, but even with parsing on, its still broken in many cases.
CoreAVC may be one of the best software decoders, but its DXVA implementation is really one of the worst out there.
Whatever you decide is fine with me. CoreAVC is currently too buggy for me in either state, so I'll use some other decoder. However, I'm pretty sure I saw some of those issues in CoreAVC software mode as well, not just in DXVA mode. And bob was even worse than hardware deint. Oh well.
nevcairiel
4th May 2011, 08:26
OK, but for ac3 in avi files it looks fine and says "Dolby AC3", but in ts files it says "aLaw" for AC3. It also seems weird that one instance of MP2 in ts is reported as "IEEE Float" and the other ones as "0x0004".
As long as it decodes fine, its nothing to worry about.
Its usually caused by ffmpeg preserving the audio tag from the source files, and not all formats use the same tags - so it causes this. I can override the format tag used in the media type, but its purely cosmetical - most of the time.
I can fix those cases, anyhow. 0x0050 should be the proper type for MP2, the LATM ones look fine however, 0x01ff is the proper type.
Sebastiii
4th May 2011, 09:27
Sounds like you're dealing with the same problem the HK folks are dealing with - your receiver is unable to deal with normal DTS in a DTS-HD frame.
I'll add a small parser soon that can detect if the stream is actually DTS or DTS-HD, and switch to normal DTS mode when appropriate. Right now everything is sent as DTS-HD when the checkbox is on, because that worked perfectly on my AVR.
Thanks :)
Andy o
4th May 2011, 09:36
Sounds like you're dealing with the same problem the HK folks are dealing with - your receiver is unable to deal with normal DTS in a DTS-HD frame.
I'll add a small parser soon that can detect if the stream is actually DTS or DTS-HD, and switch to normal DTS mode when appropriate. Right now everything is sent as DTS-HD when the checkbox is on, because that worked perfectly on my AVR.
ah, completely missed those posts, they're very similar to my problem. Another thing to check when I update the firmware. If Samuri is not having this problem I guess there's a good chance Pioneer fixed it at some point.
Reading your posts makes me realize how much of a noob I have inside me... :)
I'm coming for a much more simple question, which is how Windows (7 particularly) chooses splitter for a given extension... My findings are quite simple... it searches for the extension in registry ([HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Media Type\Extensions]). If found, it uses splitter defined there... if not, it makes a simple list of compatible splitters installed, and chooses in a merit base... Please correct me if I'm wrong.
I ask because I realized today that Cyberlink MPEG Splitter was still handling my .mpg files (also .mp4), despite I set LAV Splitter to do so during installation. I then went into registry and didn't see that extesions. Then I saw that Cyberlink splitters had higher merit than LAV Splitter... I just then changed LAV Splitter merit and reboot. After that, LAV Splitter started to handle all those extensions...
Nev, what do you do during installation so LAV Splitter handles filetypes choosen?
nevcairiel
4th May 2011, 10:25
For the "common" types i only register the byte markers (MKV, MP4, AVI, MPEG-TS/PS). The installer can in addition register the extensions for some "rare" types. I have been thinking if i should make the installer add the extension entry for the common formats as well, and i think i'll be doing that for the next version, as it makes it alot easier for people to use.
In any case, there really isn't a "fool proof" way to register a splitter. If you have alot of other splitters installed, there is always a chance that one might be stronger. Its usually up to the player to offer proper configuration.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.