View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
khanmein
18th February 2017, 05:28
Another time :) though i wonder who uses it at all instead of CPU ME
Weighted Prediction would be another quality boost vs Intels Encoder.
wonder if they realize it over CUDA again like the VBR 2pass and Lookahead.
@Huhn
not sure what you fearing but all this means longer support possibilities for Windows bellow 10 mostly not sure why you find that so bad having more direct access than that what Microsoft supplies with DXVA.
You also have mixed feelings about Vulkan and a CUVID Vulkan Render backend ?
Nvidia invests a lot to be independent of Microsoft on the Unix/Linux side and CUVID/VDPAU is a important part of that for the whole Tegra Ecosystem not sure why you have mixed feelings about it and the possibility of backwards compatibility without being forced to 1 OS Version.
Unless you want to consume DRM Protected HQ 4K content, which will be only possible with Windows 10 in the near Future.
You don't seem to understand what Windows 10 is but it is the continuation of TCPA in full force mode in a absolute avg user enforcing way we ever saw being tasked out it's extremely critical what happens currently industry wide and we need to talk about it much more and make the future generation understand to what they currently not so silently agree upon it's their future.
What's New in Video Codec SDK 7.1:
---------------------------------
In NVIDIA Video Codec SDK release 7.1, following features have been added:
1) Enhancements to H.264 motion estimation only mode:
a) Ability to select specific motion vector partitions and intra mode enable/disable for motion estimation only mode.
b) Performance enhancement for stereo mode motion-estimation.
2) Streamlined the nomenclature of rate control modes.
3) Quality improvement for H.264 Temporal Adaptive Quantization(TAQ).
+1 ignored that fella always like to act pro at here. that dude simply accuse me & said my AMD card got issue but that shill don't even know i'm NV fan boy.
Jasch
19th February 2017, 13:46
I have not testet on my rx460 now, but on my Fury X the bug is still there, even with newest drivers.
OK...
So, with the release of the new non-WHQL AMD driver 17.2.1, the decoding problem of corrupted image during playback and seeking with DXVA ffmpeg based decoders, like LAV and the H.264 video files (MBAFF, progressive, interlaced) using Polaris cards, has gone.
The image is fine like all other HW decoders from AMD, Nvidia, Intel.
The only compromise is a black screen for about 2 secs in the beginning of the file, while you can hear the sound and when you seek you get a frozen image for about 1 sec before normal playback starts again (while you can hear the sound).
el Filou
19th February 2017, 15:36
I have not testet on my rx460 now, but on my Fury X the bug is still there, even with newest drivers.I was under the impression that the H.264 DXVA corruption bug only affected Polaris GPUs, are you sure it's not your files that have encoding problems?
thrawnrulz68
20th February 2017, 06:06
I was perusing the mplayer sample files today and tested CDXL and the old Sega FILM (.cpk) files and encountered some issues using LAV. I know that LAV lists these formats as supported in the splitter.
CDXL video will not play at all. Only the audio is rendered.
CPK files play but the audio (basic PCM, according to MPC-BE and LAV), does not play correctly. It plays with a great deal of static instead.
Has anyone else encountered this?
Aleksoid1978
20th February 2017, 06:49
PCM Planar can't handle by audio-renderers. LAV(libavformat) must convert to standart PCM or output with different mediatype that some audio-decoder can handle it and convert.
Jasch
20th February 2017, 08:31
I was under the impression that the H.264 DXVA corruption bug only affected Polaris GPUs, are you sure it's not your files that have encoding problems?
Yes its the same Problem, i can reproduce it every time.
I also ment. it in the Thread in Amd forum which was now closed.
Amd didint respond on that.
File is fine, for testing i use DVB-C(Astra 19.2)
Half of all channels show this behavior(doesnt matter 720p 1080i)
It happens with lav and MS decoder.
With other Hardware Intel, NV or older Amd ,A10-7800 APU, 7970 its fine.
PS.: after work i will test RX460 in my HTPC today, to look if its really fixed there.
CruNcher
20th February 2017, 15:41
It remembers me a bit about UVD 1 in HD2400 times and what a catastrophe that was with Broadcast Decoding compared to Nvidia ;)
It's sad but before that ATI stand for the Video Decoding Quality (MPEG) but somehere that timeframe certain Nvidia acquisitions triggered something and they overan ATI in Video in no time.
And since then every UVD release they where running behind VPX somewhere.
With Tegra and Mobile Nvidias investments also got extremely higher and more and more resources where put into VPX now Multiplatform.
AMD tries to recover currently and get back on track and they surely made some progress.
Also VPX has become a not unimportant part in Nvidias Automotive Strategy and CV :)
Liandri
22nd February 2017, 22:25
Here I am again with complaints about Advanced Subtitle Selection mode. It just doesn't work with some files. I've watched hundreds of shows and there is still no way to make it work like I want for all files. I occasionally need to switch subtitle streams for each single episode by hand for the whole show.
Here is the current case:
S: Forced (captions) [rus] (ass) [default,forced]
S: Full [rus] (ass)
S: No subtitles
I've tried "*:rus|!d" and ":rus|!d". It always selecting the first stream, and I need the second one.
I think I need some white and black lists of subtitle stream properties I could edit. I need to be able to ignore default and/or forced ones at the very least. As of now, there is simply no way to remember subtitle stream selection between episodes if it's a non-regular choice that can't be properly set through Advanced mode.
If this could be improved, that would be great.
nevcairiel
22nd February 2017, 22:27
You can use the "|n" (normal/unflagged stream) modifier to select streams that are not default or forced, so perhaps "*:rus|n" might do what you want.
sneaker_ger
22nd February 2017, 22:34
Or explicitly override both: *:rus|!df
You might also be interested in mkvpropedit (and its GUI JMkvpropedit). You can batch change flags of whole folders within seconds.
Liandri
22nd February 2017, 23:05
Thank you, both worked. (I feel stupid, again)
As for editing mkv, thanks but it's not a very good idea for me since the files need to be seeded.
Damien147
22nd February 2017, 23:58
Hello!
DXVA2(copy-back) slowdown/''skips'' with HEVC.Other non HEVC sources play smoothly.
DXVA(native) plays smoothly too HEVC with EVR.
Any solutions for DXVA2(copy-back)?
lav 0.69
GPU:RX 470(amd) with latest drivers.
nevcairiel
23rd February 2017, 07:30
Copy-Back has historically not been that great on AMD, so either it works or it doesn't, can't really change anything either way.
Especially when handling 4K 10-bit content you need a lot of memory bandwidth just to download and upload the image again, which AMD cards don't seem to like doing very much.
nussman
23rd February 2017, 08:35
Did you see my report? https://forum.doom9.org/showthread.php?p=1798395#post1798395
I am not sure what is going on, but HEVC 4K 10bit works fine with madVR for me (AMD RX460 4GB) if I disable P010 and P016 output in LAV.
CPU load decreases from over 70% to ~35% without P0 output.
nevcairiel
23rd February 2017, 09:02
All that would do is lower the memory bandwidth requirement on uploading the images back to the GPU, which I suppose can already help. LAV performance is not really different between NV12 or P010 output, both are similar in efficiency. If anything P010 should be slightly more efficient since its the native GPU format and doesn't require dithering. But its double in size so maybe that balances out.
Make sure LAV is using direct mode (ie. decoder is "dxva2cb direct"), but if its using P010 or NV12 output there rarely is a reason why it wouldn't use direct mode.
Of course it goes without saying to avoid any software post-processing filter like ffdshow or others, as those will eat your performance on 10-bit content.
nussman
23rd February 2017, 09:26
"DXVA2cb direct" is used.
Double in size ... mhm sounds like a problem with the memory bandwith? I will check this.
With EVR / EVR Custom LAV outputs P010 or NV12 @default for HEVC 10bit content?
nevcairiel
23rd February 2017, 09:32
EVR doesn't accept P010, so it would use NV12 then.
Damien147
23rd February 2017, 10:56
Copy-Back has historically not been that great on AMD, so either it works or it doesn't, can't really change anything either way.
Especially when handling 4K 10-bit content you need a lot of memory bandwidth just to download and upload the image again, which AMD cards don't seem to like doing very much.
The thing is that another user with same GPU(RX470) reported that DXVA2(copyback) works for him with 10bit HEVC.I tried Display Driver Uninstaller for that reason but no luck,same result.With Madvr it's worst than EVR but the problem stays.So to conclude there's nothing you can do?
Did you see my report? https://forum.doom9.org/showthread.php?p=1798395#post1798395
I am not sure what is going on, but HEVC 4K 10bit works fine with madVR for me (AMD RX460 4GB) if I disable P010 and P016 output in LAV.
CPU load decreases from over 70% to ~35% without P0 output.
I tried what you said about disabling P010,P016 but result stays the same.The point is to make DXVA2(copyback) play smoothly without these workarounds.RX470 4GB here and I can't get smooth 10bit HEVC playback.EVR with DXVA2(native) gives smooth 10bit HEVC playback.
nevcairiel
23rd February 2017, 10:58
The thing is that another user with same GPU(RX470) reported that DXVA2(copyback) works for him with 10bit HEVC.I tried Display Driver Uninstaller for that reason but no luck,same result.With Madvr it's worst than EVR but the problem stays.So to conclude there's nothing you can do?
If it works for some users but not for you, then its most likely something in your system, so there is even less we can do.
Damien147
23rd February 2017, 11:15
Yes,it points my system if that happens but I don't know what else to do beyond Display Driver Uninstaller.Maybe format:((<---boring procedure)
Thank you very much for answering.Have a nice day.:)
nussman
23rd February 2017, 11:43
The point is to make DXVA2(copyback) play smoothly without these workarounds.
The point is to understand what happens here and help the developers to fix it in right place. ;)
NikosD
23rd February 2017, 12:31
Hello!
DXVA2(copy-back) slowdown/''skips'' with HEVC.Other non HEVC sources play smoothly.
DXVA(native) plays smoothly too HEVC with EVR.
Any solutions for DXVA2(copy-back)?
lav 0.69
GPU:RX 470(amd) with latest drivers.
Just tried various 10 bit 4K HEVC sources with MPC-HC using LAV 0.69 and EVR-CP and had no problem with my RX 470 in DXVA Copy-back (Direct) mode.
The performance looks like the same of DXVA native, but of course I can see spikes of 100% GPU utilization and full clock speed for core/ memory (1300MHz/ 2000MHz)
nussman
23rd February 2017, 14:20
Did you try madVR with P010 output?
Aleksoid1978
23rd February 2017, 14:33
EVR doesn't accept P010, so it would use NV12 then.
On Win10 - EVR/EVR Custom accept P010. Checked on Nvidia 960/AMD RX460.
Damien147
23rd February 2017, 15:38
The point is to understand what happens here and help the developers to fix it in right place. ;)
We are saying the same thing.
Just tried various 10 bit 4K HEVC sources with MPC-HC using LAV 0.69 and EVR-CP and had no problem with my RX 470 in DXVA Copy-back (Direct) mode.
The performance looks like the same of DXVA native, but of course I can see spikes of 100% GPU utilization and full clock speed for core/ memory (1300MHz/ 2000MHz)
Oh boy...another one with RX470 and smooth playback with 10 bit 4K HEVC and dxva2(copy-back).
Can you tell which driver version you are using?I'm gonna try that.I am with 17.2.1 WHQL that came out yesterday and I can't get smooth playback with 10 bit 4K HEVC and dxva2(copy-back).Picture slows down,framerate drops.
p.s. Γεια σου Ελλαδάρα!!
NikosD
23rd February 2017, 15:59
17.2.1 beta, I think there are no differences with WHQL.
I don't think that really matters but my RX 470 as I've already posted has 2000MHz GDDR5 memory and 1300MHz GPU clock.
Win 10 x64 of course.
Try to use the clean install of AMD drivers which uninstalls previous drivers and not DDU.
But it seems as an issue of your system.
P.S
Δεν νομίζω να καταλαβαίνει κανένας τι γράφουμε στα Ελληνικά και υπάρχει κανόνας να γράφουμε Αγγλικά εδώ, αλλά δεν άντεξα την πρόκληση ;)
CruNcher
23rd February 2017, 16:01
On Win10 - EVR/EVR Custom accept P010. Checked on Nvidia 960/AMD RX460.
It would be rather bad if it wouldn't so DXVA also should work with P010 already
Though definitely some of those things that will only work with Windows 10 EVR Render Backend and you need other ways (APIs) todo it pre Windows 10 with acceleration though of course you never gonna get it to work under DWM windowed so in a browser and HTML5 you gonna fail completely with 10 Bit support under Pre Windows 10 when using the Native Microsoft APIs.
don't think that really matters but my RX 470 as I've already posted has 2000MHz GDDR5 memory and 1300MHz GPU clock.
Nvidia allways had the better DCE and aside that PCIE-Compression only VEGA is about maybe to change that finally the advances in Polaris where not enough ;)
Also because the overhead of AMDs Driver is overall higher it can make a difference which advanced CPU you have and which instructions AMD makes use of ;)
We should see further improvements overall here due to the tuning for Zen which is partly also gonna effect the Intel overall Performance due to the similiar nature of both compared to the old Athlons and Bulldozer
clsid
23rd February 2017, 16:26
Perhaps it is a DPC latency issue?
http://www.resplendence.com/latencymon
Damien147
23rd February 2017, 16:30
17.2.1 beta, I think there are no differences with WHQL.
I don't think that really matters but my RX 470 as I've already posted has 2000MHz GDDR5 memory and 1300MHz GPU clock.
Win 10 x64 of course.
Try to use the clean install of AMD drivers which uninstalls previous drivers and not DDU.
But it seems as an issue of your system.
P.S
Δεν νομίζω να καταλαβαίνει κανένας τι γράφουμε στα Ελληνικά και υπάρχει κανόνας να γράφουμε Αγγλικά εδώ, αλλά δεν άντεξα την πρόκληση ;)
Was with 17.2.1 beta too and the problem was there.Don't update to WHQL if you want,it's the same thing. About clean install I've tried that and THEN I tried DDU to see if there is a problem.Nothing changes.I have lower clocks but yes you are right.It seems that it is my system and not in general.:scared:
:thanks:
P.S.
Σιγά,ένα γειά ανταλλάξαμε.Καλή συνέχεια.
Perhaps it is a DPC latency issue?
http://www.resplendence.com/latencymon
Gonna have to learn to use that I guess.
CruNcher
23rd February 2017, 16:35
Perhaps it is a DPC latency issue?
http://www.resplendence.com/latencymon
I bet its a inefficiency of overall CPU optimization albeit the CPU he uses and Chipset is pre Sandy Bridge era that wont cut it anymore especially copy back with AMDs Driver overhead and not so optimized DCE.
But yeah if you think about a SOC at 7W is completely destroying it overall but only with Zero Copy with Copy Back most Socs would die also for 4K Hevc.
Damien147
23rd February 2017, 17:06
latencymon (http://imgur.com/a/W3yp0):confused:
CPU (http://imgur.com/a/Laier) performance wise I think I am like i5 2400(sandy bridge) with the OC but yes,it's pre sandy.
I can play 59fps 4k 10bit HEVC 75Mbps with no problem with DXVA2(native)
nevcairiel
23rd February 2017, 17:30
It would be rather bad if it wouldn't so DXVA also should work with P010 already
Previously it worked only in DXVA mode, if you tried to use it in software mode it failed and playback got stuck. But apparently it got fixed, wonder if Microsoft had to do that in EVR or the GPU drivers managed to do that.
nussman
23rd February 2017, 18:46
Hm P010 with EVR is for Win10 only?
I am on Win 8.1. Any possibility to verify what LAV sends to EVR?
CruNcher
23rd February 2017, 20:35
latencymon (http://imgur.com/a/W3yp0):confused:
CPU (http://imgur.com/a/Laier) performance wise I think I am like i5 2400(sandy bridge) with the OC but yes,it's pre sandy.
I can play 59fps 4k 10bit HEVC 75Mbps with no problem with DXVA2(native)
Zero Copy should work always the most efficient CPU Load is then allways dependent on the Driver and Memory Management (Bandwith) and PCI-E Internals except at high enough bitrate also I/O can become a bottleneck itself and push on the SATA/USB3 part.
MadVR is generally more heavy internally then EVR-CP though you can optimize it's complexity downwards with it's advanced options system.
But a small higher overhead per clock cycle then EVR-CP will always stay especially on the CPU side.
Laencymons own pooling overhead though should be allways taken into account it doesn't work for Free and can itself depending on which edge you are impact the overall result ;)
You shouldn't give much about the Hard pagefaults look in Latencymons own statistics it creates the most overhead trough to it's Pagefile handling, you most of the times need to run it several times before it's own impact is minimized ;)
And it's own pooling and resource usage can also impact the result of it's "Video will run BAD latency wise with crackle and pops result display" ;)
Overall LatencyMon is as a 32bit ETW Tracer not really efficient.
http://i1.sendpic.org/t/l2/l2Hot0U5pvuFbjalRbwQkJ5CoPV.jpg (http://sendpic.org/view/1/i/nq60fy28pGngqmBQ2OGloGseBhL.png)
http://i1.sendpic.org/t/dd/dd5YEkipw9kdyXkKG0r9xZGZON.jpg (http://sendpic.org/view/1/i/rkqXxrBtqTiC7IyGIsUWcfGPZNr.png)
http://i1.sendpic.org/t/y2/y2nYyhi5EMbzkreY8a0utk1a5nt.jpg (http://sendpic.org/view/1/i/y9OMy0ksljADBv2T0rSqUxHYwsh.png)
http://i1.sendpic.org/t/nd/ndKIAhEpp517RJQWa5hBL8lVZay.jpg (http://sendpic.org/view/1/i/cVcxloS0qvaWpFsXcRUABc6t24t.png)
On Nvidias side Drivers are now very stable the last DPC issue was this
https://forum.doom9.org/showpost.php?p=1776490&postcount=1235
Damien147
24th February 2017, 10:42
Non 10bit HEVC files play smooth with dxva2(copyback).
So to conclude there isn't any solution for the slow on 10bit HEVC dxva2(copyback) in my system?An AMD driver could solve that?
NikosD
26th February 2017, 13:15
What is it so special with this HEVC 8bit clip ?
https://www.sendspace.com/file/4aw5y1
It seems that only LAV Video can decode it in HW.
MS decoder fails and PotPlayer falls back to SW decoding.
Aleksoid1978
26th February 2017, 14:44
What is it so special with this HEVC 8bit clip ?
https://www.sendspace.com/file/4aw5y1
It seems that only LAV Video can decode it in HW.
MS decoder fails and PotPlayer falls back to SW decoding.
MPC-BE also decode in HW(DXVA) this file.
sneaker_ger
26th February 2017, 18:09
What is it so special with this HEVC 8bit clip ?
https://www.sendspace.com/file/4aw5y1
It seems that only LAV Video can decode it in HW.
MS decoder fails and PotPlayer falls back to SW decoding.
Probably broke in some way during muxing with old DivX/"Rovi" experimental mkvmerge.
Damien147
28th February 2017, 12:47
I think that I've read somewhere here that with dxva2(native) and NVIDIA you get a bit worst quality.With AMD and dxva2(native) everything's fine?No quality loss?
huhn
28th February 2017, 13:49
that's a madVR issue not a general one.
Intel/AMD could have the same issue. nvidia has this issue for sure.
Damien147
28th February 2017, 14:16
Oh,I see.Thought that because someone pointed NVIDIA problem was gonna be specific and not apply to others.Thanks.
aufkrawall
28th February 2017, 19:42
Intel/AMD could have the same issue. nvidia has this issue for sure.
afair I didn't have the issue with a R9 390.
Well, but of course others in exchange.
Asmodian
28th February 2017, 23:12
I remember when madshi identified the issue it only applied to Nvidia GPUs, but probably any GPU could spontaneously develop it with a driver update.
Damien147
1st March 2017, 08:55
Good news then,AMD here.:DThanks again.
groen
5th March 2017, 19:06
Recently mpc-be has been reverting to mpc Audio Decoder (low merit) in some instances. The audio files show up as E-AC-3
ID : 2
Format : E-AC-3
Format/Info : Enhanced Audio Coding 3
Format settings, Endianness : Big
Codec ID : A_EAC3
Duration : 57 min 48 s
Bit rate mode : Constant
Bit rate : 640 kb/s
Channel(s) : 6 channels
Channel positions : Front: L C R, Side: L R, LFE
Sampling rate : 48.0 kHz
Frame rate : 187.500 FPS (256 spf)
Compression mode : Lossy
Stream size : 265 MiB (14%)
Language : English
Default : Yes
Forced : No
This happened in the past with the MS DTV-DVD Audio Decoder, setting that audio filter to disabled in the mpc-be options disabled it. However this time the MPC Audio Decoder does not display in the available filters to block. The problem is that DTS or DD passthrough does not work when this MPC Audio Decoder is used instead of lav filters. Does lav filters support E-AC-3? I am sure it does as it supports most audio. This might be an mpc-be problem...
http://i.imgur.com/nQp2WJa.jpg
Aleksoid1978
6th March 2017, 08:38
MPC-BE Audio Decoder support all type passthrough - AC3/E-AC3/DTS/DTS-HD/TrueHD.
clsid
6th March 2017, 15:12
You should disable passthrough for E-AC3. Then LAV Audio will work fine. Your receiver (or sound driver) does not support E-AC3 bitstreaming. LAV Audio decoder does not (yet) have a fallback to normal decoding when passthrough fails.
Vasilich
6th March 2017, 23:36
LAV Audio decoder does not (yet) have a fallback to normal decoding when passthrough fails.
Is it planned to implement such fallback? is it possible for audio decoder to get such info?
Aleksoid1978
7th March 2017, 02:06
Is it planned to implement such fallback? is it possible for audio decoder to get such info?
I don't know about LAV Audio Decoder - but i know that is possible.
Jasch
7th March 2017, 08:57
Just to recap, i made some test at the weekend, and on my systems, h264 is now working without errors on Rx and Fury with the latest Driver (17.2.1)+ Lavfilter with DXVA and CB
Changelog:
On some Radeon GCN products DXVA H.264 encoded video may experience corruption when fast forwarding or seeking through content
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.