View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
SamuriHL
5th May 2011, 01:31
I know how that goes. I do NOT envy you one bit.
P.S. When you take it in and if you happen to remember, can you ask if they know of any firmware updates for the 21TXH?
Andy o
5th May 2011, 02:07
OK, will do.
robpdotcom
5th May 2011, 02:19
Thanks, now just to wait for that letter. It's gonna be a mess to disconnect and take out my receiver.
Just remember how much easier it will be now than 10 years ago, before HDMI.
I probably used to have 30 wires coming out the back of my AVR - now I have 5 HDMI, 1 RCA for the subwoofer, and 14 speaker wires with banana plugs. It takes about 30 seconds to unhook everything now.
BTW, back on topic. So far, everything bitstreams perfect with LAVAudio to my Denon. AC3, EAC3, THD, DTS, DTS-HD, DTS-ES, DTS-HD ES.... everything I could find.
nightfly
5th May 2011, 05:26
using .72, and bit-streaming to a GTS 450 to Denon 989
(Update since post: I tested the sample noted below, and it worked ok. The only diff was that before, when I had the problems noted in the screen shot, I was playing off an ISO rip of the BD and did a load file on index.bdmv in order to get LAV splitter to load. I am not using the LAV Splitter Source).
(Update 2: I used Tsmuxer GUI to cut a 2 minute segment from the AnyDVD created ISO of the BD. This works ok via M2TS. I then went back and used Tsmuxer to create another 2 min clip but this time for a BD image and created the BD image and it still works. So the Tsmuxer is somehow fixing the problem. I can't upload the original ~25GB image, so I at a loss on the issue.)
The following clip from Girl Who Kicked the hornets Nest Blu ray. It is H264 with a DD tracks and subtitles. The native language is Swedish, but there is a dubbed English DD track as well.
GirlWhoKickedNest (http://www.megaupload.com/?d=WPQQSCQR)
Using MPC-HC, I get video, but no sound. In fact the LAV audio filter doesn't even load. The subtitles are also not seen/available.
This screen cap with LAV:
http://img810.imageshack.us/img810/3594/lavq.jpg (http://imageshack.us/photo/my-images/810/lavq.jpg/)
With Gabest, plays fine, subs available, both DD show, and the LAV Audio filter loads:
http://img192.imageshack.us/img192/3010/gabk.jpg (http://imageshack.us/photo/my-images/192/gabk.jpg/)
Something I found interesting, although not a bug since it's correctable is that using this clip from Hellboy Golden Army which has a DTS-HD 7.1 track:
Hellboy Sample (http://www.megaupload.com/?d=2K2W433W)
When no video/audio stream parsing is selected in LAV Splitter props, I see "DTS HIGH RES" 5.1 on my Denon. Never seen that before. Selecting a/v parsing in LAV results in "DTS-MA" 7.1.
nevcairiel
5th May 2011, 08:57
I'll check that file out, not detecting streams is always weird..
With the other problem - audio stream parsing is really not meant to be turned off, it'll have some funny side effects. I will remove the option soon again, it was mostly for debugging. But turns out, it was not needed in any case.
Sebastiii
5th May 2011, 09:21
Hi nev :)
Thanks DTS works on my HK but i have a weird issue with my new NVIDIA 460. (old one was ATI).
I have to try latest build but i have seen some crash yesterday night (i need to get the call stack).
I have this strange issue with LAV Audio, it seems haapen when i try to play TrueHD Sample. The Audio HDMI card output disappear (need to switch OFF / ON my avr).
It didn't happen with FFDShow Audio.
I have made my test on Mediaportal with refresh rate changing, but didn't happen with ffdshow audio so, i'm a little disapointed.
I try to explain what is happen : i play sample 24p, my card is set @ 24p. But i can see a one or more little black screen before sample start. I think it's here audio HDMI card shutdown.
So my next test is to disable refresh rate to see what happen.
Will Test on MPC-HC and Graphstudio.
But like i just change my video card and trying LAV Audio, i don't know if it's a bug from Nvidia because on ATI (no LAVAudio Full Testing) didn't see that.
Thanks.
nevcairiel
5th May 2011, 09:23
I have no problems with my NVIDIA GTS 450.
Sebastiii
5th May 2011, 09:37
Thanks, will try to nail it :)
pankov
5th May 2011, 09:38
http://files.1f0.de/lavf/LAVFilters-0.24-72-g8f67c41.zip
- DVB subs fixed
- Minor mpeg-ts seeking improvements
- fixed a crash with ffdshow and the new virtual forced subs stream
Nev,
I've been testing some random .ts recordings today and found a problem with seeking. If I use LAVSplitter every time I try to seek my player simply jumps to the end of the file. If I use Haali's or MPC's Splitters everything is fine.
The strange thing is that if I cut the file with TSPlayer (part of DVBViewer) to a less than ~275MB it starts to work fine.
Since the test files are a little bit bigger than free hostings allow (250 + 275MB) I've put them to my personal FTP and send you login details as PM.
I'll be glad if you can take a look.
nevcairiel
5th May 2011, 09:42
Could you test if they just stopped working in the latest version, in comparison with maybe official 0.24, or if they never properly worked?
I'll look at it later, or over the weekend.
pankov
5th May 2011, 10:29
I've just tested the official 0.24 and a few builds after it including 72 and sadly all have the same problem
:(
nevcairiel
5th May 2011, 10:36
Thanks, at least i don't need to do a regression test then.
pankov
5th May 2011, 10:58
Actually, I'm the one that have to tank you.
I really appreciate all you work.
:thanks:
And saying this I've found one more problematic .ts DVB recording (again at the FTP, cause it's around 500MB). This one doesn't even start with LAV Splitter - refuses to open it while both MPC and Haali's ones play just fine.
btw
All those recordings are some test's I've been doing with DVBViewer so in fact it could the culprit, but on the other hand other splitters work, so I hope you can take a look on it too.
Mark_A_W
5th May 2011, 11:31
Is there a way to get pgs subtitles (from a bluray disc) working with Zoom Player? Or do we need changes in Zoom Player?
Also, I can get PGS subs working in MPC-HC, but with Avatar for instance, I get all the English subtitles, not just the Navi subs. Is there a way to get forced only? The selection in LAVsplitter doesn't seem to work there...
But it's a very good start, thanks heaps Nev!
Navi subs work fine for me in MC16 with LAVSplitter set to just forced subs. One thing I noticed is that some of the Navi Subs stay to long on the screen, eg at 45:15 "Father" says "His alien smell fills my nose" but it just hangs around for 15 seconds through all the English diag till "Mother" speaks in Navi.
neoufo51
5th May 2011, 12:04
Nev, I read in the MPC-HC thread that you may create a LAV Player if people help you out.
While installing SP1 is certainly a good idea for everyone, breaking compilation for people that don't have it is just horrible.
I should really switch players, MPC-HC is a lost cause.. no developers, and enough people that claim to be developers breaking things left and right and arguing pointless semantics..
LAV Player, anyone?
I suggest you make a thread in the software player forum and see if people are interested in making it. I think you will be very surprised at the response you will get from such a thread.
nevcairiel
5th May 2011, 12:07
Navi subs work fine for me in MC16 with LAVSplitter set to just forced subs. One thing I noticed is that some of the Navi Subs stay to long on the screen, eg at 45:15 "Father" says "His alien smell fills my nose" but it just hangs around for 15 seconds through all the English diag till "Mother" speaks in Navi.
Thats a known problem when there are forced subs and normal subs very close to each other (or at the same time) on screen. The other option was having a normal sub leak through, which wasn't very nice either - also it seems to be worse with ffdshow.
Well, its not really a "bad" bug. :p
Is there a way to get pgs subtitles (from a bluray disc) working with Zoom Player? Or do we need changes in Zoom Player?
I have no idea how ZoomPlayer handles subs. I handle them like the MPC-HC splitter and the Gabest splitter handle them - nothing special.
With ffdshow in raw processing mode you should be able to get subs, in any case.
Also, I can get PGS subs working in MPC-HC, but with Avatar for instance, I get all the English subtitles, not just the Navi subs. Is there a way to get forced only? The selection in LAVsplitter doesn't seem to work there...
What format do you have it in? Original Blu-ray?
You can try multiple setting combinations, the best would probably be "Only Forced Subs" in the dropdown, and enable "Auto-Select Forced Subtitles". This works just fine for me on my BD version of Avatar, as well as some other discs.
The alternative option would be to tick the second checkbox in the BD subs section ("Only deliver forced subs" or something like that), and manually select a subtitle stream that seems to work better.
However the first should be the preferred, and hopefully i can improve its functionality over time.
You are using a recent version, something like the recently posted 0.24-72?
I suggest you make a thread in the software player forum and see if people are interested in making it. I think you will be very surprised at the response you will get from such a thread.
Maybe at a later stage, i am still very busy with LAV Filters and other things - once i have all my plans done, i might consider getting more serious with that.
Andy o
5th May 2011, 12:31
Just FYI, my problem that I mentioned before and is pictured here (http://forum.doom9.org/showthread.php?p=1482925#post1482925) is gone now with ffdshow. Apparently it was fixed in one of the more recent versions. With MPC-HC subs it still doesn't show both captions at the same time, only one or the other. So that's one for ffdshow, but it still has some artifacts around the borders of the letters sometimes.
Thats a known problem when there are forced subs and normal subs very close to each other (or at the same time) on screen. The other option was having a normal sub leak through, which wasn't very nice either - also it seems to be worse with ffdshow.
Well, its not really a "bad" bug. :p
Nope it is not all that "BAD" (and much better that have a normal sub leak through)
nevcairiel
5th May 2011, 13:12
Nope it is not all that "BAD" (and much better that have a normal sub leak through)
You know whats funny, that exact clip (00008.m2ts on the disc) was what i mostly used for testing. :D
It directly starts with forced subs, and has plenty scenes of normal and forced subs intersecting (time-wise).
Sebastiii
5th May 2011, 13:43
I made some test @ lunch and the result is .....
Nvidia sucks lol.
I have made my test on lastest git and i have random crash :
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-1.jpg
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-2.jpg
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-3.jpg
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-3-Bis.jpg
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-4.jpg
http://dl.dropbox.com/u/10536084/lav/Crash/Crash-5.jpg
And i have this issue when change Audio or when audio start/stop (happen also with FFDShow) -->> My screen goes to black few ms (500 ms) i think (no refresh rate set).
I have only my DVI/HDMI to my AVR linked to my VP (Sanyo Z3000). All is ok with ATI so it seems that it's NVIDIA issue.
Also really need to flush audio, because after some test on few sample. DD / DTS/ DD+ didn't work :(
nevcairiel
5th May 2011, 13:52
Crashes with any reference to avformat-53.dll in the stack are ffmpeg crashes, and most likely a broken file - or a bug in ffmpeg.
Sebastiii
5th May 2011, 14:02
Ok :)
It seems that it happen ramdomly, if it's a broken file, it will be happen always ?
nevcairiel
5th May 2011, 16:49
@pankov:
I fixed the problem with the seeking in that file - it was again a pts wrap point that was in the file. Did i mention how silly mpeg-ts timestamps are? Could've used something bigger then 33bit...
Good news is this fix should work on all files that contain a pts wrap around, just if there are 2, it'll get tricky (more then 26 hours of content)
No idea about the 500mb file yet, ffprobe throws some funny error about "Operation not permitted" o.O
Edit:
Fixed that one as well.
Would it be possible to catch crashes in the ffmpeg libs, like for example VirtualDub does when a codec crashes? Then the filters could show an nice error message and gracefully stop playback. That would be particularly useful for thumbnailing in Explorer, then a crash will no longer take along Explorer.
nevcairiel
5th May 2011, 17:45
Access Violations inside another DLL cannot be caught, at least i wouldn't know how. If anyone thinks he does - feel free to lecture me or point me to a resource to learn. :d
Found this, but dunno if it also works with external DLL:
http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/1d4563ea-64b2-4878-aa48-e9a0040b5aa9/
nevcairiel
5th May 2011, 18:32
Hm, worth a try i guess.
Guys, build question. Got FFmpeg built with 4.6.0 (don't ask, I had something bad wrong with 4.5.2). Libbluray builds fine too with VC++ Express. However, LAVaudio/LAVSplitter (.rc) are looking for AFXRES.H. Express won't allow me to edit the RC and I guess, doesn't have this header?
Error: LAVAudio.rc(10): fatal error RC1015: cannot open include file 'afxres.h'.
Ideas?
nevcairiel
5th May 2011, 18:41
Hm, worth a try i guess.
Nope, seems to only work for errors that are actually thrown from C++ code, not from C code from GCC.
Anyhow, crashes are real bugs, and silently catching them doesn't help in resolving them. Rather have the user notify me, and if its in ffmpeg, i can report it to them, or fix it myself.
Like i said, i havent seen a ffmpeg crash for a while myself, so i actually suspect Sebastiii's build is faulty.
Error: LAVAudio.rc(10): fatal error RC1015: cannot open include file 'afxres.h'.
You're missing the MFC includes. Might be that Express just doesn't have them.
btw
All those recordings are some test's I've been doing with DVBViewer
OT:
Speaking of. There is a new option in DVBViewer 4.8.x (http://www.dvbviewer.tv/forum/topic/45388-dvbviewer-pro-48/) that may be of interest:
Add: Recordings : Optional removal of H.264 filler data while recording. (see recording options).
Thanks to forums user Martin K for contributing the concept and code and to Griga for adapting it to the DVBViewer!
Some (not all) HD channels, particularly Das Erste HD, ZDF HD, arte HD and ORF HD, are inserting filler data in the H.264 video stream in order to keep a constant bitrate. The percentage of filler data depends on the broadcasted content. E.g. in low motion scenes 50% or more of the H.264 stream may consist of filler data, and in case of movie opening or closing titles even more than 90%. So removing the H.264 filler data may decrease the size of TS recordings with H.264 content considerably, in some cases to 50% and less.
I wonder how widespread that practice is. The new options are in the "Recorder" and "Timeshift" pages in the options. I've opted to remove the filler data, but my DVBViewer recordings are mostly tests anyway (I use enigma2 for regular PVR needs).
nevcairiel
5th May 2011, 18:48
Sounds like this might've been one problem actually. It was reading some data, and there were empty PES packages in there, so it didn't recognize them, because technically a PES with no payload and no adaption field is not valid.
I increased the reading buffer, which is a "fix" of sorts..
The lack of bug reports recently makes me think i can put an official stamp on 0.25 soon. :)
fastplayer
5th May 2011, 18:52
noee, Google says this might help:
http://www.graphicscode.com/Articles/VCExpressGotchas.html#RC1015
Yeah, I got it. I had to manually update the .RC files:
//#include "afxres.h"
#include <windows.h>
#ifndef IDC_STATIC
#define IDC_STATIC (-1)
#endif
So, with that change (or if you could find the afxres.h), VC++ Express seems to work fine.
CruNcher
5th May 2011, 20:34
Nev i found another interoperability problem with VC-1 in .mkv muxed by mkvmerge some files playback fine as long as timestamp correction is not used therfore others get unsync and if you enable timestamp correction the other VC-1 mkv fail to playback (sound plays no video black screen) (tested with LAV CUVID). Gonna upload 2 samples that show this dependency later :(
Those where muxed 1 with "Cest le Bon" 2.9.8 and the other with "Die Wiederkehr" 4.4.0
nevcairiel
5th May 2011, 20:57
Can't fix every broken file out there - some are just broken, but i'll have a look when you have samples.
tetsuo55
5th May 2011, 21:03
We need a video validator/fixer, like we have for mp3 in foobar2000
nevcairiel
5th May 2011, 21:28
Another build for the night
http://files.1f0.de/lavf/LAVFilters-0.24-74-gb51a6ad.zip
- Removed Generate Timestamps and Audio Parsing options, as those really only break things.
- Fixed seeking in MPEG-TS with pts wrap arounds
- Increased mpeg-ts parsing buffer which should hopefully make it detect more files with weird stuffing bytes at the start.
Thanks to pankov for the samples that helped resolve the mpeg-ts problems.
Due to the lack of bug reports over the last day or so, there will be the official 0.25 soon.
That'll be a lengthy changelog, and announcement text...
SamuriHL
5th May 2011, 21:34
I can't build right now. :( My VS 2010 install is really screwed up. The SP1 install I did last night claimed it was successful even though I watched it roll back (WTF?). So, I'm reinstalling VS now. On this laptop, it might take a bit.
nevcairiel
5th May 2011, 21:36
did you have the Windows 7.1 SDK installed? There was some funny bug in there that can cause this in the installer..
The 7.1 SDK isn't needed btw, its mostly targeted at VS08, as 7.0a (which comes with VS2010) is mostly the same as 7.1
SamuriHL
5th May 2011, 21:46
I think I do have 7.1 installed yea. You're telling me I'm screwed even with my reinstall (which is now have way done) if I don't remove 7.1? Oh kill me now.
nevcairiel
5th May 2011, 21:53
http://msdn.microsoft.com/en-us/visualc/gg697159
Thats MS error page, those two just dont play well together. I recommend uninstalling the 7.1 SDK, unless you have VS Premium or Ultimate, which are not affected either way.
SamuriHL
5th May 2011, 21:55
Yes, I have premium. It's what I've been using since I installed 2010 a few months ago. Should I still be concerned?
nevcairiel
5th May 2011, 22:02
Nah something else broke then.
pankov
5th May 2011, 22:07
Is there a way to get pgs subtitles (from a bluray disc) working with Zoom Player? Or do we need changes in Zoom Player?
Mark,
I'm a long time user of ZoomPlayer ('mitko' in the inmatrix forum) and I can tell you that PGS subtitles work just fine in ZoomPlayer. Both with DirectVobSub and FFDShow subtitles renderers ... well I prefer the picture of VobSub but that's personal preference ... or probably some settings in the ffdshow config.
pankov
5th May 2011, 22:08
@pankov:
I fixed the problem with the seeking in that file - it was again a pts wrap point that was in the file. Did i mention how silly mpeg-ts timestamps are? Could've used something bigger then 33bit...
Good news is this fix should work on all files that contain a pts wrap around, just if there are 2, it'll get tricky (more then 26 hours of content)
No idea about the 500mb file yet, ffprobe throws some funny error about "Operation not permitted" o.O
Edit:
Fixed that one as well.
nev,
thanks for your hard work and taking the time to fix the problems with .ts files.
I've tested with your latest build and your are right that the big one (550MB) is working fine now but the shorter one with the "BAD_SEEK" in the name is still not OK. There is an improvement I can seek almost anywhere in it but the very end. Everything past 4:36 is unreachable ... even worse is that the video and audio stops at that moment and only the timeline continues till 4:57 (for 20 seconds more). With the other two splitters it's working fine. I accidentally caught this problem cause I tried to seek in the original bigger file and it didn't work.
Looking pretty good. Running though my test files with .74 I get a situation where the forced subs PGS stream is being created but not selected on just some files (but it is on BD Playback and if I play the associated M2TS files directly). I have two examples, one is m2ts Camcorder footage (where the subs hold the timecode) and another is a MKV mux of a BD Disk. Let me know if you want screen shots, sample file etc.
nightfly
5th May 2011, 22:22
I think I do have 7.1 installed yea. You're telling me I'm screwed even with my reinstall (which is now have way done) if I don't remove 7.1? Oh kill me now.
You can switch what the "current" SDK in use is by using the SDK config tool in the app folder under program files. I use this mechanism to move between WSDK version 7.0a and 7.1.
nevcairiel
5th May 2011, 22:28
VS2010 configures the SDK on a per project basis.
SamuriHL
5th May 2011, 22:36
I reinstalled 2010 Premium and the SP1 install succeeded without a bunch of "rolling back" messages. What I don't get is if it rolled back, why the hell did it still bump up the version and tell me it was "successful"?? So yea, I think that's what broke my install. I'm about to rebuild a bunch of projects now that it's installed and upgraded.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.