View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
Boltron
6th January 2012, 14:47
OK thank you, I will tonight and get right back to you.
ageback
6th January 2012, 14:53
How can I build IntelQuickSyncDecoder.dll?
The current build batch file doesn't generate this.
bjd
6th January 2012, 15:27
Lately I have been having problems seeking (by chapters usually) in many of my mkv movies. I finally decided to investigate and it seems to be caused by Lav 43. I went back to Lav 42 and it works fine.
I have the same issue although it only happens on .mkv with a forced .srt stream and seems to be just searching by chapters.
Anyway, try this, if you can:
http://files.1f0.de/lavf/LAVFilters-...8-g2596e21.zip
I just have, this did not fix the problem
nevcairiel
6th January 2012, 15:58
I have the same issue although it only happens on .mkv with a forced .srt stream and seems to be just searching by chapters.
Thanks, the subtitle hint helped, i managed to reproduce it on one file. The problem seems to be when subtitles are spread way too thin around the file, it would occasionally take really long to find one.
I basically changed it to not look for subtitles, and instead just assume they'll show up when they do. ;)
Give this a try:
http://files.1f0.de/lavf/LAVFilters-0.43-68-g049ef73.zip
bjd
6th January 2012, 16:27
I basically changed it to not look for subtitles, and instead just assume they'll show up when they do.
Give this a try:
http://files.1f0.de/lavf/LAVFilters-...8-g049ef73.zip
Thanks for the quick fix - working fine again now
nevcairiel
6th January 2012, 17:25
Is it possible to at support for Dirac ? (is open format, sources are available and free to use)
Done.
Pat357
6th January 2012, 18:20
Nev, if you would like a sample of a Dirac video, just say the word(s) :D
For decoding this video format, is it a matter of just enableling Dirac, or is there more involved ?
I gues (but could be wrong) in the worst cause you'd need to add the Schroedinger sources (free available) and compile these in in Lav-video.
But because FFmpeg already supports dirac video decoding, maybe things are a lot less cumbersome.
Damn, Nev, you are really fast !! :D
nevcairiel
6th January 2012, 18:56
- It seems 16 ref frames are not properly supported. Sometimes you can get some seconds of proper playback, but it hangs the player shortly afterwards. Or it hangs the player without showing a single frame.
I couldn't find a file with such problems, got any link to a known broken file?
Its possible that this was caused by a multi-threading bug in the decoder. I disabled the multi-threading parts for the time being.
Please re-test with the build below, and if it still happens, a link would be great.
nevcairiel
6th January 2012, 19:04
Another test build, something i consider a release candidate:
http://files.1f0.de/lavf/LAVFilters-0.43-70-g8105d18.zip
It contains an updated version of the Intel decoder which fixes a bug with mid-stream AR changing and some other minor fixes.
In addition, my integration of the decoder has been greatly improved, and most known issues resolved. The only issue remaining is that after seeks sometimes it can show a bit of corruption, but thats really nothing big, IMHO. :P
Ideally thats something the splitter should avoid by sending enough data, which is a topic i will address in LAV soon'ish. MKVs should hopefully already work pretty good, its mostly MPEG-TS that should suffer from this (and other some other formats)
A full changelog will follow with the release, i'm mostly looking for feedback on the Intel decoder right now. :)
nevcairiel
6th January 2012, 19:52
Hi Nevcairiel, I splitted the stream in chunks of 25M, the first chunk is processed with haali media source which exposes just the 4 commentary tracks. The successive chunks are instead processed by lav splitter and all 6 tracks are correctly recognised, two as DTS-HD 7 channels, and work good. There must be something wrong at the very beginning of the stream. BTW it's just "the two towers", disk 1 and 2 which presents this problem.
Here are the first chunks:
1st chunk 25M (http://www.megaupload.com/?d=BD5C3F8Q)
2nd chunk 25M (http://www.megaupload.com/?d=1MJ8MNC4)
I downloaded both chunks, and they seem to identify both just fine, and i properly get audio. :)
I had to enable the expand 6.1 to 7.1 option, though, for some reason the Windows mixer doesn't like downmixing 6.1 to stereo. :p
Please re-test with the test version posted just above this post ^
(Or with 0.44 once its available)
nevcairiel
6th January 2012, 20:13
I tried the QuickSync version but unfortunately it doesn't work with a pre-Sandy Bridge i5 (Arrandale). It just says "not supported" and even if I do select it, CPU usage is unaffected.
How odd, i would've thought it works.
That thing has a Intel GPU (not just CPU), and the GPU is being used, right?
Which driver version? I would recommend a update, the 2559 version is what i'm running, but granted thats on a SNB. ;)
STaRGaZeR
6th January 2012, 20:24
I couldn't find a file with such problems, got any link to a known broken file?
Its possible that this was caused by a multi-threading bug in the decoder. I disabled the multi-threading parts for the time being.
Please re-test with the build below, and if it still happens, a link would be great.
I just found something interesting thanks to your post. Get this clip (http://www.multiupload.com/96E38TN3HI). With MT enabled it works, with it disabled it doesn't (hangs in second 4 or so). However, even with MT, if you seek several times you can hang the player too.
Everything else I reported is fixed. Great work on the seeking BTW. Was going to report that a 2500x1700 or something clip didn't quite work as it should, but you disabled >2048 :P
I also found a bit of corruption in the VC-1 Matrix BD, at 00:50:35, when Morpheus kicks Neo. Guess this is a bug in the driver or the hardware, so meh.
On a side note, it'll be nice for the installer overhaul you have planned that when updating LAV the installer didn't overwrite the settings. It's easy to restore them with a .reg file, but for joe average can be a nuisance :p
nevcairiel
6th January 2012, 20:39
I just found something interesting thanks to your post. Get this clip (http://www.multiupload.com/96E38TN3HI). With MT enabled it works, with it disabled it doesn't (hangs in second 4 or so). However, even with MT, if you seek several times you can hang the player too.
How odd that it works with multi-threading, its just a thing in the interface to the decoder. Well, i'll report it to the author of the decoder, and we'll see what happens.
I also found a bit of corruption in the VC-1 Matrix BD, at 00:50:35, when Morpheus kicks Neo. Guess this is a bug in the driver or the hardware, so meh
Yeah we've reported quite a few VC-1 issues to the Intel driver team, but most of them seemed to only occur with Interlaced material. Anyhow, nothing that i can directly influence, so yeah, meh.
STaRGaZeR
6th January 2012, 21:16
Nice. Have you tried DVBViewer with QS? The corruption seems a lot more pronounced when changing channels, not minor at all in my book heh :p. Also one of the H.264 channels shows a black screen for 20-30 seconds, then it plays correctly.
nevcairiel
6th January 2012, 21:27
Have you tried DVBViewer with QS? The corruption seems a lot more pronounced when changing channels, not minor at all in my book heh :p.
Well, the only thing that can really be done is try to not show an image until the corruption is gone, which with live tv doesn't really help you, you still have to wait. ;)
Also one of the H.264 channels shows a black screen for 20-30 seconds, then it plays correctly.
Possible that its not sending a SPS/PPS, or might be a bug .. maybe i have on of those, gotta check
Edit: Seems i have one of those, hehe. Lets see!
Seems to happen on MPEG-2 > H264 changes, but not on H264 -> H264 changes, how odd.
nevcairiel
6th January 2012, 21:42
Found the reason for the 20-30 seconds delay, will get fixed i hope. :)
DragonQ
6th January 2012, 22:01
How odd, i would've thought it works.
That thing has a Intel GPU (not just CPU), and the GPU is being used, right?
Which driver version? I would recommend a update, the 2559 version is what i'm running, but granted thats on a SNB. ;)
Yes, the laptop doesn't have a separate GPU and I have the latest Intel HD Graphics drivers.
kolak
6th January 2012, 22:16
Is it possible to implement v210 or v410 or RG48 output?
What is Y410 is it 10 bit 4:4:4 YUV?
nevcairiel
6th January 2012, 22:19
Is it possible to implement v210 or v410 or RG48 output?
Possible, sure, useful ... why?
The formats currently implemented are the recommended 8, 10 and 16 bit formats by Microsoft, and while RGB48 might be useful, what can actually use it?
What is Y410 is it 10 bit 4:4:4 YUV?
Yes.
http://msdn.microsoft.com/en-us/library/windows/desktop/bb970578(v=vs.85).aspx
nevcairiel
6th January 2012, 22:59
Also one of the H.264 channels shows a black screen for 20-30 seconds, then it plays correctly.
Use this:
http://files.1f0.de/lavf/IntelQuickSyncDecoder-fix1.zip
It should also take care of the 16 ref-frame issue.
For anyone building their own version, the DLL is currently slightly modified with two fixes, egur knows about them and hopefully also commits them to the repository "soon".
STaRGaZeR
6th January 2012, 23:53
Yes, the laptop doesn't have a separate GPU and I have the latest Intel HD Graphics drivers.
Do you have the dll in its proper place?
Use this:
http://files.1f0.de/lavf/IntelQuickSyncDecoder-fix1.zip
It should also take care of the 16 ref-frame issue.
Gone is the 20 second issue :)
No issues after torturing some 16ref stuff either! :)
Boltron
6th January 2012, 23:56
I am happy to report that with LAVFilters-0.43-70-g8105d18 my seeking issues are gone. Thanks Nev.
DragonQ
7th January 2012, 00:25
Do you have the dll in its proper place?
Erm...I think I just downloaded the ZIP, extracted it somewhere and then ran the install.bat files. I left the DLL in the folder where the rest of the LAV Filters files are.
mindbomb
7th January 2012, 04:23
I have a few questions about the intel hardware acceleration.
it is for h264, vc-1, and mpeg 2, same like cuvid?
or just h264?
nevcairiel
7th January 2012, 10:02
I have a few questions about the intel hardware acceleration.
it is for h264, vc-1, and mpeg 2, same like cuvid?
or just h264?
It supports all 3.
That was one question btw, not "a few". :p
roytam1
7th January 2012, 11:13
It supports all 3.
That was one question btw, not "a few". :p
Sorry to bother you but did you forget to push your ffmpeg.git up?
I can't checkout new submodule updates:
/d/lavfsplitter$ git submodule update
fatal: reference is not a tree: 197257ad2a8a9f6eee9e64e9f45655b72a3ac1ee
Unable to checkout '197257ad2a8a9f6eee9e64e9f45655b72a3ac1ee' in submodule path 'ffmpeg'
nevcairiel
7th January 2012, 12:10
Fixed
Superb
7th January 2012, 12:19
@nevcairiel: I wonder, are you trying to push some of your local ffmpeg changes/fixes to the official ffmpeg trunk, or are they LAV-specific and won't fit there?
nevcairiel
7th January 2012, 13:09
@nevcairiel: I wonder, are you trying to push some of your local ffmpeg changes/fixes to the official ffmpeg trunk, or are they LAV-specific and won't fit there?
There are maybe 2 or 3 changes left that could use pushing, but nothing big. I've already submitted all other push-worthy changes to upstream. I usually wait at least for a while so that i can be sure they work. (Like, one LAV release cycle)
STaRGaZeR
7th January 2012, 15:28
How does Intel HW deinterlacing work? Never tried it TBH. Is it possible to obtain already deinterlaced frames from the QS decoder?
nevcairiel
7th January 2012, 15:29
How does Intel HW deinterlacing work? Never tried it TBH. Is it possible to obtain already deinterlaced frames from the QS decoder?
Yes its possible, but its not implemented yet.
The quality supposedly isn't on par with NVIDIA or ATI though, not sure how it compares to YADIF, so we'll see when its implemented.
DragonQ
7th January 2012, 15:54
Nev, you said that it was now possible to use YADIF with hardware decoding but I can't see any option for this in the Video Decoder settings window.
nevcairiel
7th January 2012, 15:56
Nev, you said that it was now possible to use YADIF with hardware decoding but I can't see any option for this in the Video Decoder settings window.
why would there need to be a new option?
Just activate it.
rack04
7th January 2012, 16:36
The Intel QuickSync decoder shows unavailable with my setup. Any thoughts?
http://i11.photobucket.com/albums/a199/rack04/LAVVideo.jpg
http://i11.photobucket.com/albums/a199/rack04/CPUZ.jpg
nevcairiel
7th January 2012, 16:44
The Intel QuickSync decoder shows unavailable with my setup. Any thoughts?
You need a H67 or Z68 board, and a screen connected to the onboard GPU. I also have no idea how it works with Virtu, if you run that.
Also, recent drivers help.
If you run a dedicated GPU, you can try to setup a "fake" screen on the Intel GPU following this guide:
http://forum.doom9.org/showthread.php?p=1532786#post1532786
rack04
7th January 2012, 16:59
You need a H67 or Z68 board, and a screen connected to the onboard GPU. I also have no idea how it works with Virtu, if you run that.
Also, recent drivers help.
If you run a dedicated GPU, you can try to setup a "fake" screen on the Intel GPU following this guide:
http://forum.doom9.org/showthread.php?p=1532786#post1532786
Does it matter that this is a laptop using the laptop display? I have a core i5-2540m with latest drivers.
DragonQ
7th January 2012, 17:23
why would there need to be a new option?
Just activate it.
Erm, activate what? I have YADIF enabled but when CUVID is enabled, so is hardware deinterlacing. Do you mean I have to set hardware deinterlacing to "None (weave)"?
nevcairiel
7th January 2012, 17:24
Erm, activate what? I have YADIF enabled but when CUVID is enabled, so is hardware deinterlacing. Do you mean I have to set hardware deinterlacing to "None (weave)"?
Thats kinda obvious, isn't it? :p
You don't want hardware deint, so turn it off.
STaRGaZeR
7th January 2012, 18:28
Yes its possible, but its not implemented yet.
The quality supposedly isn't on par with NVIDIA or ATI though, not sure how it compares to YADIF, so we'll see when its implemented.
Nice to hear that, can't wait to see it implemented.
mindbomb
7th January 2012, 21:15
That was one question btw, not "a few". :p
i was also gonna ask if the new intel atoms would work with this decoder, but then it seemed like a stretch, plus netbooks and nettops are going out of fashion it seems.
nevcairiel
7th January 2012, 21:17
i was also gonna ask if the new intel atoms would work with this decoder, but then it seemed like a stretch, plus netbooks and nettops are going out of fashion it seems.
No it doesn't work. The Atoms don't have the required hardware or instruction set support.
nevcairiel
7th January 2012, 22:35
LAV Filters 0.44
LAV Splitter
- Fixed a seeking regression in the mkv demuxer introduced in 0.43
- Fixed a bug that caused stream descriptions to vanish after the file finished playing
- Improved playback of WMVA video with commercial decoders
- Added support for the new OpenType MIME type produced by mkvtoolnix > 5.2.0
LAV Audio
- Fixed LATM AAC playback with some source filters
LAV Video
- Added Intel QuickSync hardware decoder
- Added support for YADIF with hardware decoding
- Added support for Dirac decoding
- Added support for DNxHD decoding
- Added support for v210/v410 output
- Improved dynamic reconnection with post-processing filters
- Fixed a seeking related corruption issue with MPEG4-ASP
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.44.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.44.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.44-x64.zip)
Intel QuickSync Decoder
The decoder is based on Eric Gur's decoder which is also used in ffdshow.
In theory, it should work with all Intel GPUs since Penryn, however i can only guarantee for Sandy Bridge based GPUs. Note, however, that it only works if the GPU is active, which means you need a monitor connected, or "fake" it.
Its limited to Windows Vista/7, it does NOT work on Windows XP.
For Multi-GPU setups, you can read this:
http://forum.doom9.org/showthread.php?p=1532786#post1532786
For general questions about QuickSync decoding, you can also refer to this thread:
http://forum.doom9.org/showthread.php?t=162442
If it doesn't work for you, the only things i can recommend checking is that the GPU is active and the drivers are up2date.
I do not have many experience with weird setups, i have monitors connected to my Intel GPU, and thus no experience with "fake" setups or Laptops with switchable graphics. You're free to ask, of course, but i cannot help you. :)
For everyone building their own version:
This build is using v0.22 of Erics decoder, which is r18 in his repository.
Known Issues:
- v210 output to madVR does not work properly. I think thats a madVR bug, but i cannot be sure until madshi gets back to me.
Midzuki
7th January 2012, 22:58
From the Changelog.txt:
LAV Video
...
...
- Added support for Dirac decoding
- Added support for DNxHD decoding
...
- Improved dynamic reconnection with post-processing filters
...
Great! :cool:
:goodpost: && :thanks:
kolak
7th January 2012, 23:25
Very great :) :thanks:
but I can't load DNxHD- look like splitter issue, not decoder :(
Works with 8bit DNxHD- is there no 10bit decoding?
update: it's not 10bit problem.
Problematic file is from AE- this seams to be issue.
nevcairiel
8th January 2012, 00:26
Problematic file is from AE- this seams to be issue.
I only had 2 sample files that both worked fine, if something isn't working, provide a sample so i can check it out.
kolak
8th January 2012, 00:51
I also tried another 2 files- 8bit and 10bit from AVID- both were fine. Decoding is in single thread thought and at about 30fps on i7 990x (4GHz).
nevcairiel
8th January 2012, 01:06
Yes, DNxHD is not multithreaded.
kolak
8th January 2012, 01:18
I've reinstalled filters and it works now.
It's quite funny- DNxHD encoder is multithreaded, but decoder not. ProRes is opposite :)
Here is something strange:
I've made AVI Prores file and it works fine except when it's loaded to some software directly it gets decoded in one thread.
When I load same AVI through avisynth (directshow source) than it works fine- all cores are working and speed is good.
Why?
Can we also have dithering as an option?
nevcairiel
8th January 2012, 01:58
Can we also have dithering as an option?
Dithering is always on, it cannot be turned off.
kolak
8th January 2012, 02:07
Dithering is always on, it cannot be turned off.
Ok :)
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.