View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
nevcairiel
19th March 2012, 17:20
Does it indicate that it's GPU or driver related issue?
Its possible, but without reproducing such a problem its really hard to say.
fairchild
19th March 2012, 17:33
Hey, nev, not sure if you saw my post about some blu-ray discs not playing, I tried to use PotPlayer and it's internal splitter filter which loads up as HDMV Playlist Source and it sees the 2 audio streams but it contains no audio. (The girl who played with fire and the girl who kicked the hornets nest Blu-rays) So I guess it's a stubborn disc that is hard to split right or something. Cyberlink PowerDVD 11 works fine with the disc, but of course I prefer to run your filters + MadVR + reclock.
nevcairiel
19th March 2012, 18:08
Hey, nev, not sure if you saw my post about some blu-ray discs not playing, I tried to use PotPlayer and it's internal splitter filter which loads up as HDMV Playlist Source and it sees the 2 audio streams but it contains no audio. (The girl who played with fire and the girl who kicked the hornets nest Blu-rays) So I guess it's a stubborn disc that is hard to split right or something. Cyberlink PowerDVD 11 works fine with the disc, but of course I prefer to run your filters + MadVR + reclock.
You can try to cut a sample of the m2ts file (the larger the better). I have the german release of those discs (se/en/de audio), and those play fine.
The SphereX
19th March 2012, 18:10
Hi there!
I use ffdshow for displaying SRT subtitles and both for progressive and interlaced video the MPC-HC playback is fine. Unfortunately ffdshows VobSub implementation is still buggy (and may always be?) and at least for me not useable ("disappearing subs problem"). So I have to use DirectVobSub in this case. For progressive video there are no problems, but interlaced video is suddenly played back as if it wasn't deinterlaced correctly. Kind of a motion blur or film effect as with blend-deinterlacing.
So to sum things up:
> LAV Video Decoder (NVidia Cuvid) --> ffdshow (SRT subtitles) --> VMR7: perfect playback (motion flow)
> LAV Video Decoder (NVidia Cuvid) --> ffdshow (VobSub subtitles) --> VMR7: perfect playback, but disappearing subs
> LAV Video Decoder (NVidia Cuvid) --> vsfilter (VobSub subtitles) --> VMR7: proper subtitling, but with motion blurred video
In both scenarios the same interlaced video file was used, only the subtitle format was different. My workaround until now is to do a VobSub --> SRT conversion, so i can completely abandon vsfilter. But that's of course not a perfect solution and very time consuming, too. So what's wrong here?
Greetz,
The SphereX
nevcairiel
19th March 2012, 18:13
Sounds like vsfilter is applying a very cheap deinterlacing itself.
magic144
19th March 2012, 18:40
@The_SphereX - is vsfilter altering the colour space in any way? - I'm wondering if you're relying on the graphics card doing the deinterlacing and requiring NV12, but the introduction of vsfilter is possibly changing things? I think I've seen that kind of thing before.
Superb
19th March 2012, 18:41
Hi there!
I use ffdshow for displaying SRT subtitles and both for progressive and interlaced video the MPC-HC playback is fine. Unfortunately ffdshows VobSub implementation is still buggy (and may always be?) and at least for me not useable ("disappearing subs problem"). So I have to use DirectVobSub in this case. For progressive video there are no problems, but interlaced video is suddenly played back as if it wasn't deinterlaced correctly. Kind of a motion blur or film effect as with blend-deinterlacing.
So to sum things up:
> LAV Video Decoder (NVidia Cuvid) --> ffdshow (SRT subtitles) --> VMR7: perfect playback (motion flow)
> LAV Video Decoder (NVidia Cuvid) --> ffdshow (VobSub subtitles) --> VMR7: perfect playback, but disappearing subs
> LAV Video Decoder (NVidia Cuvid) --> vsfilter (VobSub subtitles) --> VMR7: proper subtitling, but with motion blurred video
In both scenarios the same interlaced video file was used, only the subtitle format was different. My workaround until now is to do a VobSub --> SRT conversion, so i can completely abandon vsfilter. But that's of course not a perfect solution and very time consuming, too. So what's wrong here?
Greetz,
The SphereXWhy don't you simply use MPC-HC's internal subtitle filter?
Also, did you try xy-VSFilter?
linzki
19th March 2012, 18:55
I had freezing problems too, but then i uncheked LAV video decoder > codecs for HW decoding > MPEG-4
That solved my freezing problem.
mark0077
19th March 2012, 19:04
Hi guys, does anyone get blockyness during playback using the Microsoft DMO decoder. I'm using Windows 8 CP so perhaps the problem is specific to windows 8? Just curious to know if I'm the only one having issues or if theres a way around them as I'd love to use it.
I can't use the CUVID vc-1 decoder on my nvidia card because.. well its pretty much the same, ie corrupt / blocky playback during fast scenes. I'll use the non microsoft software decoder in lav for the time being.
fairchild
19th March 2012, 19:11
You can try to cut a sample of the m2ts file (the larger the better). I have the german release of those discs (se/en/de audio), and those play fine.
What software do you recommend to do this? I'm willing to do it but a quick google search didn't net me any freeware programs that will cut a part from an m2ts file.
nevcairiel
19th March 2012, 19:26
DGSplit is a pretty simple binary spitter.
The SphereX
19th March 2012, 19:28
@magic144
I definitely must rely on, respectively use hardware deinterlacing, because I only got an NVidia ION system with Intel Atom CPU. But that's usually not a problem at all. It works great almost all the time, except in this particular situation with vsfilter. Actually NV12 color space should be used for hardware deinterlacing, but strangely the whole filter chain is done in YV12 according to GraphStudio. So that's what vsfilter uses, too. No altering done.
@Superb
I've never been able to use the MPC-HC internal subtitle filter, because generally it only works for me with VMR9, although MPC-HC states VMR7 (renderless) is suited, too. But unfortunately VMR9 doesn't produce watchable results with my system, and never has (stuttering playback, tearing ...). And "YES", I also tried xy-VSFilter, because of the NV12 color space, that was added. But as I mentioned earlier, YV12 is used instead. So sadly I got the same result with xy-VSFilter as with the original one :confused:.
Greetz,
The SphereX
fairchild
19th March 2012, 20:04
DGSplit is a pretty simple binary spitter.
Ok that worked fine, I have a 50mb 45 second clip. Now the funny part is, the split file works just fine Lav Filters is properly splitting + decoding both the video and audio.
Will the split file still help you even though the issue is not occurring?
I just tested and if I open the actual .m2ts file in the BDMV\STREAM folder, then it properly splits the movie without a problem and has working audio. So I suppose the bug is somewhere when you try to open it through the media player's Blu-ray disc playlist method?
[ReX]
19th March 2012, 20:30
I can't play this (http://www.mediafire.com/?xx3laeiam444xlk) video with DXVA enabled.
Switches between frames like this one (most of the time) and normal frames.
http://i.imgur.com/1pKg2l.jpg (http://i.imgur.com/1pKg2.jpg)
nevcairiel
19th March 2012, 20:31
I just tested and if I open the actual .m2ts file in the BDMV\STREAM folder, then it properly splits the movie without a problem and has working audio. So I suppose the bug is somewhere when you try to open it through the media player's Blu-ray disc playlist method?
Thats odd.
I guess it may be possible that the actual playlist prepends some short stream without audio that shows some kind of logos or stuff like that, and it picks up stream info from there.
Does playing via the .bdmv and via the m2ts give slightly different starts, or anything like that?
fairchild
19th March 2012, 20:44
Thats odd.
I guess it may be possible that the actual playlist prepends some short stream without audio that shows some kind of logos or stuff like that, and it picks up stream info from there.
Does playing via the .bdmv and via the m2ts give slightly different starts, or anything like that?
Yes, through the 18.7GB .m2ts file, it starts slightly ahead and it's run time is 2h 26m 57s
while when playing through the index.bdmv it starts with a short intro and the Music Box logo and the run time is 2h 27m 11s
But this is definitely not a problem for me, as for this disc I will just open through the actual .m2ts file and presto I get the proper audio streams. :)
nevcairiel
19th March 2012, 20:46
;1566082']I can't play this (http://www.mediafire.com/?xx3laeiam444xlk) video with DXVA enabled.
Thats a 16 ref frame file. It should work on most hardware, but its no guarantee, especially some ATI cards may still have issues with such files. Upgrading your drivers may help.
Plays fine here on NVIDIA.
nevcairiel
19th March 2012, 21:01
But this is definitely not a problem for me, as for this disc I will just open through the actual .m2ts file and presto I get the proper audio streams. :)
I would still like to fix it, guess i'll order the disc. Its not the first time an issue like this came up, but at least its no question which disc exactly it is this time. ;)
fairchild
19th March 2012, 21:39
I would still like to fix it, guess i'll order the disc. Its not the first time an issue like this came up, but at least its no question which disc exactly it is this time. ;)
Is there anything else I can do to be 100% certain before you go out and buy the disc, I'd hate for you to spend the money on a disc that you already have then it turns out it's something else. :)
I picked this one up and The Girl who Played with Fire on sale at blockbuster for $1.99-3.99 each, don't remember the price, I've bought so many (previously viewed not brand new).
[ReX]
19th March 2012, 22:12
Thats a 16 ref frame file. It should work on most hardware, but its no guarantee, especially some ATI cards may still have issues with such files. Upgrading your drivers may help.
Plays fine here on NVIDIA.
It's an Intel GM45, so I guess I'm lucky that it can even play most DXVA content. :p
CruNcher
19th March 2012, 23:40
;1566094']It's an Intel GM45, so I guess I'm lucky that it can even play most DXVA content. :p
Seems to be the same problem that is torturing Levs Quciskync DXVA Native implementation currently the coming CoreAVC 3.1 will have it fixed for GT1/GT2 @ least :)
You could try Cyberlink or Arcsofts Decoder they also have no issues on Quicksync @ least might be the same for GM45
Would be interesting to see if you get the same issues as explained here with those streams :) https://forum.doom9.org/showpost.php?p=1564452&postcount=9794 and Nevs DXVA Decoder on your GM45 especially the not ref frame related issues :) (crash,green screen,decodinerror and blu-ray problem)
roytam1
20th March 2012, 03:09
libav has ZeroCodec and RALF(Real Audio Lossless) support today, so please support them in LAV as well. Thanks. :)
Midzuki
20th March 2012, 04:03
What about supporting VC-1 elementary streams? :devil:
You see, VC1ESparser.dll sucks, ArcDemux.ax is far from perfection, and only recently I've learned how to stop Mplayer's fontscanningmania :mad: once and for all :cool: :D
SamuriHL
20th March 2012, 05:01
Alright I finally broke down and decided to retire the x2 4200 in my bedroom machine and ordered a sandy bridge i5. Yes I know ivy bridge is coming in a few weeks but that's why I was able to get an upgrade fairly cheap. I'll most likely be keeping the nvidia 450 in there. I'll be happy to have a faster processor in there that can decode video properly. This should be fun. I guess I'll have to test the Intel decoder vs the cuvid stuff now. :) I can't wait!
Sent from my Xoom using Tapatalk
nevcairiel
20th March 2012, 13:20
What about supporting VC-1 elementary streams? :devil:
Elementary streams should play if you enable "rawvideo" in the LAV Splitter configurations. Seeking will probably not work, though.
[ReX]
20th March 2012, 13:56
Would be interesting to see if you get the same issues as explained here with those streams :) https://forum.doom9.org/showpost.php?p=1564452&postcount=9794 and Nevs DXVA Decoder on your GM45 especially the not ref frame related issues :) (crash,green screen,decodinerror and blu-ray problem)
Video #1: I can see some of the video but blocking (http://i.imgur.com/3Agjd.jpg) happens (pretty much the same as the video I posted earlier).
Video #2: I got this (http://i.imgur.com/EnTw5.jpg) in the middle of the video.
Video #3: This one is really bad (http://i.imgur.com/kuk0N.jpg), the image shows a little at the beginning and comes back only once.
Video #4: I get jerky playback and lots of corruption. But if I seek it to anywhere but the beginning, it plays fine after a short while.
Video #5: Green screen. No crash.
Video #6: Green screen.
Video #7: I got this (http://i.imgur.com/alonR.jpg) once, with both native and copy-back DXVA.
Video #8: Some problem as the previous video, blocking but not covering the entire frame.
Skibicki
20th March 2012, 14:02
Also, did you try xy-VSFilter? Yes, it worked. Thanks.
Midzuki
20th March 2012, 14:25
Elementary streams should play if you enable "rawvideo" in the LAV Splitter configurations.
0_o
But thanks for answering. :thanks:
MSL_DK
20th March 2012, 15:05
Indeed. Thats MPC-HCs doing, request the feature there.
There is also ITrackInfo which can be used to get only the title and/or language without all the codec information from IAMStreamSelect
Then I do not understand that it is shown with the internal splitter (MPC Matroska Source)
http://img809.imageshack.us/img809/5148/eg1vv.jpg (http://imageshack.us/photo/my-images/809/eg1vv.jpg/)
nevcairiel
20th March 2012, 15:39
Then I do not understand that it is shown with the internal splitter (MPC Matroska Source)
Who knows, but there isn't anything i can do. LAV exports the stream title over all available ways. Request the feature with MPC-HC.
sneaker_ger
20th March 2012, 15:44
Elementary streams should play if you enable "rawvideo" in the LAV Splitter configurations. Seeking will probably not work, though.
Does anyone know how to get it to work with H.264 ES?
The player will resize to actual resolution, but the picture is black and paused.
MSL_DK
20th March 2012, 17:42
Who knows, but there isn't anything i can do. LAV exports the stream title over all available ways. Request the feature with MPC-HC.
Where is the best place to do this? http://sourceforge.net/apps/trac/mpc-hc/report/9 or http://forum.doom9.org/showthread.php?t=123537
Pat357
20th March 2012, 18:48
Elementary streams should play if you enable "rawvideo" in the LAV Splitter configurations. Seeking will probably not work, though.
Yes, but I still get much "stalls" upon opening streams H.264 streams this way.
The player stays in pause at the beginning of the H.264 file, this with a black screen.
nevcairiel
20th March 2012, 18:50
Yes, but I still get much "stalls" upon opening streams H.264 streams this way.
The player stays in pause at the beginning of the H.264 file, this with a black screen.
We were talking about VC-1. :P
Pat357
20th March 2012, 18:56
Does anyone know how to get it to work with H.264 ES?
The player will resize to actual resolution, but the picture is black and paused.
I have this problem for months now, but never found a solution to make this work with Lav-splitter.
I got so tired of it that I went for AVsplitter and I'm using this just to open H264 ES. (you can configure it like this).
All streams, except H264 ES, are still handled by Lav-splitter.
PS : if you put the H264 ES in a container (format doesn't matter : MKV, MP4,...) it works with LAV-splitter and you can even seek and do frame-stepping)
Mercury_22
20th March 2012, 19:36
Nev is switching programs (second video in the same file) meant to work only with Blu-rays or it's working in single ts/m2ts files too ? Cause it's not working for me in single files
nevcairiel
20th March 2012, 19:46
Video Stream switching works just fine in any container, assuming its muxed properly to support switching.
PS:
Different programs in mpeg-ts are not supported, but you should just not see the streams of other programs.
PPS:
I would hope people know how to report bugs by now. :rolleyes:
"It doesn't work" is not helpful. :p
Mercury_22
20th March 2012, 20:07
Video Stream switching works just fine in any container, assuming its muxed properly to support switching.
PS:
Different programs in mpeg-ts are not supported, but you should just not see the streams of other programs.
PPS:
I would hope people know how to report bugs by now. :rolleyes:
"It doesn't work" is not helpful. :p
I'm uploading right now but it takes forever I'll edit my post with the link :o
So neither second audio isn't supposed to show in a ts file?
EDIT: Finally sample (http://www.mediafire.com/?5n9qxs2hud6zeb2)
sneaker_ger
20th March 2012, 20:08
I have this problem for months now, but never found a solution to make this work with Lav-splitter.
I got so tired of it that I went for AVsplitter and I'm using this just to open H264 ES. (you can configure it like this).
All streams, except H264 ES, are still handled by Lav-splitter.
PS : if you put the H264 ES in a container (format doesn't matter : MKV, MP4,...) it works with LAV-splitter and you can even seek and do frame-stepping)
So it's not just me, then. Thx. I'll try AVsplitter.
nevcairiel
20th March 2012, 20:25
I can probably somehow fix H264 ES playback, but that still doesn't give you seeking.
PS:
If i just take a existing ts/mkv/... file and demux the video with eac3to, the resulting file plays just fine.
How do you produce your files that don't work? :d
nevcairiel
20th March 2012, 20:48
I'm uploading right now but it takes forever I'll edit my post with the link :o
So neither second audio isn't supposed to show in a ts file?
EDIT: Finally sample (http://www.mediafire.com/?5n9qxs2hud6zeb2)
Its the exact case as i thought it would be.
Two completely separate programs in the .ts file, and LAV does not support switching between them yet.
http://code.google.com/p/lavfilters/issues/detail?id=3
Because stuff gets otherwise jumbled up, only the streams of one program are shown right now.
Maybe i'll try to work on this soon, we'll see.
CruNcher
20th March 2012, 23:30
;1566190']Video #1: I can see some of the video but blocking (http://i.imgur.com/3Agjd.jpg) happens (pretty much the same as the video I posted earlier).
Video #2: I got this (http://i.imgur.com/EnTw5.jpg) in the middle of the video.
Video #3: This one is really bad (http://i.imgur.com/kuk0N.jpg), the image shows a little at the beginning and comes back only once.
Video #4: I get jerky playback and lots of corruption. But if I seek it to anywhere but the beginning, it plays fine after a short while.
Video #5: Green screen. No crash.
Video #6: Green screen.
Video #7: I got this (http://i.imgur.com/alonR.jpg) once, with both native and copy-back DXVA.
Video #8: Some problem as the previous video, blocking but not covering the entire frame.
Perfect exactly the same 1,2,3 are ref frame related (where 3 uses them heavily) 4,5,6,7,8 are unknown all of them are fixed with the next CoreAVC DXVA on Intel :)
Non of those are issues though when using the Quicksync API (Copy Back,Native) except 4 which shows a different issue on 1 frame
Midzuki
21st March 2012, 02:24
How do you produce your files that don't work? :d
.AVS file --> x264.exe --> .264 file :D
Pat357
21st March 2012, 04:49
.AVS file --> x264.exe --> .264 file :D
Yup, that's the way for me too, but I noticed that not all demuxed H264 ES from existing containers (like trailers,..) will start playing.
Msybe you were just lucky with the test you did that succeeded.:p
I'll upload a trailer or something that plays OK, but after demuxing with MKVtoolnix/demuxer, the .264 file does not play anymore.
The player will stall upon opening.
IIRC EAC3to uses the Haali muxer, maybe this could be something ?
CruNcher
21st March 2012, 09:27
As i said Av Splitter (libav) has no issues with parsing all my elementary h264 streams only Lav Splitter (ffmpeg) has ;)
nevcairiel
21st March 2012, 09:31
Like i said, getting them to play is probably easy, i just don't have a sample right now that doesn't play, and i didn't feel like demuxing my whole library to find one.
Seeking could probably be somehow made possible partially, at least on files that have proper fps information in their headers, but seeking in formats without real timestamps is never fun.
CruNcher
21st March 2012, 10:04
yep but the problems are heavier then seeking alone some bitstreams don't play @all that play fine with Av Splitter
nevcairiel
21st March 2012, 10:04
You seem to fail at reading comprehension. Thats what i just said. Give me a sample that fails and i'll see what i can do.
CruNcher
21st March 2012, 10:18
how about all the avc regression compliance test bitstreams of jveg http://www.mediafire.com/?8i8n8x2u77dg2dn i think that's a good start to begin with, which fixes most playback problems further on :)
Av Splitter = works
Lav Splitter = fails
nevcairiel
21st March 2012, 10:34
Fixed, those files seem to lack AUD markers, which confuses the H264 -> AVC1 converter.
I just make those output H264 untouched in Annex B style.
It should really not be required to convert everything to AVC1 style, but stupid ffdshow freaks out if you send it in H264 Annex B style <.<
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.