View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
richardpl
16th May 2024, 11:29
Perfect play with ffmpeg + https://github.com/xiph/speex.
That library is highly under optimized, do not use.
Brazil2
16th May 2024, 14:47
Compile it!
Without any public download of libraries for Windows the use of Librempeg will be very marginal.
richardpl
16th May 2024, 17:16
Without any public download of libraries for Windows the use of Librempeg will be very marginal.
Sure, keep using buggy software that is build by random guys.
max79
16th May 2024, 17:35
Perfect play with ffmpeg + https://github.com/xiph/speex.
Алексей приветствую,
спасибо за отклик! Почему всё так сложно?
Есть ли возможность прикрутить то что ты посоветовал(или AviSynth+) к DirectShow плееру?
Brazil2
16th May 2024, 17:48
Compile it!
Compile it yourself and offer binaries to the world. If you don't then you will miss the vast majority of Windows users who also are the vast majority of computers users.
Aleksoid1978
16th May 2024, 22:07
Алексей приветствую,
спасибо за отклик! Почему всё так сложно?
Есть ли возможность прикрутить то что ты посоветовал(или avisynth+) к directshow плееру?
В mpc-be на встроенном декодере это уже и так прикручено. Можно взять его, а можно просто взять декодер, он доступен в виде внешнего фильтра.
clsid
30th May 2024, 23:46
@nevcairiel
Can you build a GCC 13.3 MinGW pack?
Aleksoid1978
31st May 2024, 05:10
@nevcairiel
Can you build a GCC 13.3 MinGW pack?
Why - there is already a gcc 14.1 release.
clsid
4th June 2024, 13:25
GCC 14.1 is fine too. In past I usually skipped .1 versions but I guess there is little reason for that nowadays.
And possibly another FFmpeg update for the addition of xHE-AAC decoder would be awesome as well.
The reason GNU starts with .1 releases today is that everyone started to skip .0 releases... :sly:
nevcairiel
6th June 2024, 11:48
Nev:
Any chance of adding an interface so I can assign a user-agent and referrer strings or possibly just a formatting option in the URL specified?
For example "https://www.somesite.org/stream|user-agent|referrer" ?
I've added a new interface for the next version of LAV to explicitly specify the user agent and referer when opening an URL.
I didn't particularly like parsing it out of a string, so dedicated function it is.
https://github.com/Nevcairiel/LAVFilters/blob/master/include/IURLSourceFilterLAV.h
It should be exposed on the LAVSplitterSource filter, just like IFileSourceFilter
Blight
7th June 2024, 12:51
I've added a new interface for the next version of LAV to explicitly specify the user agent and referer when opening an URL.
I didn't particularly like parsing it out of a string, so dedicated function it is.
https://github.com/Nevcairiel/LAVFilters/blob/master/include/IURLSourceFilterLAV.h
It should be exposed on the LAVSplitterSource filter, just like IFileSourceFilter
Very cool, I'll try it out once the new version comes out.
Just a quick question, when is the best time to set the referrer/user-agent values, before assigning the URL? before running the graph?
Prinz
7th June 2024, 17:25
Very cool, I'll try it out once the new version comes out.
According to build log on https://files.1f0.de/lavf/nightly/ , this change is already included in the lasted nightly build: LAVFilters-0.79.2-9.exe
So you should be able to test it out already.
lvqcl
7th June 2024, 18:20
Just a quick question, when is the best time to set the referrer/user-agent values
???
nevcairiel
7th June 2024, 21:48
Just a quick question, when is the best time to set the referrer/user-agent values, before assigning the URL? before running the graph?
The interface has you pass it in together with the URL you open, so that question doesn't even apply. :D
The function _replaces_ the Load function from IFileSourceFilter, so you just call this one if you want to specify this detail.
There is a problem with subtitle workshop latest versions with lav filters LAVFilters-0.79.2-5, LAVFilters-0.79.2-6 and LAVFilters-0.79.2-9. I'm attaching a shot of the error. Version LAVFilters-0.79.2-3 works fine without the error. https://thumbs2.imgbox.com/eb/30/9nRTpQNK_t.png (https://imgbox.com/9nRTpQNK) The error happens when I open mkv files with external srt subtitles.
nevcairiel
17th June 2024, 21:16
There is a problem with subtitle workshop latest versions with lav filters LAVFilters-0.79.2-5, LAVFilters-0.79.2-6 and LAVFilters-0.79.2-9. I'm attaching a shot of the error. Version LAVFilters-0.79.2-3 works fine without the error. https://thumbs2.imgbox.com/eb/30/9nRTpQNK_t.png (https://imgbox.com/9nRTpQNK) The error happens when I open mkv files with external srt subtitles.
This should hopefully be resolved in the next build.
Siso
18th June 2024, 12:31
This should hopefully be resolved in the next build.
Thank you. It is working properly.
tormento
6th September 2024, 11:05
Do LAV Filters support HEVC version 3 profiles (https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Version_3_and_higher_profiles)?
LigH
6th September 2024, 11:16
Watch ffplay trying to play it:
[hevc @ 000001f898a18ac0] Error parsing NAL unit #0.
[hevc @ 000001f898adea80] Could not find ref with POC 165
[hevc @ 000001f898adea80] Could not find ref with POC 160
[hevc @ 000001f898adea80] SCC profile is not yet implemented in hevc native decoder.
[hevc @ 000001f898adea80] Error parsing NAL unit #0.
[hevc @ 000001f898ba4bc0] alignment_bit_equal_to_one=0
[hevc @ 000001f898ba4bc0] Skipping invalid undecodable NALU: 0
The libavcodec HEVC decoder does not yet implement it. So LAV Filters, using this decoder, could not either.
Blight
16th September 2024, 14:20
I am writing a client for Emby/JellyFin and as a security measure, these media servers require an authentication token passed in the header field when opening the stream, for example:
X-Emby-Token=e70c7c19bf134fb2cb9032867715de81
Is there a way to specify custom headers when opening a stream? If not, can you please add one?
Blight
22nd September 2024, 16:47
I've encountered another issue with LAV Source/Splitter with regards to network streaming from a remote Emby server.
When seeking or changing a subtitle track, there's a large pause, anywhere from 1-25 seconds (I confirmed this issue exists in GraphStudio/GraphEdit).
However, if I use libVLC to seek or switch subtitle track, it's nearly instant.
Is there an opportunity to improve this behavior?
DMU
5th November 2024, 18:48
Hello everyone.
Need your advice.
After many years of problem-free viewing of 4K UHD (hevc), after reinstalling the OS (Windows 10 IoT Enterprise LTSC), something appeared that I cannot fix and understand. A few (3-10) minutes after playing a video, image freezes and sound stutters. The decoder load reaches 100% (Screenshot). If I press Pause, wait until the load drops to 0%, and then press Play again, the video first plays faster, and then starts playing normally again. On the same screenshot, the decoder load is shown at the bottom right. After a few minutes, everything repeats.
Tried different types of decoders (D3D11 / DXVA2 / native / copyback) - did not help.
Video playback is local, not over the network.
MPC-HC latest from github.
LigH
5th November 2024, 18:57
Can you monitor CPU or GPU temperatures?
DMU
5th November 2024, 19:18
It is definitely not a matter of overheating. The PC is currently installed in a cool room. The processor (APU) temperature does not rise above 40 degrees.
Sunspark
5th November 2024, 19:33
There is a decoder setting you haven't tried yet.. "None".. to have the CPU do the decoding. The purpose of testing with this setting would be to rule out the video card's involvement with the decoding process and see if the freezes happen again.
If it does, then at least you know it's not the decoder. So in that scenario it might be the video drivers.. so then cleanly remove them with DDU and install older drivers, perhaps the ones that MS already approved in the driver catalog.
DMU
5th November 2024, 20:29
Checked. 4-core APU is loaded by about 80%. Software decoding/playback is smooth. No glitches or drops.
Sunspark
5th November 2024, 20:58
There are other decoders you can try, you can make them work with HC too.
You can install MPC-BE's decoder from the standalone filters and configure HC to use it, or probably easier for you, to just install BE as a separate player and select madvr as the renderer from the dropdown. See if the stuttering still happens.
v0lt
6th November 2024, 04:56
After many years of problem-free viewing of 4K UHD (hevc), after reinstalling the OS (Windows 10 IoT Enterprise LTSC), something appeared that I cannot fix and understand. A few (3-10) minutes after playing a video, image freezes and sound stutters. The decoder load reaches 100% (Screenshot).
R3 3200G / Vega8
In my experience, Vega 8 graphics are not enough to reliably play 4k HDR 10-bit. 30 fps videos are still watchable, but problems arise at 60 fps. Also, remember that the load increases for high-bitrate videos.
If you did not have the problem before, then the new driver could have had an effect.
It is also worth monitoring the frequencies of the CPU, GPU and memory.
huhn
27th November 2024, 09:34
Hello everyone.
Need your advice.
After many years of problem-free viewing of 4K UHD (hevc), after reinstalling the OS (Windows 10 IoT Enterprise LTSC), something appeared that I cannot fix and understand. A few (3-10) minutes after playing a video, image freezes and sound stutters. The decoder load reaches 100% (Screenshot). If I press Pause, wait until the load drops to 0%, and then press Play again, the video first plays faster, and then starts playing normally again. On the same screenshot, the decoder load is shown at the bottom right. After a few minutes, everything repeats.
Tried different types of decoders (D3D11 / DXVA2 / native / copyback) - did not help.
Video playback is local, not over the network.
MPC-HC latest from github.
hardware decoder usually really don't care about bit rate. try a different power state.
AMD hardware decoder are utterly trash they can barely do 60 in the best of cases for what ever reason. they just do the bare minimum and hope it is enough and it looks like not this time. stick to native decode you have no bandwidth anyway.
Francois76l
24th December 2024, 12:15
Hi all
I reported few months ago a problem with v0.79: impossible to play a video without glitches.
Then v0.78 was updated to V0.79.2. It was better but still gave me glitches after approximately 30min of viewing.
The only way to get ride of it was to switch back to windowed mode then full screen again for a minute. That gave me an additional 30min without glitches.
That was not ideal so I went back to v0.78 which is working perfectly.
The PC is powerful (bi-xeon E5 with RTX 3080, MPC-HC/BE/Potplayer with madvr, no queue problem avec 25ms max of rendering time).
This week I upgraded to i9-14900KF + Windows 11 with same graphic card and v0.79.2 is now working 50min without glitches then it starts again. So I switched back to v0.78.
Am I alone?
Happy Christmas to everyone!
clsid
25th December 2024, 03:22
Have you tried disabling Hardware Accelerated GPU Scheduling (HAGS) in the Windows settings? That has helped for other MadVR users with a similar glitch issue after xx minutes.
It is very unlikely that your problem is caused by LAV Filters. Except perhaps if related to audio bitstreaming.
Francois76l
25th December 2024, 11:46
Thx for advice
I have never tried to disable HAGS so I will give it a try. This feature is not disable by default?
I'm using two separate hdmi output. One for the sound directly to my preamplifier (no 4K compatibility) and another one for the video directly to the projector.
Always in bitstream mode.
The problem appeared with v0.79 with windows 10 and 11.
I never had any issue with older versions.
ryrynz
25th December 2024, 21:48
The problem appeared with v0.79 with windows 10 and 11.
I never had any issue with older versions.
Try 0.78 to confirm
Francois76l
25th December 2024, 23:53
I'm using v0.78 because of the problem I have with v0.79.X and it's working perfectly
clsid
26th December 2024, 00:40
It is pretty much impossible for LAV to be the cause of this kind of issue. So it might be a case of tunnelvision.
Here are builds in between 78 and 79 to test:
https://files.1f0.de/lavf/nightly/0.78/
Also, when the problem occurs, press Ctrl+J to show MadVR debug OSD and make a screenshot.
Francois76l
28th December 2024, 20:25
Here is an example (60fps) same problem in 23.976 and HEVC. Many glitches continuously increasing after few minutes. Only way to get ride of it is to exit full screen exclusive for few seconds.
https://i.ibb.co/DYqHBDs/20241228-181552.jpg
obieobieobie
29th December 2024, 01:19
Here is an example (60fps) same problem in 23.976 and HEVC. Many glitches continuously increasing after few minutes. Only way to get ride of it is to exit full screen exclusive for few seconds.
https://i.ibb.co/DYqHBDs/20241228-181552.jpg
are you running some kind of VRR mode (g-sync or freesync)?
clsid
29th December 2024, 14:23
Start by lowering present in advance queue to 3 as recommended for 2xxx/3xxx series cards.
Lower the other queues back to their default. Reduce NGU very high to high.
Disable HAGS.
Francois76l
29th December 2024, 20:45
I increased present queue because lower value gave me glitches faster but I will make another try
I can decrease the other queue. NGU algorithm from very high to high doesn't change anything (I already tried).
The graphic card is powerful. I didn't use any sharpness algorithm in madvr (not good, JVC tools are far better now) and my rendering time is low (and v0.78 is working perfectly).
I will report tomorrow or tonight.
Thx for your help !
Francois76l
29th December 2024, 20:46
are you running some kind of VRR mode (g-sync or freesync)?
Only v-sync in driver control panel is activated by default.
Francois76l
30th December 2024, 00:23
Ok it needs time to be 100% sure but I think you are right.
I selected 4 frames in advance in fullscreen exclusive then after 40min of movie I got glitches. Render queue was not able to follow 16 (I had 12 max).
I then selected 14 CPU queue / 10 GPU queue and 4 frames in advance and it looks ok but I must check after watching more movies.
Thanks for your help!
Francois76l
1st January 2025, 23:05
Still not working. It's worse with low queue number (CPU 10 / GPU 8 / 4 frame in advance).
I switched back to v0.78 but thanks for your help
huhn
2nd January 2025, 07:09
please try 1-3 not 4.
leeperry
11th January 2025, 00:04
Hiya fellas, I'm sure I'm missing something but why does MPCHC-BE video decoder allow "D3D12" hw decoding but LAV is stuck to D3D11? :o
max79
12th January 2025, 19:46
@Nevcairiel
I'm trying to play a stream using LAV Splitter Source filter, I have two URLs, both work in VLC and if I download the M3U8 file, they are completely identical, but for some reason, only first one URL plays in DirectShow, LAV is returning "0x80004005" on "IFileSourceFilter" load function.
Examples:
https://cdn2.ntv.ru/ntv-msk/index.m3u8
https://cdn.ntv.ru/ntv-msk/index.m3u8
Any feedback would be appreciated.
Sunspark
12th January 2025, 20:08
Do you have the right links? Both files say forbidden in them?
max79
13th January 2025, 09:18
Do you have the right links? Both files say forbidden in them?
Hello,
both URLs works. Try to use VPN: Russia
Francois76l
20th January 2025, 22:44
please try 1-3 not 4.
I think I may have found the problem.
In LAV video decoder I selected 32 threads which correspond to what my CPU have. I'm now running with "Auto" and it looks ok. I will confirm in few days!
GTPVHD
30th January 2025, 15:58
https://developer.nvidia.com/nvidia-video-codec-sdk/download
https://docs.nvidia.com/video-technologies/video-codec-sdk/13.0/read-me/index.html
What's new in Video Codec SDK v13.0?
Encode Features:
H264 interlaced, 10-bit and 4:2:2 encoding support on Blackwell GPUs
HEVC 4:2:2 encoding support on Blackwell GPUs
MV-HEVC: Support MultiView coding in HEVC
AV1 LTR: Support Long-Term Reference frame in AV1
Support AV1 and HEVC Temporal Layer encoding
Support AV1 and HEVC MaxCLL, Mastering Display, and ITU-T T.35 SEI/Metadata
Decode Features:
2x H264 throughput and maximum supported resolution 8192x8192 on Blackwell GPUs.
H264 High10/High422 Profile support (exclude MBAFF) on Blackwell GPUs
HEVC Main 4:2:2 10/12 profile support (exclude YUV400) on Blackwell GPUs
Dynamic decode surfaces allocation
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.