View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
nekromantik
6th February 2014, 09:03
thanks guys :)
NikosD
6th February 2014, 16:41
@nev
After upgrading my old system (AthlonXP - Radeon 3650 AGP (UVD+) - Cat. 13.9) from Windows XP to Windows Vista (unfortunately it can't take Win 7 due to driver conflict), I had the opportunity to try LAV Video and MPC-HC 1.7.3 for the first time using DXVA with UVD+ (because LAV filters don't support Windows XP DXVA1)
I can say that I had a better experience than using PotPlayer for all the clips that UVD+ and LAV Video DXVA can decode.
BUT once again like UVD2.2 (Radeon 4000/5000 series) there were a lot of restrictions for clips that UVD+ could decode:
Codec restriction, Resolution restriction, ReF number restriction - it's like you follow exactly the BluRay specs for H.264
The main restrictions are:
1) No WMV3 HW acceleration (it's disabled for unknown reason)
2) No above 1080p H.264 HW acceleration - like 2048 x 1280
3) No H.264 1080p Ref 5/6 HW acceleration (it's restricted to Ref 4)
4) No H.264 720p Ref 12 HW acceleration (it's restricted to Ref 9)
All of the above files play flawlessly with PotPlayer in DXVA mode and UVD+, so those are not driver/ HW restrictions, only LAV Video restrictions.
So, if you don't want to leave driver to handle those situations by default and you don't want to test every possible combination of ATI HW decoder (UVD, UVD+, UVD2, UVD2.2) and various clips, resolutions etc I have a suggestion for you.
Make a "secret/ hidden" button named "Use DXVA anyway" or "Force HW acceleration" or something like that, in order to give power users a chance to test - in their own responsibility - DXVA acceleration in their systems in situations where you decided to disable it.
That option should have no restriction/ limitation by LAV Video and should leave everything to the driver and the other DXVA options of LAV Video (like codecs and resolution)
I think you have to loose some restrictions and gain more flexibility and options for the people who know what they do.
Of course that option will be disabled by default.
michkrol
6th February 2014, 18:27
http://www.sendspace.com/file/8xz535
18fps with LAV :o
Works flawlessly here with LAVFilters x86 v0.60.1 official and MPC-HC's internal version. I'm getting between 2% and 7% CPU usage, so it's not a matter of performance either. File is properly detected as 23.976fps if you meant that and not a performance issue :confused:
Maybe post your config and/or make a quick test with MPC-HC, if you're using a different player.
EDIT: My config: Core i5-3570K, Intel HD4000, Windows 8.1 x64, MPC-HC x86 v1.7.3.10 (nightly), internal LAVFilters, madVR.
HeadlessCow
6th February 2014, 19:40
Headers at the end of a file is a strange concept.
When the file is being encoded, the encoder doesn't know all the information that needs to be put into the header until it has completed encoding the file. To put the header at the start it needs to either leave blank space at the beginning that it can overwrite (which is a pain if the amount of space it needs is unknown), or write the header and copy the entire rest of the file to shift it.
If the header contains anything with user-modifiable variable length fields, editing it would also required reserved space, or shifting the entire file when the user enters something longer than was originally there.
It's just a lot easier to put them at the end and not have to deal with issues like that :)
Soukyuu
6th February 2014, 19:55
http://www.sendspace.com/file/8xz535
18fps with LAV :oDropping frames like crazy here. Latest MPC-HC stable + madvr + software decoding. No significant CPU load, rendering times around 20ms
clsid
6th February 2014, 21:45
18fps here too, with all renderers
Stereodude
7th February 2014, 01:32
Plays back fine here for me on a i5-4300U with HD4200 graphics at 23.976fps. Software decode with a few % CPU load using 32bit MPC-HD 1.7.3 and the internal LAV filters under Windows 7 x64 Pro.
Deihmos
7th February 2014, 15:50
Version 0.6.0 has introduced a bug for me when I resume from sleep. I am using windows media center for playback and when I resume from sleep all my videos fail to play unless I restart windows media center. I downgraded to 0.59 and then it worked fine. Any idea what could be causing this?
pirlouy
8th February 2014, 16:38
Nevcairiel, in France, a popular Internet provider allows us to watch TV streaming through RTSP protocol. The recommended software is VLC, and it is true it works well.
With MPC-HC and LAV Filters, initialization is longer and sometimes it even fails (10 secs to start videos or fail, whereas it always works in 2 sec with VLC). I think it's because RTSP protocol is better in VLC. It seems VLC uses these libraries (http://www.live555.com/liveMedia/). Do you think you could do something about it ? Or maybe it has nothing to do with LAV Filters and it's Media Player related...
I know it will be hard for you to find a motivation since I suppose you don't have access to RTSP streams. I may ask MPC-HC developers, maybe a french developer will be interested.
nevcairiel
8th February 2014, 16:47
All LAV Filters uses is the FFmpeg library and their implementation of the RTSP protocol. I'll not be hacking around in it myself. If it needs improvements, ask them. :)
vood007
9th February 2014, 09:05
..or you could use RTMPDump http://rtmpdump.mplayerhq.hu/ directly like XBMC does, it works very well for them. MPC/Lav should really get some better streaming support because now its close to not present. Yes, i am aware that you do not care :)
@pirlouy
Check XBMC and the IPTVSimple Addon for Live TV. You just add the m3u8 playlist of your provider, EPG and Channellogos can be found at XBMC forums. Works very well.
nevcairiel
9th February 2014, 09:09
RTSP is not RTMP. Different things entirely. :)
In any case, LAVs entire architecture is not designed for live streaming formats, and as such they just don't fit in there properly. Too much of its current logic assumes that you can just read data and buffer it, while that doesn't work for live and can cause delays.
If someone wants to work on streaming capabilities for MPC-HC, its much easier to do it outside of LAV Splitter.
Village Guy
9th February 2014, 13:03
Is the LAV Audio codec compatible with AMD's HDMI HiDef audio renderer?
I can successfully build a graph using the LAV codec and AMD DirectSound renderer but it fails when I change to the AMD HiDef renderer. When I say it fails, I can see from the amplifier input display that the connection is trying to work and get an occasional burst of what I believe to be audio from the track.
If I simply replace the LAV audio codec with the microsoft audio codec, the AMD HiDef renderer works fine with the exception of TrueHD & DTS-HD.
The input file for all tests is a simple MKV with 5.1 DTS audio.
I'm guessing this is my pilot error as I do not see anyone else reporting this issue.
Stereodude
9th February 2014, 18:47
Are you trying to pass DTS-HD MA and DD True-HD streams via HDMI? You need some files from Arcsoft TMT installed / registered if you want to do that with LAV.
DragonQ
9th February 2014, 18:48
I'm pretty sure only DTS-HD MA (or maybe all versions of DTS-HD?) requires an external DLL.
nevcairiel
9th February 2014, 18:59
And only for decoding, not for Bitstreaming, which Stereodude seems to suggest.
Village Guy
9th February 2014, 23:14
Thanks for all the inputs. Right now I would like to keep things simple and avoid DTS-HD/True-HD discussions as they are not really relevant at this stage since plain DTS 5.1 does not work.
I have setup LAV for bitstreaming and it works fine within JRiver but having finally tired of the JRMC user interface and am attempting to move over to XBMC/DSPlayer.
I would really appreciate it if someone more knowledgeable than myself, not too difficult to achieve ;) can tell me if I am missing something really fundamental or consider the AMD renderer to be at fault.
I have graphstudio rendering video with a DTS 5.1 audio track. LAV Splitter is used for the front end splitter and then I have the LAV Audio decoder followed by the AMD renderer. The AMD renderer has two options 1: Directsound 2:HiDEf which I have assumed will work as a WASPI connection.
The graph works just fine with the AMD Directsound connection but fails when using #2 the HiDef audio connection. My understanding is that even though I have a bitstream connection I should avoid the Directsound renderer as it will pass through the windows mixer.
Perhaps someone can correct me if I am missing something?
mindbomb
10th February 2014, 00:16
bitstreams of compressed audio are unaffected by the windows mixer, so you can use directsound. I'm not really sure what this audio renderer you are testing is, you're telling me AMD made a directshow audio renderer?
noee
10th February 2014, 00:52
Yeah really. Village Guy, are you sure you're not confusing the AMD High Definition Audio Device (HDMI hardware device) with an audio renderer? Two totally different things.
Stereodude
10th February 2014, 03:21
And only for decoding, not for Bitstreaming, which Stereodude seems to suggest.Oh, I didn't realize it was only for decoding. I thought it was needed for bitstreaming also.
Qaq
10th February 2014, 08:31
Bitstreaming should work fine. For DTS decoding LAV may output 32 float, if selected. I don't know what "AMD HiDef" is, but HDMI audio is only compatible with 16 int and 24 bits padded to 32 for uncompressed streams. So you may try 16 and 24 bits in LAV audio settings.
Village Guy
10th February 2014, 10:21
Sorry if my terminology of Audio Renderer is incorrect. I simply referred to them as renderers in the same way as the Graphstudio drop down menu.
To avoid further misunderstanding I have attached the graph showing the two audio renderers / devices. The directsound (shown connected) works fine but the other one does not.
The background to all this is that the JRiver audio seemed to my ears to sound fuller than the XBMC even though both were operating in bitstream mode. Is this my imagination playing tricks perhaps?
Everything I read inferred that directsound devices should be avoided for high quality sound reproduction due to the mixer issue.
From the consensus of you guys it would seem that bitstream either works or does not and since I can decode DTS-HD there really should be no difference in sound between the players, am I correct?
NikosD
12th February 2014, 15:12
@nev
After upgrading my old system (AthlonXP - Radeon 3650 AGP (UVD+) - Cat. 13.9) from Windows XP to Windows Vista (unfortunately it can't take Win 7 due to driver conflict), I had the opportunity to try LAV Video and MPC-HC 1.7.3 for the first time using DXVA with UVD+ (because LAV filters don't support Windows XP DXVA1)
I can say that I had a better experience than using PotPlayer for all the clips that UVD+ and LAV Video DXVA can decode.
BUT once again like UVD2.2 (Radeon 4000/5000 series) there were a lot of restrictions for clips that UVD+ could decode:
Codec restriction, Resolution restriction, ReF number restriction - it's like you follow exactly the BluRay specs for H.264
The main restrictions are:
1) No WMV3 HW acceleration (it's disabled for unknown reason)
2) No above 1080p H.264 HW acceleration - like 2048 x 1280
3) No H.264 1080p Ref 5/6 HW acceleration (it's restricted to Ref 4)
4) No H.264 720p Ref 12 HW acceleration (it's restricted to Ref 9)
All of the above files play flawlessly with PotPlayer in DXVA mode and UVD+, so those are not driver/ HW restrictions, only LAV Video restrictions.
So, if you don't want to leave driver to handle those situations by default and you don't want to test every possible combination of ATI HW decoder (UVD, UVD+, UVD2, UVD2.2) and various clips, resolutions etc I have a suggestion for you.
Make a "secret/ hidden" button named "Use DXVA anyway" or "Force HW acceleration" or something like that, in order to give power users a chance to test - in their own responsibility - DXVA acceleration in their systems in situations where you decided to disable it.
That option should have no restriction/ limitation by LAV Video and should leave everything to the driver and the other DXVA options of LAV Video (like codecs and resolution)
I think you have to loose some restrictions and gain more flexibility and options for the people who know what they do.
Of course that option will be disabled by default.
Well, since you didn't answer on that, I tried other solutions and find out MPC-HC v1.6.8 and nightly v1.6.9(both before LAV integration in v1.7.0) which both play perfectly all of the above cases with their internal filters, except WMV3 (it's disabled)
So, I had to switch to the old MPC-HC v1.6.9, in order to use UVD+ in a more complete manner.
nevcairiel
12th February 2014, 15:27
Well, since you didn't answer on that
Like I said before:
I will not have time to look into DXVA things for a while, other things take priority for now.
You can stop re-posting every other week.
NikosD
12th February 2014, 15:50
Like I said before:
You can stop re-posting every other week.
I didn't repost.
I posted again to say that old MPC-HC with internal filters before LAV video, works OK with my old Radeon 3650 card.
I have two posts one for Haswell and one for Radeon card regarding DXVA, which summarize my last problems with that.
Whenever you have time again for DXVA, I think you will find them useful.
Village Guy
12th February 2014, 17:08
Sorry if my terminology of Audio Renderer is incorrect. I simply referred to them as renderers in the same way as the Graphstudio drop down menu.
To avoid further misunderstanding I have attached the graph showing the two audio renderers / devices. The directsound (shown connected) works fine but the other one does not.
The background to all this is that the JRiver audio seemed to my ears to sound fuller than the XBMC even though both were operating in bitstream mode. Is this my imagination playing tricks perhaps?
Everything I read inferred that directsound devices should be avoided for high quality sound reproduction due to the mixer issue.
From the consensus of you guys it would seem that bitstream either works or does not and since I can decode DTS-HD there really should be no difference in sound between the players, am I correct?
Anyone?
Mercury_22
12th February 2014, 17:28
LAVVideo DXVA (N&CB) has big problems (big image "glitches") with this AVC (L3.2) file (http://www.multiupload.nl/OKHM9WLH69) on subtitle (PGS) enable / change and on seeking
P.S. Latest LAV git here
mindbomb
12th February 2014, 17:51
@Village Guy
both those players have wasapi exclusive mode anyway. This benefits formats that cannot be bitstreamed, like flac. When you bitstream, the mixer can't do anything, so you don't have to use a special renderer to avoid the mixer.
Village Guy
12th February 2014, 18:06
@Village Guy
both those players have wasapi exclusive mode anyway. This benefits formats that cannot be bitstreamed, like flac. When you bitstream, the mixer can't do anything, so you don't have to use a special renderer to avoid the mixer.
I appreciate you taking the time to clarify, I was beginning to think I had stumped everyone :D
One last point, are these blocks called audio renderers or audio devices.
:thanks:
Aleksoid1978
13th February 2014, 12:26
nevcairiel
Image corrupted after seek - in DXVA and software mode. I think bug in ffmpeg.
http://aleksoid.voserver.net/Sample/H264/Interlace/韓雪+-+跳舞街+%2540香港2009東亞運動會開幕禮.ts
giosa
13th February 2014, 20:50
Hi guys,
I've a question.
What's the point of being able to decode DTS-HD MA with LAV audio + dtsdecorderdll.dll? if one still have to get AV receiver to make 5.1 or 7.1 speakers to work. As with AVR you can beatsstream and have AVR to decode an audio.
The ability of LAV filter to work with arcsoft decoder to decode HD audio would be really "big" thing if it could avoid necessity of buying AVR, but if you can't go without it in any case if you want 5.1 or 7.1 speakers. I don't get it.
And one more question.
when decoding DTS-HD MA lav filter status shows PCM in output, does it mean I getting full decoding, should not it show LPCM?
clsid
13th February 2014, 21:07
You don't need surround speakers. LAV can downmix to stereo.
No, PCM is correct.
Stereodude
13th February 2014, 21:08
There were some video cards that could pass 7.1 LPCM, but not bitstream. Likewise the pre HDMI 1.3 receivers accept LPCM 7.1, but don't accept bitstreamed formats. Also it gives you full quality audio for headphone listening or even if you're using PC speakers.
giosa
13th February 2014, 21:14
Thanks guys for clarification.
End note is, if you want surround sound 5.1 or 7.1 you by all means will need to buy AVR, it's not possible to use surround speakers with PC without it, is that right?
SamKook
13th February 2014, 21:41
End note is, if you want surround sound 5.1 or 7.1 you by all means will need to buy AVR, it's not possible to use surround speakers with PC without it, is that right?
Why wouldn't it be possible as long as you have a soundcard that can support it?
Just plug the speaker the right way and configure everything to output the desired format properly.
STaRGaZeR
13th February 2014, 21:51
There's still no way to decode DTS-HD MA in 64-bit players due to the Arcsoft dll being 32-bit only, right?
QBhd
13th February 2014, 21:56
The point is to get lossless decoding, without pairing LAV with dtsdecoder.dll you wouldn't... I have Logitech z-5300e speakers (analog 5.1) paired with a SB X-Fi Titanium Fatal1ty Pro and DTS-HDMA sounds far superior to the DTS core.
QB
giosa
13th February 2014, 22:47
What are drawbacks of going sound card route vs AVR?
well, probably there're many. But what are the main ones?
Triplefun
13th February 2014, 23:38
I am having minimal luck rendering RadioNZ live broadcasts - see http://www.radionz.co.nz/audio/live/national.asx
This plays fine with VLC with the reported codec wma2. It fails to render in both WMP and MPC-HC. I have installed the latest version of LAV.
DragonQ
14th February 2014, 01:28
What are drawbacks of going sound card route vs AVR?
well, probably there're many. But what are the main ones?
What do you mean? They are totally different things and you need both. A soundcard either sends audio to active speakers (i.e. with their own power supply and amplifier), or to an AVR which will amplify the audio signal and send it to passive speakers (among many other things). In the former case, you'd generally use 3.5 mm cables, in the latter case you'd use HDMI (or TOSLINK if you were feeling nostalgic).
IMO active speakers are a total rip-off when it comes to quality and value.
QBhd
14th February 2014, 01:36
My active speakers cost me $300 almost 10 years ago, and they still amaze me. If you do your research you can come across some awesome bang-for-your-buck active speakers.
QB
jkauff
14th February 2014, 07:18
My active speakers cost me $300 almost 10 years ago, and they still amaze me. If you do your research you can come across some awesome bang-for-your-buck active speakers.
I agree. My 15 year old Midiland S2 speakers (two satellites and a subwoofer) sound as good as my main system. I only listen to stereo (don't care for surround), so they do me just fine. Plus, they're built like tanks.
P.S. Midiland changed their name to M-Audio a couple years after I bought my speakers. They certainly know PC audio--I have an M-Audio sound card, too, that records and plays at 24/192, and I bought it over 10 years ago.
gendouhydeist
14th February 2014, 08:16
Hi guys, I'm having a audio hiccups on windows 8 which is not happening on windows 7 using my HDTV through S/PDIF (HDMI).
I tried to isolate the issue, it turns out when I play video on my HDTV and only using speakers there's no hiccups at all.
So I uninstall my audio driver and use the windows high definition driver but still having the same problem.
So now how can I help to fix this one or how can I provide dump file for this.
Thanks!
Qaq
14th February 2014, 09:58
I'm having a audio hiccups on windows 8 which is not happening on windows 7
I would suggest to check DPC.
DragonQ
14th February 2014, 10:40
I haven't yet found an application that properly measures DPC latency in Windows 8 or Windows 8.1. Something changed from Windows 7 and they all seem to report values that are too high.
gendouhydeist
14th February 2014, 11:14
In DPC website:
Windows 8 Compatibility: The DPC latency utility runs on Windows 8 but does not show correct values. The output suggests that the Windows 8 kernel performs badly and introduces a constant latency of one millisecond, which is not the case in practice. DPCs in the Windows 8 kernel behave identical to Windows 7. The utility produces incorrect results because the implementation of kernel timers has changed in Windows 8, which causes a side effect with the measuring algorithm used by the utility. Thesycon is working on a new version of the DPC latency utility and will make it available on this site as soon as it is finished.
As I said it was fine on Windows 7 not in Windows 8, also the latency issues it based on hardware implementation not software.
Vasilich
14th February 2014, 13:57
ever checked this one http://www.resplendence.com/latencymon ?
It claims to support also w8+
As I said it was fine on Windows 7 not in Windows 8, also the latency issues it based on hardware implementation not software.
Bad drivers also could cause DPC delays, so - you can make it worse also with software
DragonQ
14th February 2014, 15:54
I've tried LatencyMon and it also shows way too high values for DPC latency on Windows 8/8.1.
gendouhydeist
14th February 2014, 17:02
If I have bad drivers not only playing movies on mpc+madvr+lavfilters would be affected. It would be all applications that output sounds.
As I said it was fine on windows 7 but not windows 8, it is an isolated issue.
Qaq
14th February 2014, 17:26
Isolated? So you tried other audio decoders, splitters?
STaRGaZeR
14th February 2014, 19:10
The point is to get lossless decoding, without pairing LAV with dtsdecoder.dll you wouldn't... I have Logitech z-5300e speakers (analog 5.1) paired with a SB X-Fi Titanium Fatal1ty Pro and DTS-HDMA sounds far superior to the DTS core.
QB
This is not what I'm asking:
There's still no way to decode DTS-HD MA in 64-bit players due to the Arcsoft dll being 32-bit only, right?
clsid
14th February 2014, 19:19
Yes, there is no 64-bit decoder available yet. But there is a little hope. Someone on the libav-devel mailinglist might be doing an attempt to implement a decoder for DTS-HD Master Audio. If that is a success, then anything based on Libav/FFmpeg, including LAV Filters, will be able to decode it.
e-t172
14th February 2014, 19:36
What do you mean? They are totally different things and you need both. A soundcard either sends audio to active speakers (i.e. with their own power supply and amplifier), or to an AVR which will amplify the audio signal and send it to passive speakers (among many other things). In the former case, you'd generally use 3.5 mm cables, in the latter case you'd use HDMI (or TOSLINK if you were feeling nostalgic).
Well technically, giosa is correct in that if you use an AVR with HDMI, you don't need a sound card in the DAC sense. Calling an HDMI output a "sound card" is kinda weird since it doesn't actually do anything except "repackage" the PCM stream for transport over HDMI.
IMO active speakers are a total rip-off when it comes to quality and value.
I strongly disagree with that statement and think it's actually the opposite. One good example is the JBL Professional 3 Series (http://www.jblpro.com/www/products/recording-broadcast/3-series) which have an amazing performance/price ratio. Besides, there are very good reasons to prefer active speakers over passive speakers in general. (https://docs.google.com/document/d/1a9dTnNVoVNG88iSHGWwTKKsN-zDe0Qv7VM_1yWP_pFQ/edit#heading=h.g1hkb1ktbfqt)
DarkSpace
14th February 2014, 19:45
Yes, there is no 64-bit decoder available yet. But there is a little hope. Someone on the libav-devel mailinglist might be doing an attempt to implement a decoder for DTS-HD Master Audio. If that is a success, then anything based on Libav/FFmpeg, including LAV Filters, will be able to decode it.
What about other forms of DTS-HD? I'm just curious, and I'm aware that HDMA is the most common variant.
DragonQ
14th February 2014, 20:02
I strongly disagree with that statement and think it's actually the opposite. One good example is the JBL Professional 3 Series (http://www.jblpro.com/www/products/recording-broadcast/3-series) which have an amazing performance/price ratio. Besides, there are very good reasons to prefer active speakers over passive speakers in general. (https://docs.google.com/document/d/1a9dTnNVoVNG88iSHGWwTKKsN-zDe0Qv7VM_1yWP_pFQ/edit#heading=h.g1hkb1ktbfqt)
Just spent 10 minutes writing a reply and the forum lost it because a "token expired". It's off topic anyway so never mind, we can agree to disagree.
nevcairiel
14th February 2014, 20:15
What about other forms of DTS-HD? I'm just curious, and I'm aware that HDMA is the most common variant.
DTS-HD HRA is already partially supported today.
That is, the extra bitrate extensions and the extra channel extensions can be decoded. Missing is the X96 extension for higher sample rates.
And of course the XLL extension for Lossless is missing, which makes up DTS-HD MA
DarkSpace
14th February 2014, 21:29
DTS-HD HRA is already partially supported today.
That is, the extra bitrate extensions and the extra channel extensions can be decoded. Missing is the X96 extension for higher sample rates.
And of course the XLL extension for Lossless, which makes up DTS-HD MA
I wasn't even aware of that, thanks for the information! This is good news...
iSunrise
15th February 2014, 01:42
wrong thread, can be deleted.
NikosD
16th February 2014, 08:25
@nev
Can you share which is the project you are working right now, regarding LAV filters of course ?
jkauff
17th February 2014, 01:08
@nev
Can you share which is the project you are working right now, regarding LAV filters of course ?
In case you missed it, nev took a job with JRiver. He hasn't told us what he'll be working on for them, so we don't know whether LAV work will be affected.
marsovac
17th February 2014, 03:11
Hi nevcairiel,
I have an issue which may be occurring because I'm not really aware of the requirements for LAV about it, but here it goes:
When I setup the filtergraph and tell LAV to use video acceleration it simply does not do it.
I can see that the settings have been accepted if I open the tray icon, but the acceleration is not there (avcodec):
http://i.imgur.com/aLXUDFP.jpg
The weird things I'm doing that are not really standard are:
- LAV is not installed and regged on the PC but it is loaded from the ax with:
IntPtr proc = GetProcAddress(lavVideoDll, "DllGetClassObject");
I'm setting up the graph (part relevant to LAV) like this:
var filterGraph = m_graph as IFilterGraph2;
if (filterGraph == null)
throw new Exception("Could not QueryInterface for the IFilterGraph2");
var audioRenderer = InsertAudioRenderer(AudioRenderer);
if (audioRenderer != null)
{
if (_audioRenderer != null) Marshal.ReleaseComObject(_audioRenderer);
_audioRenderer = audioRenderer;
}
if ((System.Environment.OSVersion.Platform == PlatformID.Win32NT &&
(System.Environment.OSVersion.Version.Major == 5)))
VideoRenderer = VideoRendererType.VideoMixingRenderer9;
IBaseFilter renderer = InsertVideoRenderer(VideoRenderer, m_graph, 1);
if (renderer != null)
{
if (_renderer != null) Marshal.ReleaseComObject(_renderer);
_renderer = renderer;
}
ILAVAudioSettings lavAudioSettings;
ILAVAudioStatus lavStatus;
IBaseFilter audioDecoder = FilterProvider.GetAudioFilter(out lavAudioSettings, out lavStatus);
if (audioDecoder != null)
{
if (_audio != null) Marshal.ReleaseComObject(_audio);
_audio = audioDecoder;
if (_audioStatus != null) Marshal.ReleaseComObject(_audioStatus);
_audioStatus = lavStatus;
lavAudioSettings.SetRuntimeConfig(true);
hr = m_graph.AddFilter((IBaseFilter)audioDecoder, "LavAudio");
DsError.ThrowExceptionForHR(hr);
}
ILAVSplitterSettings splitterSettings;
IFileSourceFilter splitter = FilterProvider.GetSplitterSource(out splitterSettings);
if (splitter != null)
{
if (_splitter != null) Marshal.ReleaseComObject(_splitter);
_splitter = splitter;
splitterSettings.SetRuntimeConfig(true);
splitter.Load(fileSource, null);
hr = m_graph.AddFilter((IBaseFilter)splitter, "LavSplitter");
DsError.ThrowExceptionForHR(hr);
}
if (_splitterSettings != null) Marshal.ReleaseComObject(_splitterSettings);
_splitterSettings = (ILAVSplitterSettings)splitterSettings;
ILAVVideoSettings lavVideoSettings;
IBaseFilter lavVideo = FilterProvider.GetVideoFilter(out lavVideoSettings);
if (_video != null) Marshal.ReleaseComObject(_video);
_video = lavVideo;
if (_video != null)
{
if (lavVideoSettings != null)
{
lavVideoSettings.SetRuntimeConfig(true);
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_None);
// check for best acceleration available
if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_CUDA) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_CUDA);
}
else if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_QuickSync) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_QuickSync);
}
else if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_DXVA2Native) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_DXVA2Native);
}
else if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_DXVA2) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_DXVA2);
}
else if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_DXVA2CopyBack) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_DXVA2CopyBack);
}
#if DEBUG
hr = lavVideoSettings.SetTrayIcon(true);
#endif
}
hr = m_graph.AddFilter(_video, "LavVideo");
DsError.ThrowExceptionForHR(hr);
}
IBaseFilter vobSub = FilterProvider.GetVobSubFilter();
if (vobSub != null)
{
hr = m_graph.AddFilter(vobSub, "VobSub");
DsError.ThrowExceptionForHR(hr);
IDirectVobSub vss = vobSub as IDirectVobSub;
if (_vobsub != null) Marshal.ReleaseComObject(_vobsub);
_vobsub = vss;
InitSubSettings();
}
hr = m_graph.Connect(DsFindPin.ByName((IBaseFilter)splitter, "Audio"), DsFindPin.ByDirection(_audio, PinDirection.Input, 0));
if (hr == 0)
HasAudio = true;
else
HasAudio = false;
IBaseFilter dcDsp = FilterProvider.GetDCDSPFilter();
if (dcDsp != null)
{
if (_dspFilter != null) Marshal.ReleaseComObject(_dspFilter);
_dspFilter = (IDCDSPFilterInterface)dcDsp;
if (HasAudio)
{
hr = m_graph.AddFilter((IBaseFilter)_dspFilter, "AudioProcessor");
hr = _dspFilter.set_EnableBitrateConversionBeforeDSP(true);
hr = ((IDCDSPFilterVisualInterface)_dspFilter).set_VISafterDSP(true);
hr = m_graph.Connect(DsFindPin.ByDirection((IBaseFilter)_audio, PinDirection.Output, 0), DsFindPin.ByDirection(_dspFilter, PinDirection.Input, 0));
DsError.ThrowExceptionForHR(hr);
hr = m_graph.Connect(DsFindPin.ByDirection((IBaseFilter)_dspFilter, PinDirection.Output, 0), DsFindPin.ByDirection(_audioRenderer, PinDirection.Input, 0));
var cb = new AudioCallback(this);
hr = _dspFilter.set_CallBackPCM(cb);
object intf = null;
hr = _dspFilter.set_AddFilter(0, TDCFilterType.ftEqualizer);
hr = _dspFilter.get_FilterInterface(0, out intf);
_equalizer = (IDCEqualizer)intf;
_equalizer.set_Seperate(false);
}
}
else
{
if (HasAudio)
{
hr = m_graph.Connect(DsFindPin.ByDirection((IBaseFilter)_audio, PinDirection.Output, 0), DsFindPin.ByDirection(_audioRenderer, PinDirection.Input, 0));
}
}
bool subconnected = false;
hr = m_graph.Connect(DsFindPin.ByName((IBaseFilter)_splitter, "Video"), DsFindPin.ByDirection(_video, PinDirection.Input, 0));
if (hr == 0)
HasVideo = true;
else
HasVideo = false;
if (HasVideo)
{
hr = m_graph.Connect(DsFindPin.ByDirection((IBaseFilter)_video, PinDirection.Output, 0), DsFindPin.ByDirection(vobSub, PinDirection.Input, 0));
DsError.ThrowExceptionForHR(hr);
if (hr == 0)
{
int lc;
((IDirectVobSub)vobSub).get_LanguageCount(out lc);
subconnected = (lc != 0);
IPin pn = DsFindPin.ByName((IBaseFilter)splitter, "Subtitle");
if (pn != null)
{
hr = m_graph.Connect(pn, DsFindPin.ByDirection(vobSub, PinDirection.Input, 1));
((IDirectVobSub)vobSub).get_LanguageCount(out lc);
subconnected = (lc != 0);
}
hr = m_graph.Connect(DsFindPin.ByDirection(vobSub, PinDirection.Output, 0),
DsFindPin.ByDirection(_renderer, PinDirection.Input, 0));
}
else
{
hr = m_graph.Connect(DsFindPin.ByDirection(_video, PinDirection.Output, 0),
DsFindPin.ByDirection(_renderer, PinDirection.Input, 0));
}
}
I'm also using RuntimeConfig since the main purpose of doing this player is to make it a portable app with integrated codecs.
Can you plase help in enabling video accel?
If you need to run the app you can download a zip from this page (yellow button): http://msimic.github.io/MediaPoint/
Thanks!
Stereodude
17th February 2014, 05:15
In case you missed it, nev took a job with JRiver. He hasn't told us what he'll be working on for them, so we don't know whether LAV work will be affected.Well congrats to Nevcairiel on the new job!
NikosD
17th February 2014, 07:35
In case you missed it, nev took a job with JRiver. He hasn't told us what he'll be working on for them, so we don't know whether LAV work will be affected.
I didn't know.
I don't use Media Center software, I read that JRiver is one of the best, if not the best.
But 50$ is a lot.
Anyway, I think Nevcairiel is committed to open-source development but a job is a job.
I see almost everyday nightly builds, so someone is writing code for LAV filters.
If not Nevcairiel, then who ?
sheppaul
17th February 2014, 08:09
Hendrik :p
nevcairiel
17th February 2014, 08:15
When I setup the filtergraph and tell LAV to use video acceleration it simply does not do it.
From a brief look at your code, it seems like you add DirectVobSub to the filter graph, yes?
DXVA2 Native only works if the decoder is directly connected to a compatible renderer (EVR), if there is anything in between, DXVA2 Native no longer functions.
If you need anything in between, you can use DXVA2 Copy-Back or any of the other modes, only DXVA2 Native has this restriction (because it keeps the image on the GPU, while all others copy it back to system memory once, which costs a bit of CPU time)
annovif
17th February 2014, 17:47
Hello Nevcairiel , can i know why i can use dxva2 native with madvr with an Ati 7750 ? I'm the only one or it is a normal thing. Thank you
nevcairiel
17th February 2014, 17:52
Why wouldn't you be able to use it?
annovif
17th February 2014, 18:28
Because you said this:
DXVA2 Native only works if the decoder is directly connected to a compatible renderer (EVR)
Thank you
nevcairiel
17th February 2014, 18:29
That doesn't mean its the only compatible renderer.
annovif
17th February 2014, 18:38
ok, thank you:D
fluffy01
17th February 2014, 19:13
I know that ffmpeg does not support MVC and as such, you can not support it for software decoding, but have you considered supporting MVC via DXVA?
According to the specs, it should be pretty straightforward to implement. See here (http://www.microsoft.com/en-us/download/details.aspx?id=25200) for details.
I know that no free renderers or players currently support it, but that is most likely due to no free decoders have been able to decode it, so if you can get this to work in LAVFilters, I am sure, that we will soon see free players/renderers that will support it too :)
andybkma
18th February 2014, 11:26
Speex Audio : Is this something new? All of a sudden I have been seeing many cam vids coded with AVC for video and Speex for audio. Only PotPlayer can play it for me... could this speex be added to LAV Audio if possible please?
LigH
18th February 2014, 11:38
It is not exactly "new", another development by the Xiph team, a low frequency range codec for human speech (suitable for digital telephony).
Speex project website (http://www.speex.org/) — obsolete since it is included in the Opus codec (http://opus-codec.org/).
Other formats on RareWares (http://www.rarewares.org/others.php)
I wonder if your audio is really Speex, or rather a mis-identified Opus stream.
nevcairiel
18th February 2014, 11:41
LAV already supports both Speex and Opus.
marsovac
18th February 2014, 14:20
From a brief look at your code, it seems like you add DirectVobSub to the filter graph, yes?
DXVA2 Native only works if the decoder is directly connected to a compatible renderer (EVR), if there is anything in between, DXVA2 Native no longer functions.
If you need anything in between, you can use DXVA2 Copy-Back or any of the other modes, only DXVA2 Native has this restriction (because it keeps the image on the GPU, while all others copy it back to system memory once, which costs a bit of CPU time)
Yes I use xyVSFilter for subtitles.
I tried with copyback and it works only if I set that in the LAV configuration dialog.
The following line seems to do nothing:
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_DXVA2CopyBack);
Perhaps SetRuntimeConfig doesn't like setting the HW accel?
(EDIT: wrong - I'm doing it already before adding to the graph)Or do I need to set that before adding the filter to the filter graph?
And I'm also wondering how does MPC-HC use DXVA with subtitles then?
clsid
18th February 2014, 16:22
And I'm also wondering how does MPC-HC use DXVA with subtitles then?Because video and the rendered subtitle are merged by the video renderer.
@nevcairiel
The audio switcher in MPC-HC now supports mediatype re-negotiation, so there are no more obstacles for implementing a bitstreaming fallback ;)
marsovac
18th February 2014, 17:54
Because video and the rendered subtitle are merged by the video renderer.
You mean by the custom EVR presenter? I don't see EVR having two input pins...
NikosD
18th February 2014, 18:01
Yes.
You can't use subtitles with EVR.
If you want DXVA and subtitles you need EVR-CP, the default renderer of MPC-HC.
mindbomb
18th February 2014, 18:24
anandtech reporting maxwell supports partial h265 decode, which should be possible through cuvid.
marsovac
18th February 2014, 18:35
Yes.
You can't use subtitles with EVR.
If you want DXVA and subtitles you need EVR-CP, the default renderer of MPC-HC.
Thanks Nikos.
Is is even worth the hassle of development to attach my custom presenter to VSFilter? Especially since the presenter is not a filter at all...
Is there much difference between DXVA native and copyback?
NikosD
18th February 2014, 18:41
There is a tradeoff between those two DXVA modes between performance and flexibility.
Old cards and/or weak cards (slow memory copies) with slow PCI-e bus can't actually use DXVA-CB and DXVA native is a one-way solution.
But newer cards can handle DXVA-CB and use other renderers than EVR (CP).
marsovac
18th February 2014, 20:39
But newer cards can handle DXVA-CB and use other renderers than EVR (CP).
Well in that case I will stick to CB. My player doesn't even care to support WinXP, and I guess cards released after 2006 (Vista si 2007) should do the work.
But I still need to understand how to set DXVA-CB in runtime on LAV. Seems to work only if I set it in the LAV dialog which I guess changes the registry...
wanezhiling
19th February 2014, 04:14
http://www.sendspace.com/file/8xz535
18fps with LAV :o
https://code.google.com/p/lavfilters/source/detail?r=9d919d4f68459e4e6dad868eb8d04b78d2d7d541
Fixed. :)
marsovac
19th February 2014, 07:18
wanezhiling you're a dev on lav?
Can I kindly ask you to teach me to set the HW acceleration through code when using SetRuntimeConfig(true) ?
The setting seems accepted but not used on the next video played.
And of course since it is runtime config and the filter is recreated for each video played, that means I'm unable to use it at all...
Oddly it still uses the setting which is set in the LAV video config dialog (I presume the registry)...
wanezhiling
19th February 2014, 07:24
Nonono...I am LAV user :p
nevcairiel
19th February 2014, 08:43
The setting seems accepted but not used on the next video played.
And of course since it is runtime config and the filter is recreated for each video played, that means I'm unable to use it at all...
Oddly it still uses the setting which is set in the LAV video config dialog (I presume the registry)...
Sounds like your instance of LAV which you tried to configure is not actually used for playback, because runtime config resets all settings and takes nothing from the registry. Many other players use it with success.
andybkma
19th February 2014, 10:02
LAV already supports both Speex and Opus.
Okay, thanks. It seems I had to make a profile for Speex in Zoom Player and add the subtype to the profile. Now it works with LAV Audio while before it didn't. Cheers :-)
marsovac
19th February 2014, 12:30
Sounds like your instance of LAV which you tried to configure is not actually used for playback, because runtime config resets all settings and takes nothing from the registry. Many other players use it with success.
Holy cow, i was doing DllGetClassObject -> IClassFactory.CreateInstance() two times, once for the ILavVideo and once for ILAVVideoSettings instead of casting the first to the second.
Thanks a lot, stupid mistake in a utility method which I never bothered to check twice!
marsovac
19th February 2014, 21:07
I converted the ILavAudioStatus to C#:
public interface ILAVAudioStatus
{
///... cut
// Get details about the current decoding format
[PreserveSig]
uint GetDecodeDetails(/*Marshal.PtrToStringAnsi()*/ out IntPtr pCodec, /*Marshal.PtrToStringAnsi()*/ out IntPtr pDecodeFormat, out int pnChannels, out int pSampleRate, out uint pChannelMask);
// Get details about the current output format
[PreserveSig]
uint GetOutputDetails(/*Marshal.PtrToStringAnsi()*/ out IntPtr pOutputFormat, out int pnChannels, out int pSampleRate, out uint pChannelMask);
// ... cut
};
Something ugly I found in ILavAudioStatus:
When using this in other languages we need to tackle the char** conversion from a pointer.
Which means we get an IntPtr from the then we need to do Marshal.PtrToStringAnsi() on it.
In this case it is easier since I know that the returned string is static inside LAV, but it it weren't it would be an automatic memory leak since I have no way of deallocating its memory.
COM interfaces should use BSTR, which makes easier for anyone using the COM to read it as a string.
nevcairiel
19th February 2014, 21:20
It should probably allocate the string instead of giving static strings out, but I see no difference in using a normal LPCSTR to a BSTR, just a different free function you would need to call. Personally i really dislike BSTR.
In any case, cannot change it now anyway, as it would break all existing callers (or leak memory anyway).
I plan a cleanup of all interfaces in the distant feature in a major version change, since some already accumulated a bit of cruft, but that would then also change their GUIDs to make player developers notice to change.
Long time until then.
marsovac
19th February 2014, 22:07
It should probably allocate the string instead of giving static strings out, but I see no difference in using a normal LPCSTR to a BSTR, just a different free function you would need to call. Personally i really dislike BSTR.
I also dislike them because they are cumbersome, not type safe, and need oleauth. However...
You are assuming:
- that I have a free() function
-- which I don't in C# (well I may do some Marshalling magic but that's really cumbersome to use)
-- and even if I did, I would need to knwo which heap allocated the memory, managed? unmanaged? And by just having a COM interface pointer I'm unable to know that.
-- so returning a malloced char* would most likely be an inherent memory leak if you didn't provide a freePointer() method on your interface
- there is no difference
-- BSTR are length prefixed and pinned in memory by com allocation functions, which is why COM interop can safely free them and transfer to the appropriate datatypes in the destination language, which then may not need to be free()d
- in this specific case with char** I cannot define the interface with an out string because the interop would try to free the pointer automatically which would result in trying to free your (delving deep down into LAV, which is how I found that no freeing is necessary) static const char *sample_format_strings[] and we know where that leads to :)
With BSTR I know I don't have to free anything, so I don't have to make assumptions on how your code is written. I just get a string back :)
Unfortunately it would probably mean you need to implement a method specific to COM which wraps around your usual method (because seriously you will never use BSTR internally), so It kinda pollutes code, but that is inevitable in proper COM around c++ code.
nevcairiel
19th February 2014, 22:20
Half of Microsofts COM interfaces with string functions don't use BSTR as it is, they just document which free function you're supposed to use, which in most cases is CoTaskMemFree, the default COM allocator.
This is how other string functions are handled, like on LAV Splitter.
In any case the status interface was primarily build for LAV Audio itself, not necessarily for any external apps.
marsovac
19th February 2014, 22:41
For whatever it was built I managed to create interfaces for C# for it, and properly tested all methods to be working.
LavAudio:
https://raw2.github.com/msimic/MediaPoint/master/MediaPoint_Common/Interfaces/LavAudio/LavAudioInterfaces.cs
I pulled this out as a type, since it was just an uint in the original interface (and only these are used in the UI):
[Flags]
public enum LAVSpeakerLayouts
{
AV_CH_LAYOUT_MONO = 0x00000004,
AV_CH_LAYOUT_STEREO = 0x00000001 | 0x00000002,
AV_CH_LAYOUT_2_2 = AV_CH_LAYOUT_STEREO | 0x00000200 | 0x00000400,
AV_CH_LAYOUT_5POINT1_BACK = AV_CH_LAYOUT_MONO | AV_CH_LAYOUT_STEREO | 0x00000200 | 0x00000400 | 0x00000008,
AV_CH_LAYOUT_6POINT1 = AV_CH_LAYOUT_MONO | AV_CH_LAYOUT_STEREO | 0x00000200 | 0x00000400 | 0x00000008 | 0x00000100,
AV_CH_LAYOUT_7POINT1 = AV_CH_LAYOUT_MONO | AV_CH_LAYOUT_STEREO | 0x00000200 | 0x00000400 | 0x00000008 | 0x00000010 | 0x00000020
};
Lav video and splitter are in the work / testing.
I you wish to help other devs it would be helful to add them into the development folder when i am finished perhaps.
nevcairiel
19th February 2014, 22:43
The problem is that it would go out of date rather quickly as I add new things and cannot test or maintain it myself. I don't like having something outdated in there, tbh.
marsovac
19th February 2014, 22:48
True about that. Better to now have unmaintained code in the repository.
Well hopefully someone will find it on my repo, and it should be maintained rather well since I plan to upgrade to new lav releases.
marsovac
20th February 2014, 00:55
I just found out that my GPU Ati 4850 with 512MB Ram cannot handle DXVA-CB on
ken_ross_02-1920x1080_60fpsRef4.mts (ftp://helpedia.com/pub/multimedia/x264/testvideos/)
when CB is enabled the whole UI is sluggish, even moving the window around lags a lot.
using no acceleration LAV works well on the Phenom II X4 @ 3GHz / 8GB DDR3 1600
Isn't that strange? I tought such a GPU can transfer 1080p data 60 times per second without much hassle..
Another strange thing is: with CB CPU usage goes down quite a bit, GPU usage goes up a LITTLE bit, but still stays low, seems a bottleneck in the transfer...
Anyone cares to enlighten me on how much memory transfer a DXVA-CB uses for such a video?
I'm just guessing: 1920x1080x32x60 twice (474,6MB x 2).
Seems in my player the cpu-gpu buffer swap happens more times because the bandwith should be well enough for two swaps + 1 for presenting.
clsid
20th February 2014, 01:06
Nope, that is normal for older ATI cards. They are only optimized for transferring data to the GPU, not for copying it back.
wanezhiling
20th February 2014, 01:19
Even HD6990 can't handle H.264_1080p_60fps in even native dxva mode. :)
wanezhiling
20th February 2014, 06:13
http://www.sendspace.com/file/kyf07w
Hi nev, pmp seems not work well with latest git (playback stops at the start), is this FFmpeg problem?
NikosD
20th February 2014, 06:47
I just found out that my GPU Ati 4850 with 512MB Ram cannot handle DXVA-CB on
ken_ross_02-1920x1080_60fpsRef4.mts (ftp://helpedia.com/pub/multimedia/x264/testvideos/)
when CB is enabled the whole UI is sluggish, even moving the window around lags a lot.
using no acceleration LAV works well on the Phenom II X4 @ 3GHz / 8GB DDR3 1600
Isn't that strange? I tought such a GPU can transfer 1080p data 60 times per second without much hassle..
Another strange thing is: with CB CPU usage goes down quite a bit, GPU usage goes up a LITTLE bit, but still stays low, seems a bottleneck in the transfer...
Unfortunately, AMD doesn't care to build a HW decoder capable of H.264 1080p60fps decoding.
Even latest AMD cards can't keep up with that framerate - 60fps - in DXVA native mode.
Generally speaking, DXVA-CB increases both CPU load and GPU load due to memory copies.
Faster framerates lead to further CPU/GPU load.
In DXVA native they are both (CPU/GPU load) as low as possible.
nevcairiel
20th February 2014, 08:08
I just found out that my GPU Ati 4850 with 512MB Ram cannot handle DXVA-CB on
Older AMD cards suck at Copy-Back. Anything before the HD7000 series is basically unusable with Copy-Back decoding.
Especially if you try to use high framerate material, you'll really notice how the card bottle-necks the whole system.
NikosD
20th February 2014, 08:29
My Radeon 5750 card on PCI-E x16 has almost same performance using DXVA-CB or Native.
The problem is the high framerate.
60fps are unreachable even with HD7000 series - I haven't tested myself, I have read it though.
mhourousha
20th February 2014, 09:22
My HD7770 can handle 1080p60 clips with bitrate around 10Mbps.
to marsovac:you can create a custom EVR Presenter that support both DXVA2_Native and xySubfilter.
NikosD
20th February 2014, 09:24
And what about the clip posted above or any other AVCHD clip which usually is ~25Mbps ?
You can handle the 10Mbps 1080p60fps clip in both modes DXVA-CB and native, or native only ?
mhourousha
20th February 2014, 09:33
And what about the clip posted above or any other AVCHD clip which usually is ~25Mbps ?
I tested 'ducks take off(1080p version 100Mbps)'clip some months before,the decode performance is around 45fps IIRC.Native mode
NikosD
20th February 2014, 09:43
Thanks for the info, but "the ducks" clip is not a 1080p60fps, it's not an AVCHD clip.
Can you try the clip posted above or this one
ftp://helpedia.com/pub/multimedia/x264/testvideos/2011%20-%2002%20-%20H.264%20CPU%20DXVA%20codec%20comparison%20-%20Core2Duo%20vs%20UVD%202.2/6.Cat-1080p60fpsRef4-25Mbps.m2ts
fagoatse
20th February 2014, 09:44
Older AMD cards suck at Copy-Back. Anything before the HD7000 series is basically unusable with Copy-Back decoding.
Especially if you try to use high framerate material, you'll really notice how the card bottle-necks the whole system.
Shouldn't APUs be better at that task though?
Soukyuu
20th February 2014, 11:17
If you're talking about HSA, I'm not sure it will work out of the box. I pretty much expect the code to duplicate data in memory because it doesn't expect both the GPU and CPU to have access to the whole memory.
mhourousha
20th February 2014, 12:19
Thanks for the info, but "the ducks" clip is not a 1080p60fps, it's not an AVCHD clip.
Can you try the clip posted above or this one
ftp://helpedia.com/pub/multimedia/x264/testvideos/2011%20-%2002%20-%20H.264%20CPU%20DXVA%20codec%20comparison%20-%20Core2Duo%20vs%20UVD%202.2/6.Cat-1080p60fpsRef4-25Mbps.m2ts
avg 76 fps for both DXVA2_N and DXVA2_CB mode
NikosD
20th February 2014, 12:34
Shouldn't APUs be better at that task though?
If you're talking about HSA, I'm not sure it will work out of the box. I pretty much expect the code to duplicate data in memory because it doesn't expect both the GPU and CPU to have access to the whole memory.
Yes they should, but only in DXVA-CB, not DXVA native.
Because memory copies are faster, so I'm pretty sure that DXVA-CB should be faster than discrete cards for the same generation - at least.
But DXVA native should be the same, because basically it depends on the HW decoder.
avg 76 fps for both DXVA2_N and DXVA2_CB mode
Thanks!
It seems that the performance of HD7000 series is on par with Nvidia VP4 and my overclocked UVD2.2
Can you see the clock of GPU/Memory during benchmarking of your HD 7770?
mhourousha
20th February 2014, 13:51
Thanks!
It seems that the performance of HD7000 series is on par with Nvidia VP4 and my overclocked UVD2.2
Can you see the clock of GPU/Memory during benchmarking of your HD 7770?
GPU load is 30%,and the clock of core/mem is in full speed(1100/1200) during benchmark.
NikosD
20th February 2014, 15:16
@mhourousha
One last question:
Can you benchmark those two 1080p120fps files ?
1) http://120hz.net/hypermatrix/120fpsvideo/bf.mp4
2) http://120hz.net/hypermatrix/120fpsvideo/bf1.mp4
Can you decode them in realtime using HD 7770 (CB or N)?
mhourousha
20th February 2014, 17:55
@mhourousha
One last question:
Can you benchmark those two 1080p120fps files ?
1) http://120hz.net/hypermatrix/120fpsvideo/bf.mp4
2) http://120hz.net/hypermatrix/120fpsvideo/bf1.mp4
Can you decode them in realtime using HD 7770 (CB or N)?
both clips cannot reach full speed as expected
first clip:avg 77 fps
second clip: avg 79 fps
DXVA2_N
NikosD
20th February 2014, 20:00
It could go higher because these are easier to decode clips than AVCHD clips, VP4 has an average of 90fps.
Thanks for your time.
marsovac
21st February 2014, 15:48
http://120hz.net/hypermatrix/120fpsvideo/bf1.mp4
With DXVA native full speed.
With DXVA CB, extremely laggy. Like 50% dropped frames.
Phenom II X4 3Ghz, 8GB DDR3 1666 C8
ATi HD4850 512MB
Soukyuu
21st February 2014, 17:52
I'm pretty sure I saw someone reporting the same before and the answer was that ati's 4000 series don't have high enough memory bandwidth to cope with copying data back and forth.
nevcairiel
21st February 2014, 18:37
Its a problem with the architecture more then anything, copying from the GPU to system memory is just dead-slow on anything before HD7000. Its not a common use-case for a graphics card tbh, unless you're using it for compute - and that wasn't very big back then.
marsovac
21st February 2014, 20:37
So as I was told: if I want to get DXVA native I need to connect LAV video to a compatible renderer without any filters in between.
And I did that. Connecting directly to EVR.
Enum of all filter in my graph:
Renderer: EnhancedVideoRenderer
Default DirectSound Device
LavVideo
LavAudio
LavSplitter
I'm doing this:
if (lavVideoSettings.CheckHWAccelSupport(LAVHWAccel.HWAccel_DXVA2Native) != 0)
{
hr = lavVideoSettings.SetHWAccel(LAVHWAccel.HWAccel_DXVA2Native);
hr = lavVideoSettings.SetHWAccelResolutionFlags(LAVHWResFlag.SD | LAVHWResFlag.HD | LAVHWResFlag.UHD);
}
And connecting renderer and video:
hr = m_graph.Connect(DsFindPin.ByDirection(_video, PinDirection.Output, 0),
DsFindPin.ByDirection(_renderer, PinDirection.Input, 0));
Result: no luck:
http://i.imgur.com/qeOoRl1.jpg
I tried with various files which should work with DXVAn, none worked.
Any other suggestions?
EDIT: After removing my custom presenter from the EVR DXVAn is applied.
What are the requirements to have DXVAn and a custom EVR presenter?
NikosD
21st February 2014, 20:43
You have a very old version of LAV video.
Is it on purpose ?
I don't know though if a newer version solves your problem.
marsovac
21st February 2014, 20:53
You have a very old version of LAV video.
Is it on purpose ?
I don't know though if a newer version solves your problem.
It seems that a custom presenter that I put on the EVR makes it fall back to avcodec.
Without a presenter i get dxvan but of course I cannot make that useful in any way :D
PS. I'm using LAV 0.60.1, but I don't know why the dialog says otherwise.
nevcairiel
21st February 2014, 21:08
I haven't actually written a presenter myself, but I assume it needs to somehow handle the DXVA2 mode. I'm afraid I cannot help you there.
PS:
The property page thing is a common issue if you use a unregistered/private copy of LAV Video, and having another version of it installed in the system - if thats what you're actually doing. The way the code looks up the COM object for the property dialog, it'll always use the system registered page.
marsovac
21st February 2014, 21:12
The property page thing is a common issue if you use a unregistered/private copy of LAV Video, and having another version of it installed in the system - if thats what you're actually doing. The way the code looks up the COM object for the property dialog, it'll always use the system registered page.
That's what I am doing. Loading the COM by using the class factory in the DLL.
It probably uses the system registered version.
About the presenter... I'll review the code from MPC-HC and see what I am missing...
Thanks.
mhourousha
22nd February 2014, 03:37
What are the requirements to have DXVAn and a custom EVR presenter?
refer to the following tutorial
http://msdn.microsoft.com/en-us/library/windows/desktop/bb530107%28v=vs.85%29.aspx
if you want to display subtitle,you can use xySubfilter.
Create a filter that implement ISubRenderConsumer declared in http://madshi.net/SubRenderIntf.h.connect it to xySubfilter,then you can request subtitle img(when the Presenter queue a video sample) using ISubRenderProvider provided by xySubfilter, receive and store the img data in a queue ,when the Presenter Draw a queued video sample, fetch the subframe with corresponding timestamp from the queue, copy it to a Texture ,blend with video frame.that's all.
marsovac
22nd February 2014, 19:01
refer to the following tutorial
http://msdn.microsoft.com/en-us/library/windows/desktop/bb530107%28v=vs.85%29.aspx
if you want to display subtitle,you can use xySubfilter.
Create a filter that implement ISubRenderConsumer declared in http://madshi.net/SubRenderIntf.h.connect it to xySubfilter,then you can request subtitle img(when the Presenter queue a video sample) using ISubRenderProvider provided by xySubfilter, receive and store the img data in a queue ,when the Presenter Draw a queued video sample, fetch the subframe with corresponding timestamp from the queue, copy it to a Texture ,blend with video frame.that's all.
Very good info mhourousha.
Might get it done in a few days if C++ doesn't create problems :)
Thank you!
mzso
22nd February 2014, 20:34
Hello!
This little test video causes a crash with latest LAV video and mpc-hc or potplayer. With or without HW acceleration. With Potp internal decoder and MPV it plays fine.
https://drive.google.com/file/d/0ByfdfPvnoDuzSlZqY1JxeDdXNkU/edit?usp=sharing
JEEB
22nd February 2014, 20:37
mzso, Did you try current git HEAD or the latest release? At least the 32bit current git HEAD seems to work fine for me with a standard MPC-HC setup (splitter->decoder (LAV Audio does downmixing to 2ch)->EVR|DirectSound).
mzso
22nd February 2014, 21:34
mzso, Did you try current git HEAD or the latest release? At least the 32bit current git HEAD seems to work fine for me with a standard MPC-HC setup (splitter->decoder (LAV Audio does downmixing to 2ch)->EVR|DirectSound).
Hmm....
Could it be that it's a LAV Video+madVR issue?
Apparently changing either circumvents the issue.
nevcairiel
22nd February 2014, 21:38
The crash is inside madVR. I believe I reported a similar issue to madshi before, but to be safe you should tell him again.
marsovac
23rd February 2014, 03:56
Thanks to mhourousha I got DXVAn to work with my presenter.
Now the big step, integrate xyVSFilter into the presenter instead of attaching to LAV...
One strange thing I find out is:
- In DXVA native the bf1 video lags badly (bf1.mp4 (http://120hz.net/hypermatrix/120fpsvideo/bf1.mp4))
- IN LAV software mode it works without any trouble
Is this supposed to happen for 120 FPS videos?
I have my both build (dxva, software) in this zip. Can anyone test and see if they have the same issue?
http://marino.boletus.hr/TestBuilds.zip
You can check that dxva is enabled in the lav config dialog in the tray icon.
PS. I tried to play the video in MPC-HC and it lags in DXVAn, even tough a little less then in mine.
mhourousha
23rd February 2014, 06:35
no AMD GPU can handle 1080p120 in Hw decoding mode currently,so slow-down will occur.
but your player produce some additional lag IMHO.the display of stats flash all the time,and player crushed near the end of clip :(
I suggest you try using seperate device,seperate thread for rendering(UI,frame,stat etc).the D3D9EX has 'sharing resource between device'feature.so EVR Presenter could only draw Frame to a shared RenderTarget,then the rendering thread and device use this RT to draw the front end.
Aleksoid1978
23rd February 2014, 08:03
no AMD GPU can handle 1080p120 in Hw decoding mode currently,so slow-down will occur.
ATI 7750 play perfect at 1080p120 in DXVA 2.0 mode.
mhourousha
23rd February 2014, 08:07
ATI 7750 play perfect at 1080p120 in DXVA 2.0 mode.
My HD7770 simply can't.
wanezhiling
23rd February 2014, 09:33
My HD7770 simply can't.
Win7 or Win8/8.1?
Try to disable aero if is win7
NikosD
23rd February 2014, 10:40
ATI 7750 play perfect at 1080p120 in DXVA 2.0 mode.
I think you are the first ever reporting this.
Are you sure you are not using your CPU and/or you are actually decoding 120fps ?
Do you play 4K H.264 video too, in DXVA and 7750 ?
mhourousha
23rd February 2014, 11:00
Win7 or Win8/8.1?
Try to disable aero if is win7
My OS is win7.aero is already disabled when benchmarking.
LAV DXVA2N:avg~79fps
MS Decoder MFT: avg~81fps
NikosD
23rd February 2014, 11:02
Check your Catalyst video settings and make sure that everything - besides "Automatic Deinterlacing" - is disabled.
marsovac
23rd February 2014, 11:19
no AMD GPU can handle 1080p120 in Hw decoding mode currently,so slow-down will occur.
but your player produce some additional lag IMHO.
Ok that explains what I am having with HD4850.
The additional lag I'm having is exactly what you said.
I am actually drawing the EVR surface into a separate render target, and then I'm passing that into my application over to a WPF D3DImage, which is where the image is presented in the UI.
There is more overhead then just drawing the surface on a form, but the main issue is thet the whole UI in WPF is GPU accelerated, so my UI introduces even more lag on the alredy stressed GPU.. You can see that when hovering in and out of the window during the play of that video. The transparency animation effect is lagging also.
But i'm not concerned about that. I don't want to make a player in GDI or native DX since it requires too much work to make the UI nice :)
About the player crash: I may have some leakage left in those builds since I was experimenting a lot of things to make the presenter handle DXVA2. Will check it.
mhourousha
23rd February 2014, 11:34
Check your Catalyst video settings and make sure that everything - besides "Automatic Deinterlacing" - is disabled.
turn off all the post processing eff will lower the GPU load(30%->4%),but also lower the GPU core clock(1100Mhz->400Mhz in most time),so there is a small drop of the fps(80fps->76fps)
NikosD
23rd February 2014, 11:42
Strange.
In normal playback that would be normal.
But in benchmarking mode, the driver should clock the GPU as high as possible.
400 MHz is the standard clock of every UVD decoder, since Radeon 5000 series (UVD2.2)
I don't know if there is a way to find the real UVD clock, instead of GPU clock, although it should be the same if the GPU is using one clock for both.
wanezhiling
23rd February 2014, 11:50
It is still a long way for GCN to achieve NV VP5 capability in decoding, let alone the decoding *monster* Intel, sigh.
nevcairiel
23rd February 2014, 14:33
I have a NVIDIA 750 here for testing (with the new decoder, VP6 if you want to call it that), didn't install it in a system yet though, we'll see how well it performs and blows away AMD even more.
NVIDIAs claims would put it on par with Intel, but we'll see what really happens.
NikosD
23rd February 2014, 14:36
Nice!
I bet the performance of 750 video decoding will be half yours Haswell iGPU.
DragonQ
23rd February 2014, 14:51
Quite interested in results for the Maxwell GPUs; nVidia's claims are rather outlandish (8-10x faster video decoding, 2x faster video encoding) and the new range of cards should be really nice with their much lower temperatures and significantly reduced power consumption.
NikosD
23rd February 2014, 14:57
I have read that claim of x8-x10 video decoding performance and I think there is a HUGE misunderstanding.
The x8-x10 claim is referring to real time decoding, not the previous generation VP5.
VP6 (?) is x2 - x2.5 faster than VP5, which translates to 4K60fps video decoding capability.
My bet.
DragonQ
23rd February 2014, 15:02
Yeah makes more sense. 2180p @ 60 fps AVC would be great but it's a shame they only have partial HEVC acceleration. Most 2180p content will likely be HEVC in the near future.
I'd be interested to see if they've updated their deinterlacing algorithms at all but I guess with the eventual move to 2180p they don't need to worry much about it any more.
nevcairiel
23rd February 2014, 20:19
First testing shows its around 3x as fast as VP5, reaching close to 400 fps in various 1080p samples, or 80 fps on 4K. But that was only a quick and dirty test with very limited samples, more later, and maybe I can also squeeze more out of it by modifying the decoder a bit to be more aggressive.
NikosD
23rd February 2014, 20:26
Not a surprise for me.
I was thinking about 4K@70 fps, but Nvidia decided to give it more room just in case.
They have fully covered HDMI 2.0 which is 4K@60.
Still 4K@80 fps is about half decoding performance of Haswell iGPU.
nevcairiel
23rd February 2014, 20:27
My Haswell did 100 fps on the 4K sample I tested (and its usual 500 on the 1080p samples), so hardly half.
NikosD
23rd February 2014, 20:32
Have you disabled all VPP functions in drivers ?
Because even the hardest 4K ducks@370Mbps can be decoded by Ivy HD4000 at about ~130 fps.
So your 20 EU's iGPU should go higher.
In renderless mode using decoder only could go more than 150fps.
GTPVHD
23rd February 2014, 21:57
Thanks nev for testing the new Maxwell hardware decoder, seems to be a big jump from 120FPS in VP5 to 400FPS & from 4K24P to 4K80P in Maxwell. Intel's 4K120P decoder is still pretty ridiculous in performance.
DragonQ
23rd February 2014, 22:16
First testing shows its around 3x as fast as VP5, reaching close to 400 fps in various 1080p samples, or 80 fps on 4K. But that was only a quick and dirty test with very limited samples, more later, and maybe I can also squeeze more out of it by modifying the decoder a bit to be more aggressive.
Is this with CUVID or DXVA2?
wanezhiling
24th February 2014, 04:09
Thanks! Maxwell is far beyond my expectation, wonderful!
nev, could you test this clip (https://forums.geforce.com/default/topic/527075/hardware-acceleration-decoding-issue) with your 750? Cuz NVIDIA promised fix in next GPU, see it's post #18 (https://forums.geforce.com/default/topic/527075/geforce-drivers/hardware-acceleration-decoding-issue/post/3807011/#3807011)
It is a hardware limitation for this type of video stream. Our next GPU Maxwell architecture will add support for this in hardware.
nevcairiel
24th February 2014, 20:31
Thanks! Maxwell is far beyond my expectation, wonderful!
nev, could you test this clip (https://forums.geforce.com/default/topic/527075/hardware-acceleration-decoding-issue) with your 750? Cuz NVIDIA promised fix in next GPU, see it's post #18 (https://forums.geforce.com/default/topic/527075/geforce-drivers/hardware-acceleration-decoding-issue/post/3807011/#3807011)
The file seems to play fine on the 750, no artifacts anymore.
And some more performance numbers. Turns out my initial findings about 4K performance were inaccurate, but like I said, it was a quick look yesterday. :)
- H.264 4K decoding on low-bitrate clips can easily go up to 130 fps, or down to 60 fps on extremely high bitrates (ie. the 370Mbps ducks take off). On average it reached around 100 fps on "normal" clips I had around.
- H.264 1080p decoding is as reported yesterday, between 350 and 400 fps.
- VC-1 and MPEG-2 decoding speed increased similar, to ~410-440 fps at 1080p
When NVIDIA finally releases the final version of CUDA SDK 6.0, maybe I can also find out how to do partial HEVC acceleration.
GTPVHD
24th February 2014, 21:04
Interesting, thanks for the update, nev. Unfortunately, the Nvidia drivers don't support partial HEVC decoding yet according to Anandtech, so have to wait for a future driver release.
NikosD
24th February 2014, 22:49
And some more performance numbers. Turns out my initial findings about 4K performance were inaccurate, but like I said, it was a quick look yesterday. :)
- H.264 4K decoding on low-bitrate clips can easily go up to 130 fps, or down to 60 fps on extremely high bitrates (ie. the 370Mbps ducks take off). On average it reached around 100 fps on "normal" clips I had around.
- H.264 1080p decoding is as reported yesterday, between 350 and 400 fps.
- VC-1 and MPEG-2 decoding speed increased similar, to ~410-440 fps at 1080p
When NVIDIA finally releases the final version of CUDA SDK 6.0, maybe I can also find out how to do partial HEVC acceleration.
It would be useful to compare your GT2 with VP6 on the same clips.
How much faster is GT2 according to your tests in 1080p and 4K H.264 clips ?
nevcairiel
24th February 2014, 22:56
Thats not useful to me. But as I already said two days ago, its around 25% faster (400 vs 500 fps at 1080p, or 80-100 vs 120-140 at 4k)
NikosD
24th February 2014, 23:05
Two days ago you wrote 4K at 100 fps for Intel.
That's 25% faster than 4K at 80 fps of Nvidia.
Now with your new figures, the gap widens to ~50% for 4K (80fps vs 120 fps and 100 fps vs 140 fps)
Anyway, the VP6 is a fast HW decoder but slower than QS, especially in huge bandwidth clips - on Duck take off has half speed, based on your numbers.
nevcairiel
24th February 2014, 23:08
4K videos scale differently on the two decoders, you can't take the range and deduce anything from it. :p
One of my 4K test clips which benchmarked at around ~100 on NVIDIA does ~110 on Intel.
The ducks clip does ~80 on Intel, and 60 on NVIDIA.
All tests with DXVA-CB or QuickSync, cannot benchmark DXVA-Native on Intel because DXVAChecker is crap and doesn't allow benchmarking on secondary GPUs, and my primary screen is on nvidia. :p
NikosD
24th February 2014, 23:11
DXVA-CB and QuickSync ?
No native figures for Intel ?
Then you have to use DXVA-CB for Nvidia too or even better to change to iGPU for DXVA native figures.
I do that easily by connecting at the same time both outputs one from dGPU and one from iGPU on the monitor and select the active GPU from drivers menu - Win 8/8.1 with ATI as dGPU.
BTW, DXVA Checker is one of the most useful programs - and the only one measuring HW decoding - for HTPC users.
I hope to have the chance to test it myself on my own samples - a VP6 vs GT1 comparison.
Thanks for the figures.
nevcairiel
24th February 2014, 23:24
On NVIDIA, the performance difference between -CB and Native is very minimal if you have a good CPU (nearly zero). But I did all tests with CB anyway, only checked a few samples with DXVAChecker in Native, and the performance was the same.
And I'm not switching around GPUs, it always scrambles the icons on my desktop :P
NikosD
24th February 2014, 23:29
I would say that CB and native are close when you have a fast GPU, than a fast CPU, although both are important along with memory speed.
About desktop icons, yes I remember I had that effect too, but just once.
If you setup both desktops at the same resolution, size, refresh rate etc, I think you won't see that again.
wanezhiling
25th February 2014, 02:45
The file seems to play fine on the 750, no artifacts anymore.
Wow thanks! The GREEN never disappoints me, not like the RED. ;):D
- H.264 4K decoding on low-bitrate clips can easily go up to 130 fps, or down to 60 fps on extremely high bitrates (ie. the 370Mbps ducks take off). On average it reached around 100 fps on "normal" clips I had around.
- H.264 1080p decoding is as reported yesterday, between 350 and 400 fps.
- VC-1 and MPEG-2 decoding speed increased similar, to ~410-440 fps at 1080p
Thanks for test and the useful info, "VP6" is a definitely fast HW decoder and very very close to Ivy Bridge.
Well Intel is a monster in decoding/encoding, like from other planet. lol
When NVIDIA finally releases the final version of CUDA SDK 6.0, maybe I can also find out how to do partial HEVC acceleration.
Great, let it happen.
Ava Pug
25th February 2014, 06:44
And I'm not switching around GPUs, it always scrambles the icons on my desktop :P
madshi made this
One thing that annoys me to no end, when doing the above described switch is that Windows likes to scramble the order of my carefully positioned desktop icons. So I've written a little helper tool which is able to save (to the registry) and restore the desktop icon positions. Here it is, in case anyone finds it useful:
http://madshi.net/DesktopPosSaver.zip
jkauff
25th February 2014, 13:04
madshi made this
There's also a wonderful little program by Stardock (costs a couple bucks) called Fences that lets you group your icons in named semi-transparent "corrals" on your desktop. The layouts are invulnerable to unwanted icon shuffling by Windows.
It's one of those utilities you don't know you need until you try it, then you can't live without it.
NikosD
25th February 2014, 15:56
When NVIDIA finally releases the final version of CUDA SDK 6.0, maybe I can also find out how to do partial HEVC acceleration.
Well, is seems that you might get involved faster with HEVC acceleration according to this:
14070
nevcairiel
25th February 2014, 20:11
I can't imagine it actually works, as we all know that Haswell doesn't actually have the hardware required (but it does show up for me as well).
Implementing a new codec for DXVA2 is quite a lot of work, and doing so without even knowing if it will work once its done leaves you in the position of not knowing if it just fails because the driver is lying to you, or if it fails because of bugs in my code.
NikosD
25th February 2014, 20:18
When I saw it for the first time I thought it's a driver's bug.
But because you never know, I posted it here.
Is there any way to check if it works, without going all the way ?
I can't think of any and I don't have the tools, I was hoping you can do the test if it really works.
nevcairiel
25th February 2014, 20:20
DXVAChecker already tests if you can actually create such a device, which apparently succeeds, but what ever happens when you try to decode with it ... who knows.
Maybe Intel does some magic in the drivers and does actually most of it in software ... or its just a slip-up and shouldn't be shown in the list at all.
DragonQ
25th February 2014, 21:02
Isn't that what they mean by "partial acceleration"? I'm sure I saw that in an article recently, where they said HEVC acceleration used both the CPU and GPU. Could be what you're talking about with the driver thing.
nevcairiel
25th February 2014, 21:11
But that was NVIDIA, the screenshot is from Intel. :p
NikosD
25th February 2014, 21:16
@nev
Maybe you could approach an Intel rep or Intel forums in order to understand better what is really going on.
If it actually works, in any way, I think that you would go for an actual decoder implementation.
HEVC is a very difficult codec even for quad-core Intel CPUs and any assistance, even if it's partial, it's very welcomed until actual full HW acceleration is available (next year probably)
clsid
26th February 2014, 19:33
AviSynth handling is unstable with AviSynth 2.5.8 (freezes/crash). This is a regression in the FFmpeg code. Afaik it used to work before this rewrite: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=f0b234ab9e406efee85c17eb435db646092a943b
JEEB
26th February 2014, 19:53
Huh, I was under the impression that those issues were already more or less dealt with? Looking at this issue (https://trac.ffmpeg.org/ticket/2526). If it's not, I recommend someone to report it further.
Also, I think I've even had someone actually test 2.5.8 before, and it seemed to work. I am personally on 2.6, and wouldn't really recommend anyone to install anything older by now.
nevcairiel
26th February 2014, 20:01
AviSynth handling is unstable with AviSynth 2.5.8 (freezes/crash). This is a regression in the FFmpeg code. Afaik it used to work before this rewrite: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=f0b234ab9e406efee85c17eb435db646092a943b
Like JEEB said, report the issues to FFmpeg. This is the wrong place.
Of course they are unlikely to fix, so if you need to use 2.5.8, submit a patch. :p
Smeulf
26th February 2014, 21:44
Hi,
First of all, thanks a lot for that incredible work you do all guys.
By posting today, I just want to point out what I think is a bug in the LAV splitter.
In the MKV standards for chapters, a chapter can be either disabled or hidden.
A disabled chapter must not be played, but a hidded chapter must be played, without beeing displayed in the user interface.
In the current implementation, both hidden and disabled chapters are not played, and then can result of some part of the video missing.
Documentation is here : http://www.matroska.org/technical/specs/chapters/index.html
Please take a look at "ChapterFlagHidden" and "ChapterFlagEnabled" tags definitions.
I really hope you'll been able to fix it in a future release.
Rgds.
Smeulf.
NikosD
26th February 2014, 22:13
Is there anyone building LAV filters often ?
Nightly builds from betaking here (http://pan.baidu.com/share/link?uk=2214911777&shareid=497331#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6) are on a very slow server.
filler56789
26th February 2014, 22:31
< ^ And to make things worse, the last nightly build of MPC-HC is one week old already :(
nevcairiel
26th February 2014, 22:40
In the current implementation, both hidden and disabled chapters are not played, and then can result of some part of the video missing.
Thats not correct, the only condition in the code is that the chapter needs to be enabled. The hidden flag is not checked for playback (only for listing the chapters in the UI).
In fact, I have a file I made myself which has a lot of ordered chapters, and only the actual movie chapters are flagged as visible, all others are hidden - and it plays fine.
Smeulf
26th February 2014, 22:49
Thats not correct
Well, I'll check again ;) I may have made a mistake. The strange part is that the same video played using Haali splitter was correct...
Maybe it's under certain circumstances.
Would you please nevcairiel PM me some sample of your own chapters ?
nevcairiel
26th February 2014, 22:59
No need to PM anything.
Here is the Chapter XML for my Blu-ray remux of Avatar, with all 3 editions:
http://pastebin.com/VbkGAfqS
It has several chapters which are Enabled and Hidden, and it works just fine like this.
Smeulf
26th February 2014, 23:03
Thanks nevcairiel, I'll check that against my own chapters, and report back in case I find something strange.
Cheers.
NikosD
27th February 2014, 06:53
I finally managed to download latest nightly build and found out some fixes of the below clips in DXVA Intel:
MPEG-2
Artifacts - Green stripe
http://www.sendspace.com/file/jm10xo - QS plays fine
You fixed the green stripe, but it has out of sync video and audio when you seek. It pauses video for a sec while playing audio.
MPEG-2
Doesn't start decoding (MPC-HC is OK)
ftp://helpedia.com/pub/multimedia/x264/testvideos/2010%20-%2009%20-%20DXVA%20benchmarks%20-%20Avivo%20vs%20PureVideo%20vs%20Clear%20Video/test-g1-1.mpg
That clips still doesn't start decoding with LAV, but MPC-HC decodes it fine.
Is it me ?
VC-1/WMV3
Every HW decoder has heavy artifacts, but QS is perfect with external LAV
MPC-HC refuses to decode it in QS!
http://www.sendspace.com/file/aep5vn
I'm going to report this to Intel support.
VC-1/WMV3
I put again this 2880 x 1080 VC-1 file, because I didn't get it from the first time, if it's a drivers problem or LAV.
QS plays fine.
http://www.sendspace.com/file/7o6usa
I reported that to Intel support and they closed above 1080p decoding for VC1_VLD2010 in the last driver!
So it falls back to software now.
VC1_IDCT and QS decoder are still open up to 4K and both decode it perfect.
VC-1/WMV3
I put again this file too, because it's broken again with green images at the beginning.
You have fixed it in the past, but it's broken again. Check MPC-HC too.
http://www.techpowerup.com/downloads/530/hd-dvd-demo-1080p-vc-1-ddplus-5-1/mirrors
Fixed.
H.264
Heavy artifacts and green distorted images at the beginning
http://www.sendspace.com/file/9p8xa0
Green screens disappeared at the beginning, but if you seek you can see artifacts.
H.264
It plays fine, but if seek you loose video/ audio sync. The image freezes but you can here the audio decoding
http://www.sendspace.com/file/b6uxc4
Fixed.
06_taro
27th February 2014, 09:09
Nev, a fix for installer ;)
pastebin (http://pastebin.com/yLauaWKv).
Is there anyone building LAV filters often ?
Nightly builds from betaking here (http://pan.baidu.com/share/link?uk=2214911777&shareid=497331#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6) are on a very slow server.
Here (http://tmod.nmm-hd.org/LAVFilters)'s a custom build, tweaked for my own use though....
nevcairiel
27th February 2014, 09:53
Nev, a fix for installer ;)
Thanks, I always forget updating that. Should find a better way...
NikosD
27th February 2014, 10:06
Here (http://tmod.nmm-hd.org/LAVFilters)'s a custom build, tweaked for my own use though....
Perfect.
It's a "rich" version with interesting batch files that I made myself too and all the readme files etc.
Let's see how long it will last, till server bandwidth saturation :)
Mercury_22
27th February 2014, 13:16
@Nev Why not enable rtmp & rtmpt protocols ?
Cause they are currently (in my builds :))working very well in lav for simple rtmp(t) links = without parameters.
Just add an warning to let user know about the current limitations
nevcairiel
27th February 2014, 13:19
People don't read warnings and I get lots of questions, so rather not.
Owyn
28th February 2014, 12:46
Can I play Hi10P videos correctly without MadVR? What's the best way (if there is)? I tried Sync Renderer + ffdshow = but ffdshow trayicon stated that color output wasnt P10 (I couldn't see artifacts thought)
(cuz madvr eats more resources that I can provide and I don't want to hear the audio sync noise - https://code.google.com/p/lavfilters/issues/detail?id=432&thanks=432&ts=1393587810 )
nevcairiel
28th February 2014, 12:47
No other renderer accepts 10-bit input, so it will be converted first.
Owyn
28th February 2014, 12:49
Sad ='(
but what do you mean "converted"? Will it be still shown "correctly"? In early Hi10P ages I remember if you played Hi10P video without its support - it gave video errors & artifacts.
So now it would just "convert" it to less colorfull but still correct picture, am I understanding this right?
JEEB
28th February 2014, 13:05
In case of 10bit 4:2:0 and 4:2:2 YCbCr content, it will be correctly dithered down to 8 bits. This is not a problem at all since you do not do lossy compression to this data after the fact. Calling it "less colorful" is quite incorrect in my opinion since while you do lose in the range of values available to you (as in, you can't be as specific in the middle of the range - both have the same max/min available), I would be damned if anyone saw the differences in the result in anything else but a specifically crafted scenario that specifically makes the dithered result look bad.
Taking 10bit YCbCr input in is better than 8bit YCbCr input, but one shouldn't overreact regarding dithering done after decoding in order to fit the content into a renderer that doesn't.
As for 8 and 10 bit 4:4:4 content, that will be converted straight into RGB for most renderers.
qtwebkit
28th February 2014, 14:24
Is there anyone building LAV filters often ?
Nightly builds from betaking here (http://pan.baidu.com/share/link?uk=2214911777&shareid=497331#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6) are on a very slow server.
Try this mirror (http://www.vdisk.cn/betaking):)
NikosD
28th February 2014, 14:46
Faster server, thanks.
filler56789
28th February 2014, 15:13
Try this mirror (http://www.vdisk.cn/betaking):)
Faster server, thanks.
For me, the download speed is around 5KB/s :mad:
kasper93
28th February 2014, 15:47
Use any download manager which use simultaneous connections. And it will be downloaded in a blink of an eye (http://i.imgbox.com/cWznjnS1.png). For this two folders I recommend JDownloader it will harvest all available files.
And please stop off topic :)
filler56789
28th February 2014, 18:45
All right --- I just would like to understand why nobody detects the offtopicness before I happen to jump into the offtopic wagon :) :D
ianken
28th February 2014, 19:42
Did a remux from MOV to MKV with PRORES (10bit 4:2:2) payload and while it plays in VLC it will not even connect pins in graph-edit using LAV filters... am I missing something obvious?
EDIT: OK, so the MOV plays fine. Only the remuxed MKV has issues. But the MOV has a ton of audio channels and I want to use FFMPEG to select the ones I want to keep and get it into a more flexible container. Any ideas how to get FFMPEG to make an MKV that works with LAV and PRORES? The MKV when you attempt to play it reports the video a "UNDF" so I suspect FFMPEG is borking the remux.
Output #0, matroska, to 'test.mkv':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
encoder : Lavf55.23.103
Stream #0:0(eng): Video: prores (apch / 0x68637061), yuv422p10le, 720x480 [SAR 32:27 DAR 16:9], q=2-31, 45979 kb/s,
23.98 fps, 1k tbn, 23976 tbc (default)
Metadata:
creation_time : 2014-02-20 17:18:14
handler_name : Apple Alias Data Handler
timecode : 00:00:00:00
Stream #0:1(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, 2304 kb/s (default)
Metadata:
creation_time : 2014-02-20 17:18:14
handler_name : Apple Alias Data Handler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:7 -> #0:1 (copy)
kerimcem
1st March 2014, 16:31
http://i.hizliresim.com/KZazMz.jpg
lastet test bulid..wrong color mp4 files(dxva native) (mpc-be youtube record)
nevcairiel
1st March 2014, 17:00
What kind of graphics card and which driver version?
NikosD
1st March 2014, 17:05
One last clip H.264 interlaced:
http://www.sendspace.com/file/fzekte
With Haswell plays fine with Sandybridge was playing fine with 0.59.1 version, but now has green images for several seconds with 0.60.1 - only for Sandy.
Haswell still decodes it just fine with 0.60.1!
Fixed.
In CPU decoding of that interlaced clip, using default interlaced options, only 2 cores of a quad-core Core i5 - 2400 were used.
In playback and benchmarking mode (in order to push the CPU more)
I tried several other H.264 interlaced clips and the behavior was the same. 2 cores out of 4.
To be more exact, 50% utilization of a quad-core Core i5.
Strange.
CPU interlaced H.264 decoding not fixed.
kerimcem
1st March 2014, 17:37
What kind of graphics card and which driver version?
old ati card ati 3650, 60.1(puplic) no problem and -23.02.2014 bulid no problem..24+ problem..(sorry bad english)
nevcairiel
1st March 2014, 17:59
Of course its old AMD cards, who else would have such a weird implementation that it doesn't follow the D3D specification. :p
Should be fixed again.
GTPVHD
2nd March 2014, 17:54
http://blogs.msdn.com/b/vcblog/archive/2014/02/28/avx2-support-in-visual-studio-c-compiler.aspx
clsid
2nd March 2014, 20:17
That is totally useless since LAV Filters must work on all modern CPUs, not just the ones that support AVX2. Plus, the FFmpeg stuff is compiled with GCC instead of Visual Studio.
nevcairiel
2nd March 2014, 22:48
Since everyone is always looking for nightly builds, here is the latest:
x86: http://files.1f0.de/lavf/LAVFilters-0.60.1-61-g830839c.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.60.1-61-g830839c-x64.zip
Its pretty close to a release, so if you find any annoying errors in it (especially regressions), let me know.
Maybe I should setup my own automated nightly builds, hmm..
NikosD
2nd March 2014, 23:09
I saw a huge increase in QuickSync decoder dll in x64 file only.
Is there something new in that ?
Regarding DXVA, nothing really changed from the latest nightly before yours:
MPEG-2
Pauses video for a sec, while playing audio after seeking
http://www.sendspace.com/file/jm10xo - QS plays fine
Doesn't start decoding (MPC-HC is OK)
ftp://helpedia.com/pub/multimedia/x264/testvideos/2010%20-%2009%20-%20DXVA%20benchmarks%20-%20Avivo%20vs%20PureVideo%20vs%20Clear%20Video/test-g1-1.mpg
VC-1/WMV3
Every HW decoder has heavy artifacts, but QS is perfect with external LAV
MPC-HC refuses to decode it in QS!
http://www.sendspace.com/file/aep5vn
H.264
Heavy artifacts after seeking
http://www.sendspace.com/file/9p8xa0
P.S
For me, still DXVA-CB has half performance of DXVAn
nevcairiel
3rd March 2014, 08:28
Pauses video for a sec, while playing audio after seeking
http://www.sendspace.com/file/jm10xo - QS plays fine
Seems fine here, but its also pretty normal for something like this to happen in .mpg files after seeking.
Seeking is not an exact science in mpeg files, since they don't have a seeking index. It has to fix A/V sync sometimes.
Doesn't start decoding (MPC-HC is OK)
ftp://helpedia.com/pub/multimedia/x264/testvideos/2010%20-%2009%20-%20DXVA%20benchmarks%20-%20Avivo%20vs%20PureVideo%20vs%20Clear%20Video/test-g1-1.mpg
Plays just fine in different players and in GraphStudio for me.
Every HW decoder has heavy artifacts, but QS is perfect with external LAV
MPC-HC refuses to decode it in QS!
http://www.sendspace.com/file/aep5vn
This file uses WMV9 Complex Profile. This profile is not supported in hardware, and QuickSync always falls back to software for me.
I'll add a check to fallback from DXVA2 as well.
Heavy artifacts after seeking
http://www.sendspace.com/file/9p8xa0
This also happens in software mode, seems like a bug in the ffmpeg library.
NikosD
3rd March 2014, 08:35
Seems fine here, but its also pretty normal for something like this to happen in .mpg files after seeking.
Seeking is not an exact science in mpeg files, since they don't have a seeking index. It has to fix A/V sync sometimes.
OK, but sometimes you do some magic and fix A/V sync.
Plays just fine in different players and in GraphStudio for me.
I try to play/ benchmark it in DXVA Checker and just stalls at the beginning.
Also in x86 version of MPC-HC, the clip has no seeking capability - the slider stalls at the beginning
In x64 version of MPC-HC, the slider moves on normally
This file uses WMV9 Complex Profile. This profile is not supported in hardware, and QuickSync always falls back to software for me.
I'll add a check to fallback from DXVA2 as well.
Thanks.
This also happens in software mode, seems like a bug in the ffmpeg library.
Thanks for the info.
NikosD
3rd March 2014, 08:47
What about UVD/UVD+ and this post ?
@nev
After upgrading my old system (AthlonXP - Radeon 3650 AGP (UVD+) - Cat. 13.9) from Windows XP to Windows Vista (unfortunately it can't take Win 7 due to driver conflict), I had the opportunity to try LAV Video and MPC-HC 1.7.3 for the first time using DXVA with UVD+ (because LAV filters don't support Windows XP DXVA1)
I can say that I had a better experience than using PotPlayer for all the clips that UVD+ and LAV Video DXVA can decode.
BUT once again like UVD2.2 (Radeon 4000/5000 series) there were a lot of restrictions for clips that UVD+ could decode:
Codec restriction, Resolution restriction, ReF number restriction - it's like you follow exactly the BluRay specs for H.264
The main restrictions are:
1) No WMV3 HW acceleration (it's disabled for unknown reason)
2) No above 1080p H.264 HW acceleration - like 2048 x 1280
3) No H.264 1080p Ref 5/6 HW acceleration (it's restricted to Ref 4)
4) No H.264 720p Ref 12 HW acceleration (it's restricted to Ref 9)
All of the above files play flawlessly with PotPlayer in DXVA mode and UVD+, so those are not driver/ HW restrictions, only LAV Video restrictions.
So, if you don't want to leave driver to handle those situations by default and you don't want to test every possible combination of ATI HW decoder (UVD, UVD+, UVD2, UVD2.2) and various clips, resolutions etc I have a suggestion for you.
Make a "secret/ hidden" button named "Use DXVA anyway" or "Force HW acceleration" or something like that, in order to give power users a chance to test - in their own responsibility - DXVA acceleration in their systems in situations where you decided to disable it.
That option should have no restriction/ limitation by LAV Video and should leave everything to the driver and the other DXVA options of LAV Video (like codecs and resolution)
I think you have to loose some restrictions and gain more flexibility and options for the people who know what they do.
Of course that option will be disabled by default.
nevcairiel
3rd March 2014, 08:51
I may add options later to disable compatibility checks, but for now from all I've tested and users reported, UVD/UVD+ likes to fail a lot on clips over L4.1.
PS:
No player I ever tested had working WMV3 HW Accel on my 3650 PCIe - including PotPlayer, just falls back to software.
NikosD
3rd March 2014, 08:58
This is generally true, UVD/UVD+ is a restricted HW decoder, but can play some > L4.1 clips
Also, I think you could enable WMV3 HW acceleration without problems and besides compatibility checks you could remove some resolution restrictions too for all ATI products which are capable of 2K HW decoding.
nevcairiel
3rd March 2014, 09:00
I just tested WMV3 two weeks ago on the 3650, after fixing all the issues with decoding on Intel, but it still only outputs artifacts, no use in activating that.
hoborg
3rd March 2014, 09:00
This is generally true, UVD/UVD+ is a restricted HW decoder, but can play some > L4.1 clips
Hi.
If i remember correctly, there is limit in ref. frames for L5.1, i think it was 8, but not sure.
NikosD
3rd March 2014, 09:32
This is an "interesting" file in which the first 32 frames say that is Sorenson Spark, but after that it's all H.264!
http://www.sendspace.com/file/qcd0zq
Is it possible to "skip" those first 32 frames and look further in the file in order to be treated as a HW accelerated clip ?
It's a 4096x3072@118fps clip !!
Hi.
If i remember correctly, there is limit in ref. frames for L5.1, i think it was 8, but not sure.
Yes, something like that. I have tested 1080p L5.1 Ref 5 and 6 clips and play fine with UVD+.
nevcairiel
3rd March 2014, 09:34
you could remove some resolution restrictions too for all ATI products which are capable of 2K HW decoding.
I changed the check today so that its based on number of macroblocks, and not individual dimensions. It should allow for more 2K resolutions, while still blocking 4K.
Remember that any resolutions over FullHD require the UHD checkbox to be checked in LAV Video settings, that includes those 2K clips over 1920x1080
NikosD
3rd March 2014, 09:35
Great, looking forward to test it.
NikosD
3rd March 2014, 09:49
Maybe I should setup my own automated nightly builds, hmm..
That would be best practice for all.
NikosD
3rd March 2014, 10:02
Remember that any resolutions over FullHD require the UHD checkbox to be checked in LAV Video settings, that includes those 2K clips over 1920x1080
Maybe that should be enabled by default, in case doesn't harm VP4, Sandy or older HW decoders that can't do more than FullHD.
Because a lot of people even with VP5 or Ivy/ Haswell don't know that they have to enable it in order to get 4K HW acceleration.
GTPVHD
3rd March 2014, 15:30
http://us.download.nvidia.com/XFree86/Linux-x86/334.21/README/supportedchips.html
GeForce GTX 750 Ti 0x1380 E
GeForce GTX 750 0x1381 E
GeForce GTX 745 0x1382 E
Nvidia has confirmed the Maxwell hardware decoder is Feature Set E, Kepler is Feature Set D.
GPUs with VDPAU feature set E support an enhanced error concealment mode which provides more robust error handling when decoding corrupted video streams. This error concealment is on by default, and may have a minor CPU performance impact in certain configurations. To disable this, set the environment variable VDPAU_NVIDIA_DISABLE_ERROR_CONCEALMENT to 1.
NikosD
3rd March 2014, 16:40
Maybe I should setup my own automated nightly builds, hmm..
Another very helpful issue regarding nightly builds, would be an extra number after the main version.
For example 0.60.1.78, this is what MPC-HC is doing with LAV internal filters.
Because as it is right now, you can't really know which exactly nightly version is registered in your system.
They all are 0.60.1
Snowknight26
3rd March 2014, 18:08
Because as it is right now, you can't really know which exactly nightly version is registered in your system.
Sure you can. Check the DLL properties.
kasper93
3rd March 2014, 18:38
Because as it is right now, you can't really know which exactly nightly version is registered in your system.
Probably because there isn't any nightly builds of LAV. Why do you just trying to find problems with everything? As you noticed yourself LAV shipped with MPC-HC have build number and I'm not aware of any other source of LAV builds. Except rare test build posted in this thread. It's distributor responsibility to care about such things, and since LAV doesn't have official nighties distributions it's not needed until it have.
But you know you can always send a patch it's open source project after all. And saying to others what they could and couldn't do is not the best way of doing things. Especially when you're talking about non existing features.
But well I don't care, I just find it little bit annoying that you send few posts in row, quote own posts and so on. If you have bugs just send them to https://code.google.com/p/lavfilters/issues/list rather than reposting over and over same things... (but only if there is really a need to do so...)
Snowknight26: +1
Mercury_22
3rd March 2014, 19:42
@ NEV I see you've done some work on the DXVA but this (seeking) problem LAVVideo DXVA (N&CB) has big problems (big image "glitches") with this AVC (L3.2) file (http://www.multiupload.nl/OKHM9WLH69) on subtitle (PGS) enable / change and on seeking
P.S. Latest LAV git here still exist, at my end at lest.
It's just me ?
nevcairiel
3rd March 2014, 20:08
Seeking works fine for me on that sample, at least in the first 100mb, your file hosts are slooow.
NikosD
3rd March 2014, 20:15
I installed latest *non-existent* nightly build from betaking and I decided to run a thorough test of my ~600 HW accelerated samples (H.264, MPEG2, VC-1, WMV3) using DXVA native and latest nightly of MPC-HC 1.7.3.72 with LAV internal 0.60.1.40
I had 4K option enabled in both LAV and MPC-HC for all systems.
1st system is a Win 8.1 Pro x64 with Nvidia GT440 (VP4) PC
Not a single bug or artifact, flawless decoding and it really decodes everything up to 1080p60.
2nd system is a Win 8.1 Pro x64 with Radeon 5750 (UVD2.2) PC
Not a single bug or artifact, but surely not flawless decoding even for "easy" clips.
It's the first time that LAV is on par with MS DS/MFT and PotPlayer regarding resolution restrictions on AMD HW.
I can play those H.264 above FullHD movie trailers at 2048x1280 for the first time using LAV and DXVA!
But the decoding of most of my H.264 files are not as flawless as Nvidia using MPC-HC 1.7.3.72.
Maybe the next update of MPC-HC to LAV latest version could help, but I think the problem is somewhere else.
For every seek and every move of the slider, forward or backward I had a lot of frames dropped and even when I had zero dropped frames, the fluidity of decoding was inferior to VP4, even for easy clips.
Driver's imperfection ?
Less worked code for AMD HW ?
I don't know...
3rd system is a Vista x86 with Radeon 3650 (UVD+)
Not a single bug or artifact like the other systems, but not as fluid as Nvidia.
It has a feeling of better fluidity than UVD2.2 ! and less dropped frames.
I can play those H.264 above FullHD movie trailers at 2048x1280 for the first time using LAV and DXVA with that 2007 card too!
It has one bug though in VC-1 files.
It seems that the removal of resolution restrictions allows 3D VC-1 files with resolutions like 1024 x 1536 or 1280 x 1440 to be HW accelerated in DXVA but with artifacts.
Same resolutions in H.264 format are decoded without errors by UVD+
I will go back to original 0.60.1 to see if that happens too when 4K is enabled or it is something new.
nevcairiel
3rd March 2014, 20:20
Seeking is less fluid when the decoder is slower. Even VP4 is quite a bit faster then UVD2.2, which may account for this.
Seeking is generally better in MP4/MKV files, and worse in TS/MPG files.
Regarding the VC-1 errors, you wanted to let the decision up to the driver which files to play. Looks like the driver doesn't know what it can actually play. :p
Luckily the drivers for the newer cards (ie. not-legacy) apparently has learned to not accept out of range resolutions.
I suppose I could add the old check back for VC-1, and only allow higher for H.264.
NikosD
3rd March 2014, 20:32
Seeking is less fluid when the decoder is slower. Even VP4 is quite a bit faster then UVD2.2, which may account for this.
Seeking is generally better in MP4/MKV files, and worse in TS/MPG files.
True, but the whole experience and feeling is not on par with Nvidia.
It's not about performance, I had that feeling for easy 24p or 25p clips.
Regarding the VC-1 errors, you wanted to let the decision up to the driver which files to play. Looks like the driver doesn't know what it can actually play. :p
Luckily the drivers for the newer cards (ie. not-legacy) apparently has learned to not accept out of range resolutions.
I prefer this situation than restricted resolution for H.264 :p
If you could close VC-1, without closing H.264 would be best case scenario :D
I've just read your updated answer, it's exactly what I wrote you above :)
UVD2.2 can play those 3D VC-1 files with no artifacts at all, so if you could choose only UVD+ to close it.
NikosD
3rd March 2014, 20:47
I suppose I could add the old check back for VC-1, and only allow higher for H.264.
I've just tested 0.60.1 official and even with 4K enabled, it doesn't allow VC-1 to be decoded in DXVA.
So, the best solution is to close only VC-1 for only UVD/UVD+ above FullHD.
I just tested WMV3 two weeks ago on the 3650, after fixing all the issues with decoding on Intel, but it still only outputs artifacts, no use in activating that.
Just tested my 3650 with latest Catalyst 13.9 using PotPlayer and decodes every WMV3 flawlessly in HW.
Maybe different driver version than yours ?
nevcairiel
3rd March 2014, 20:53
Last time i tried PotPlayer, it used software decoding. Are you sure it uses hardware?
NikosD
3rd March 2014, 20:56
Yes I can see it displaying DXVA in OSD and UVD+ clocks go to maximum while CPU usage goes to minimum.
With my AthlonXP 2600+, DXVA is the only way to decode 1080p WMV3 clips.
sneaker_ger
3rd March 2014, 21:04
True, but the whole experience and feeling is not on par with Nvidia.
It's not about performance, I had that feeling for easy 24p or 25p clips.
User experience on seeking is highly influenced by performance. The longer the distance to a key frame the worse it gets.
NikosD
3rd March 2014, 21:10
Sure, you are right but I'm talking about a slight stuttering even in normal playback of easy clips that gets worse when seeking.
I don't know, maybe the use of Intel's DXVA and VP5 has raised my standards too high :)
Or maybe it was the refresh rate of the display, it was a different display than VP4 tests.
I will repeat the tests again sometime, just to be sure.
NikosD
3rd March 2014, 21:22
Sure you can. Check the DLL properties.
Which DLL exactly and what properties ?
File properties ? Looking for what ?
Probably because there isn't any nightly builds of LAV. Why do you just trying to find problems with everything? As you noticed yourself LAV shipped with MPC-HC have build number and I'm not aware of any other source of LAV builds. Except rare test build posted in this thread. It's distributor responsibility to care about such things, and since LAV doesn't have official nighties distributions it's not needed until it have.
But you know you can always send a patch it's open source project after all. And saying to others what they could and couldn't do is not the best way of doing things. Especially when you're talking about non existing features.
But well I don't care, I just find it little bit annoying that you send few posts in row, quote own posts and so on. If you have bugs just send them to https://code.google.com/p/lavfilters/issues/list rather than reposting over and over same things... (but only if there is really a need to do so...)
"Officially" there are no nighlty builds, but there are people compiling LAV filters almost after every code change.
And because nevcairiel said that he could offer nightly builds himself, I suggested to put an easy identified numbering scheme for easy reference of the new version.
What's the big deal ?
It's only a suggestion and if he feels that it's not easy or worth to do it, he won't do it.
Nevcairiel doesn't need laywers or representatives to speak instead of him.
Snowknight26
4th March 2014, 01:10
Which DLL exactly and what properties ?
File properties ? Looking for what ?
Any DLL that is compiled for LAV Filters. Check the Product version property of the file.
XadoX
4th March 2014, 09:12
Since I changed my HTPC system to Haswell from ATI. Sould I stick with QuickSync for now or should I still prefere DXVA?
nevcairiel
4th March 2014, 09:15
I prefer DXVA2, Native if possible, but Copy-Back also works quite nicely on Intel systems (at about the same performance of QuickSync now)
XadoX
4th March 2014, 09:30
Are there any benefits in using QuickSync.
The power consumption seems to be a little bit higher @QuickSync (around 0.8 Watt in my Case).
NikosD
4th March 2014, 10:17
@nev
Latest nightly works perfectly with my UVD+.
2K for H.264, FullHD for VC-1.
Only reference frames restrictions still exist and WMV3 acceleration to call it perfect decoder :)
Also I saw a "silent" update for QS decoder, from 0.44 to 0.45
Any DLL that is compiled for LAV Filters. Check the Product version property of the file.
It doesn't seem to work because almost every 0.60.1.x version says "2.1.git", only the latest says "2.2.git"
Also it's extremely inconvenient.
Sure, you are right but I'm talking about a slight stuttering even in normal playback of easy clips that gets worse when seeking.
I don't know, maybe the use of Intel's DXVA and VP5 has raised my standards too high :)
Or maybe it was the refresh rate of the display, it was a different display than VP4 tests.
I will repeat the tests again sometime, just to be sure.
Problem solved with ATI hardware and MPC-HC (LAV filters internal)
I had to change the renderer from EVR to EVR-CP, which is the default for MPC-HC.
It seems that slight stuttering and not perfect decoding appeared after the EVR selection instead of the default EVR-CP.
I'll wait for the new MPC-HC with latest LAV inside (because it's still 0.60.1.40) to do another round of tests, just to be 100% sure.
nevcairiel
4th March 2014, 14:18
LAV Filters 0.61.0
LAV Splitter
- NEW: Support for "demuxing" AviSynth scripts (requires AviSynth, 2.6 recommended)
- NEW: Support for reading ICY stream metadata from ShoutCast streams
- Fixed: The duration of DVB MPEG-TS files is being detected more reliably
- Fixed: The ITrackInfo interface was not available in the last few versions
- Fixed: The duration of certain Ogg Vorbis streams was wrong
- Changed: DTS-HD audio tracks are now exposed using the official DTS-HD media type, in addition to the old DTS type
- Workaround: Block WMP/WMC from always overwriting the initial track selection
LAV Video
- NEW: Support for Duck TrueMotion 1/2
- NEW: Support for BT.2020 in YCbCr -> RGB conversions
- Fixed: Format conversion could cause out of memory errors when converting high-resolution videos
- Fixed: The decoder could crash if DXVA2 decoding failed and the software decoder is unavailable
- Fixed: Reduced binary bloat caused by the YCbCr -> RGB converter, reducing binary size to nearly half
- Fixed: Playback of RV30/RV40 was not smooth in 0.60
- Fixed: Video corruption when using DXVA2 on Intel GPUs when decoding certain VC-1 or MPEG-2 clips
- Fixed: Decoding WMV3 Complex profile automatically falls back to software, since hardware decoding is unsupported
- Faster: DXVA2 Copy-Back decoding on Intel GPUs is significantly faster
- Changed: If the wmv9dmo decoder is unavailable, the FFmpeg decoder is automatically used instead
- Changed: Updated QuickSync decoder to the latest version, fixes a few timestamp issues
- Changed: Relaxed the resolution checks for H.264 decoding on AMD GPUs, allowing files with 2K resolutions to be decoded (ie. 2048x1280, etc.)
LAV Audio
- NEW: Support for ATRAC3+
- Fixed: Decoding AC3 audio could produce glitches in playback due to too aggressive error checking
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.61.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.61.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.61-x64.zip)
This release contains mostly a collection of small features, fixes and improvements, with a bit of focus on DXVA2 improvements, especially for (but not limited to) Intel GPUs.
Nothing big really worth mentioning, otherwise.
As you can see, I've taken a cleaner approach at writing the changelog, the unorganized entries in the past always bugged me a bit, but not enough to do something about it. :)
A small announcement: Since Google Code has shut down its file hosting, I'm looking into setting up my own website for LAV where I can host builds in a more orderly fashion, with version archives and everything.
I'm not sure when I'll actually get to do that, but for the people that get it from Doom9, nothing much will be changing anyway.
In the interim, the latest builds are also available from GitHub now, and the older builds are still on Google Code.
Have fun!
DragonQ
4th March 2014, 14:39
Do you have any milestones you're waiting for before incrementing the version to 1.0?
wanezhiling
4th March 2014, 16:00
http://i1.tietuku.com/05d31b75e0014571.png
Oops! What's wrong? :devil:
nevcairiel
4th March 2014, 16:02
Not a admin prompt?
wanezhiling
4th March 2014, 16:09
Not a admin prompt?
Admin, UAC is totally off.
And 0.60 is fine.
Snowknight26
4th March 2014, 16:11
Not a admin prompt?
It's because LAVFilters.Dependencies.manifest is missing from the zip for the 32-bit version.
On a related note, install_all.bat is missing from the zip for the 64-bit version.
nevcairiel
4th March 2014, 16:15
install_all.bat was never meant to be included really, I must've accidentally included it instead of the manifest ... I wonder how that happened o.o
I uploaded a new zip file, no reason to post an entire new version for that.
vood007
4th March 2014, 17:36
I wonder how that happened o.o
Its Murphys Law. You can beta test for 7 years, your will find a breaking bug 5 minutes after release ;)
Toku
4th March 2014, 23:50
LAV Filters 0.61.0
LAV Video
- Fixed: Format conversion could cause out of memory errors when converting high-resolution videos
Ohh wow, glad to see this. Been having issues with out of memory errors every now and then with mpc-hc recently, even though I have plenty of memory free. Hopefully this was my issue...
nevcairiel
5th March 2014, 07:07
Ohh wow, glad to see this. Been having issues with out of memory errors every now and then with mpc-hc recently, even though I have plenty of memory free. Hopefully this was my issue...
Somehow I doubt it.
Its not easy to actually trigger this issue, it requires some special interaction with the decoder, which can be triggered by some post-processing filters, or some really bad renderers, but default out-of-the-box playback wasn't affected.
Toku
5th March 2014, 08:38
Somehow I doubt it.
Its not easy to actually trigger this issue, it requires some special interaction with the decoder, which can be triggered by some post-processing filters, or some really bad renderers, but default out-of-the-box playback wasn't affected.
Oh okay, well If this issue comes up again I guess I'll start experimenting to see if I can figure out what's actually causing it.
XadoX
5th March 2014, 09:00
Sorry for bugging.
Are there any benefits in using QuickSync.
The power consumption seems to be a little bit higher @QuickSync (around 0.8 Watt in my Case).
NikosD
5th March 2014, 09:27
I tested again my whole 600 samples collection with latest nightly MPC-HC v1.7.3.94 x64 (LAV internal 0.61.0) on Intel signature system.
I can say for sure for the first time that DXVA maturity of drivers (Intel) and developer's capabilities (FFmpeg, Nevcairiel) have done amazing things!
No artifacts at all, unbelievable flawless decoding and playback even of the most demanding 4K120 fps clips.
I can report only a minor issue with a "ghost" image appearing at the beginning of this clip, when you seek backwards to the black screen, after the initial decoding.
At normal playback without seeking, plays fine displaying a black screen.
http://www.techpowerup.com/downloads/530/hd-dvd-demo-1080p-vc-1-ddplus-5-1/mirrors
One general issue is the inability of MPC-HC to decode in HW various WMV3 and VC-1 clips for all platforms (Intel, Nvidia, AMD).
It falls back to SW.
I don't know why, all that I can say is that LAV external 0.61.0 has no such issues.
Sorry for bugging.
QS decoder nowadays has only 2 advantages.
If you have a Sandy processor, it's the only way to HW accelerate VC-1/WMV3 clips, because Intel hasn't implemented a proprietary DXVA HW decoder for those codecs in Sandy, yet.
I have reported this issue to Intel Support forums and I'm looking forward for the next driver release hoping to include it.
For Ivy/ Haswell the issue has been resolved.
The next reason that someone could use QS decoder is in case he has a dGPU as primary - for example for games - but he wants to decode/ playback movies with iGPU (Intel).
Then QS decoder is a nice solution to have both - Gaming in dGPU and playback decoding in iGPU.
For all the other cases - like for example my Haswell iGPU only configuration - go for a DXVA (native) configuration of your favorite player/ decoder.
wanezhiling
5th March 2014, 09:58
Maybe it is because MPC-HC doesn't enable WMV (http://i1.tietuku.com/ade527715d679b55.png) by default.
NikosD
5th March 2014, 10:04
Great!
Thanks, that was it.
Everything is perfect now.
Kurtnoise
6th March 2014, 11:21
why you're posting this in this thread ?
There is a news sub-forum for that...
nevcairiel
6th March 2014, 11:23
Nothing of value for LAV in there anyway.
nevcairiel
7th March 2014, 11:16
LAV Filters 0.61.1
LAV Splitter
- NEW: Support for opening "icyx://" stream URLs
- Fixed: Opening of some Blu-ray discs would take several minutes and could hang the player.
LAV Video
- Fixed: Aggressive Deinterlacing is no longer applied to soft-telecined content, which caused severe playback issues.
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.61.1.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.61.1.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.61.1-x64.zip)
Only a few more fixes that I didn't want to leave in the repository until the next major release, as they can really improve the experience in certain configurations.
In case you missed the 0.61 release from earlier this week, the notes are here (http://forum.doom9.org/showthread.php?p=1671812#post1671812).
Have fun!
Thanks for the new verison :)
Is there anyway to force LAV not to use the Hardware De-interlacing? :(
sneaker_ger
7th March 2014, 22:21
Yes, simply untick the hardware deinterlacing check box and/or enable software deinterlacing in LAV Video. If you want to force off the (renderer) deinterlacing completely set "Deinterlacing Mode" to disabled. Some renderers (madVR) have options to turn their own deinterlacing off, too.
Yes, simply untick the hardware deinterlacing check box and/or enable software deinterlacing in LAV Video. If you want to force off the (renderer) deinterlacing completely set "Deinterlacing Mode" to disabled. Some renderers (madVR) have options to turn their own deinterlacing off, too.
There's no hardware deinterlacing check box. If I enable software deinterlacing YADIF in LAV Video, it still doesn't use it.
No, I don't wanna completely disable De-interlacing Mode. In PotPlayer, I can :(
wanezhiling
8th March 2014, 00:56
1. YADIF won't work in dxva2n mode.
2. You use LAV in PotPlayer? Then disable PotPlayer's built-in video processing filter.
Nevilne
8th March 2014, 02:49
So I've installed 0.61.1, noticed that watching avisynth scripts works terrible with lav-potplayer-madvr, installed 0.60 and can't open .avs anymore??
Installing ffdshow and ticking avisynth and raw video does nothing. Ok, back to 0.61.1, installed with installer:
With 0.61.1-potplayer-madvr i have to wait 5 seconds for video to start after every unpause. But it's fine with mpc-hc and madvr or in potplayer with evr-cp.
Now, it's kinda hard to see what's the problem is out of madvr/lav/potplayer, as I updated them all at once and can't revert to previous lav version, but:
When I use mpc-hc there's a lav video decoder in filter list (lav splitter-lav video-madvr), but in potplayer it's just splitter and madvr (and yes it plays video).
After i switch to evr-cp lav video appears and 'delay after resume' is gone. after i switch back to madvr lav video stays and 'delay after resume' is still gone.
If i force lav video to 'preferred' in potplayer, it loads lav video and there's no 'delay after resume'.
Also, potplayer uses async source+lav splitter for avs unless I force lav splitter source, although it's configured to use lav splitter source for everything.
Don't know what to make out of all this really but I hope there's a resolution.
Asmodian
8th March 2014, 04:21
How does it work in MPC-HC? That sounds like a PotPlayer issue not LAV's.
nevcairiel
8th March 2014, 08:49
Sounds like you enabled madVR's decoders. If LAV Video isn't even used, and even more, the issue goes away when its used, its definitely not a LAV issue.
NikosD
8th March 2014, 17:02
I want to ask a little more technical question about HW de-interlacing and LAV Video options.
There is an option of HW de-interlacing activated only using QuickSync or NVCUVID, called Adaptive HW deinterlacing.
Is the algorithm used by this option, different/ better than the default HW algorithms selected automatically by EVR/ EVR-CP when using DXVAn for Nvidia and Intel HW decoders ?
The comparison should be CUVID vs DXVAn for Nvidia regarding HW deinterlacing algorithms and QS vs DXVAn for Intel.
Not Nvidia vs Intel.
nevcairiel
8th March 2014, 17:05
Its the same deinterlacing algorithm, just performed by the decoder immediately after decoding instead of the renderer later - but otherwise exactly the same GPU deinterlacing.
Both the CUVID library and Eric's QuickSync Decoder offer a simple option to turn it on, so it was trivial to add it - and it can be useful if you want to do post-processing on the image, or for transcoding.
In theory it could also be implemented for DXVA2-CB, but its quite a lot of effort and IMHO not generally worth it.
For DXVA2-Native it doesn't make any sense, since you cannot use it for post-processing or transcoding anyway, and the renderer comes immediately after the decoder.
NikosD
8th March 2014, 17:12
Thanks
1. YADIF won't work in dxva2n mode.
2. You use LAV in PotPlayer? Then disable PotPlayer's built-in video processing filter.
1. I don't use DXVA2n 2. No, I use MPC-HC with LAV.
I have no problem in PotPlayer since I can select HW/SW de-interlacing method there.
And I don't use LAV with PotPlayer. I want to have software de-interlacing with LAV+MPC-HC
NikosD
8th March 2014, 19:54
If you want SW de-interlacing you have to forget HW decoding too.
You have to use SW decoding for SW deinterlacing.
So, put in hardware decoder option "None" and then Enable YADIF.
You will have SW decoding and SW deinterlacing, although I really don't understand why you want SW deinterlacing.
All of my clips tested with HW deinterlacing look better than YADIF for all three HW decoders (Intel, Nvidia, AMD)
sneaker_ger
8th March 2014, 20:05
If you want SW de-interlacing you have to forget HW decoding too.
You have to use SW decoding for SW deinterlacing.
No, you don't. Only DXVA2 native doesn't work with sw deinterlacing in LAV Video.
NikosD
8th March 2014, 20:11
So if you select DXVA-CB or QS for Intel and NVCUVID for Nvidia you can have SW de-interlacing ?
I'll try it.
I always use DXVAn for HW decoding.
UPDATE:
Yes, SW deinterlacing works for both DXVA-CB and QS.
DragonQ
8th March 2014, 20:12
I really don't understand why you want SW deinterlacing.
All of my clips tested with HW deinterlacing look better than YADIF for all three HW decoders (Intel, Nvidia, AMD)
Depends on your hardware. I highly doubt a 5 year old nVidia/AMD/Intel card has the same deinterlacing algorithm as a current model.
Also, if you have a really crap GPU then using software deinterlacing can take offload some of the burden to the CPU. I agree that hardware deinterlacing is generally better though.
Ok, just found the issue and it's because of playing a 1080i H.264 4:2:2 video.
LAV makes MPC-HC to encode via CPU (correct) but de-interlace via GPU!
And nothing lets me to change HW de-interlacing to SW/QS de-interlacing for that file.
NikosD
8th March 2014, 20:25
Depends on your hardware. I highly doubt a 5 year old nVidia/AMD/Intel card has the same deinterlacing algorithm as a current model.
I'll check my 7 year old Radeon 3650 (UVD+) card against SW de-interlacing on some difficult H.264 and VC-1 interlaced clips and I'll tell you.
nevcairiel
8th March 2014, 20:29
Ok, just found the issue and it's because of playing a 1080i H.264 4:2:2 video.
LAV makes MPC-HC to encode via CPU (correct) but de-interlace via GPU!
Are you sure you enabled YADIF Software Deinterlacing in LAV Video? It supports deinterlacing 4:2:2 too.
Are you sure you enabled YADIF Software Deinterlacing in LAV Video? It supports deinterlacing 4:2:2 too.
Yes, no problem with MPEG2 1080i 4:2:2 but H.264 1080i 4:2:2
QS/CUDA de-interlacing methods don't work for both too.
nevcairiel
8th March 2014, 20:34
QS/CUDA only works if the hardware decoder for those is used as well, which is not compatible with 4:2:2 in general.
How do you know its not working? I just tested such a file, and it deinterlaces fine.
Note that it only deinterlaces 8-bit, if you are using 10-bit 4:2:2 videos, you're out of luck.
QS/CUDA only works if the hardware decoder for those is used as well, which is not compatible with 4:2:2 in general.
How do you know its not working? I just tested such a file, and it deinterlaces fine.
Note that it only deinterlaces 8-bit, if you are using 10-bit 4:2:2 videos, you're out of luck.
Oh yes, it's 10bit H.264 1080i 4:2:2, HW Nvidia GT640 can de-interlace it but SW YADIF can't.
Any chance to add SW Motion/Vector adaptive instead of YADIF?
nevcairiel
8th March 2014, 20:49
In theory YADIF supports those, maybe I can hook that up for a future version.
But for now, no deal.
:goodpost:
Any chance to add SW Motion/Vector adaptive instead of YADIF?
nevcairiel
8th March 2014, 20:51
If you provide a patch to do so, sure.
If you want better quality deinterlacing, let your GPU do it.
NikosD
8th March 2014, 21:00
@nev
I found out a strange behavior of DXVA today.
Using this (http://www.sendspace.com/file/fbga5a) sample with MPC-HC latest nightly (LAV internal 0.61.0) in DXVA native mode with various HW decoders from UVD2.2 up to Haswell QS3, it dropped frames after seeking - back and forth - even with Haswell!
Changing mode to DXVA-CB, even with slower decoders like VP5 or Sandy QS1, it didn't drop a lot of frames or even zero!
How is this possible ?
nevcairiel
8th March 2014, 21:04
Seeking works in mysterious ways.
(How would I know why your system does what it does? Dropped frames means the decoder did its job, but the renderer didn't like it for reasons unknown.)
NikosD
8th March 2014, 21:11
I meant if you could test it yourself and find out same results, in order to exclude my system's strange behavior.
The renderer was the default EVR-CP in all times.
I always have dropped frames in slow decoder situations, when the decoder is not fast enough for the content.
Which means DXVAn slower than DXVA-CB for the same decoder, which is not possible.
NikosD
9th March 2014, 08:55
If you still have a Sandy CPU, I tested iGPU using DXVAn under Win 8.1 using latest drivers 3347 and found out a few clips with small artifacts happening after the first second of the clips.
Two samples with artifacts:
H.264 progressive (http://www.sendspace.com/file/ma8csh)
H.264 interlaced (http://www.sendspace.com/file/pa59zq)
NikosD
9th March 2014, 14:11
Depends on your hardware. I highly doubt a 5 year old nVidia/AMD/Intel card has the same deinterlacing algorithm as a current model.
I tested my Radeon 3650 (UVD+) and it definitely looks better than YADIF in VC-1 interlaced content and very similar to Radeon 5750 (UVD2.2).
I don't know if Radeon 7000 series or Kaveri have changed their algorithms regarding DI or maybe newer drivers.
I have to admit that I had a not good experience using latest nightly of MPC-HC continuously crashing all my DTS audio samples!, so I couldn't test all of my interlaced clips.
I can't figure out why.
mhourousha
10th March 2014, 03:44
QS decoder nowadays has only 2 advantages.
If you have a Sandy processor, it's the only way to HW accelerate VC-1/WMV3 clips, because Intel hasn't implemented a proprietary DXVA HW decoder for those codecs in Sandy, yet.
I have reported this issue to Intel Support forums and I'm looking forward for the next driver release hoping to include it.
For Ivy/ Haswell the issue has been resolved.
The next reason that someone could use QS decoder is in case he has a dGPU as primary - for example for games - but he wants to decode/ playback movies with iGPU (Intel).
Then QS decoder is a nice solution to have both - Gaming in dGPU and playback decoding in iGPU.
For all the other cases - like for example my Haswell iGPU only configuration - go for a DXVA (native) configuration of your favorite player/ decoder.
My HD4000 has decode error in WMV3 too(DXVA2n).It due to some issues in the VC1_VLD2010 maybe,the QS use VC1_VLD_2_ClearVideo instead and everything is OK.
NikosD
10th March 2014, 06:40
Why don't you post a sample of the decoding error ?
mhourousha
10th March 2014, 15:37
Why don't you post a sample of the decoding error ?
error happened in all wmv3 samples I tested,for example,the'MP10 Digital Life 1080/24p-10Mbps'clip you provided.All wmv3 clips show a single-colored image only.
for VC-1,some color error or fliker occurred in the first few seconds,then everything is OK.
Driver version is 15.33.14.3412
NikosD
10th March 2014, 17:36
I have tested with signature system more than 100 samples of VC-1 (progressive & interlaced) and WMV3 clips (in .wmv and .mkv formats) and I can say for sure that the decoding is perfect.
To be honest I thought that Ivy has similar QuickSync ASIC with Haswell, I can't think of a good reason of bad decoding except faulty driver settings/ system of your side.
Unless I'm wrong and Ivy has problems with VC1_VLD2010 (I don't think so), but I don't have an Ivy to test it myself.
nevcairiel
10th March 2014, 18:02
If the driver exposes support for VC1_VLD2010, then it should work - or if it doesn't, complain to Intel to disable it. :)
I'm assuming you are using the latest version of LAV, right? A lot of stuff changed recently to fix decoding on Intel in this mode.
My laptop has a HD4000, I can probably try myself at some point.
jkauff
11th March 2014, 00:47
Speaking of the latest version of LAV, do the MPC-HC nightlies keep up with your changes pretty well, or should I download the latest and set it up as external?
mhourousha
11th March 2014, 01:18
If the driver exposes support for VC1_VLD2010, then it should work - or if it doesn't, complain to Intel to disable it. :)
I'm assuming you are using the latest version of LAV, right? A lot of stuff changed recently to fix decoding on Intel in this mode.
My laptop has a HD4000, I can probably try myself at some point.
yes, I use the latest version of LAV for testing.OS is win7
I wonder is there any chance for creating dxva device with VC1_VLD_2_ClearVideo instead of VC1_VLD2010?the DXVAChecker show that the QS use the former and everything is OK.
turbojet
11th March 2014, 06:32
Is it possible to have 2 separate 32 bit installs of lav video with different settings?
nevcairiel
11th March 2014, 07:40
I wonder is there any chance for creating dxva device with VC1_VLD_2_ClearVideo instead of VC1_VLD2010?the DXVAChecker show that the QS use the former and everything is OK.
Its impossible, it works completely differently, and its not documented how.
Is it possible to have 2 separate 32 bit installs of lav video with different settings?
There is no support for such a thing in LAV, you can of course try to hack it together manually by re-importing settings into the registry automatically or something like that.
turbojet
11th March 2014, 08:20
Originally Posted by turbojet View Post
Is it possible to have 2 separate 32 bit installs of lav video with different settings?
There is no support for such a thing in LAV, you can of course try to hack it together manually by re-importing settings into the registry automatically or something like that.
I've tried the registry hacking but that only works if there's no decoder process. The goal is to gpu decode for encoding and cpu decode for playback in potplayer, lav video is a must for playback because it's the only decoder I know that supports repeat field first. I know I could achieve this by switching to mpc-hc but would rather not. Is there a hidden way to use a non-registered lav for playback in a player?
nevcairiel
11th March 2014, 08:26
Even if its not registered, it reads its settings from the registry.
NikosD
11th March 2014, 10:37
yes, I use the latest version of LAV for testing.OS is win7
I wonder is there any chance for creating dxva device with VC1_VLD_2_ClearVideo instead of VC1_VLD2010?the DXVAChecker show that the QS use the former and everything is OK.
Did you try Microsoft's decoders or PotPlayer ?
nevcairiel
11th March 2014, 10:57
I tested LAV 0.61.1 on my Laptop with a HD4000 using the 3412 driver, and everything works perfectly.
I can only conclude that you're either using an old version of LAV, or not LAV at all, or who knows what else.
mhourousha
11th March 2014, 17:05
I tested LAV 0.61.1 on my Laptop with a HD4000 using the 3412 driver, and everything works perfectly.
I can only conclude that you're either using an old version of LAV, or not LAV at all, or who knows what else.
http://i1.tietuku.com/93262a9b708b9e1e.png
http://i1.tietuku.com/8863f27c4f71da89.png
:(
NikosD
12th March 2014, 21:43
@nev
Why do you need SSE2 as mandatory for LAV filters ?
Is this so important, or is it so much faster ?
AMD Athlons, even the most powerful ones like AthlonXP 3200+ don't have SSE2, only SSE.
AMD decided to put SSE2 in Athlon64 CPUs.
Couldn't you enable a different optimized path for SSE2, without dropping support for SSE or older ?
nevcairiel
12th March 2014, 21:58
I could, but I don't want to. Over 10 year old systems are not my target. Modern software for modern systems.
NikosD
12th March 2014, 22:01
It's not bad if you combine both, unless you have a performance hit (I doubt it).
You will break compatibility with older systems, without an important reason, in my opinion.
Is there a reason that you don't want older HW to run your software ?
nevcairiel
12th March 2014, 22:05
Like I said, I just don't care for over 10 year old CPUs. Have to draw the line somewhere. Why not support CPUs without SSE1 or MMX? Plenty Pentium1 around I bet.
No need to discuss this any further. Its not even finally decided yet, but in the end it will be my decision. Its in the future branch afterall.
NikosD
12th March 2014, 22:11
Pentium1 couldn't run even a DVD, 720x480 MPEG-2 :)
Anyway, it's your call, it's your software, but I would say to think again about SSE, mainly because of those powerful Athlons which can stand nowadays and run even Win 7, although they are 10 years old CPUs
Soukyuu
12th March 2014, 23:03
I tried playing a 10Bit 1080p 23,97fps mkv on my old AMD Athlon 2200+ once.
Once.
There is really no reason to cling so such an old computer. Mine even had problems streaming an SD youtube clip.
Recycle it and let it be reborn as something new.
NikosD
12th March 2014, 23:25
1080p 10bit clips can't be decoded even by dual core Pentium 4.
My old laptop with Core2Duo@1.66GHz has a lot of problems too.
Not a good example, I think ;)
DragonQ
12th March 2014, 23:27
My Celeron G530 does it fine...I think it uses 50-60% CPU. Don't need a powerful CPU, just a fairly modern one. ;)
LigH
13th March 2014, 08:20
I doubt that modern operating systems would even get installed if you don't have at least a DualCore CPU. Even the OS has a minimum requirement, already to base generic support of multimedia and gaming features on. There won't be much sense to develop media software which has lower requirements than the OS or their audio/video drivers and media APIs.
NikosD
13th March 2014, 08:32
Win 7 is a modern system and can be installed on an AthlonXP.
ryrynz
13th March 2014, 08:59
Answer was no, should just leave it at that.
fagoatse
13th March 2014, 09:09
SSE2 becoming standard and XP support being removed shouldn't come as a surprise in 2014.
Mangix
13th March 2014, 09:53
Win 7 is a modern system and can be installed on an AthlonXP.
Win 8 is a modern system and cannot be installed on an AthlonXP.
NikosD
13th March 2014, 10:54
WinXP, Vista and 7 have 90% of the whole Windows installations.
Win8/8.1 have 10%.
Do you really want LAV filters to be used only by those who can install Win8/8.1 aka 10% of the windows installations ?
ryrynz
13th March 2014, 11:13
You're ruling out all Windows 7 machines with SSE2 capable processors. Ten years is long enough.
Soukyuu
13th March 2014, 12:21
1080p 10bit clips can't be decoded even by dual core Pentium 4.
My old laptop with Core2Duo@1.66GHz has a lot of problems too.
Not a good example, I think ;)It sure is. There is virtually no reason to keep using, or keep providing compatibility for such hardware, if even more potent chips, like the ones you named, struggle with what is considered "good quality" video clips nowadays. Hell, they can't even play "bad quality" youtube videos.
NikosD
13th March 2014, 17:56
But you can use the HW decoding part of LAV filters on older CPUs and for the rest, the CPU.
If you exclude LAV filters due to CPU, you exclude HW decoding too. Or not ?
manolito
13th March 2014, 23:37
Like I said, I just don't care for over 10 year old CPUs.
I won't argue with you about this (even if I strongly disagree), but I would like to get some clarification...
Am I right to assume that the current version 0.61.1 does not work with non-SSE2 CPUs any more?
Which is the last version of LAVFilters that still does not require SSE2?
Could you please modify the installer so it will check the CPU capabilities on installation and refuse to install if the hardware requirements are not met?
Cheers
manolito
nevcairiel
14th March 2014, 00:52
0.61.1 should only require SSE, not SSE2.
Although performance will degrade quite a bit if you don't have SSE2, as all of my manual optimizations are only for SSE2, not for anything below.
Mangix
14th March 2014, 01:08
WinXP, Vista and 7 have 90% of the whole Windows installations.
Win8/8.1 have 10%.
Do you really want LAV filters to be used only by those who can install Win8/8.1 aka 10% of the windows installations ?
Market Share != modern.
Windows 7 was released 5 years ago. That is not modern.
Dion
14th March 2014, 01:51
Market Share != modern.
Windows 7 was released 5 years ago. That is not modern.
Modern means up to date. Windows 7 fits that bill easy.
Mangix
14th March 2014, 02:10
Modern means up to date. Windows 7 fits that bill easy.
Nope!
jkauff
14th March 2014, 04:00
Nope!
Well, at least Win 7 is not antique. It's modern enough for enterprise uses. XP and SSE are antique in 2014.
Apple eliminates support for certain older iPhones with every new major version of iOS. Everything in tech becomes legacy at some point.
kasper93
14th March 2014, 05:57
I have a question to everyone who moans about SSE2. Does the (future) change affect YOU? If not why you bother? I don't think there are much people who use non-SSE2 CPU for HTPC, because they are just not fast enough to play modern (HD) content. Well you know you can play xvid or something, but then why you care about new LAV releases for such old codec which is not gonna be updated or anything? Furthermore XP will be dead and there is no discussion here. People with such old hardware doesn't really use Vista+ because it was too demanding. XP runs faster on such old hardware. And while you use VERY old OS you can also use old codecs. What's the problem?
BTW, Windows 8 and Microsoft Office 2013 also require SSE2. Seriously guys we need to move forward, and not think about 10 years old HW which is just insufficient to be used for HTPC. LAV doesn't support DVXA1 and I don't see much people complaining about that, because very few people still needs it, it's simple as that.
James Freeman
14th March 2014, 07:12
@nevcairiel
Can you please include a "Stereo Front Mix" slider in LAV Audio Mixing tab?
Its the only one that is missing from the mixing options, and I want to hear the center channel solo.
NikosD
14th March 2014, 10:01
I have a question to everyone who moans about SSE2. Does the (future) change affect YOU? If not why you bother? I don't think there are much people who use non-SSE2 CPU for HTPC, because they are just not fast enough to play modern (HD) content. Well you know you can play xvid or something, but then why you care about new LAV releases for such old codec which is not gonna be updated or anything? Furthermore XP will be dead and there is no discussion here. People with such old hardware doesn't really use Vista+ because it was too demanding. XP runs faster on such old hardware. And while you use VERY old OS you can also use old codecs. What's the problem?
BTW, Windows 8 and Microsoft Office 2013 also require SSE2. Seriously guys we need to move forward, and not think about 10 years old HW which is just insufficient to be used for HTPC. LAV doesn't support DVXA1 and I don't see much people complaining about that, because very few people still needs it, it's simple as that.
I do have an AthlonXP PC with Vista/7 and would like to use LAV filters mainly for HW decoding (DXVA) of the HW accelerated codecs (H.264/VC-1/WMV3/MPEG-2/MEPG4-ASP).
For the rest of the codecs, CPU could or could not be enough (depends on the codec, resolution, bitrate etc)
GTPVHD
14th March 2014, 11:36
http://www.intel.com/content/www/us/en/nuc/nuc-board-dn2820fykh.html
http://www.legitreviews.com/intel-nuc-dn2820fykh-bay-trail-system-review_135053/6
Bay Trail is faster than any Athlon XP, supports SSE4.2, uses far less power and has the same Gen7 Ivy Bridge decoder, running rings around any AGP AMD card in hardware decoding performance. Just retire the outdated Athlon XP.
Or if you don't mind waiting, Cherry Trail has the Gen8 GPU from Broadwell and will have even higher hardware decoding performance.
http://vr-zone.com/articles/first-look-new-features-cherry-trails-gpu/64068.html
Either way, the AthlonXP and AMD AGP cards have to go, they've long outlived their usefulness.
kasper93
14th March 2014, 13:00
I do have an AthlonXP PC with Vista/7 and would like to use LAV filters mainly for HW decoding (DXVA) of the HW accelerated codecs (H.264/VC-1/WMV3/MPEG-2/MEPG4-ASP).
For the rest of the codecs, CPU could or could not be enough (depends on the codec, resolution, bitrate etc)
If I may ask what gpu do you put there? And even more important question. Do you actually use this as your HTPC or just have it in a closet and power it up once a few months. If you use it as main pc, I'm sorry for you. I also had AthlonXP and it can't coop with web browsing few years ago due to flash killing cpu or web browser use all the ram.
I see no point in discussing this. This hardware is just outdated. You should really consider buying cheep, new, low power consumption CPU. It really will be less noisy and you will save some money on power consumption.
Sorry if you consider this post off topic, but I'm just curious why people use such old hardware and yet want modern software for them.
Tapatalk 4 @ GT-I9300
NikosD
14th March 2014, 13:29
The discussion is clearly OT and I've never said that an AthlonXP is a modern system.
I have 8 PCs and obviously that one is not my main PC.
For me, the discussion should be the opposite.
What's your problem of supporting old HW ?
Which is the weight, the overhead or the trouble to keep on supporting older HW ?
Are LAV filters going to be faster or better because of dropping old HW support ?
I don't really have a problem of dropping SSE support in favor of SSE2, I just don't understand why we can't have both.
kasper93
14th March 2014, 13:49
The discussion is clearly OT and I've never said that an AthlonXP is a modern system.
I never said you have.
I have 8 PCs and obviously that one is not my main PC.
That's exactly my point you will live if 1 of 8 PC will use older lav build. You don't watch movies on every pc at once, do you?
For me, the discussion should be the opposite.
What's your problem of supporting old HW ?
I don't have any problem, but when software development is blocked by old HW with no apparent reason there is something wrong. It just we need to focus on modern systems and improve performance on them.
Which is the weight, the overhead or the trouble to keep on supporting older HW ?
Are LAV filters going to be faster or better because of dropping old HW support ?
I don't really have a problem of dropping SSE support in favor of SSE2, I just don't understand why we can't have both.
This aren't questions for me. I have nothing to say about what LAV can or not. It not my decision to make. But like it have been already said we need to drawn the line somewhere. Why not support win98? SSE2 is not even in master branch yet. I was just curious if people use old HW for main HTPC and why. And I still didn't get the answer, because apparently there are no people to answer this question.
This is pointless. Sorry for OT, nev.
Tapatalk 4 @ GT-I9300
NikosD
14th March 2014, 14:24
Usually, in most of the cases, those kind of lines are drawn by companies artificially, in order to sell new products.
Win8.x could run on an AthlonXP faster than any previous Win OS version, for example.
nevcairiel
14th March 2014, 14:33
Microsoft doesn't sell hardware, what do they have to gain.
It simplifies the developers tasks if you can just assume that something is always present, and it can gain speed.
DragonQ
14th March 2014, 14:35
It's pretty obvious that the more hardware you have to support, the harder that support becomes. Code becomes more complicated and harder to maintain.
NikosD
14th March 2014, 14:42
Microsoft gains a lot if HW companies sell new PCs, in order to run the new OS.
Buying a new PC, usually means buy a new OS (not just upgrade OS) and software companies always want newer and faster HW in order for their SW to look faster, like HW companies need new and more demanding SW in order to need and use the new HW and so on. It's a circle.
About speed, the gain of that reason is how much ? 2% ?
manolito
14th March 2014, 17:59
Developers should also keep in mind that there is a growing number of people (even among computer freaks) who start to refuse to be part of this rat race. People who care for the environment begin to question if they really need a new smartphone every year, a new car or a new computer every other year and so on.
Just look at the growing number of repair cafes where folks get their technical devices fixed instead of buying a new one. My main desktop computer is ancient, but it does almost everything I need to do with it (I do have a faster laptop for watching HD stuff). And whenever I see my friends computers with current hardware I notice that my carefully maintained machine boots up faster than theirs. Looks like most of the extra CPU power is eaten up by the ever bulkier Win7 and Win8 operating system.
Cheers
manolito
nevcairiel
14th March 2014, 18:25
And users should keep in mind that I do this in my free time, and if I don't want to worry about hardware from over a decade ago, then that's how it is.
PS:
Windows 7 runs better on many old systems than XP, your "bulkier" is not true.
jkauff
14th March 2014, 19:10
Nev has spoken, and this tangent is done. Let me cap it off by saying how much we appreciate your work on the LAV filters, which have quickly become the de facto standard for video playback. With your new job, there must be even less time to devote to LAV. Thanks so much for everything you've done and continue to do.
And that includes hanging out here on doom9 reading and responding to your users, regardless of what they write.
turbojet
14th March 2014, 21:44
Using dss2mod's internal lav filters integration was a solution to using different lav settings for encoding and playback, it doesn't need a registered lav and doesn't touch registry which is nice.
nevcairiel: Was repeat first field a lot of work to implement? It's the only video decoder that supports it but it's pretty vital for madvr ivtc so thinking about bringing it up with other lav decoders like mpc-be and potplayer.
bugmen0t
15th March 2014, 13:28
@nev
The downmixer defaults to stereo both for speaker configuration and mix levels. If I change the former to e.g. mono am I supposed to correct the mix levels, too, or are they internally scaled to match (e.g. ITU-R BS.775 mono downmix has L = R = -3dB instead of 0dB)?
nevcairiel
15th March 2014, 13:30
Mix levels are automatically adjusted for the number of speakers, ie. if a channel is split into two speakers the volume is lowered, if its combined from two into one, its increased.
e-t172
15th March 2014, 13:35
Mix levels are automatically adjusted for the number of speakers, ie. if a channel is split into two speakers the volume is lowered, if its combined from two into one, its increased.
Are you using 3dB or 6dB gain for this operation?
nevcairiel
15th March 2014, 13:38
3dB, as that's how I understand its supposed to work.
James Freeman
16th March 2014, 12:10
nevcairiel,
Is there any chance that the Stereo channel will also be controllable and not only the Surround and Center when down-mixing?
nevcairiel
16th March 2014, 12:12
Stereo is kept as is, not likely to change.
James Freeman
16th March 2014, 12:45
OK cool,
Can you give more range (more than 3) to the LFE channel?
I have headphones that go below 20Hz but these frequencies need to be boosted substantially (about 15db more that center) to be heard.
When down-mixing with my audio interface mixer I have Stereo to -15db, Surround and Center to -18db, and LFE to 0db.
This way I get a very convincing subwoofer sound in my headphones that goes below 20Hz.
How the mixing scale translates to db? 0.71 is about -3db?
nevcairiel
16th March 2014, 12:52
Its a flat multiplier for the PCM values. A factor of sqrt(2) is 3dB, so 1.41 is a 3dB boost, 2.00 a 6dB boost, or 0.7071 a 3dB reduction.
Unlikely to increase the LFE multiplier. Its already much higher range then the others due to the requirement of a 10dB boost of the LFE channel.
James Freeman
16th March 2014, 12:59
The LFE channel is pre-boosted 10db (like in a receiver) when the slider is at 1.0?
If so, good.
A quick question:
The Peak of the original LFE track is -10db even on blu-rays?...
I thought only in cinema calibration they did this, and on blu-ray the LFE track peak is at 0db, or is it?
e-t172
16th March 2014, 15:50
I'm not sure I understand your questions. LFE should be boosted by 10dB on all material (and that's what all AV receivers do). Please read ITU-R BS.775 (http://www.itu.int/dms_pubrec/itu-r/rec/bs/R-REC-BS.775-3-201208-I!!PDF-E.pdf) which describes this in excruciating detail.
James Freeman
16th March 2014, 18:00
Thanks, I was not aware that ITU has a standard for that too.
The standard clearly says "10 dB of gain applied on reproduction", but it does not state where.
It can be at the Amplifier, Receiver, Software, Player, etc...
I have a Polkaudio subwoofer which I calibrate with pink noise 10db higher than the front speakers (using the internal amplifier of the sub).
LAV Audio adds 10db of gain to the LFE channel.
Does that mean that I have a total of 20db boost, and all this time I've been listening 10db louder than it should be?
EDIT:
Looking at my db Meters in the Audio Interface, I can see that LFE does not reach 0db no matter what movie I tried.
Does this mean that LAV Audio add 10db of boost to LFE only in Mixing mode?
nevcairiel
16th March 2014, 18:24
LAV does by default not add any gain, nor should it. If you don't downmix, the extra gain should be added in the last component - ie. by your DAC, or if it doesn't by the audio renderer just before the DAC. Audio/Video Receiver will usually apply the gain for you when you stream HDMI audio.
In some case the DAC or your software cannot do it, then you can always crank it up at the Amp.
In short, in multi-channel output (no downmix), its not the decoders responsibility to add LFE gain.
The situation changes when you downmix to stereo, since there is no dedicated LFE channel anymore, nothing would ever know what to boost. In this case, you can control the LFE gain using the LFE mixing slider in LAV.
I forgot what the desired value should be for proper 10dB boost in downmix, taking the split into two speakers into account.
There is a few posts from e-t172 here about the mixing level:
http://forum.doom9.org/showthread.php?p=1654296#post1654296
http://forum.doom9.org/showthread.php?p=1654465#post1654465
James Freeman
16th March 2014, 18:43
Thank you.
So , LAV is a decoder therefor does not add any gain, great.
What about "Default DirectSound Device" that MPC-HC is using as default audio renderer?
About stereo Mixing LFE slider:
10db -3db (stereo center) = 7db = 2.23 of voltage gain.
Here is the calc: http://www.sengpielaudio.com/calculator-gainloss.htm
nevcairiel
16th March 2014, 18:50
But you may only want 4dB because low frequencies add coherently. Read the posts I linked.
e-t172
16th March 2014, 19:22
But you may only want 4dB because low frequencies add coherently. Read the posts I linked.
To be fair the linked posts don't really discuss the coherency issue (not in the bass range anyway).
Let's summarize:
The +10dB gain on the LFE channel is supposed to be applied at the bass management stage, which in the vast majority of cases is in the AV receiver. This is why LAV Audio does not touch levels in the default non-downmixing mode.
If LAV Audio is downmixing then it has to do the bass management as well, which is why the LFE boost should be applied there.
The correct gain for the LFE signal in a stereo downmix is +4dB, not +7dB, because acoustic signals sum up coherently in the bass range (< 300 Hz) - this is not generally true for higher frequencies. Coherent summation is +6dB, not +3dB. Conversely, the reason why the standard center downmix is -3dB and not -6dB is because most of the center channel content consist of frequencies above the modal region which do not sum coherently (not in a reverberant room anyway), hence the +3dB in this case.
You can actually measure this using a measurement microphone (or maybe even a dB meter): if you play bass frequencies on one speaker and then both, you will notice a 6dB difference, but if you do the same for higher frequencies, you will only come up with a 3dB difference.
In addition, I shall remind everyone that it is generally a bad idea to downmix LFE if you don't have a subwoofer, because LFE signals are very likely to overload stereo speakers (even if they're good).
DragonQ
16th March 2014, 19:50
I didn't used to downmix LFE to my 4.0 system but I tried it and my 5.1 music tracks now have so much more bass it's awesome. :)
e-t172
16th March 2014, 20:31
I didn't used to downmix LFE to my 4.0 system but I tried it and my 5.1 music tracks now have so much more bass it's awesome. :)
Be careful when downmixing LFE on *music* tracks, as some morons wrote guidelines (don't remember which document, unfortunately - it might be the DVD-A spec, but I'm not sure) for DVD-Audio & other multichannel music formats that explicitly state that the LFE boost should *not* be applied. This is completely stupid in my opinion because it breaks compatibility with video 5.1 (which has been around for much longer than music 5.1) for no reason. The obvious consequence is that some 5.1 music is produced with LFE +10dB and others don't (depending on which standard was followed), and it is impossible to know which one is which. What I usually do is that I enable/disable LFE +10dB depending on which sounds best on a particular piece of music, which is a very unsatisfying solution.
James Freeman
17th March 2014, 06:50
Is there a way to use LAV Audio for decoding, and AC3Filter for Bass Redirection & Mixing after decoding?
jmone
17th March 2014, 09:38
James, have you considered a player like MC (payware) as it does all this and more?
e-t172
17th March 2014, 09:52
Is there a way to use LAV Audio for decoding, and AC3Filter for Bass Redirection & Mixing after decoding?
By the way, nowadays lots of sound card drivers have an option to enable bass management in the sound card itself (most notably all Xonars have it AFAIK).
James Freeman
17th March 2014, 09:58
I use Focusrite Saffire Pro 24 DSP (http://us.focusrite.com/firewire-audio-interfaces/saffire-pro-24-dsp) in my home studio, in which I can create any mix I want from any channel.
But there is no Low-pass I can apply to the mix and send to one of the outputs where I connect my Sub.
James, have you considered a player like MC (payware) as it does all this and more?
I already have PowerDVD13 for my blu-rays.
No more payware please.
jkauff
17th March 2014, 12:08
I already have PowerDVD13 for my blu-rays.
No more payware please.
I'm sorry. I have PDVD13, too.
I also own JRiver Media Center. I use it to catalog all my music and movies, and for playback of most of my movies and TV shows. I still use foobar a lot, but only because I'm used to it. MC does just as good as job, including playing DSD files. If I had a home media center, it would be my choice for that. It does surround output very well from what I've heard.
$50 is a reasonable price for what you get, and it's constantly updated. Too bad it can't do Blu-ray menus and copy protection, or I could ditch PDVD.
BTW, nev is now a JRiver employee. That should tell you something about their commitment to quality.
James Freeman
17th March 2014, 13:01
I just tried JRiver (for a few seconds).
It started to scan my system for media files, I could hear the HDD go crazy (PowerDVD lets you disable this at the setup stage).
I immediately uninstalled it.
No thanks.
andyvt
17th March 2014, 13:17
I just tried JRiver (for a few seconds).
It started to scan my system for media files, I could hear the HDD go crazy (PowerDVD lets you disable this at the setup stage).
I immediately uninstalled it.
No thanks.
You can make it not do that by clicking the "Cancel" option when it tells you that it's going to start indexing your content in the bottom left hand corner.
Frankly it's a bit strange to not want the program you use to index and playback media to index the media so you can play it back. While you can use Explorer to browse and play content, it's not the way that most people use these sorts of applications, or want them to behave. Especially because the metadata embedded within (or in the case of many video file types, laying around) is useful for finding or pivoting around it. I don't always agree with the way JMC is designed, but in this area (and playback) they do the right thing by looking for content in the most likely places to find it on a PC. Personally, I override it because I don't store media content on my PC (that's what the file server is for), which is also available as an option.
That said, you're entitled to a set of preferences no matter how uncommon, but you should understand that the behavior you dislike is probably an artifact of the overwhelming benefit it provides to the majority of users.
6233638
17th March 2014, 15:54
I just tried JRiver (for a few seconds).
It started to scan my system for media files, I could hear the HDD go crazy (PowerDVD lets you disable this at the setup stage).
I immediately uninstalled it.
No thanks.For what it's worth, I have complained to them about this in the past. It should not scan your entire system automatically after a 45s countdown. This is just bad design, and I have raised the issue on their forums again.
But don't let this put you off using the software. It's very good.
JimH
17th March 2014, 18:58
I just tried JRiver (for a few seconds).
It started to scan my system for media files, I could hear the HDD go crazy (PowerDVD lets you disable this at the setup stage).
I immediately uninstalled it.
No thanks.
Sorry to hear that. Your comment started a conversation on our forum, where I gave JRiver's reasoning.
http://yabb.jriver.com/interact/index.php?topic=88133.0
I don't expect you to be convinced. I just want you to know why we do what you saw.
Jim Hillegass
CEO, JRiver
James Freeman
17th March 2014, 19:16
Hi Jim,
Not to be controversial but I am not "your typical user", I don't like intrusive software (iTunes most of all).
Typical user will not bother with Custom installation, Advanced one will.
At least make this an option to disable Media Scan at the setup stage under Custom section.
This way you can satisfy both camps.
Thanks.
mindbomb
17th March 2014, 20:01
For directsound, there sometimes is enhancements available in control panel>sound>properties>enhancements, and one of the enhancements is bass redirection. Available enhancements vary by sound card I think. You can also use ffdshow audio processor, it can accept uncompressed audio from lav audio. You can also use ac3filter with lav audio if you select pcm on the system page.
6233638
17th March 2014, 20:06
At least make this an option to disable Media Scan at the setup stage under Custom section.The media scan is on a 45 second timer - it doesn't scan your system immediately.
Unfortunately this is hidden in the lower-left corner of the program and you may not have noticed it when you first launched MC.
JimH
17th March 2014, 20:49
Hi Jim,
Not to be controversial but I am not "your typical user", I don't like intrusive software (iTunes most of all).
Typical user will not bother with Custom installation, Advanced one will.
At least make this an option to disable Media Scan at the setup stage under Custom section.
This way you can satisfy both camps.
Thanks.
You can also configure auto import under Tools/Import. You can add a directory to import and edit it to specify file types.
On an empty library, MC will always offer to import. Importing anything will stop that.
If shell integration is checked in MC's options, you can import from Explorer by right clicking file(s) or a directory.
nevcairiel
17th March 2014, 20:54
Please try to keep off-topic discussions out of my thread, please.
JimH
17th March 2014, 21:03
;)
Sorry, sir.
SamuriHL
17th March 2014, 21:23
;)
Sorry, sir.
BAHAHAHAHA. Now that is funny right there. :D
Let's see if I can instigate Nev a little. Soooo, Nev, you and madshi working on 3D yet? :D (I'm just teasing...everyone calm down :D)
nevcairiel
17th March 2014, 22:04
3D is overrated. :p
SamuriHL
17th March 2014, 22:08
HAHAHAH :) It's the only thing I still need a commercial player for. I actually enjoy the 3D experience on my Panny plasma, but, I understand a lot of people don't. Still, I'd kill for LAV and madVR to add support for it some day. I know, it's not a high priority....I get it. But I can dream.
jmone
17th March 2014, 22:12
BAHAHAHAHA. Now that is funny right there. :D
Let's see if I can instigate Nev a little. Soooo, Nev, you and madshi working on 3D yet? :D (I'm just teasing...everyone calm down :D)
I thought it was BD Menus Nev and madshi were working on next? :)
nevcairiel
17th March 2014, 22:12
I rip all my BDs into MKVs, I don't need no stinkin' menus. I have loads of cardboard boxes full of Blu-rays, which I'll probably never take out again. Although I did just two weeks ago because my sister wanted to browse for a few movies to watch, and she prefers shuffling through the discs. :p
jmone
17th March 2014, 22:33
...I was also just teasing but...there are more than just movies on BD
...for the Average Joe who puts in their:
- Game Of Thrones BD is going to struggle finding their eps without a menu (as it is one of a few playlists that are currently untitled), or
- locate the Hotel California track on that Eagles BD (as it is one of many chapters that are currently untitled).
jmone
17th March 2014, 22:37
...actually it is more about being able to pull out any assigned Playlist and Chapter names that a player could then display instead of generic Chapter 1 or Title 1.
nevcairiel
17th March 2014, 22:38
...actually it is more about being able to pull out any assigned Playlist and Chapter names that a player could then display instead of generic Chapter 1 or Title 1.
That information is not available on the disc.
jmone
17th March 2014, 22:42
Right, it is stored in the Menu?
nevcairiel
17th March 2014, 22:45
Possibly somewhere. Menus on many discs are small Java programs, who knows where they hide their information. It could even be images for names only.
Even the more basic HDMV menus have various different approaches to store things, can't extract info from the menu.
They didn't design those to be easily playable without the menu. That would be too easy. We're lucky its usually easy to actually play the content, once you figure out which playlist it is.
SamuriHL
17th March 2014, 22:49
Episode discs are indeed a pain without the menus to show what order they should be played in. But Nev is right, java menus make it extremely difficult. It's not something I expect any time soon. Basic menu support such that XBMC has would be nice at some point. At least with that we can use AnyDVD's speed menu on most discs.
nevcairiel
17th March 2014, 22:50
Speed Menus don't help a bit with TV shows really.
jmone
17th March 2014, 22:55
Right, so back to the argument about needing Menu support (at some point) ;)
This is an example of what a Music BD looks like with (using dslibbluray) and without menu support (using MC).
https://dl.dropboxusercontent.com/u/59011278/PA3.jpg
https://dl.dropboxusercontent.com/u/59011278/PA4.jpg
While I can tag it up (in MC with particles) the Average Joe has no chance and even I get stuff wrong all the time. My son mentioned yesterday that I've tagged the Eps wrongly on some Supernatural TV Series BD's as the playlist order does not follow the eps order! Hows that for making it hard - a PITA
jmone
17th March 2014, 23:14
FYI (to Nevs point about being non text) - had a quick look with BD Edit on the above disk, any in this case the Menu items are all in a small 000002.m2ts as embedded graphics objects.
filler56789
18th March 2014, 02:38
Right, so back to the argument about needing Menu support (at some point) ;)
This is an example of what a Music BD looks like with (using dslibbluray) and without menu support (using MC).
http://yabb.jriver.com/interact/index.php?action=dlattach;topic=88100.0;attach=12559;image
http://yabb.jriver.com/interact/index.php?action=dlattach;topic=88100.0;attach=12561;image
jmone, not everybody is a registered user of the JRiver forum ;)
jmone
18th March 2014, 04:13
Sorry - did not even know you needed by a registered user on the board to view pics - changed the links to just file links from drop box.
filler56789
18th March 2014, 04:57
^ Thanks =^.^=
apgood
18th March 2014, 05:02
Isn't the presentation of menus for bluray more of a player or renderer thing? Or am I off track and it needs to be built into the splitter?
OT: I know there is the thread on here by Dukey to do with an open source bluray menu project. Couldn't that be integrated into jriver mc similar to LAV filters and MadVR? With Dukey's permission of course.
Sent from my Nexus 4 using Tapatalk
jmone
18th March 2014, 07:41
You really need the whole chain to be menu aware (player, splitter, decoder and renderer). FYI - the pic I posted was from the latest Dukey build.
apgood
18th March 2014, 08:43
You really need the whole chain to be menu aware (player, splitter, decoder and renderer). FYI - the pic I posted was from the latest Dukey build.
OK so which decoder & player did you use?
Sorry Nev. Last OT question promise. :o
jmone
18th March 2014, 09:31
Dukey's package includes a "demo player" and an custom EVR Mixer that support the required video mixing of the streams as well as the core "dslibblurary" filter and a java lib (and on my sys LAV is then used for the decoding). You would never use this as your full time player but you can use it to see how well it handles (or does not) various BD playback. From what I can work out it really needs support from the likes of Nev and madshi (or a major player like MPC / MC etc) if it is to really hit the main stream rather than the Proof of Concept it seems to have been in for ages.... and I'm not sure that Nev is all that keen from either personal desire or the state of the code (but I would rather not put words in his mouth!)
jmone
18th March 2014, 09:40
and yes it is OT - so while I'd love to see Nev say he was keen my crystal ball says:
Please try to keep off-topic discussions out of my thread, please.
Thread for dslibbluray is http://forum.doom9.org/showthread.php?t=164314&page=16
apgood
18th March 2014, 09:50
Lol.. Thanks jmone. I actually downloaded it just now and had a bit of a play. Totally agree with you.
Not sure what I would like support for from LAV first 3D or menus. Probably menus. But then I can fully understand when time is limited you work on what you find most useful and by the sound of it either of those are not really on the high needs list just yet.
I wonder what is... ;p
Sent from my Nexus 4 using Tapatalk
starla
18th March 2014, 10:13
You really need the whole chain to be menu aware (player, splitter, decoder and renderer). FYI - the pic I posted was from the latest Dukey build.
Actually decoder doesn't have to be menu aware with Blu-rays. Even video renderer can be ignorant about the menus (for example you can render the menu content by the player itself on top of the video). Splitter and player are the only mandatory parts in the chain but of course it is possible to use other design as well (like video renderer in Dukey's approac).
edit: sorry for the off topic :)
SamuriHL
18th March 2014, 12:32
As for 3D that may happen someday. But not any time soon. Splitting and decoding are relatively straight forward... At least well understood. The rendering is the big problem. Lots of issues there. None of which are nev's problem to solve.
Sent from my SM-P600 using Tapatalk
qtwebkit
18th March 2014, 12:44
I have trouble in dxva wmv3/vc1 with my intel HD4000 and MPC-HC.
Step 1.By default, the wmv options in source filters and transform filters are not checked in MPC-HC, which is only avalible for dxva vc1, wmv3 dxva is not supported.
Step 2.I check both the options manully, but it performance worse in dxva vc1,with serious lag in fast seeking, still unavalible with wmv3 dxva.
Step 3.Then I unckeck the wmv option in source filters,keep the wmv option in transform filters being ckecked. Both vc1 and wmv3 are supported very well, no lag in fast seeking.
Also, I've found similar case in MPC-BE + LAV. Both wmv3 and vc1 work's fine with BE's internal filters,.
If I plug-in lav (including lav source filter) and set preferred, things would be similar with Step 2.
Then I remove the lav source filter an keep the others unchanged, things become similar with Step 3.
So, as checking wmv option in transform filters of MPC-HC could bring better experience in dxva wmv3/vc1, why not checking it by default?
And another question, judging from my test on MPC-BE, is it the lav source filter that slow down the vc1 decoding, or even block the wmv3 dxva?
dukey
18th March 2014, 14:56
Actually decoder doesn't have to be menu aware with Blu-rays.
True, but it needs support end of sequence codes. Otherwise stills remain black until the stream gets flushed. Which means you can sit through a lot of black frames until your menu appears :p
NikosD
19th March 2014, 07:17
@nev
Apparently there is a serious bug regarding LAV splitter and QS decoder as described here (http://forum.doom9.org/showthread.php?p=1674202#post1674202)
Is it something fixable ?
Also I found out one more problem, using MPC-HC(LAV internal) and QS decoder.
For VC-1 interlaced clips (not MPEG-2 or H.264 interlaced clips) the deinterlacer doesn't kick in using the default EVR-CP renderer.
You have to explicitly enable HW deinterlacer through the HW deinterlacer switch of LAV Video properties or use the EVR renderer.
For all the other interlaced codecs and for EVR, there is no such problem.
nevcairiel
19th March 2014, 08:59
Someone that cares is free to send patches to improve seeking. I don't.
Most other decoders are smart enough to recover no matter where you seek to, so its hardly a "serious" bug.
NikosD
19th March 2014, 14:30
This is a strange situation where LAV splitter works OK with other than QS decoders and QS decoder works OK with other than LAV splitters.
We need this co-operation between LAV splitter and QS decoder, maybe you could both make a step closer to a workaround.
Did you manage to check VC-1 deinterlacing with EVR-CP and QS decoder ?
Tom Keller
20th March 2014, 10:02
Seeing this old posting:
Nevcairiel
Can you please:
1. add support for chapters(cuesheets) in ape/flac/wv?
2. add support for more ID3 tags in MP3?
3. Add support for IDSMResourceBag / IPropertyBag interface, so media players will be able to request and show covers(which could have mimes: image/jpeg, image/jpg, image/png) from mp3/flac/ape (without depending on MediaInfo).
I put these on my task list, but not sure when i'll get to it.
... made me curious. So i just wanted to ask: are there any future plans supporting the reading and displaying of embedded covers from audio files?
nevcairiel
20th March 2014, 10:08
As mentioned in my response to the original request, its still on the list, but undetermined when I'll get to it.
Plutotype
23rd March 2014, 23:41
Hi Nev,
Would it be possible to stream and render two external srt subtitle files at the same time (madVR )? I mean reading 2+ lines of text in different lanugages at the same time.
Thanks
nevcairiel
23rd March 2014, 23:44
You'll need a subtitle renderer that can render multiple subtitle streams, LAV alone does not and will not do such hacks.
vood007
24th March 2014, 05:35
Hi Nev,
Would it be possible to stream and render two external srt subtitle files at the same time (madVR )? I mean reading 2+ lines of text in different lanugages at the same time.
Thanks
This may help:
http://pas-bien.net/2srt2ass/
Aleksoid1978
24th March 2014, 07:51
Hi Nev,
Would it be possible to stream and render two external srt subtitle files at the same time (madVR )? I mean reading 2+ lines of text in different lanugages at the same time.
Thanks
With LAV Source is not possible - it handle single pin out, and no way to request data from different subtitle's track at one time :)
nevcairiel
24th March 2014, 09:06
He wants external SRT files. Can just open two of them.
tobindac
24th March 2014, 15:46
splitter appears to be preferred internal version. How to fix? The video and audio decoders work fine.
All are set as external filters on 'Prefer'.
nevcairiel
24th March 2014, 16:18
If you have problems with a player, you should ask in the appropriate place, ie. the support thread for that player.
manolito
25th March 2014, 02:22
Just had a very weird issue with LAVFilters 0.61.1 together with the AVStoDVD preview option. It only happens when using the LAVFilters installer, when using the ZIP file everything works perfectly.
My system is WinXP (32bit of course). The AVStoDVD preview uses the infamous quartz.dll (DirectShow ActiveMovie). DirectShowSource is its default source filter, the author recommends ffdshow which works nicely.
For several reasons I wanted to replace ffdshow with LAVFilters, and with earlier versions (0.59.1) there also were no problems. But after using the 0.61.1 installer the AVStoDVD preview just hangs and crashes the main program.
This issue only affects the preview, the actual encoding works fine.
The funny thing is that when I use the ZIP file instead of the installer, the preview works perfectly. I can live with this now since I figured out the command line for setting up the filters, but I still do not understand what the installer does what crashes the AVStoDVD preview.
I did some more tests, and I found that after using the installer once there is no way back. Uninstalling and then use the ZIP file does not help, there is something the installer does to my system which is not reverted by uninstalling. The only cure at this point is restoring a current backup. Since the installer for earlier versions did not cause problems, I suppose that there were some recent changes to the installer which are responsible for this issue.
Any ideas?
Cheers
manolito
mindbomb
26th March 2014, 09:11
I think I may have found a bug. I was playing a 24 bit stereo flac. My mixer setting was for 5.1, but with mixing disabled for stereo sources. The output from lav audio was then 32 bit integer.
clsid
26th March 2014, 17:36
@manolito
Current LAV Filters is not fully compatible with AviSynth 2.5.
You can restore the standard splitter for AviSynth with this:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Wow6432Node\Media Type\Extensions\.avs]
@=""
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"
michkrol
26th March 2014, 17:44
I think I may have found a bug. I was playing a 24 bit stereo flac. My mixer setting was for 5.1, but with mixing disabled for stereo sources. The output from lav audio was then 32 bit integer.
You don't lose any precision, so what's the problem?
Maybe your output device or drivers don't support 24bit format?
If you go to LAV Audio decoder properties during playback you can see currently used and all suppoerted formats in the Status tab. It works for me (LAVFilters 0.61.1), see below.
http://i.imgur.com/WVoEt64.png (http://imgur.com/WVoEt64)
EDIT: I can reproduce it with mixing settings listed by mindbomb.
manolito
26th March 2014, 20:32
@manolito
Current LAV Filters is not fully compatible with AviSynth 2.5.
Thanks a million, clsid... :thanks:
In the meantime I had followed many different leads to track down the problem (like filter merits, VB runtime files), but it all ended at a dead end.
BTW for WinXP the "Wow6432Node" entry does not exist, the reg file must look like this:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Media Type\Extensions\.avs]
@=""
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"
So it's time for LAVFilters 0.61.2 I guess. Or are filter developers considering AviSynth 2.5x obsolete already? And in any case the installer should have reverted my registry to the pre-install settings upon uninstall.
Cheers
manolito
Aleksoid1978
27th March 2014, 00:50
nevcairiel
http://rghost.ru/private/53390670/4ab123fe02f41dc246443e4f4121c0be - don't play, ffmpeg return error No frame
But - ffplay play good.
mindbomb
27th March 2014, 02:15
You don't lose any precision, so what's the problem?
Maybe your output device or drivers don't support 24bit format?
If you go to LAV Audio decoder properties during playback you can see currently used and all suppoerted formats in the Status tab. It works for me (LAVFilters 0.61.1), see below.
yea, you have to specifically set enable the mixer, set it to 5.1, and enable don't mix stereo sources to reproduce this issue.
michkrol
27th March 2014, 09:54
yea, you have to specifically set enable the mixer, set it to 5.1, and enable don't mix stereo sources to reproduce this issue.
Sorry. You're right, I can reproduce it with your mixing settings, but I still don't see how it would be a problem - you don't lose precision, your soundcard (supposedly) supports 32bit and by mixing you're already "modifying" the audio stream, so having it "untouched" is out of question.
BTW, I get 32bit float with mixing to 5.1 and 32bit integer with mixing to 5.1 and "don't mix stereo sources".
LigH
27th March 2014, 10:07
Stuffing 24 bit samples to 32 bit is probably just avoiding the processing of interleaved values in DWORD registers for a better performance, similar to graphic modes using 32 bit RGB(0) pixels.
pihug12
27th March 2014, 20:06
Hello!
This M4A audio file seems to cannot be played with LAV Splitter : http://www.criticalmusic.com/podcast/episodes/CriticalPodcast32Emperor.m4a
General
Complete name : C:\Users\Pierre\Downloads\CriticalPodcast32Emperor.m4a
Format : MPEG-4
Format profile : Apple audio with iTunes info
Codec ID : M4A
File size : 72.1 MiB
Duration : 59mn 15s
Overall bit rate mode : Variable
Overall bit rate : 170 Kbps
Movie name : Critical Music Podcast Vol.32 - Hosted by Emperor
Encoded date : UTC 2014-02-11 11:19:44
Tagged date : UTC 2014-02-11 11:19:55
Writing application : GarageBand 6.0.5
Cover : Yes
Comment : 1. Ed:it - I Would (SGN:LTD) / 2. Rregular & Dementia ft. Disphonia - Doom Loop...
Video
ID : 4
Format : JPEG
Codec ID : jpeg
Duration : 59mn 15s
Source duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 3 684 bps
Width : 500 pixels
Height : 500 pixels
Display aspect ratio : 1.000
Frame rate mode : Variable
Frame rate : 0.004 fps
Minimum frame rate : 0.001 fps
Maximum frame rate : 0.010 fps
Color space : YUV
Chroma subsampling : 4:4:4
Bit depth : 8 bits
Compression mode : Lossy
Bits/(Pixel*Frame) : 3.684
Stream size : 1.43 MiB (2%)
Source stream size : 1.43 MiB (2%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Audio
ID : 3
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 59mn 15s
Bit rate mode : Constant
Bit rate : 160 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 69.7 MiB (97%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Text #1
ID : 1
Format : Timed Text
Codec ID : tx3g
Duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 2 bps
Stream size : 899 Bytes (0%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Text #2
ID : 2
Format : Timed Text
Codec ID : tx3g
Duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 2 bps
Stream size : 775 Bytes (0%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
The MPC-HC window allocates 500px * 500px for the artwork, but the screen stays black.
The "Play" button is pushed, but nothing is played (stays at 00:00).
If I switch the splitter to Haali, I can read this file (see more infos here (http://codecs.forumotion.net/t1523-m4a-audio-file-doesn-t-play-with-mpc-hc)).
Sorry if this problem is not only LAV Splitter related, I'm no expert.
hubblec4
27th March 2014, 20:17
AVSplitter plays the file fine too.
CoKing
27th March 2014, 20:22
Seeing an odd behavior when using a SampleGrabber filter after the video decoder and was wondering if there were known issues.
It's an H264 stream (YV12) and the graph is
elecard net source -> elecard push demux -> lav video decoder -> sample grabber -> EVR
It looks like the chroma's are getting shifted around a bit (red and blue seems to be above where they should in the image). I can get it to display properly by stopping the graph and starting again, almost as if the pin types aren't being updated correctly with a grabber between the decoder and the renderer?
qyot27
27th March 2014, 21:46
Since I saw this come up on the AVStoDVD thread, I'll address it here too:
AviSynth handling is unstable with AviSynth 2.5.8 (freezes/crash). This is a regression in the FFmpeg code. Afaik it used to work before this rewrite: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=f0b234ab9e406efee85c17eb435db646092a943b
Actually, the rewrite occurred in March of 2013 (http://git.videolan.org/?p=ffmpeg.git;a=commit;h=b9ad009475f3afb76bd2fbd92936dc4d4cd441ec) on FFmpeg's side. Libav didn't commit it until December, and commit f0b234ab is pretty much just the merge sync (virtually all of the changes suggested by Libav actually exist as a set of commits to FFmpeg prior to that commit, since there was a big crucial difference that needed to be accounted for: Libav dropping support for 2.5 completely - it stops dead in its tracks if it sees 2.5 and tells the user to upgrade; FFmpeg still supports 2.5).
Huh, I was under the impression that those issues were already more or less dealt with? Looking at this issue (https://trac.ffmpeg.org/ticket/2526). If it's not, I recommend someone to report it further.
Also, I think I've even had someone actually test 2.5.8 before, and it seemed to work. I am personally on 2.6, and wouldn't really recommend anyone to install anything older by now.
Yes, it was fixed:
http://git.videolan.org/?p=ffmpeg.git;a=commit;h=2c25e83b1d022ab36842d77749024b3d720a4227
(although my brain was a bit fried when I wrote the anecdote irt why AvxSynth was unaffected - the real reason is that it uses its own header and never touches the avisynth_c*.h headers at all; it's just a happy coincidence that it seems to have backported 2.6's versions of those two functions)
The hang that occurs when trying to use LAV Filters with AviSynth 2.5.8 isn't exclusive to 2.5.8 - it also happens when trying to use AviSynth+. But it also doesn't happen in 2.5.8 (or avsplus) either, if the source filter isn't DirectShowSource (read: LAV+AVS 2.5+FFMS2 works fine). The actual incompatibility here appears to be between LAV Filters and DirectShowSource, not LAV Filters and AviSynth.
Also, it probably isn't really that either, since the same DirectShowSource-using script that calls LAV Filters will open and playback fine in mpv. But if you try it in a DirectShow-based player, it hangs.
Basically, in a DirectShow-based player (I used WMP 6.4):
LAV Filters->libavformat (avformat-lav-55.dll)->AviSynth.dll->DirectShowSource.dll->LAV Filters again->libavformat (avformat-lav-55.dll) again
mpv:
libavformat (most likely statically linked)->AviSynth.dll->DirectShowSource.dll->LAV Filters->libavformat (avformat-lav-55.dll)
mpv works, DirectShow player hangs/crashes.
Or are filter developers considering AviSynth 2.5x obsolete already?
It's more a case of 2.6 offering better stability, but since it's still largely backward-compatible, it's [usually] not the filter developers' problem whether the plugin gets used under 2.5 or 2.6. But 2.6 got mired in development hell, and the only thing that broke with that was AviSynth+ forking off of 2.6 and eschewing the 'alpha' tag entirely (AviSynth+ r1576 is considered the 'stable' release; the MT branch is under testing but is the main development branch, currently at r1695). At this point there have been just as many unique commits to avsplus in the last six months (the fork occurred in mid-September 2013) as there have been to classic AviSynth since 2007.
nevcairiel
28th March 2014, 00:42
nevcairiel
http://rghost.ru/private/53390670/4ab123fe02f41dc246443e4f4121c0be - don't play, ffmpeg return error No frame
But - ffplay play good.
Should be fine now.
nevcairiel
28th March 2014, 09:34
The hang that occurs when trying to use LAV Filters with AviSynth 2.5.8 isn't exclusive to 2.5.8 - it also happens when trying to use AviSynth+. But it also doesn't happen in 2.5.8 (or avsplus) either, if the source filter isn't DirectShowSource (read: LAV+AVS 2.5+FFMS2 works fine). The actual incompatibility here appears to be between LAV Filters and DirectShowSource, not LAV Filters and AviSynth.
I tried to reproduce the hang, since I had a suspicion what could be causing it, but I had no luck.
Are there any other hings what might be involved? I tried a rather trivial script with nothing but DirectShowSource in it..
qyot27
28th March 2014, 16:39
I tried to reproduce the hang, since I had a suspicion what could be causing it, but I had no luck.
Are there any other hings what might be involved? I tried a rather trivial script with nothing but DirectShowSource in it..
I don't think there's anything else involved. I had a simple script using DirectShowSource and nothing else, and it would get caught after the initial parsing - the LAV Splitter icon would show up in the system tray, but nothing else, and the player just sat there.
Whereas if I opened the exact same script in mpv, it'd more or less immediately have two LAV Splitter icons appear in the tray (which seems to be expected, I guess...Haali would do the same thing), and then the LAV Video and LAV Audio icons appear too and the video would start playing.
Infodump below:
AviSynth+ r1695, using the corresponding DirectShowSource that was built at the same time as the core, using Visual Studio 2013 Express. I also tried with the official release build of AviSynth 2.5.8, and the corresponding DirectShowSource_2588.zip package - same result as described before.
LAV Filters 0.61.1. Happens regardless of whether the avisynth box is checked in LAV Splitter's Input formats configuration. Aside from enabling the tray icons (and forcing Progressive in the Video decoder), the settings are at their defaults.
The video specs:
>mediainfo "test.mkv"
General
Unique ID : 226012631851493299613590261768577571645 (0xAA08
7315A8F82935813887505CE35B3D)
Complete name : test.mkv
Format : Matroska
Format version : Version 4 / Version 2
File size : 4.23 MiB
Duration : 30s 155ms
Overall bit rate : 1 177 Kbps
Encoded date : UTC 2013-04-19 01:17:10
Writing application : mkvmerge v6.1.0 ('Old Devil') built on Mar 2 2
013 14:32:37
Writing library : libebml v1.3.0 + libmatroska v1.4.0
Attachment : Yes
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.0
Format settings, CABAC : Yes
Format settings, ReFrames : 16 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 30s 155ms
Width : 848 pixels
Height : 480 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Writing library : x264 core 130 r2273+738 d87dd27
Encoding settings : cabac=1 / ref=16 / deblock=1:1:1 / analyse=0x3:
0x133 / me=umh / subme=11 / psy=1 / psy_rd=0.40:0.00 / mixed_ref=1 / me_range=24 / chroma_
me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2
/ threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=0 / interlaced=0 /
bluray_compat=0 / constrained_intra=0 / bframes=16 / b_pyramid=2 / b_adapt=2 / b_bias=0 /
direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=23 / scenecut=100
/ intra_refresh=0 / rc_lookahead=60 / rc=crf / mbtree=1 / crf=18.0 / qcomp=0.60 / qpmin=0
/ qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:0.60
Language : English
Default : Yes
Forced : Yes
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : A_AAC
Duration : 30s 155ms
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Delay relative to video : 22ms
Language : English
Default : Yes
Forced : Yes
Script:
DirectShowSource("test.mkv")
The computer itself is running XP Home SP3, and runs on a PIII-era Celeron (Coppermine) and 512 MBs of PC-133 SDRAM.
For good measure, the mpv configuration (includes the patches in the extra-new branch on github.com/qyot27/mpv (https://github.com/qyot27/mpv/commits/extra-new) - just a couple of minor cosmetic changes):
CFLAGS="-mfpmath=sse -march=pentium3 -msse -mtune=pentium3 \
-DCACA_STATIC" LDFLAGS="-Wl,--allow-multiple-definition" \
PKG_CONFIG_LIBDIR="$HOME/win32_build/lib:/usr/i686-w64-mingw32/lib" \
PKG_CONFIG_PATH="$HOME/win32_build/lib/pkgconfig:/usr/i686-w64-mingw32/lib/pkgconfig" \
TARGET=i686-w64-mingw32 ./waf configure --prefix=$HOME/mpv_build \
--disable-debug-build --enable-static-build --enable-openal --enable-sdl2 \
--disable-manpage-build --disable-pdf-build
mpv r37612 git-36fd8d9 (C) 2000-2014 mpv/MPlayer/mplayer2 projects
built on Wed Mar 26 08:21:17 EDT 2014
ffmpeg library versions:
libavutil 52.69.100
libavcodec 55.54.100
libavformat 55.35.101
libswscale 2.5.102
libavfilter 4.3.100
libavresample 1.2.0
And underlying FFmpeg configuration mpv was using (includes the patches in the x264-device (https://github.com/qyot27/FFmpeg/commits/x264-device), silent_invoke (https://github.com/qyot27/FFmpeg/commits/silent_invoke), and more_pkgconfig (https://github.com/qyot27/FFmpeg/commits/more_pkgconfig) branches on github.com/qyot27/FFmpeg):
>ffmpeg -buildconf
ffmpeg version r61830 git-12c3a68 Copyright (c) 2000-2014 the FFmpeg developers
built on Mar 26 2014 07:13:04 with gcc 4.8.2 (GCC)
libavutil 52. 69.100 / 52. 69.100
libavcodec 55. 54.100 / 55. 54.100
libavformat 55. 35.101 / 55. 35.101
libavdevice 55. 11.100 / 55. 11.100
libavfilter 4. 3.100 / 4. 3.100
libavresample 1. 2. 0 / 1. 2. 0
libswscale 2. 5.102 / 2. 5.102
libswresample 0. 18.100 / 0. 18.100
libpostproc 52. 3.100 / 52. 3.100
configuration:
--prefix=/home/qyot27/win32_build
--cross-prefix=i686-w64-mingw32-
--enable-gpl
--enable-version3
--disable-w32threads
--enable-avresample
--disable-doc
--enable-concise-version
--enable-fontconfig
--enable-libfreetype
--enable-libass
--enable-libbluray
--enable-libcaca
--enable-libcdio
--enable-openal
--enable-opengl
--enable-libquvi
--enable-librtmp
--enable-libsoxr
--enable-libvidstab
--enable-libflite
--enable-libgme
--enable-libgsm
--enable-libilbc
--enable-libmp3lame
--enable-libnut
--enable-libopencore-amrnb
--enable-libopencore-amrwb
--enable-libopenjpeg
--enable-libopus
--enable-libschroedinger
--enable-libshine
--enable-libspeex
--enable-libtheora
--enable-libtwolame
--enable-libutvideo
--enable-libvo-aacenc
--enable-libvo-amrwbenc
--enable-libvorbis
--enable-libvpx
--enable-libwavpack
--enable-libx264
--enable-libxavs
--enable-libxvid
--enable-avisynth
--cpu=pentium3
--extra-cflags='-mfpmath=sse -march=pentium3 -msse -mtune=pentium3 -DPTW32_STATIC_LIB -DCACA_STATIC'
--extra-ldflags='-mconsole -Wl,--allow-multiple-definition'
--target-os=mingw32
--arch=x86
--pkg-config='pkg-config --static'
In both cases, master was at HEAD and the branches rebased against that at the time they were both built.
nevcairiel
28th March 2014, 18:21
Hm, could everyone with such problems be on XP? Whatever I try, it works here, but I don't have any XP system at hand.
manolito
28th March 2014, 18:36
Yes, I am on XP SP3, Celeron Coppermine 1.1 GHz, 576 MB of RAM. Pretty similar to qyot's system.
And this registry patch by clsid takes care of the problem:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Media Type\Extensions\.avs]
@=""
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"
@qyot27
Have you tried this patch?
Cheers
manolito
nevcairiel
28th March 2014, 19:03
The patch doesn't "fix" anything, it just disables LAV for AviSynth.
manolito
28th March 2014, 19:25
Then I do not understand why using the ZIP file instead of the installer does not cause any trouble on my system. Or does the install.bat not even register the splitter for AviSynth?
A request for the folks who prefer the ZIP file over the installer:
I could not find any documentation how to create links for the filters setup (rundll32 .....). Could you include a readme about this in the ZIP file?
Cheers
manolito
nevcairiel
28th March 2014, 19:28
The zips are meant for people who know exactly what they are doing and how to use the filters without the setup the installer performs. I will not spent time trying to explain how to use them, when you could just be using the installer.
I recommend you use the installer, and simply uncheck the formats you don't want during the install.
clsid
28th March 2014, 19:43
I am able to reproduce the AviSynth issue on both Win7 and Win8 x64. The host app will just hang when opening the .avs file. Tried with GraphStudioNext and MPC-HC. Just AviSynth 2.5.8 and LAVFilters are installed, no other third party codecs present. Script just simple DirectShowSource call for loading a mp4 file.
I can generate a dmp file if you post a debug build.
Dump with release build shows avcodec-lav-55.dll!72f9d942() at top of call stack.
qyot27
28th March 2014, 20:17
It's also happening under the Win8.1 x86 VM that I use to build AviSynth+. The host computer is a mid-2011 iMac - aside from it running a Sandy Bridge i5, I'm not sure what the other specs are.
The VM isn't all that great of a testbed, though - there's video corruption at the beginning of playback when I test the script in mpv due to the direct3d video output driver not liking VirtualBox or something, but it straightens out after a second or two. MPC-HC hangs like usual if using DirectShowSource, and switching to FFMS2 sidesteps the issue entirely and plays back in MPC-HC correctly, with LAV Filters only handling the splitting and raw video/audio decoding.
vood007
28th March 2014, 20:34
Should be fine now.
Tested with latest lav nightly from betaking. It opens but does not play correct, like all files with missing/broken timestamps. I repeat my suggestion to check and reject such files so other decoders can handle it.
nevcairiel
28th March 2014, 20:36
Tested with latest lav nightly from betaking. It opens but does not play correct, like all files with missing/broken timestamps. I repeat my suggestion to check and reject such files so other decoders can handle it.
There is no way to detect if a file is going to have broken timestamps, especially in a decoder. How would it ever know? It only gets timestamps with the frames after starting decoding, not before.
Stop creating broken files already, and there would be no problem.
clsid
28th March 2014, 20:50
MSVC debug build of FFmpeg DLLs works with AviSynth 2.5.8!
(I had build errors due to missing zlib stuff, so I had to disable the MatroskaParser to get it to build)
manolito
28th March 2014, 20:52
I recommend you use the installer, and simply uncheck the formats you don't want during the install.
Alright, I just tried that, and if I uncheck AviSynth in the installer dialog, the installer will indeed leave the registry entry "Media Type/Extensions/AVS" alone. Whatever was specified there as the source filter will stay untouched.
But if I run the splitter config after installation, enabling / disabling AviSynth has no effect at all under WinXP. Maybe the config routine only looks under Wow6432Node?
Whatever, on my system I can confirm that using the LAV source filter {B98D13E7-55DB-4385-A33D-09FD1BA26338} crashes playback each and every time while using the AVI/WAV source filter {D3588AB0-0781-11CE-B03A-0020AF0BA770} always works.
BTW even with the AVI/WAV source filter I do get the two LAVSplitter icons for video and audio in my task bar, so somehow the splitter is not completely disabled.
And in any case, please fix the installer so it will restore the preinstall entries for the Media Type extensions upon uninstall. Currently it does not, and this did cost me a lot of time and trouble... :eek:
Cheers
manolito
Nevilne
28th March 2014, 21:05
yeah i've reported this avisynth stuff weeks ago
nevcairiel
28th March 2014, 21:33
MSVC debug build of FFmpeg DLLs works with AviSynth 2.5.8!
Thats why it worked for me, I still had debug dlls installed from some other issue I was working on yesterday.
Anyway, the problem was exactly what I thought it was, and it should be fixed now.
But if I run the splitter config after installation, enabling / disabling AviSynth has no effect at all
The config in the splitter has no influence about things the installer did.
Setting up a source filter for DirectShow requires admin access/elevation, at least under Vista/7, which the installer has - but the filter does not, so the filter won't even try. The internal format list in the splitter is really only useful when you use it in combination with the File Source (Async), otherwise configure formats in the installer.
I could probably make the installer try to restore the previous config on uninstall, but of course that only helps people doing new installs going forward, not those that have it already.
manolito
28th March 2014, 23:36
Any chance for updated binaries?
Cheers
manolito
Stereodude
29th March 2014, 04:37
How does the LAV splitter look for forced PGS subtitles during Blu-Ray disc playback?
It seems like it only looks at the first subtitle track that the splitter returns for individually flagged forced subtitles. This strategy doesn't seem to work for movies with forced subtitles that have both captions (for the hearing impaired) and true subtitles since the PGS stream with the captions, and no forced subtitles, tends to be the first one returned by the splitter. For example, in the R1 Blu-Ray of Elysium the first subtitle track the splitter returns is the hearing impaired closed captions, which has no individually forced subtitles. The individually forced subtitles are in the 2nd subtitle track the splitter lists. So what ends up happening is that the default subtitle selection of "Forced Subtitles (auto) (English)" doesn't end up displaying anything because the forced subtitles are in a subtitle track not being monitored.
I'm guessing it's not possible for the LAV splitter to figure out which PGS subtitle stream has individually flagged forced subtitles in it at the start of playback and monitor that one for forced subtitles, but can it monitor more than the first PGS subtitle stream that the splitter returns for individually flagged forced subtitles?
Also, is it possible to have the splitter look at the disc.inf file AnyDVD HD inserts into the disc contents (in the root folder of the disc) so the splitter picks the appropriate playlist for correct playback instead of just picking the longest duration playlist? In case you weren't aware, the disc.inf file lists the correct playlist(s) for proper playback of discs that have intentional playlist obfuscation.
Thanks!
Plutotype
30th March 2014, 17:22
Hi folks, what could cause that 7.1 to 5.1 LAVaudio mixing results into both surrounds being swapped on the 5.1 speaker setup?
Tested using reference 8channel audio samples.
QBhd
31st March 2014, 22:36
How does the LAV splitter look for forced PGS subtitles during Blu-Ray disc playback?
It seems like it only looks at the first subtitle track that the splitter returns for individually flagged forced subtitles. This strategy doesn't seem to work for movies with forced subtitles that have both captions (for the hearing impaired) and true subtitles since the PGS stream with the captions, and no forced subtitles, tends to be the first one returned by the splitter. For example, in the R1 Blu-Ray of Elysium the first subtitle track the splitter returns is the hearing impaired closed captions, which has no individually forced subtitles. The individually forced subtitles are in the 2nd subtitle track the splitter lists. So what ends up happening is that the default subtitle selection of "Forced Subtitles (auto) (English)" doesn't end up displaying anything because the forced subtitles are in a subtitle track not being monitored.
I'm guessing it's not possible for the LAV splitter to figure out which PGS subtitle stream has individually flagged forced subtitles in it at the start of playback and monitor that one for forced subtitles, but can it monitor more than the first PGS subtitle stream that the splitter returns for individually flagged forced subtitles?
Also, is it possible to have the splitter look at the disc.inf file AnyDVD HD inserts into the disc contents (in the root folder of the disc) so the splitter picks the appropriate playlist for correct playback instead of just picking the longest duration playlist? In case you weren't aware, the disc.inf file lists the correct playlist(s) for proper playback of discs that have intentional playlist obfuscation.
Thanks!
I too had been waiting for a reply to this, but days have now passed... so this is sort of a bump. :)
QB
clsid
1st April 2014, 22:45
With an AviSynth script LAV Splitter outputs I420 instead of YV12 and RGBA instead of RGB32. This causes an extra instance of LAV Video to be needed to convert the colorspace. Perhaps there is an easy fix to avoid that extra step?
nevcairiel
1st April 2014, 23:04
That's intentional. LAV Splitter is not equipped for dealing with raw video, and it shouldn't have to be, so it'll put LAV Video in to handle all the peculiarities and dealings with the video renderer.
nevcairiel
3rd April 2014, 13:12
I'm guessing it's not possible for the LAV splitter to figure out which PGS subtitle stream has individually flagged forced subtitles in it at the start of playback and monitor that one for forced subtitles, but can it monitor more than the first PGS subtitle stream that the splitter returns for individually flagged forced subtitles?
I suppose it could monitor more than one track for this, but its not setup like this right now, so it would need some re-designing internally.
Maybe in a future version..
jmone
3rd April 2014, 20:43
Also, is it possible to have the splitter look at the disc.inf file AnyDVD HD inserts into the disc contents (in the root folder of the disc) so the splitter picks the appropriate playlist for correct playback instead of just picking the longest duration playlist? In case you weren't aware, the disc.inf file lists the correct playlist(s) for proper playback of discs that have intentional playlist obfuscation.
Isn't that a Feature for the Player to do? eg JRiver's Media Center does exactly that. It reads the disc.inf (if present) and gets LAV Splitter to then then select that playlist.
Stereodude
3rd April 2014, 23:42
Isn't that a Feature for the Player to do? eg JRiver's Media Center does exactly that. It reads the disc.inf (if present) and gets LAV Splitter to then then select that playlist.I'm not really sure who makes that call.
ddjmagic
4th April 2014, 09:37
Also, is it possible to have the splitter look at the disc.inf file AnyDVD HD inserts into the disc contents (in the root folder of the disc) so the splitter picks the appropriate playlist for correct playback instead of just picking the longest duration playlist?
This has been discussed before. Nevcairiel has stated he might add support for using the 'disc.inf' file if AnyDVD adds playlist information for all discs (not just Screen Pass titles)
AnyDVD won't add playlist info for the other discs, so you are best trying to request this feature from your favorite player (as it's not going to happen anytime soon in LAV)
nevcairiel
4th April 2014, 10:04
It would help if I ever actually see a disc which uses such obfuscation. :p
ddjmagic
4th April 2014, 11:37
It would help if I ever actually see a disc which uses such obfuscation. :p
There are quite a few European discs that use it too - DVDFab keep a rough list here (http://blog.dvdfab.cn/stealthyclone-anti-protection.html).
Why would you need to actually see one of these discs? AnyDVD already does the hard work and provides the correct playlist info, it just needs to be used.
Casshern
6th April 2014, 10:31
I also often encounter tracks with forced subtitles which are not exposed as such by lav's current design. But wouldn't a simple solution just to have an option to expose ALL subtitle tracks twice. Once in their original form, and once containing only the forced subtitles. Yes this would clutter the subtitle lists a lot, but as this feature could be optional (and not the default), it would solve all problems for those interested, while not harming those who prefer the current design.
Or if the monitoring of the subtitle tracks for the force flags is difficult to extend to multipe tracks at once, why not let the user choose the track which is filtered to only contain the forced subs?
I suppose it could monitor more than one track for this, but its not setup like this right now, so it would need some re-designing internally.
Maybe in a future version..
Reino
6th April 2014, 12:18
nevcairiel, as of v0.61.0 LAV Splitter crashes here on certain files. I first thought it to be a player issue, but it even immediately crashes when I open certain files in GraphStudioNext (where it tries to load LAV Splitter and both Decoders).
http://www.ld-host.de/uploads/images/ab48c3fa8397ace924898fe4bad03ccd.png
(and always the same location number)
I've uploaded 2 samples:
GoT.S01E00.Sample.mkv (http://www.mediafire.com/download/7sm7fonaucx4deh/GoT.S01E00.Sample.mkv) (6.66MB) - no problem loading.
GoT.S01E01.Sample.mkv (http://www.mediafire.com/download/ngmk5meiad97g5u/GoT.S01E01.Sample.mkv) (10.02MB) - immediate crash.
With v0.60.1 I didn't have this issue, neither with "MPC-BE Matroska Source" + "LAV Video Decoder"/"MPC-BE Video Decoder"
Despite comparing MediaInfo sheets of these files, I just can't find the source of this problem.
I know your standpoint on old hard- and software, because it might as well be a WinXP/old cpu issue, but I'd appreciate it if you could take a look nontheless.
nevcairiel
6th April 2014, 12:37
When you run it in MPC-HC, does it produce a crash dump? That might be helpful to find out in which part of the code it happens.
Let me guess, your CPU does not do SSE2?
Most likely a SSE2 instruction slipped into SSE code somewhere, which happens occasionally since there is no good way to test for this - without running it on hardware where it would crash.
SeeMoreDigital
6th April 2014, 13:34
Strange... the "immediate crash sample" provided appears to be working okay for me using v0.61.1: -
http://i62.tinypic.com/97ld9f.png
Reino
6th April 2014, 13:36
Yes it does: MPC-HC.1.7.3.72.exe.1.7.3.72.dmp (http://www.degeelebosch.nl/reino/MPC-HC.1.7.3.72.exe.1.7.3.72.dmp)
No SSE2 indeed:
http://www.ld-host.de/uploads/thumbnails/7f5cc4e69eb996d248c1af220dc50d0f.png (http://www.ld-host.de/uploads/images/7f5cc4e69eb996d248c1af220dc50d0f.png)
I guess I'm one of the few people nowadays that's still satisfied with their current pc and don't feel the need to upgrade. Except video-editing/encoding, everything else I can still do on my Athlon XP rig. I have to admit though, my WinXP is a highly tweaked nLite (http://www.nliteos.com/nlite.html) version, which runs significantly better/faster/smoother than the default one. This has certainly postponed the need to upgrade.
But slowly I encounter more and more situations where I wish I had a faster pc. I think the moment GPUs support DXVA for H.265 I'm going to buy a new pc. :sly:
SeeMoreDigital, that's probably because it's a SSE2-issue
nevcairiel
6th April 2014, 15:44
Is the crash dump using my official LAV build? It doesn't seem to want to share its secrets with me (which only works on my official builds)
Reino
6th April 2014, 16:03
How about this one: mpc-hc.exe.1.7.3.201.dmp (http://www.degeelebosch.nl/reino/mpc-hc.exe.1.7.3.201.dmp)
I downloaded the latest MPC-HC build and removed the "LAVFilters" directory in order for the standalone LAVFilters (v0.61.0) to be used.
nevcairiel
6th April 2014, 16:13
That works better, thanks.
I also identified the offending instruction, it is like I assumed, a SSE2 instruction made its way into SSE. Its a sneaky case as well, as this instruction can be used to copy data from memory to a register in SSE, but if you want to use the same instruction for register to memory, its SSE2 .. easy error to run into. Same instruction, different parameters cause it to become SSE2-only..
DragonQ
6th April 2014, 16:22
But slowly I encounter more and more situations where I wish I had a faster pc. I think the moment GPUs support DXVA for H.265 I'm going to buy a new pc. :sly:
I feel ya, I hate the "upgrade bug" and try to avoid where I can. I've only upgraded my main PC three times in the nearly 5 years I've had it: replaced the GPU (RMA, free), installed an SSD, then replaced the GPU again this week since it was dying.
Your motherboard and CPU are even older though so, like you said, you'll eventually encounter problems relating to architecture. Fortunately I haven't had any problems with my CPU's lack of AVX but I'm sure I will eventually.
In your case though, even the most budget setups would be much faster than your current one and support all the latest instruction sets. It'd cost less than £100 to get a motherboard/CPU combination to best yours, although you'd probably need new RAM too.
nevcairiel
6th April 2014, 18:02
Here is a new binary for testing:
x86: http://files.1f0.de/lavf/LAVFilters-0.61.1-21-g39cc540.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.61.1-21-g39cc540-x64.zip
It should fix the SSE crash, as well as contain all previous fixes discussed here since 0.61.1
Specifically, it fixes AviSynth with DSS when DSS loads LAV again.
It also contains some stability improvements for DXVA2-CB, specifically for an issue that caused a crash or at the very least dropped frames when a resolution change in the video occurs.
I may release this version soon as 0.61.2
Reino
6th April 2014, 19:22
It's fixed. Thanks a lot! But out of interest, can you explain why, unlike the 2nd sample, the 1st sample didn't crash?
The hover info should be fairly easy to do, I'll try to remember on a rainy day.Had any rainy days yet? ;)
NikosD
6th April 2014, 19:27
Using the above x86 latest build with DXVA Checker and MPC-HC, all of my last and final problems (I have no other samples with problems!) seem unresolved.
1) Artifacts during playback and seeking (both CPU & DXVA) with this clip (http://www.sendspace.com/file/9p8xa0)
2) No decoding at all (both CPU & DXVA) with DXVA Checker using this clip2 (ftp://helpedia.com/pub/multimedia/x264/testvideos/2010%20-%2009%20-%20DXVA%20benchmarks%20-%20Avivo%20vs%20PureVideo%20vs%20Clear%20Video/test-g1-1.mpg). Possible LAV splitter bug ?
3) Is this (http://forum.doom9.org/showthread.php?p=1671621#post1671621) possible to fix with MPC-HC?
PotPlayer decodes it fine in DXVA.
4) Very slow seeking (out of sync A/V) with both CPU & DXVA with this clip4 (http://www.sendspace.com/file/nvf3l5)
5) Slow seeking with both CPU & DXVA (out of sync A/V) with this clip5 (http://www.sendspace.com/file/zufivj)
6) No problems during normal playback with this clip6 (http://www.techpowerup.com/downloads/530/hd-dvd-demo-1080p-vc-1-ddplus-5-1/mirrors) but when you go back and forth at the initial "black" screen, you will see "ghost" images in both CPU & DXVA especially in MPC-HC
I would appreciate it, if you could test all of the above.
nevcairiel
6th April 2014, 20:20
It's fixed. Thanks a lot! But out of interest, can you explain why, unlike the 2nd sample, the 1st sample didn't crash?
The code in question with the issue was only for a special DTS feature, which I guess the first file may not be using?
Reino
7th April 2014, 09:04
Aha, now I understand. Yes, the first one has AC3 indeed.
Reino
7th April 2014, 14:58
LAV, or rather ffmpeg's AviSynth implementation appears to have an audio-duration bug.
Sample DELAY -192ms(Trim_2.58).avs:
NicAc3Source("D:\Sample DELAY -192ms.ac3").DelayAudio(-0.192)
AudioDubEx(BlankClip(length=Int(1000*AudioLengthF(last)/Audiorate(last)),width=32,height=32,fps=1000),last) #AviSynth v2.58
Trim(0,(1000*40)-1)
ffmpeg.exe -i "D:\Sample DELAY -192ms(Trim_2.58).avs
...
Input #0, avisynth, from 'D:\Sample DELAY -192ms(Trim_2.58).avs':
Duration: 00:00:40.00, start: 0.000000, bitrate: 0 kb/s
Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 32x32, 1k fps, 1k tbr, 1k tbn, 1k tbc
Stream #0:1: Audio: pcm_f32le, 48000 Hz, stereo, flt, 3072 kb/s
================================================================
avs2pipemod-0.4.1.exe -info "D:\Sample DELAY -192ms(Trim_2.58).avs"
avisynth_version 2.60
script_name D:\Sample DELAY -192ms(Trim_2.58).avs
v:width 32
v:height 32
v:fps 1000/1
v:frames 40000
v:duration[sec] 40.000
v:image_type framebased
v:field_order not specified
v:pixel_type RGB32
a:sample_rate 48000
a:format float
a:bit_depth 32
a:channels 2
a:samples 1920000
a:duration[sec] 40.000
But,...
Sample DELAY -192ms(Trim_2.60).avs:
NicAc3Source("D:\Sample DELAY -192ms.ac3").DelayAudio(-0.192)
AudioTrim(0,1000/25.0) #AviSynth v2.60
ffmpeg.exe -i "D:\Sample DELAY -192ms(Trim_2.60).avs
...
Input #0, avisynth, from 'D:\Sample DELAY -192ms(Trim_2.60).avs':
Duration: 00:00:00.00, start: 0.000000, bitrate: 3044 kb/s
Stream #0:0: Audio: pcm_f32le, 48000 Hz, stereo, flt, 3072 kb/s
================================================================
avs2pipemod-0.4.1.exe -info "D:\Sample DELAY -192ms(Trim_2.60).avs"
avisynth_version 2.60
script_name D:\Sample DELAY -192ms(Trim_2.60).avs
a:sample_rate 48000
a:format float
a:bit_depth 32
a:channels 2
a:samples 1920000
a:duration[sec] 40.000
avs2pipemod uses the official avisynth.dll directly and detects the correct duration.
ffmpeg I believe always expects a videostream upon which it bases the duration and thus fails when there isn't any.
And because LAV is based on ffmpeg, it will also show a duration of 0. The "AVI/WAV File Source"-filter doesn't have this issue and detects the correct duration.
Btw, while the "AVI/WAV File Source"-filter automatically converts its input to 16bit, LAV doesn't and because my soundcard doesn't support 32bit-float, I either need to add ConvertAudioTo16bit() to the avs-script, or manually add the "LAV Audio Decoder" (or "FFDShow Audio Processor") as external filter in MPC-BE/HC, otherwise my soundcard puts out warbled/distorted sound.
Is there a way you can make the "LAV Audio Decoder" automatically load in case the "LAV Splitter" puts out 32bit-float?
nevcairiel
7th April 2014, 15:11
I fixed the audio duration, however regarding the other issue, the splitter is not in charge to control filter loading, and trying to force another filter into the graph is usually quite an disruptive endeavor and would need options to turn it off and whatnot.
It does also seem to load LAV Audio into the graph for me with every AviSynth script.
Reino
7th April 2014, 16:54
Understood, though I don't understand how and why LAV Audio automatically gets inserted on your system. The onboard soundchip on one of my family member's laptop (Win7) supports 32bit-float, so LAV Audio doesn't get, or even needs to be inserted.
Thanks for the duration fix.
clsid
7th April 2014, 20:25
The following sample also has audio problems in AviSynth.
http://www.sendspace.com/file/hudyb4
Audio plays three times normal speed. Splitter outputs 5.1 pcm instead of 2.0 AAC.
nevcairiel
7th April 2014, 20:45
The following sample also has audio problems in AviSynth.
http://www.sendspace.com/file/hudyb4
Audio plays three times normal speed. Splitter outputs 5.1 pcm instead of 2.0 AAC.
Must be a problem in your setup somewhere, plays fine here.
Note that all audio is PCM when it comes out of avisynth, it can't output compressed audio.
nevcairiel
8th April 2014, 15:37
LAV Filters 0.61.2
General
- Installer: The installer does now backup DirectShow registry settings before overwriting them, allowing uninstall to restore them
LAV Splitter
- NEW: Support for ProRes in MKV
- Fixed: Opening AviSynth scripts with LAV Splitter which used DirectShowSource to load LAV Splitter again caused a deadlock
- Fixed: Audio-only AviSynth scripts did not show a duration
- Fixed: Cue Sheets with directives with empty parameters could cause a crash
LAV Video
- Fixed: AVC1 video streams without SPS/PPS in the configuration record did not decode properly
- Fixed: Decoding H.264 streams with a resolution change using the DXVA2 Copy-Back decoder could crash
- Fixed: YUV->RGB conversion produced the wrong output for the last line of odd-height 4:2:2 or 4:4:4 files
LAV Audio
- Changed: LAV Audio offers more alternate output configurations to the audio renderer if the audio renderer refuses our preferred format
- Fixed: Decoding AC3 audio with corrupted audio frames could cause unnecessary format changes to occur and disrupt playback
- Fixed: Decoding DTS audio on a CPU without SSE2 support could crash on some streams
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.61.2.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.61.2.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.61.2-x64.zip)
Nothing really major to highlight in this release, various fixes and improvements.
Regarding the change in the installer, it'll of course only be able to restore any old settings if you install it on a fresh system. If you had an older version of LAV already installed, it won't be able to restore settings on uninstall again, since they are lost.
I hope it functions as designed. I did run a couple tests and both the backup and the restore seemed to function properly at least.
Anyway, have fun!
clsid
8th April 2014, 18:54
Must be a problem in your setup somewhere, plays fine here.
Note that all audio is PCM when it comes out of avisynth, it can't output compressed audio.Problem is caused by MS DTV-DVD Audio decoder. Forcing LAV as preferred fixes it. Strange thing is that the MS decoder works correctly with regular playback of the same file in GraphStudioNext.
Can you update FFmpeg and add VP7?
You may want to check if a source filter GUID is still valid before restoring a backed up value. An invalid value will break playback with the standard graph builder.
nevcairiel
8th April 2014, 19:03
You may want to check if a source filter GUID is still valid before restoring a backed up value. An invalid value will break playback with the standard graph builder.
Whatever was in the registry before LAV was installed will be restored. I do not plan to add elaborate sanity checks.
manolito
8th April 2014, 19:13
General
- Installer: The installer does now backup DirectShow registry settings before overwriting them, allowing uninstall to restore them
Thanks a lot. Much appreciated... :thanks:
Cheers
manolito
hubblec4
9th April 2014, 10:25
hi nevcairiel
there is a small thing that AV-Splitter handles better then LAV-Splitter.
when i activate the Bluray-function(format) during the install process, i cant select the different editions of the BD.
only the longest edition plays but i cant change it.
AV-Splitter:
shows all avalible editions and with right click on the tray icon you can change the editions.
please implement this AV-Splitter feature in LAV-Splitter.
nevcairiel
9th April 2014, 10:30
I consider this a player feature, and I have no immediate plans for this in LAV. MPC-HC for example lets you choose which title to play from a BD.
hubblec4
9th April 2014, 10:34
I consider this a player feature,....
No, its a Splitter feature.
... and I have no immediate plans for this in LAV.
shame
MPC-HC for example lets you choose which title to play from a BD.
i will try this, thanks.
LAV Filters 0.61.2
Nothing really major to highlight in this release, various fixes and improvements.
Anyway, :thanks: for your work and the new version!
Reino
9th April 2014, 21:55
nevcairiel, thanks for the SSE and AviSynth audio-only fix! v0.61.2 working nicely here.
Aurora13
10th April 2014, 07:09
LAV Filters 0.61.2
[CODE]
- Installer: The installer does now backup DirectShow registry settings before overwriting them, allowing uninstall to restore them
Great job nevcairiel! But why would anyone uninstall LAV filters? :p;):D
kerimcem
12th April 2014, 12:29
ı use msi ge70 gtx 765m card dont work cuvid decoder :(
mark0077
12th April 2014, 12:49
Hi, I remember a few weeks back there was a discussion regarding yadif double frame rate information not being reflected in the output information to the next filter / renderer. I see madshi had some ideas on how it might be achieved. Just wondering is this something that has changed in any recent lav versions? Previous Discussion (http://forum.doom9.org/showpost.php?p=1666191&postcount=17032)
Just for the life of me I can never get lav / yadif double frame rate deinterlacing to play nicely with SVP. ffdshow downstream thinks the frame rate is still the original frame rate (eg 23.976 / 25fps, so tries to bump up to 60fps via SVP, but instead of outputting 60fps, I get 120fps :)
SamuriHL
12th April 2014, 13:22
ı use msi ge70 gtx 765m card dont work cuvid decoder :(
I have a gt70 880m and it works fine for me. Can you be a little more specific other than "don't work"?
Sent from my SM-P600 using Tapatalk
kerimcem
12th April 2014, 13:59
I have a gt70 880m and it works fine for me. Can you be a little more specific other than "don't work"?
Sent from my SM-P600 using Tapatalk
I have three laptob,lenovo z500 740m works well cuvid decoder, msi ge70 gtx 765m not work cuvid decoder..the last driver.win864+madvr+mpcbe+lav No problem in games..
huhn
12th April 2014, 14:08
the msi ge70 is an optimus Laptop, you have to make sure the nvidia gpu is used for the media player not the intel.
is there any reason you need CUVID? else everything is working as intended, you should be able to use quicksync or DXVA both should increase battery life time compared to CUVID.
wanezhiling
12th April 2014, 14:46
http://url.cn/LuqhzT
Can't seek the file
Guest
12th April 2014, 14:50
http://url.cn/LuqhzT
Can't seek the file Link is Chinese and seems to require a login.
huhn
12th April 2014, 15:09
Link is Chinese and seems to require a login.
the left teal/blue square plus a non Chinese caption is all i needed.
and seeking doesn't work. mkv remux and it works.
Guest
12th April 2014, 15:39
It has only a single IDR picture at the start and then just I pictures without recovery points. So, formally, it is not seekable. A filter may choose to treat I frames as seekable, however, as DG tools do (DGAVCDec at one time had an option for it IIRC, while DGDecNV/IM always does). It's formally incorrect, but I have never received any trouble report based on that, although I have been shown a specially created "torture" stream that demonstrates the formal incorrectness.
With this sample, treating I as seekable works fine.
qyot27
12th April 2014, 21:02
I'm only asking because I haven't seen it show up on ffmpeg-devel or libav-devel yet. nevcairiel, could you send the AviSynth audio duration patch upstream? That's pretty much the one remaining thing that was bugging me about the rewritten demuxer.
Dogstar9
14th April 2014, 01:02
MKV and FLV files with H264 video do not play (only audio plays, no video)in wmp12 on 64-bit Windows 8, using LAV splitter. Problem only with 32-bit WMP12 - files play fine if 64-bit WMP12 is chosen. Other MKV and FLV files play normally. Oddly the files play normally if viewed in the preview pane, both 32 and 64 bit explorer windows. I suspect a registry entry is incorrect or missing, but have not been able to find it. Any suggestions?
CarlPig
14th April 2014, 01:57
MKV and FLV files with H264 video do not play (only audio plays, no video)in wmp12 on 64-bit Windows 8, using LAV splitter. Problem only with 32-bit WMP12 - files play fine if 64-bit WMP12 is chosen. Other MKV and FLV files play normally. Oddly the files play normally if viewed in the preview pane, both 32 and 64 bit explorer windows. I suspect a registry entry is incorrect or missing, but have not been able to find it. Any suggestions?
Try MPC-HC or MPC-BE
MPC-HC: http://forum.doom9.org/showthread.php?t=166689
MPC-BE: http://forum.doom9.org/showthread.php?t=165890
vaporizer
14th April 2014, 02:53
MKV and FLV files with H264 video do not play (only audio plays, no video)in wmp12 on 64-bit Windows 8, using LAV splitter. Problem only with 32-bit WMP12 - files play fine if 64-bit WMP12 is chosen. Other MKV and FLV files play normally. Oddly the files play normally if viewed in the preview pane, both 32 and 64 bit explorer windows. I suspect a registry entry is incorrect or missing, but have not been able to find it. Any suggestions?
possibly check your codec and splitter settings with http://www.codecguide.com/download_other.htm#codectweaktool
buttons: "directshow filters", "preferred splitters" and "preferred decoders"
Dogstar9
14th April 2014, 12:07
CodecTweakTool found 2 incorrect registry references to source splitter. Now everything working as it should. Cheers!
Snappy Phoenix
17th April 2014, 16:00
Can someone help me in this thread, I am unable to use the seek bar when playing MKV files using LAV/CUDA, it only works if I use LAV/DXVA:
http://forum.doom9.org/showthread.php?t=170482
Superb
18th April 2014, 00:33
@Nev
I've sent you (via pm) a TS sample which doesn't play smoothly. Bad timestamps?
EDIT:
Jerky playback using the latest madVR (MPC-HC 1.7.4).
Slow playback (~20fps) using custom EVR.
Weird (but best) playback using EVR.
I wonder what causes it.
jkauff
18th April 2014, 03:28
@Nev
I've sent you (via pm) a TS sample which doesn't play smoothly. Bad timestamps?
EDIT:
Jerky playback using the latest madVR (MPC-HC 1.7.4).
Slow playback (~20fps) using custom EVR.
Weird (but best) playback using EVR.
I wonder what causes it.
Are you sure you don't have a damaged source file? Was it ripped from a DVD or is it a DVR capture? What does MediaInfo say about it?
zpfbj0
20th April 2014, 05:54
Bug report:
When playing mpeg2-ts(.ts) video,it will flash once at the beginning of the file. It only occurs when using mpeg2 software decoder. I use potplayer with lav filters.
potplayer+lav software decoder: flash
potplayer+lav hardware decoder: normal
potplayer+potplayer built-in decoder: normal
potplayer+microsoft dtv-dvd video decoder: normal
Ceremony
21st April 2014, 00:30
I recently added a few shared folders as mapped drives. these aren't always available unfortunately (machine they are pointing to is mostly offline).
However, ever since I did this, my player (mpc-be) freezes for a whopping 15 seconds (or more) once I play a file and rely on the lav filters (be it audio, video or splitter). Why does LAV check my network drives (or any drives for that matter) anyway? the whole behavior doesnt make any sense!
starrin
21st April 2014, 03:28
It seems LAV splitter can not process HEVC encoded files well.
When I try to seek in a HEVC encoded file, the player will freeze and the CPU usage will jump to 100%. After a few time (depends on how long I seek, usually 30 seconds for a 10 minutes search), the video will resume and everything will back to normal again.
Other spilitter doesn't have this kind of issue, they just can't locate a key frame and the graphic will be broken for a few seconds.
Helios61
21st April 2014, 07:48
Hi nevcairiel!
Are there any news about mvc coded files? At ffmpeg i've found this posting -> Link (http://lists.ffmpeg.org/pipermail/ffmpeg-devel/2014-February/154015.html)! Is it possible to support this with LAV?
Best regards
Helios
Aleksoid1978
22nd April 2014, 04:10
Hi nevcairiel
bad playback - http://aleksoid.voserver.net/Sample/H264/file.ts in soft/DXVA
ffplay.exe playback normal, Pot playback normal, Microsoft DTV/DVD Video Decoder playback normal.
wanezhiling
22nd April 2014, 13:47
http://www.sendspace.com/file/2y7z2h
LAV detects its duration 3min49s, MediaInfo says 3min43s.
filler56789
22nd April 2014, 14:17
http://www.sendspace.com/file/2y7z2h
LAV detects its duration 3min49s, MediaInfo says 3min43s.
It's because LAV Splitter thinks the cover picture is part of the audio stream :)
wanezhiling
22nd April 2014, 14:33
Make sense.
nevcairiel
22nd April 2014, 15:33
@Nev
I've sent you (via pm) a TS sample which doesn't play smoothly. Bad timestamps?
EDIT:
Jerky playback using the latest madVR (MPC-HC 1.7.4).
Slow playback (~20fps) using custom EVR.
Weird (but best) playback using EVR.
I wonder what causes it.
Yes, it has weird timestamps, but I'm not 100% sure why.
I have some plans to try to come up with a sane way to try to automatically improve such problems, but we'll just have to wait and see if that works out.
clsid
22nd April 2014, 19:04
Does the WMV9 MFT decoder have any advantages compared to the DMO one?
nevcairiel
22nd April 2014, 19:05
If not being stupid broken on Windows 8.1 counts, sure.
Finnish Flash
24th April 2014, 16:29
Hey nev, awesome job with the decoder, mate!
I've been using LAV + MPC-HC for streaming MPEG-TS from my ISP's recording service. Aside from the playback taking some extra seconds to start comparing to VLC, it's working very well.
In order to be able to rewind and fast-forward and get the full duration of a file instead of just a couple of seconds from the beginning, I have to insert the following to registry:
[Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\http]
"Source Filter"="{B98D13E7-55DB-4385-A33D-09FD1BA26338}"
This enables splitting video and audio from HTTP protocol with LAV Splitter, right?
Could you make this a default setting, or is there some downside to this? I mean, this could help someone else, too.
sneaker_ger
26th April 2014, 14:38
Should LAV signal bt601 colors for VP8 video? At the moment it leads to the usual resolution based guessing by the renderer but the spec seems to only supports "YUV color space similar to the YCrCb color space defined in [ITU-R_BT.601]".
http://datatracker.ietf.org/doc/rfc6386/?include_text=1 (9.2)
Opinions?
mandarinka
28th April 2014, 19:47
That's a problem, because it is quite clear that when an HD video gets encoded, it is originally BT709. And I bet the chances are pretty high that the transcoding tool used won't convert the colormatrix...
Yay On2/Google...
sneaker_ger
28th April 2014, 21:14
That's a problem, because it is quite clear that when an HD video gets encoded, it is originally BT709. And I bet the chances are pretty high that the transcoding tool used won't convert the colormatrix...
That may be, but VP8 is pretty much only used in the context of websites so it makes sense if the browsers use BT.601 as well (which they allegedly do).
e-t172
28th April 2014, 21:35
Uh? I would rather expect the browsers to conform to sRGB (since it's the web standard), which has the same primaries as BT.709.
foxyshadis
29th April 2014, 02:32
Should LAV signal bt601 colors for VP8 video? At the moment it leads to the usual resolution based guessing by the renderer but the spec seems to only supports "YUV color space similar to the YCrCb color space defined in [ITU-R_BT.601]".
http://datatracker.ietf.org/doc/rfc6386/?include_text=1 (9.2)
Opinions?
The VP8 spec is so ass-backwards that it's likely that On2 simply didn't know BT.709 existed and would do all YUV<->RGB conversions with BT.601, and they put that in because they'd never considered signaling it, but in nearly all cases VP8 shouldn't be involved in any RGB conversion at all. It won't know how the original source was converted, and shouldn't care, like any other video codec (unless manually signaled).
Resolution-dependent switching is a de-facto standard, and in the absence of signaling there's never a good reason to ignore it. It's sad, but it's not the only place you have to defy the spec to work with VP8....
sneaker_ger
29th April 2014, 09:50
Resolution-dependent switching is a de-facto standard
This is what I'd like to test. As I said: when browsers do confirm to the BT.601 part it's hardly the defacto-standard for VP8. It would make sense for LAV to use BT.601 as well so people see the same colors in their player as they see in their browser. Most use cases would be (1) test files before uploading to your own HTML5 website, (2) watch files downloaded from the web. Nobody uses VP8 to backup their Blu-Ray collection.
mandarinka
29th April 2014, 10:17
So in case HD videos are bt709, LAV should do it incorrectly just because other software is also dumb?
Browser video playback implementations are rather crude in any case, so they shouldn't be viewed as a reference for anything (besides sucking).
/OTOH - in many cases, e.g. youtube, the HD streams will actually be upscales of SD sources. But LAV Video isn't a youtube player, it is a directshow decoder./
sneaker_ger
29th April 2014, 10:35
So in case HD videos are bt709, LAV should do it incorrectly just because other software is also dumb?
If the spec says videos are BT.601 than LAV would not be doing it incorrectly, it would be the files that have been created incorrectly. And who says other software is dumb? They are following the specs. If you encode video for the web without regard to specs and browsers on the other hand...
wanezhiling
29th April 2014, 16:21
http://www.sendspace.com/file/5uoefl
Can't play the ape file.
mandarinka
30th April 2014, 00:05
They are following the specs. If you encode video for the web without regard to specs and browsers on the other hand...
That would be if they didn't do the same for H.264 too. IIRC (I might be wrong...) it is not about spec, it is because they don't know any better and VP8 happens to be the same.
RealSnoopyDog
3rd May 2014, 11:18
Hi, i just recongized that "newer" versions of the LAV filters (versions which contain the "avfilter-lav-4.dll") are not able to playback mp4 videos with a low frame rate (e.g. 16.6667 Hz) synchronous anymore. Video is played back way too fast, video and audio are totally out of sync. When i use older versions of the LAV filters where the "avfilter-lav-3.dll" is still included, playback is ok.
filler56789
3rd May 2014, 12:43
Hi, i just recongized that "newer" versions of the LAV filters (versions which contain the "avfilter-lav-4.dll") are not able to playback mp4 videos with a low frame rate (e.g. 16.6667 Hz) synchronous anymore. Video is played back way too fast, video and audio are totally out of sync. When i use older versions of the LAV filters where the "avfilter-lav-3.dll" is still included, playback is ok.
Over here, version 0.61.2 plays a 12fps MP4 file at 12fps.
Perhaps your low framerate MP4s are borked? :confused:
qtwebkit
9th May 2014, 10:23
Problem decoding this file (http://pan.baidu.com/s/1c0nFC6c) with black screen, both software and hardware decoding.
Only software decoding with potplayer's internal filter works fine, broken with pot dxva.
When will we get HEVC H.265 support through QuickSync? :)
Not before intel would produce a GPU which is able to accelerate H.265 decoding at all.
zerowalker
9th May 2014, 12:13
Got a question,
Those who can use , QuickSync, DXVA2 (Native) and/or NVIDIA CUVID.
Do you get a delay when seeking?
For example, if i jump forward 5 sec using the software decoder, it will almost instantly show that image (Depending on keyframes and CPU usage of course).
While DXVA2 (Copy-Back) does not, it has a bit of a delay which is kinda annoying as i seek a lot (I can only use Copy-Back, hence why i ask about the others).
I am not sure if it's supposed to be that way, or is a Copy-Back limitation etc, or something that can be fixed/improved.
It's not really an issue, but would be interested to hear about it.
wanezhiling
9th May 2014, 12:30
Problem decoding this file (http://pan.baidu.com/s/1c0nFC6c) with black screen, both software and hardware decoding.
Only software decoding with potplayer's internal filter works fine, broken with pot dxva.
Baidu is extremely slow for nevcairiel, I uploaded it to another host (http://yunpan.cn/QiuVDPerjd4RF), nev please give a try.
password: 2240
sneaker_ger
9th May 2014, 13:57
Got a question,
Those who can use , QuickSync, DXVA2 (Native) and/or NVIDIA CUVID.
Do you get a delay when seeking?
For example, if i jump forward 5 sec using the software decoder, it will almost instantly show that image (Depending on keyframes and CPU usage of course).
While DXVA2 (Copy-Back) does not, it has a bit of a delay which is kinda annoying as i seek a lot (I can only use Copy-Back, hence why i ask about the others).
I am not sure if it's supposed to be that way, or is a Copy-Back limitation etc, or something that can be fixed/improved.
It's not really an issue, but would be interested to hear about it.
Many hardware decoders (especially AMD) are much slower than modern CPUs so it's normal depending on your hardware.
zerowalker
9th May 2014, 14:36
Oh, so it's simply a delay caused by "CPU Usage" but for the hardware decoder?
I was in the thought that Hardware decoders were extremely low-level and optimized, resulting in much faster decoding compared to a CPU of the same level.
How does it work for you when seeking, if you have any other of the hardware decoders?
DarkSpace
9th May 2014, 20:42
Is there a way to make LAV Splitter auto-select its audio based on languages only when no default flag was found?
I read the ReadMe for the Splitter auto-selection rules, searched this thread, and even tried some configurations myself (for example "*,eng" for "Use Default, when available, otherwise default to English audio), but none of them worked.
I also searched this thread, but came up with no results.
michkrol
9th May 2014, 20:58
Oh, so it's simply a delay caused by "CPU Usage" but for the hardware decoder?
Yes, the decoder needs to process all the frames from a keyframe to the frame you want to see.
You might want to check out fast seek (on keyframe) if you're using MPC-HC (find it under tweaks in options).
I was in the thought that Hardware decoders were extremely low-level and optimized, resulting in much faster decoding compared to a CPU of the same level.
They are optimized for power consumption, not speed. You rarely want to play a movie faster than realtime, although the extra speed helps while seeking.
How does it work for you when seeking, if you have any other of the hardware decoders?
For me the seeking is almost instant (on same level as software decoding) with Intel HD4000 using QuickSync and Geforce GTX 750Ti using CUVID/DXVA-CB/DXVA-N.
Is there a way to make LAV Splitter auto-select its audio based on languages only when no default flag was found?
I read the ReadMe for the Splitter auto-selection rules, searched this thread, and even tried some configurations myself (for example "*,eng" for "Use Default, when available, otherwise default to English audio), but none of them worked.
I also searched this thread, but came up with no results.
I don't think you can do that. Such level of flexibility is only offered for subtitle streams selection.
DarkSpace
9th May 2014, 21:04
I don't think you can do that. Such level of flexibility is only offered for subtitle streams selection.
Thank you for confirming that. I'm going to open an issue for that, but I wanted to make sure it's not possible already.
zerowalker
9th May 2014, 21:19
Yes, the decoder needs to process all the frames from a keyframe to the frame you want to see.
You might want to check out fast seek (on keyframe) if you're using MPC-HC (find it under tweaks in options).
Okay that explains the Delay as it's processed faster than realtime, or rather is forced to.
I am using ZoomPlayer however so not an option, though can check it on MPC-HC as i use it in some occasions.
They are optimized for power consumption, not speed. You rarely want to play a movie faster than realtime, although the extra speed helps while seeking.
But they are better than Software decoding, in pure efficiency right?
As if not, the power consumption idea falls down the floor.
For me the seeking is almost instant (on same level as software decoding) with Intel HD4000 using QuickSync and Geforce GTX 750Ti using CUVID/DXVA-CB/DXVA-N
That's great to hear!
A quick one to that, is all those limited to H264 standard settings like DXVA2, or are they more flexible?
vivan
10th May 2014, 00:58
But they are better than Software decoding, in pure efficiency right?
As if not, the power consumption idea falls down the floor.That depends... for example on my laptop (intel i5-2410M + nVidia 540M), in terms of power consuption: QS (intel) < software < CUVID (nVidia). Which means that nVidia's hw decoder is useless there.
A quick one to that, is all those limited to H264 standard settings like DXVA2, or are they more flexible?Check this thread http://forum.doom9.org/showthread.php?t=163110
nevcairiel
10th May 2014, 08:50
That depends... for example on my laptop (intel i5-2410M + nVidia 540M), in terms of power consuption: QS (intel) < software < CUVID (nVidia). Which means that nVidia's hw decoder is useless there.
Thats not the hardware decoders fault, using CUVID puts the GPU into high-performance mode, which obviously eats more battery power.
If you use DXVA2-CB or Native on the same GPU, it'll use much less.
If you system has both Intel and NVIDIA in a mobile product, the Intel is probably going to be using less though.
vivan
10th May 2014, 09:05
If you use DXVA2-CB or Native on the same GPU, it'll use much less.Yeap. But the only way to do this - is to force media player to use dGPU (otherwise it'll use intel hw decoder). And using it for rendering will result in higher power consuption again.
Yes, it's nVidia fault, not decoder's. What I wanted to say is that while h/w decoder could be more efficient than s/w decoder - using it will not always result in lower power consumption.
u28151
11th May 2014, 08:44
Hi,
I wonder if there are any chance making LAV Filter settings systemwide opposed to user based? Reason is that the settings seem to be hardware related. Also it will be easier to auto deploy LAV since you do not have to consider configuring each logged on users registry hive.
Thanks for a great piece of software!
/U
mecedo
12th May 2014, 22:23
Can LavVideo decode 4k video on Intel Haswell processors?
On my Core i3 4130T when decoding with QuickSync there are frame drops. madVR (even with nearest neighbour scaling algorithms) shows only 1-2 frames in decoder queue so I suppose that LavVideo is weak point. And it's strange that GPU and CPU utilization is below 70%.
nevcairiel
13th May 2014, 09:54
Don't use QuickSync, it has a CPU overhead. Use DXVA2-Native instead to avoid this overhead.
You should also check if 4K/UHD hardware decoding is actually enabled in LAV Video, its not by default.
andyvt
13th May 2014, 10:53
Hi,
I wonder if there are any chance making LAV Filter settings systemwide opposed to user based? Reason is that the settings seem to be hardware related. Also it will be easier to auto deploy LAV since you do not have to consider configuring each logged on users registry hive.
/U
System wide settings would require admin rights. It's possible to do that without users experiencing UAC prompts (or needing admin rights at all), but it would be significantly more complicated to build and support and provide little ROI.
Depending on the exact scenario, this is something you could address quite easily with a login script or something similar.
nevcairiel
13th May 2014, 10:58
You can write default settings to HKLM manually, LAV will read them if HKCU doesn't contain settings yet. That way your deployment could define defaults for all users, but users could still customize individually - and reading from HKLM doesn't require admin.
mecedo
13th May 2014, 18:58
Don't use QuickSync, it has a CPU overhead. Use DXVA2-Native instead to avoid this overhead.
You should also check if 4K/UHD hardware decoding is actually enabled in LAV Video, its not by default.
But with "DXVA Native" CPU usage is 100% and "Active decoder" points to avcodec. Does avcodec mean that decoding is by software?
UHD (4K) checkbox is selected of course.
nevcairiel
13th May 2014, 19:09
Then your hardware refuses to decode those clips.
May depend on the video format. I doubt that the decoding of all possible formats can already be accelerated by hardware.
mecedo
13th May 2014, 21:38
Theoretically Intel Haswell can decode 4k. With QuickSync decoder CPU usage is noticeably lower, but as I described frames are dropped.
With DXVA2 even FullHD 24p isn't hardware decoded on Intel processors, because CPU usage is as high as with software decoding. It was in my previous CPU SandyBridge and with current Haswell processor.
I've tried 4k clips from this site:
http://box.houkouonchi.jp/4k/
andyvt
14th May 2014, 09:25
Theoretically Intel Haswell can decode 4k. With QuickSync decoder CPU usage is noticeably lower, but as I described frames are dropped.
With DXVA2 even FullHD 24p isn't hardware decoded on Intel processors, because CPU usage is as high as with software decoding. It was in my previous CPU SandyBridge and with current Haswell processor.
I've tried 4k clips from this site:
http://box.houkouonchi.jp/4k/
Something is wrong with your system. HSW can decode 4K AVC in hardware..
http://babgvant.com/images/hsw4k.jpg
u28151
14th May 2014, 09:26
You can write default settings to HKLM manually, LAV will read them if HKCU doesn't contain settings yet. That way your deployment could define defaults for all users, but users could still customize individually - and reading from HKLM doesn't require admin.
Thank you, this option looks like the most suitable for me!
mecedo
14th May 2014, 09:45
Something is wrong with your system. HSW can decode 4K AVC in hardware..
What operating system and videoplayer are you using?
andyvt
14th May 2014, 09:49
What operating system and videoplayer are you using?
In the screenshot I was using GraphStudioNext (a DirectShow prototyping/testing tool) on Windows 8.1 (the OS, as long as it's modern shouldn't matter). Any application using the same filters shown (i.e. LAV + EVR) should enjoy the same experience.
mecedo
14th May 2014, 11:04
I'll try with 64 bit OS because I'm using 32bit Win 7.
I don't have idea what causes DXVA2 not working.
andyvt
14th May 2014, 11:06
I'll try with 64 bit OS because I'm using 32bit Win 7.
I don't have idea what causes DXVA2 not working.
Probably drivers.
mecedo
14th May 2014, 22:06
I've tried with Intel® Iris™ and HD Graphics Driver 15.33.18.3496 and beta 15.33.0.3574 from Intel's download page.
andyvt
14th May 2014, 22:34
I've tried with Intel® Iris™ and HD Graphics Driver 15.33.18.3496 and beta 15.33.0.3574 from Intel's download page.
What app are you using? Have you tried doing it explicitly like I did?
Do you have anything like VSFilter (DirectVobSub) installed? If so, it will disable DXVA in many cases.
huokok
14th May 2014, 23:07
Hi, Nev
I'm not sure but I think this is the proper place for reporting since it might be the issue related to LAV splitter.
The following is the media info of an extracted VOB file from DVDISO.
Playing back using MPC-HC (latest stable version) and displaying "not correct" duration infomation.
Though I can still whatch the "full length" video, I can do nothing with player's navigation bar.
I've noticed that the duration of this video stream is not identical with the audio and container, so I guess it is about the judgement criteria.
If playback using DVD Navigater (file → Open DVD/BD), the duration is correct but I have to view the upfront warning information together with the cute company logo :(
General
Complete name : D:\music\化物语\河野マリナ - その声を覚えてる(DVD)\VIDEO_TS\VTS_01_1.VOB
Format : MPEG-PS
File size : 176 MiB
Duration : 4mn 12s
Overall bit rate mode : Variable
Overall bit rate : 5 856 Kbps
Video
ID : 224 (0xE0)
Format : MPEG Video
Format version : Version 2
Format profile : Main@Main
Format settings, BVOP : No
Format settings, Matrix : Custom
Format settings, GOP : Variable
Duration : 8s 8ms
Bit rate mode : Variable
Bit rate : 4 203 Kbps
Maximum bit rate : 7 900 Kbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 16:9
Frame rate : 29.970 fps
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced
Scan order : Top Field First
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.406
Time code of first frame : 01:00:00:00
Time code source : Group of pictures header
Stream size : 4.01 MiB (2%)
Audio
ID : 189 (0xBD)-160 (0xA0)
Format : PCM
Format settings, Endianness : Big
Format settings, Sign : Signed
Muxing mode : DVD-Video
Duration : 4mn 12s
Bit rate mode : Constant
Bit rate : 1 536 Kbps
Channel(s) : 2 channels
Sampling rate : 48.0 KHz
Bit depth : 16 bits
Stream size : 46.2 MiB (26%)
Menu
http://i.imgur.com/6Ew1CP8.png
Just for reference, comparing with potplayer which uses built in splitter (please kindly notify me if merely mention this is also against forum's rule)
http://i.imgur.com/7AFBjF3.png
Coldblackice
16th May 2014, 09:35
In the MPC "Filters" submenu, it's showing that I have three "LAV Audio" + three "LAV Splitters". Any idea why this might be? It seems to be loading all three audio tracks at the same time, for some reason, and I'm not sure why. I checked the .mkv, thinking maybe all the audio tracks were forced tracks or defaulted, but they're not. None of them are forced, and the main audio is the only "default" audio track.
michkrol
16th May 2014, 11:14
In the MPC "Filters" submenu, it's showing that I have three "LAV Audio" + three "LAV Splitters". Any idea why this might be? It seems to be loading all three audio tracks at the same time, for some reason, and I'm not sure why. I checked the .mkv, thinking maybe all the audio tracks were forced tracks or defaulted, but they're not. None of them are forced, and the main audio is the only "default" audio track.
MPC-HC (-BE?) might be to "blame", do you have files with same name, but different extensions in same directory or the beginning matching your movie's filename?
Other than that, try unchecking allow overriding external splitter choice in playback's setting under default track preference section.
SoupRKnowva
18th May 2014, 17:06
I've been using LAV Filters a long time, but I just plugged my Xbox HD DVD drive into my computer to watch an HD DVD, and when I watch the movie, it always says in madVR that the source filter says that the movie is 29.970 fps. I know that all hd dvds are soft telecined, is there any way to get LAV Splitter to ignore those flags so I don't have to use ivtc in madVR?
Doing some searching in the thread i saw that there was a dev build that had an ignore soft telecine flag option, but that was quite old, being from way back in 2012.
thanks for any help!
clsid
18th May 2014, 17:22
You can tell madVR how to handle the video.
Press Ctrl+Alt+Shift+T
vinnytx
21st May 2014, 09:06
Hi,
I need to register two times Lavfilters video decoder each with different settings (I’d like to set one with cuvid acceleration and the other one with dxva2 (copy-back)). I tryed to rename LAVVideo.ax but I cannot apply different settings (the registered codec is always the same). Is it possible?
nevcairiel
21st May 2014, 09:10
No, it is not possible.
If you're doing this in your own application, you can configure LAV Video at runtime, though.
clsid
22nd May 2014, 12:49
GCC 4.8.3 is now available ;)
nevcairiel
22nd May 2014, 14:25
GCC 4.8.3 is now available ;)
I've a new GCC package up already:
http://files.1f0.de/mingw/mingw-w64-gcc-4.8.3-stable-r11.7z
wanezhiling
24th May 2014, 13:03
http://www.sendspace.com/file/ts1cny
No duration and can't seek then.
I found that old mpc-hc flv splitter works fine.:)
clsid
24th May 2014, 14:53
@wanezhiling
Please submit such broken files directly to FFmpeg:
1) https://trac.ffmpeg.org/register
2) https://trac.ffmpeg.org/newticket
First reproduce problems with latest ffplay.exe, which you can download here:
http://ffmpeg.zeranoe.com/builds/
(latest FFmpeg static version is what you need)
Use this command-line to get a full list of command-line options:
ffplay -h > ffplay_options.txt
For example to seek to position of 30 seconds:
ffplay -ss 30 sample.flv
i found a bug or a strange behavior of lav splitter.
a video file with 3 ass subtitles one track is default, one track is forced and one track is not flagged all with eng.
with no preferred language settings the forced track is loaded. with preferred language eng the default is loaded.
it looks like it is not possible to load both ass tracks so lav is at least displaying 1. but why did the track change with preferred language setting even through both have the same language?
nevcairiel
24th May 2014, 16:20
Once you enter a language, the "Default" flag takes dominance over forced, since with a language match it is assumed you want full subtitles, at least if you are in the default subtitle mode.
so this is a compromise because it is not possible to display both ass tracks at the same time?
nevcairiel
24th May 2014, 16:49
This has nothing to do with displaying two tracks at the same time, its just how the selection works in default mode.
Reino
25th May 2014, 21:59
Audio=BassAudioSource("sample.flac")
#Audio=FFAudioSource("sample.flac",cache=false)
Video=ImageSource("cover.png", end=AudioLength(Audio)*25/AudioRate(Audio), fps=25)
Video
========================================================================
AVI/WAV File Source -> Color Space Converter -> Video Renderer - 27MB Mem Usage.
LAV Splitter Source -> LAV Video Decoder -> Video Renderer - 164MB Mem Usage!
Audio=BassAudioSource("sample.flac")
#Audio=FFAudioSource("sample.flac",cache=false)
Video=ImageSource("cover.png", end=AudioLength(Audio)*25/AudioRate(Audio), fps=25)
AudioDub(Video,Audio.ConvertAudioTo16bit())
========================================================================
AVI/WAV File Source -> Color Space Converter -> Video Renderer - 29MB Mem Usage.
\-> Audio Switcher -> Audio Renderer
LAV Splitter Source -> LAV Video Decoder -> Video Renderer - 297MB Mem Usage!
\-> Audio Switcher -> Audio Renderer
Play -> Filters -> LAV Splitter Source - V: rawvideo, bgr24, 360x360, while LAV Splitter Source - Properties -> Pin Info: Video: BGR□ 360x360 25fps.
What's up with that? Is LAV Video Decoder really necessary? Can't LAV Splitter Source connect to the video renderer directly?
The same goes for LAV Audio Decoder if I hadn't disabled "pcm - Raw PCM Types (including QT PCM)".
nevcairiel
25th May 2014, 22:44
LAV Video Decoder is necessary, otherwise you need the color space converter, which is butt-slow and very feature limited. LAV Video in combination with LAV Splitter on the other hand can handle all sorts of raw video, not only from AviSynth, but also in files.
LAV Splitter cannot properly talk to video renderers directly, as handling raw video needs a lot of special handling, so why bother duplicate that.
Also, I'm not even going to comment on 150-250mb of extra memory usage. If you cannot spare that, just don't use LAV.
kerimcem
27th May 2014, 17:51
nightly bulid link? thanks..
I have a small issue. With one of the mkv files, if I seek sometimes the video hangs for seconds (5-10) and the audio immediatly plays. After that the video continues playing from the appropriate time. I guessing it's not intended behavior. Usually on seek the playback only starts after some delay with video. I don't remember having this problem with other files before.
foxyshadis
27th May 2014, 22:32
I have a small issue. With one of the mkv files, if I seek sometimes the video hangs for seconds (5-10) and the audio immediatly plays. After that the video continues playing from the appropriate time. I guessing it's not intended behavior. Usually on seek the playback only starts after some delay with video. I don't remember having this problem with other files before.
That just means it wasn't remuxed properly, or someone stripped the cues to save a few bytes. Remux it with mkvtoolnix and it'll seek fine.
filler56789
28th May 2014, 02:16
nightly bulid link? thanks..
http://nightly.mpc-hc.org/
http://www.vdisk.cn/betaking
http://pan.baidu.com/share/link?uk=2214911777&shareid=497331#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6
nevcairiel
28th May 2014, 08:20
There are no nightly builds of LAV, as there is no need for them, and I will not endorse any third party builds out of my control.
kerimcem
28th May 2014, 11:23
ok. thanks..
my old pc ati3650, small problem...some mkv files dont work dvxa2 native...pot pleyer works well!....
[QUOTE]Genel
Eşsiz ID :195688951960876225999158683055549927265 (0x9338523C91D99A4FBC833A2D83C94F61)
Tam isim :H:\film\Txxxxxxxxxxxxxx.mkv
Biçim :Matroska
Biçim sürümü :Version 2
Dosya boyutu :8.27 GiB
Süre :2s 22dk
Kapsamlı bit oranı :8 303 Kbps
Kodlanma tarihi :UTC 2012-08-04 08:39:53
Yapım uygulaması :mkvmerge v5.3.0 ('I could have danced') built on Feb 9 2012 10:38:07
Yapım kütüphanesi :libebml v1.2.3 + libmatroska v1.3.0
Görüntü
ID :1
Biçim :AVC
Biçim/Bilgi :Advanced Video Codec
Biçim profili :High@L4.1
Biçim ayarları, CABAC :Evet
Biçim ayarları, ReFrames :12 kare
Kodek ID :V_MPEG4/ISO/AVC
Süre :2s 22dk
Bit oranı :6 800 Kbps
Genişlik :1 280 piksel
Yükseklik :534 piksel
Görüntü en-boy oranı :2.40:1
Kare hız modu :Sabit
Kare hızı :23.976 kare/s
Renk alanı :YUV
Krom altörnekleme :4:2:0
Bit yoğunluğu :8 bit
Tarama türü :Aşamalı
Bit/(Piksel*Kare) :0.415
Akış boyutu :6.60 GiB (80%)
Yapım kütüphanesi :x264 core 125 r2208 d9d2288
kerimcem
28th May 2014, 12:46
pic..
mpc+lav+dxva native
http://i.hizliresim.com/59EoGl.jpg
pot internal..
http://i.hizliresim.com/b8ZgBn.jpg
I don't understand turkish easily ... but "Ref frames : 12" is suspicious, and a cropped resolution (534 px height is not even MOD 16) may in general not be DXVA compatible (I believe).
That just means it wasn't remuxed properly, or someone stripped the cues to save a few bytes. Remux it with mkvtoolnix and it'll seek fine.
Nah, it only happens on specific locations.
It's really weird. It seems it's potplayer specific. I found that I could jump to the exact frame with the same filter setup with mpc-hc and it didn't happen there.
But also if I remux the video with ffmpeg it doesn't happen. So I need Potplayer, with LAV as a splitter and the video muxed with mkvmerge. (the original was also mkvmerge muxed, but an older version)
I don't understand turkish easily ... but "Ref frames : 12" is suspicious, and a cropped resolution (534 px height is not even MOD 16) may in general not be DXVA compatible (I believe).
it looks more like the gpu doesn't support dxva2 and potplayer supports dxva"1".
even the old ion nvidia 9300 supports non mode of 16 videos and 1080p is mod of 8 too.
Well, 1080p is usually encoded as 1088 lines with 1080 lines crop area.
And 534 is not even a multiple of 4. But I am not sure which DXVA version has which limitations. Some configurations may only enable it for a few specific resolutions even?
at the end with h264 16 is always used.
i found this on the english wiki for nvidia: http://en.wikipedia.org/wiki/Nvidia_PureVideo
All third generation PureVideo hardware (G98, MCP77, MCP78, MCP79MX, MCP7A) cannot decode H.264 for the following horizontal resolutions: 769–784, 849–864, 929–944, 1009–1024, 1793–1808, 1873–1888, 1953–1968 and 2033–2048 pixel[6]
but i think the real problem lies in the DXVA decoder version LAVfilter only supports 2.0 and only full acceleration.
even the 6770 can't do mpeg2 dxva with LAVfilter because it can't do it with full acceleration. the old internal mpc-hc DXVA decoder can do it but not using full acceleration.
nevcairiel
1st June 2014, 16:41
The problem with that video has 12 reference frames, and LAV enforces a 11 frame limit on such old GPUs because of corruption issues with a bunch of videos, and contrary to other decoders it doesn't have an option to disable ref frame checks.
Maybe the video just claims 12 in the header but for som reason never uses the full set, or some other factors need to be involved for the corruption to occur, in any case, thats the reason DXVA is not used for that video on that GPU.
Luckily, no commercial content exists that even uses such encoding settings, and despite the user masking the movie name its quite obviously illegally obtained (as the original post that I got notified by in an email still contained the full name before he edited it) and as such we shall stop discussing it per rule #6.
NikosD
4th June 2014, 14:47
Latest Intel's 3621 driver has official support of HEVC decoding (but not transcoding)
From the release notes:
HEVC decode now supported by the driver and video players can now take advantage of the GPU accelerated decode support offered by Intel
Transcoding to HEVC is currently not supported.
I didn't find a HEVC device decoder exposed using DXVA Checker, but I'm pretty sure that you may be interested now in HEVC decoding, after the official support by the driver and Intel.
nevcairiel
4th June 2014, 23:41
The HEVC_Main_VLD device is still present in the device enumeration for me.
But it'll be a while before I would have time to poke at this.
kolak
5th June 2014, 16:11
Nev,
Is it possible to add decoding support for R210 and R10K formats?
They are quite plain- just packed 10bit RGB. Ffmpeg has full support for them.
mindbomb
7th June 2014, 04:12
which intel hardware for hevc decode? just haswell?
NikosD
7th June 2014, 10:01
The driver 3621 can be used by Ivy and Haswell, so both platforms should be supported.
It seems though, that there are some restrictions.
For example, my Haswell Pentium G3420 with Intel HD graphics, doesn't have HEVC support.
I bet the same for HD 2500 Ivy iGPU processors.
feelingblue
7th June 2014, 13:18
a little info:
if i set the output of the decoder as RGB32 which is the algorithm of the chroma upsampling?
in the "color space evautation" of spears and munsil
(see the attached image)
i have some disallineaments and diagonal lines are a litte jagged.
thanks
nevcairiel
7th June 2014, 15:18
RGB32 output uses simple bilinear upscaling. Its meant to be a fast fallback alternative at OK quality if you need RGB32 for some reason, not the absolute best quality. Its usually better to leave the conversion to your renderer, since it can perform it much faster in potentially higher quality on the graphics card.
I did take care to perform the conversion properly (in high bit depth, and with dithering), however the algorithm remains limited to bilinear.
nikola
8th June 2014, 22:57
Perhaps this question rather belongs to the MPC-HC forum, but I'll give it a go here because it might have been implemented already in LAV Filters:
Is there a way to instruct LAV Splitter to select a specific audio track (irrespective of preferred audio languages in the settings of LAV Audio) when opening an MKV in MPC-HC? Does LAV Filters inspect the command-line arguments of the player it was created in?
pigster
9th June 2014, 11:51
Please can somebody help me with this?
https://code.google.com/p/lavfilters/issues/detail?id=444
It is fully reproducible (at least on my computer), and by trial and error it can be isolated down to LAV Splitter
Thank you
ikarad
9th June 2014, 14:15
I have a problem with lavvideodecoder 0.61.2 used like standalone or with lavfilter included internally in mpc-hc.
On some video, I have a green bar
http://img11.hostingpics.net/thumbs/mini_811227Sanstitre.jpg (http://www.hostingpics.net/viewer.php?id=811227Sanstitre.jpg)
With ffdshow no problem
http://img11.hostingpics.net/thumbs/mini_303257Sanstitre2.jpg (http://www.hostingpics.net/viewer.php?id=303257Sanstitre2.jpg)
video
http://lazylily.electrochef.us/haiyore-nyaruko-san-w-ova-is-out/
edit: Problem exists with lavvideodecoder 0.60.1 but not with lavvideodecoder 0.59
edit: The problem arrives if I use ffdshow raw filter with lavfilter 0.60.1 and 0.61.2 (The problem arrives with only some videos, not all video). If I use lavfilter 0.59 with ffdshow raw filter, there is not problem.
How solve this problem ?
pancserzso
9th June 2014, 16:29
Sorry, I know this must have been asked about a 1000x times here, but I keep finding contradicting information on the internet.
When using a classic stereo "full-range" speaker setup (like people have been using to listen to music for 50 years), what is the recommended downmixing settings?
Should LFE be 0.71? Why is it 0 on default? Isn't it cut at somewhere around 80-100 Hz? Every single decent stereo system can go way lower then 80 Hz, without any dedicated subwoofer. I think 20-25 Hz is normal for proper speakers.
Also, should surround be 1.0 or 0.71?
e-t172
9th June 2014, 19:02
Should LFE be 0.71? Why is it 0 on default? Isn't it cut at somewhere around 80-100 Hz? Every single decent stereo system can go way lower then 80 Hz, without any dedicated subwoofer. I think 20-25 Hz is normal for proper speakers.
First of all, 20-25Hz is certainly not typical for full range speakers, which usually stop near 40-50Hz. A full range speaker that goes all the way down to 20Hz is typically very expensive, and usually takes the form of a normal speaker combined with a subwoofer in the same box.
Second, even if the speakers are able to go that low, it doesn't mean they're able to handle lots of output at these frequencies without producing significant distortion (clipping). LFE is meant to carry loud to very loud low frequency sound effects, which are reproduced very poorly by typical speakers or even cheap subwoofers.
This is why 0 is the default for downmixing LFE in LAV Audio: the rationale is, people who want to downsample to stereo probably don't have what it takes to reproduce this very low frequency, high output content.
For the standard downmixing levels for LFE and Surround, see ITU-R BS.775 (http://www.itu.int/rec/R-REC-BS.775/en) which is very clear and even has a whole section dedicated to explaining how LFE works. Page 11 states that the proper downmixing coefficient for surrounds is 0.71, while it can be deduced that the proper coefficient for LFE (if you want to retain it) is +4dB (+10dB as stated in paged 14, -6dB because of two channel coherent acoustic summation at low frequencies), or 1.58.
pancserzso
9th June 2014, 19:09
For the standard downmixing levels for LFE and Surround, see ITU-R BS.775 (http://www.itu.int/rec/R-REC-BS.775/en) which is very clear and even has a whole section dedicated to explaining how LFE works. Page 11 states that the proper downmixing coefficient for surrounds is 0.71, while it can be deduced that the proper coefficient for LFE (if you want to retain it) is +4dB (+10dB as stated in paged 14, -6dB because of two channel coherent acoustic summation at low frequencies), or 1.58.
Thanks, I've looked into that document you've linked. But still what is the "recommended" value for LFE for a normal stereo system, isn't 0 and 1.58 a bit of an extreme? I mean isn't it reasonable to take a bit of LFE, like 0.30, which still doesn't over-power the speakers but helps a bit with lower freq sounds?
e-t172
9th June 2014, 19:32
Well yeah, since 0 and 1.58 are both acceptable values, it follows that any value between the two would be acceptable as well. It would be purely arbitrary though, since there's no easy way to calculate an "optimal" value.
cyberbeing
9th June 2014, 21:17
nevcairiel, now that MKVToolNix 7.0.0 has been released which fixes what are hopefully the final major muxing bugs with CueDuration and CueRelativePosition, what are your thoughts about John Peebles's patch which he posted a few weeks ago to Issue #302 (https://code.google.com/p/lavfilters/issues/detail?id=302#c3). As mentioned there, it may make sense to have him remove the partial workaround for MKVToolNix <=6.9.1, so the patch only contains the fully complaint implementation. Either way, it would be nice to see this long awaited functionality make it into your next Lav Filters release.
huokok
10th June 2014, 00:39
@clsid
Would you please make it known to be lav splitter?:rolleyes:
:thanks:
http://i.imgur.com/3lnxhbK.jpg
huhn
10th June 2014, 02:19
nevcairiel, now that MKVToolNix 7.0.0 has been released which fixes what are hopefully the final major muxing bugs with CueDuration and CueRelativePosition, what are your thoughts about John Peebles's patch which he posted a few weeks ago to Issue #302 (https://code.google.com/p/lavfilters/issues/detail?id=302#c3). As mentioned there, it may make sense to have him remove the partial workaround for MKVToolNix <=6.9.1, so the patch only contains the fully complaint implementation. Either way, it would be nice to see this long awaited functionality make it into your next Lav Filters release.
does this have something to do with switching to a chapter in the middle of a subtitle line that's not show at all?
cyberbeing
10th June 2014, 04:01
does this have something to do with switching to a chapter in the middle of a subtitle line that's not show at all?
Yes, CueDuration and CueRelativePosition splitter support enables perfect subtitle seeking with embedded subtitles, comparable with external subtitle seeking behavior. If you care about this, you should start muxing all your MKVs with MKVToolNix >=7.0.0 for future proofing. Also noteworthy that a simple remux of existing MKVs will rewrite the Cues, fixing bugged CueDuration and CueRelativePosition entities from MKVToolNix <=6.9.1, so it shouldn't be too hard bringing older MKVs up-to-date.
nevcairiel
10th June 2014, 09:37
I haven't had time to look at the patch yet, only briefly browsed through it. But in general hacks for old versions are bad.
And if someone wants to help, teach him about github pull requests, that makes it so much easier for me when I find time to look at it.
Kurtnoise
12th June 2014, 05:30
@Nevcairiel: it seems that the last FFmpeg commit broke something :
git.exe submodule update --init
Submodule 'ffmpeg' (git://git.1f0.de/ffmpeg.git) registered for path 'ffmpeg'
Submodule 'libbluray' (git://git.1f0.de/libbluray.git) registered for path 'libbluray'
Submodule 'qsdecoder' (git://git.1f0.de/qsdecoder.git) registered for path 'qsdecoder'
Cloning into 'ffmpeg'...
fatal: reference is not a tree: 236b9be7dbc5d92c1fee483684624666323df078
Cloning into 'libbluray'...
Submodule path 'libbluray': checked out 'd8cb81c5d0ede075f4e74bc43a651ec39c71d670'
Cloning into 'qsdecoder'...
Submodule path 'qsdecoder': checked out 'cadb1790a43641f7d661981c1c98f1cacc733a97'
Unable to checkout '236b9be7dbc5d92c1fee483684624666323df078' in submodule path 'ffmpeg'
git did not exit cleanly (exit code 1) (146235 ms @ 12/06/2014 06:25:42)
nevcairiel
12th June 2014, 12:28
Forgot to push the ffmpeg repo, apparently. All fixed.
nevcairiel
12th June 2014, 18:02
LAV Filters 0.62.0
LAV Splitter
- Fixed: The filtered Forced Subtitles stream did not properly send all related subtitle data in some cases
LAV Video
- NEW: Implemented a WMV9 MFT decoder to replace the old DMO decoder for VC-1/WMV3 on Windows 7 and above
- NEW: Support for VP7 video
- Fixed: Multi-threaded video decoding could result in a handle leak on some systems
- Fixed: Video processing was slow on Windows XP due to inefficient memcpy use
- Fixed: DVD subtitles could overlap on some discs
LAV Audio
- Fixed: Dynamic format switching to an audio stream with a different sample rate did not work in some cases
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.62.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.62.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.62-x64.zip)
Mostly pushing this release to get updated ffmpeg libraries out, as well as not cause the new things to rot too long.
WMV9 MFT
As it appears, the WMV9 DMO decoder is kinda broken on Windows 8.1, it doesn't properly identify interlaced videos anymore, which causes them to never engage deinterlacing.
To solve this problem, I've implement a new wrapper around Microsofts decoder, using the MFT (Media Foundation Transform), instead of the DMO. DMOs are a tech from Windows XP and before, and are really old and deprecated, while MFTs are new and clearly better supported - plus getting the information I need out of it was actually quite a bit easier than with the DMO before.
Note that this has no influence on anything DirectShow, LAV is not a Media Foundation filter all of the sudden, it just happens to use the WMV9 MFT, nothing else changes.
Anyway, have fun, and as always report any regressions you find.
meetajhu
13th June 2014, 08:33
Hi nevcairiel, i created 2 icons or logo's for your lav filters hope you like it
Audio icon : http://www.pc4ever.com/wp-content/uploads/2014/06/lav_audio_icon.jpg
Video icon: http://www.pc4ever.com/wp-content/uploads/2014/06/lav_video_icon.jpg
LigH
13th June 2014, 09:20
I doubt they are easily recognizable at 16×16 in the SysTray...
meetajhu
13th June 2014, 09:39
I doubt they are easily recognizable at 16×16 in the SysTray...
These are just concept images the final images will be properly scaled and i'll create a system tray icon for each of them.
Thanks for the new version!
NikosD
14th June 2014, 09:46
LAV Video decoder Properties -> Formats , still say "Use Microsoft WMV9 DMO decoder ....".
Also, having installed both versions (x86 & x64), I realized that whatever change I do to one version properties (for example x86 from DXVA native to DXVA copy-back), it happens also to the other version (x64) and the opposite.
Is it normal ?
Finnish Flash
14th June 2014, 22:30
Hey nev, awesome job with the decoder, mate!
I've been using LAV + MPC-HC for streaming MPEG-TS from my ISP's recording service. Aside from the playback taking some extra seconds to start comparing to VLC, it's working very well.
In order to be able to rewind and fast-forward and get the full duration of a file instead of just a couple of seconds from the beginning, I have to insert the following to registry:
[Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\http]
"Source Filter"="{B98D13E7-55DB-4385-A33D-09FD1BA26338}"
This enables splitting video and audio from HTTP protocol with LAV Splitter, right?
Could you make this a default setting, or is there some downside to this? I mean, this could help someone else, too.
I'd like to point out that the latest version, spesifically the latest FFMPEG update, significantly shortened the loading times (I'd say about 5 to 10 times), so absolutely great!
STaRGaZeR
15th June 2014, 11:53
Nev, it seems I have some MPEG-1 videos that LAV Video doesn't decode. Windows MPEG's decoder is used instead.
Here's one that does decode with LAV Video: http://www.mediafire.com/watch/ajj0mc8z4874kf4
And here one that doesn't: http://www.mediafire.com/watch/s867ud5hbond1a8
filler56789
15th June 2014, 13:27
Nev, it seems I have some MPEG-1 videos that LAV Video doesn't decode. Windows MPEG's decoder is used instead.
Here's one that does decode with LAV Video: http://www.mediafire.com/watch/ajj0mc8z4874kf4
And here one that doesn't: http://www.mediafire.com/watch/s867ud5hbond1a8
On my computer, the second sample plays fine with the latest LAV Video & Splitter in Graphstudio.
BTW, you should already have learned how to use MediaFire in the RIGHT way ;)
http://www.mediafire.com/download/s867ud5hbond1a8/EP3TeaserTrailer.mpg
STaRGaZeR
15th June 2014, 15:10
Funny, only happens when playing in MPC-HC, LAV Video is used for both in GraphStudioNext. No idea what could be causing it, settings are the same of course.
BTW, you should already have learned how to use MediaFire in the RIGHT way ;)
I know how to use MediaFire, it's just that I consider the people on this forum smart enough to press the "Download" button right by the video preview I purposedly used. Guess I'll have to make an exception with you from now on :D
filler56789
15th June 2014, 15:14
I know how to use MediaFire
That's just your opinion alright :p
STaRGaZeR
15th June 2014, 19:26
That's just your opinion alright :p
:goodpost::stupid:
filler56789
16th June 2014, 19:27
Funny, only happens when playing in MPC-HC, LAV Video is used for both in GraphStudioNext. No idea what could be causing it, settings are the same of course.
I took the time to confirm it, if the problem is not on your machine, then
it is in the most recent builds of MPC-HC (which I don't use BTW :p ~~
I tested the sample with MPC-HC Lite 1.6.8.7391 and MPC-BE 1.4.3.4793).
hubblec4
16th June 2014, 22:43
hi nev
the chapter names are displayed not correct, could you fix this please?
Vasilich
17th June 2014, 01:34
the chapter names are displayed not correct, could you fix this please?
in what program do you see that? have you tried to use other player?
On the screenshot i just see that one piece of software cannot display chapter names in UTF-8, not more.
nevcairiel
17th June 2014, 02:49
hi nev
the chapter names are displayed not correct, could you fix this please?
I'm quite sure that proper UTF-8 chapter names are being processed correctly, so you should ideally check if they are correctly encoded in the file.
In any case, a file showing the problem would be good.
hubblec4
17th June 2014, 09:47
I'm quite sure that proper UTF-8 chapter names are being processed correctly, so you should ideally check if they are correctly encoded in the file.
In any case, a file showing the problem would be good.
ok sorry. i found the issue.
Nachbar
18th June 2014, 04:11
Hello, I am trying to do some complex stream selection rules in the advanced section but its not working. Here is what I got going:
jpn|d:eng|d;jpn|!d:eng|!d
so if jpn audio is default then load english subtitle that is default and if jpn audio is not default then load english subtitle that is not default. However what ends up happening is that it loads the jpn audio but it doesn't load any subtitles at all. I guess its only looking at that I set preferred audio in the dialog above to jpn,eng.
I am doing this because some anime I have are english audio default and the default subtitle track is for signs/songs. However everything else I have is japanese audio default with default full english subs. If there is an easier way to do this that I am overlooking let me know. The main problem I am having is the usual jpn:eng chooses the first track which on this particular anime is the english signs rather than full subs.
My guess is that the code doesn't look at whether the audio track has been flagged default or not so its simply not working there because it is expecting a three letter value and doesn't know what jpn|d means.
ryrynz
18th June 2014, 05:30
Hello, I am trying to do some complex stream selection rules in the advanced section but its not working.
Having this (https://code.google.com/p/lavfilters/issues/detail?id=453&colspec=ID%20Type%20Status%20Priority%20Filter%20Summary%20Modified) approved would help with that.
Nev can we get this requested feature of selecting subtitles by substring match added in LAV?
sneaker_ger
18th June 2014, 06:32
@Nachbar
LAV always selects the audio according to the "audio" field first, only after that comes the advanced subtitle selection.
Try:
audio: jpn,eng
subtitles: jpn:eng|!d;jpn:eng
octal9
18th June 2014, 10:30
thanks much to sneaker_ger! i was having a very similar problem as Nachbar as I watch loads of japanese cinema/anime and got very sick of having the english crap dub come up every time, along with the wrong subs and this solved it perfectly.........
Nachbar
18th June 2014, 23:50
@Nachbar
LAV always selects the audio according to the "audio" field first, only after that comes the advanced subtitle selection.
Try:
audio: jpn,eng
subtitles: jpn:eng|!d;jpn:eng
I tried it exactly like that and it works for the one that lists the dub audio/sub first as default. However for the ones that list jpn audio/full subs first as default it selects the wrong sub.
Here are how some of my streams are on these files:
vid1: (doesn't work - jpn audio, eng signs)
audio: jpn (default), eng, eng commentary
subs: eng full (default), eng signs, eng commentary
vid2: (works - jpn audio, eng full)
audio: eng (default), jpn
subs: eng signs (default), eng full
However what you suggested seems to work for most of the shows that I know are dual audio with multiple subs.
ryrynz
19th June 2014, 00:26
english crap dub
Wildly inaccurate and extremely judgmental hatred of something that's generally done quite well if not at times arguably better than the original raises certain questions..
sneaker_ger
19th June 2014, 00:35
vid1: (doesn't work - jpn audio, eng signs)
audio: jpn (default), eng, eng commentary
subs: eng full (default), eng signs, eng commentary
vid2: (works - jpn audio, eng full)
audio: eng (default), jpn
subs: eng signs (default), eng full
In that case you're indeed out of luck - vanilla LAV cannot handle both cases.
Of course you could change the flags with mkvpropedit/JMkvpropedit (http://forum.doom9.org/showthread.php?t=163753) or get someone to build LAV with the patch posted by ryrynz above.
ranpha
19th June 2014, 06:33
Will this patched build (https://mega.co.nz/#!PcI3lQ7C!ZmRfeyanfn5XEDxA4kXO2LgYW1UIIHtbXC9REMPCmoU) work?
ryrynz
19th June 2014, 07:02
Will this patched build (https://mega.co.nz/#!PcI3lQ7C!ZmRfeyanfn5XEDxA4kXO2LgYW1UIIHtbXC9REMPCmoU) work?
Useage:
It allows one to use rules like *:*@songs to select any subtitle track with the text "songs" in its name. One can also specify flags too, so one could write eng:fr|n@asdf to say: if english audio, try to use normal French subtitles with a name containing "asdf".
huhn
19th June 2014, 10:11
should Lavfilter support MKV with zlib compression for all codecs?
a lossless camstudio file in MKV with zlib compression doesn't load with Lavfilter but works fine with internal MPC-BE decoder/splitter.
thread: http://forum.doom9.org/showthread.php?t=170756
post with error: http://forum.doom9.org/showpost.php?p=1684177&postcount=8
sample: http://www.file-upload.net/download-9084230/camstudio.mkv.html
octal9
19th June 2014, 10:45
Wildly inaccurate and extremely judgmental hatred of something that's generally done quite well if not at times arguably better than the original raises certain questions..
just me being silly........there are some passable dubs occasionally ('70s kung fu movies can actually be improved by them), but i've always preferred to view things in their original form (if possible) - sorry if i've offended anyone (and for being off-topic)........
mysterix
19th June 2014, 12:18
Does Lav video filter do dithering himself independently of render in any case in compliance with it's dithering radiobutton or does it just pass equal dithering type flag to render and does not any dithering himself? Particularly, do I need to use dithering in MadVR in case of using it in connective with LAV-filter or is it redundant and will cause quality degradation and waste of resources?
sneaker_ger
19th June 2014, 12:46
Don't turn off dithering in madVR or LAV. madVR needs it as a last step after scaling, LAV will only use it when necessary - most of the time the setting has no effect as LAV can be send the original video data to the renderer without any lossy processing.
mysterix
19th June 2014, 13:42
Don't turn off dithering in madVR or LAV. madVR needs it as a last step after scaling, LAV will only use it when necessary - most of the time the setting has no effect as LAV can be send the original video data to the renderer without any lossy processing.Does it mean that it is no need to turn on dithering in MadVR if no scaling is used? For example, for the same video and monitor native resolution (1920X1080).
By the way, there is no way to disable dithering in LAV completely since there is dither type switching buttons only...
nevcairiel
19th June 2014, 14:26
You should never turn it off anywhere, everything is smart enough to only use it when its required.
NikosD
19th June 2014, 14:34
LAV Video decoder Properties -> Formats , still say "Use Microsoft WMV9 DMO decoder ....".
Also, having installed both versions (x86 & x64), I realized that whatever change I do to one version properties (for example x86 from DXVA native to DXVA copy-back), it happens also to the other version (x64) and the opposite.
Is it normal ?
Nev, have you seen that ?
Still exist both, using your latest beta.
nevcairiel
19th June 2014, 14:35
It functions as designed.
NikosD
19th June 2014, 14:46
Is there any way to set different properties for different versions ? (x86/x64)
nevcairiel
19th June 2014, 14:46
No, there is not.
NikosD
19th June 2014, 14:53
Given that would make your filters more flexible, I can imagine that the reason functioning this way is that is difficult to change.
nevcairiel
19th June 2014, 15:34
should Lavfilter support MKV with zlib compression for all codecs?
a lossless camstudio file in MKV with zlib compression doesn't load with Lavfilter but works fine with internal MPC-BE decoder/splitter.
thread: http://forum.doom9.org/showthread.php?t=170756
post with error: http://forum.doom9.org/showpost.php?p=1684177&postcount=8
sample: http://www.file-upload.net/download-9084230/camstudio.mkv.html
This has nothing to do with the zlib compression, that works for anything.
I fixed the problem though.
By the way, if a codec can actually benefit from a compression on top of its encoding, you should really use a different codec, since that one is extremely inefficient.
huhn
19th June 2014, 19:32
in this case camstudio plus zlib is one of the best codecs. intra frame codecs doesn't stand a chance and lossless h264 is about the same.
but this wasn't my idea in the start to use camstudio.
sergeo78
19th June 2014, 20:45
make at least one release via C3 processor. very necessary.
foxyshadis
20th June 2014, 01:49
Does it mean that it is no need to turn on dithering in MadVR if no scaling is used? For example, for the same video and monitor native resolution (1920X1080).
By the way, there is no way to disable dithering in LAV completely since there is dither type switching buttons only...
To explain what they said, dithering should only be done in converting high bit to low bit or converting YUV to RGB. (Usually that happens at the same time.) LAV can pass MadVR pure high-bit YUV and let MadVR do all of the dithering, or it can dither down to what Overlay or some other old renderer/driver can handle. You can force LAV to dither for old renderers by restricting the output, such as only allowing RGB for 8-bit (ONLY a good idea if your driver's YUV->RGB really sucks/is broken). At no point will the dithering be doubled.
NikosD
20th June 2014, 07:20
@nev
Which is the logic behind the decision of designing LAV filters to have common properties between two different versions (x86/x64) ?
mysterix
20th June 2014, 08:43
Does an "Normalize matrix" option applies any dynamic range compresion?
Should I use an "Normalize matrix" option in the LAV audio filter to prevent clipping? Does it prevent from clipping 100%? How it works, I mean, how this function chooses attenuation level to prevent clipping without preliminary analysing entire track (like foobar2000's ReplayGain does)? Does this function make any distortion or sound worse somehow?
andyvt
20th June 2014, 09:46
@nev
Which is the logic behind the decision of designing LAV filters to have common properties between two different versions (x86/x64) ?
Should an application's behavior change depending on the platform?
NikosD
20th June 2014, 11:29
In a single word, Yes.
As a user of a x64 OS, I have the choice of running x86 applications which use LAV x86 filters and x64 applications which use LAV x64 filters.
I want to use different properties of LAV filters for each architecture.
So simple, from the user's perspective.
LAV filters x86 and x64 are different filters and the common sense says that they should have different properties.
If I wanted to have same properties for x86 and x64, I would set it myself.
Now as is, I'm forced to use the same properties.
Obviously the developer's perspective was different, that's why I asked him to expose his view.
andyvt
20th June 2014, 11:53
In a single word, Yes.
Really? Would you want Word to format a document differently based on platform? Would you want your browser to render pages differently? If they did, I would characterize that as a bug.
As a user of a x64 OS, I have the choice of running x86 applications which use LAV x86 filters and x64 applications which use LAV x64 filters.
Yes, you do have that choice, but thing thing that you're thinking of as a feature is really just an artifact of a compatibly shim. While this can deliver different results based on platform isn't really something that you should base your application around.
I want to use different properties of LAV filters for each architecture.
So simple, from the user's perspective.
I think you mean from your perspective. Most users don't know, or what to know, how the sausage is made.
From a developer's perspective, you wouldn't want different behavior from an external COM object (what DS filters are) depending on which platform it runs on.
LAV filters x86 and x64 are different filters ...
That depends on how you think about it. The CLSID is the same.
... the common sense says that they should have different properties.
I don't think that's common sense. LAV provides the capability for applications to control the runtime values for the filters. That's the right way to manage this sort of thing.
pankov
20th June 2014, 12:30
andyvt,
what I think NikosD actually needs is not different settings based on platform (x86/64) but different settings based on player.
May be somewhere in the distant future Nev could add profiles similar to ffdshow/madVr which can be loaded automatically based upon the application .exe name or/and path.
But till then we have to rely on the player's ability to control LAV filters.
andyvt
20th June 2014, 12:45
andyvt,
what I think NikosD actually needs is not different settings based on platform (x86/64) but different settings based on player.
He asked a specific question and I was obliging :).
andyvt,
May be somewhere in the distant future Nev could add profiles similar to ffdshow/madVr which can be loaded automatically based upon the application .exe name or/and path.
But till then we have to rely on the player's ability to control LAV filters.
You're not completely at the mercy of the player or LAV to accomplish this goal (assuming that the player doesn't already configure the filters, then you are :)).
Since LAV stores its config in the registry (HKEY_CURRENT_USER\Software\LAV) it would be trivial to export this, change some settings, and export it again. Before launching your player-of-choice, run the appspecific.reg.
The UX for this approach isn't ideal because you'd have to UAC, but it wouldn't be that difficult to script it out (with the last step being to launch the player exe) because the settings are in HKCU it wouldn't need to be escalated to work.
pankov
20th June 2014, 12:54
I agree with everything you say and since this is something that only very advanced users probably need I think they can use such complex solution.
NikosD
20th June 2014, 13:24
@Andy,
I think it's obvious that I don't want LAV x86 to behave differently than x64.
Just to have different settings between the two versions, when used on the same system.
You are playing with words in the first part of your answer, although I liked some other parts, they were very informative.
@Pankov I don't necessarily need profiles for every app.
The separation could only happen between architectures (x86/x64), not every single app, it's enough for me.
I just want all my x86 apps to use DXVA2 native and all my x64 apps to use DXVA copy-back of LAV video.
----------------------------------------------------------------------------------------------------------------------------
@andy and nev
I couldn't believe that would be so difficult to implement.
But, on the other hand, it's different when we say "that is difficult to implement" from what Andy and nev say "it's designed to be like that"
I don't get it.
nevcairiel
20th June 2014, 13:33
Like I said earlier, its meant to share the same settings, and thats the end of the discussion.
NikosD
20th June 2014, 13:40
The way you answer means, that you could make it work differently, but you decided to make it work like that.
Because I find it constrained and inflexible, I would like to know the reason of making it work like that.
I think it's a simple question and maybe from your reply, I can see things that I don't see right now.
andyvt
20th June 2014, 13:40
I think it's obvious that I don't want LAV x86 to behave differently than x64.
TBH, I don't really care either way. The apps that I use configure the filters via the runtime mechanism.
You are playing with words in the first part of your answer, although I liked some other parts, they were very informative.
Words are fun, but that doesn't necessarily mean that I'm playing with them. You asked for the logic, I explained (as a software developer with many years of full life-cycle software development (gather requirements, writing code, testing, & support)). TBC, it's not my goal to silence your opinion (by all means continue), just explain the why.
I couldn't believe that would be so difficult to implement.
But, on the other hand, it's different when we say "that is difficult to implement" from what Andy and nev say "it's designed to be like that"
I don't get it.
I don't remember saying it would be difficult to implement the feature. In fact the feature you want might already exist if you write the values stored in HKCU to the right places in HKLM.
theoneofgod
20th June 2014, 19:38
The way you answer means, that you could make it work differently, but you decided to make it work like that.
Because I find it constrained and inflexible, I would like to know the reason of making it work like that.
I think it's a simple question and maybe from your reply, I can see things that I don't see right now.
From a programmers perspective, it would be simple enough to have each version run with separate settings. I don't see the need for this though as what is the purpose? Do you have an example?
Superb
20th June 2014, 21:44
I personally see no purpose in separating settings based on architecture.
Once you find the optimal settings for your machine, it shouldn't matter if you use x64 or x86.
Making users configure LAV twice doesn't make any sense.
I guess that power users could benefit from some sort of profiles feature, but that's only for really special cases and doesn't necessarily justify the time to code the functionality.
vood007
21st June 2014, 03:31
Just use Sandboxie for such things. You may lose a bit of performance but you really get isolated envs for any apps you want.
http://www.sandboxie.com/
mysterix
21st June 2014, 17:33
Does an "Normalize matrix" option apply any dynamic range compresion?
Should I use an "Normalize matrix" option in the LAV audio filter to prevent clipping? Does it prevent from clipping 100%? How it works, I mean, how this function chooses attenuation level to prevent clipping without preliminary analysing entire track (like foobar2000's ReplayGain does)? Does this function make any distortion or sound worse somehow?Please anybody, answer my question.
nevcairiel
21st June 2014, 18:01
It'll ensure that no channel is ever above 100%, if the source file had no clipping, then the decoded stream will also never have any.
It doesn't distort the sound or make it sound any worse, but it will make quite a bit quieter.
mysterix
22nd June 2014, 08:07
It'll ensure that no channel is ever above 100%, if the source file had no clipping, then the decoded stream will also never have any.
It doesn't distort the sound or make it sound any worse, but it will make quite a bit quieter.What is 100% channel level in this case? Will matrix normalising help if the source file had clipping?
mysterix
22nd June 2014, 11:06
Seems, I have understood that while reading earlier posts. Thanks!) It is downmixing-based option, so, do not refers to clipping directly.
sebas_led
23rd June 2014, 19:50
Hi Nev:
Thanks for the new version 0.62. It looks great.
I've noticed a problem with window render size since version 0.60.
When playing a video, the window is adjusted to my desired W/H size, but shortly after that it get's increased to the original video size.
It doesn't happen in all videos.
Sample code:
hr = pGraph->RenderFile(wideFilename, NULL);
pGraph->QueryInterface(IID_IVideoWindow, (void **)&pVideoWindow);
if (pVideoWindow) {
pVideoWindow->put_Top(videoYDesktop);
pVideoWindow->put_Left(videoXDesktop);
pVideoWindow->put_Width(videoWDesktop);
pVideoWindow->put_Height(videoHDesktop);
}
...
if (pControl) {
HRESULT hr = pControl->Run();
}
...
Version 0.59.1 works fine.
I can provide you a sample .mp4 file if you wish.
nevcairiel
23rd June 2014, 20:01
How in the world would my code ever affect your video window?
I just deliver images and metadata. How the thing reacts to that is entirely up to your code.
Liandri
23rd June 2014, 22:26
Question about LAV Splitter and its Advanced subtitle mode.
I have a file with 2 subtitles of the same language but different quality, they appear as:
- light [rus] [default]
- full [rus]
- no subtitles
I want to auto-select full [rus].
If I set the filter to "!d" it goes with no subtitles. Tried setting it to "rus!d" and "*:rus!d" but then it always selects the default one. I remember it worked for me once, but I don't understand why it doesn't work now.
It would help to have some way to force selection of some subtitles based on their number in menu, perhaps.
sebas_led
23rd June 2014, 22:43
Hi Nev:
Frankly I don't know :)
But the result is reproducible in several PC's, with several version of Windows (7, 8, etc.)
I'm using the default video render.
When using 0.59.1 I can sucesfully put the width and height of the render window.
When switching to 0.60/0.62 the video render window changes from the programmed size to the original video size.
DarkSpace
23rd June 2014, 23:52
Tried setting it to "rus!d" and "*:rus!d" but then it always selects the default one. I remember it worked for me once, but I don't understand why it doesn't work now.
Try "*:rus|!d", with "|" as the separator between language code and track property.
turbojet
24th June 2014, 00:36
What are the chances of an option to not use hardware acceleration with high framerate (48+) video? On my GTS250 with 720p59 madvr+cuvid or dxva = some dropped frames. Switching to software decoding fixes it.
Liandri
24th June 2014, 10:45
Try "*:rus|!d", with "|" as the separator between language code and track property.
That worked, thank you!
However I still think that Advanced mode could be more flexible. For example, it likely won't work for the case with 3 subtitles options of the same language. For difficult cases where user doesn't mind to change settings specifically for some set of episodes, choosing by number or by matched phrase would be a good thing to have.
We're waiting for LAV HEVC DXVA decoder :)
mysterix
24th June 2014, 12:36
...and OpenCL-based decoder or DirectCompute-based decoder as an alternative to DXVA-CUVID-QuickSync for all formats, please.
nevcairiel
24th June 2014, 13:41
That worked, thank you!
However I still think that Advanced mode could be more flexible. For example, it likely won't work for the case with 3 subtitles options of the same language. For difficult cases where user doesn't mind to change settings specifically for some set of episodes, choosing by number or by matched phrase would be a good thing to have.
By number seems rather useless, its hardly an identifying attribute in which position in the file a stream is, and it doesn't really tell you anything about that stream.
Someone posted a patch for matching by the stream title, but i'm not entirely happy with the patch yet - and i'm out of the country so I don't have much time to look at it myself.
Liandri
24th June 2014, 14:34
By number seems rather useless, its hardly an identifying attribute in which position in the file a stream is, and it doesn't really tell you anything about that stream.
Someone posted a patch for matching by the stream title, but i'm not entirely happy with the patch yet - and i'm out of the country so I don't have much time to look at it myself.
It IS useless if you use it all the time. But I found myself in a situation where I wanted to set it just for one 24-episodes show and be done with it, but even after readme I found it rather confusing.
If I could just tell it to always choose 2nd subtitles item, it would save me some headache, and I wouldn't mind reverting settings back after watching that specific show - it's easier than choosing that manually for each episode.
Anyway, it would help if real examples with "!" get included in the readme, for others to spend less time on playing with settings. Thanks for paying attention!
Mangix
24th June 2014, 18:17
...and OpenCL-based decoder or DirectCompute-based decoder as an alternative to DXVA-CUVID-QuickSync for all formats, please.
This is not a good idea. Except if you're after increased power usage.
Asmodian
24th June 2014, 21:05
...and OpenCL-based decoder or DirectCompute-based decoder as an alternative to DXVA-CUVID-QuickSync for all formats, please.
I think you are missing the point that all those use dedicated hardware to do the decoding very efficiently, OpenCL/DC would be very different and would require a good video card. Writing a highly optimized OpenCL decoder for everything LAV supports would also be a .. big .. project. Why would someone want this anyway? Use software decoding on the CPU if you don't want hardware acceleration, if your CPU cannot do it your GPU wouldn't be able to either using OpenCL. ;)
mysterix
25th June 2014, 08:03
I think you are missing the point that all those use dedicated hardware to do the decoding very efficiently, OpenCL/DC would be very different and would require a good video card. Writing a highly optimized OpenCL decoder for everything LAV supports would also be a .. big .. project. Why would someone want this anyway? Use software decoding on the CPU if you don't want hardware acceleration, if your CPU cannot do it your GPU wouldn't be able to either using OpenCL. ;) My CPU is Pentium D 925 and it can't process FullHD itself on middle to high profiles. My GPU is HD5450 and it can by DXVA, but i prefer use MadVR render on lower resolutions and FullHD with low bitrates also and according to my low-end videocard, DXVA is expensive for it if using with MadVR together. But it is not reason for OpenCL since my CPU still can decode all that. However, there is some reasons to realise that idea: many people have had a troubles with decoding some nontypical videoprofiles on several formats. Take for example 10-bit video and trouble with 60 fps decoding on some models of videocards that can do 60 fps seemingly, but... And yes, my card supports OpenCL 1.2 and DC nevertheless. But on the other side, it can't do WebM and DivX accelerated and several other formats and profiles. There are another reasons, still. As I know, there is unexplained occasional frame drops on supported formats and profiles on DXVA (maybe on CUVID also) sometimes while cpu and gpu usage is far from 100%. Maybe it appears not on all cards and not always, don't know. And one more: my gpu has not separate DXVA block and uses main GPU block for DXVA processing as I know. Contrary to middle and high-end cards which have separate HA-module. So, that's one more reason: to process more than one videostream by using HA and main blocks simultaneously for translating different streams to several monitors in a house, e.g. But that depends on render abilities, also.
ryrynz
25th June 2014, 08:43
My CPU is Pentium D 925 and it can't process FullHD itself on middle to high profiles. My GPU is HD5450 and it can by DXVA
The solution is to just upgrade your old hardware. What you're asking for isn't going to happen.
foxyshadis
25th June 2014, 09:29
There's no way a 5450 could handle the OpenCL processing you're asking for, you'd have to upgrade anyway. I'm not going to knock them, they're great silent cards; on the other hand, I know for a fact that it works perfectly smooth at 60fps for H.264 on my HTPC (I had a passive-cooled one before upgrading to 6450 in a trade), so the problem is your memory or motherboard, unless your video card is going bad. I don't know where you get the idea that it doesn't have a DXVA module, it has UVD 2.2 unless your card is broken. (6450 has UVD 3.)
6-8 years is a good run for a system, but if it's the money you should look at an A8-6600K. Less than $200 gets you CPU, motherboard, and 8GB memory, and even the CPU's integrated graphics is twice as powerful as the HD5450.
mysterix
26th June 2014, 04:40
foxyshadis, thanks! I believe I'll upgrade my system as soon as possible.
nevcairiel, would you realise ability to LAV Video filter of choosing which GPU installed in the system to use for hardware decoding, please? I mean configuration where monitor is connected to one of them only.
huhn
26th June 2014, 10:23
what will this bring the end user? using DXVA native on current hardware has no real affect on the gpu load. a ASIC is used for decoding anyway(at least at the moment).
and if you use a decoder from a different GPU that is not displaying the image later on you have to use a copyback.
QS and CUVID are both copyback decoder and you can do this already if you have a intel and a nvidia gpu you can display the image on the nvidia gpu and let it decode from QS. same goes for intel and AMD.
this normally only wastes power.
if you have multiple monitors Lavfilter will use the decoder from the current monitor the player is active on.
jkauff
27th June 2014, 12:32
if you have multiple monitors Lavfilter will use the decoder from the current monitor the player is active on.
You can use QS decoding even if the iGPU is not connected to a monitor. You just set up a "dummy" monitor for the iGPU via Screen Resolution in Windows. It doesn't need to be set as the active monitor for QS to become enabled in LAV. You must have the Intel iGPU drivers installed, though.
How to change the de-interlacing method and switching between HW/SW in LAV like PowerDVD/PotPlayer?
It's only possible to change the decoder :(
http://t.imgbox.com/EsRwsvrQ.jpg (http://imgbox.com/EsRwsvrQ)
clsid
27th June 2014, 21:15
LAV has an option for that called "High-quality processing".
jkauff
28th June 2014, 00:27
How to change the de-interlacing method and switching between HW/SW in LAV like PowerDVD/PotPlayer?
It's only possible to change the decoder :(
Set "Hardware Decoder" to None to use software decoding, then select "YADIF software de-interlacing" if you want LAV to do the de-interlacing.
Deihmos
28th June 2014, 01:20
The last version of lav splitter that worked for me is version 59.1. On windows 8.1 using windows media center when I resume from sleep lav is unable to play the video until I restart wmc. I don't know what the problem could be but it does the same thing on all my htpcs. Using version 59.1 works without issues.
pihug12
28th June 2014, 10:47
Hello!
This M4A audio file seems to cannot be played with LAV Splitter : http://www.criticalmusic.com/podcast/episodes/CriticalPodcast32Emperor.m4a
General
Complete name : C:\Users\Pierre\Downloads\CriticalPodcast32Emperor.m4a
Format : MPEG-4
Format profile : Apple audio with iTunes info
Codec ID : M4A
File size : 72.1 MiB
Duration : 59mn 15s
Overall bit rate mode : Variable
Overall bit rate : 170 Kbps
Movie name : Critical Music Podcast Vol.32 - Hosted by Emperor
Encoded date : UTC 2014-02-11 11:19:44
Tagged date : UTC 2014-02-11 11:19:55
Writing application : GarageBand 6.0.5
Cover : Yes
Comment : 1. Ed:it - I Would (SGN:LTD) / 2. Rregular & Dementia ft. Disphonia - Doom Loop...
Video
ID : 4
Format : JPEG
Codec ID : jpeg
Duration : 59mn 15s
Source duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 3 684 bps
Width : 500 pixels
Height : 500 pixels
Display aspect ratio : 1.000
Frame rate mode : Variable
Frame rate : 0.004 fps
Minimum frame rate : 0.001 fps
Maximum frame rate : 0.010 fps
Color space : YUV
Chroma subsampling : 4:4:4
Bit depth : 8 bits
Compression mode : Lossy
Bits/(Pixel*Frame) : 3.684
Stream size : 1.43 MiB (2%)
Source stream size : 1.43 MiB (2%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Audio
ID : 3
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 59mn 15s
Bit rate mode : Constant
Bit rate : 160 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 69.7 MiB (97%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Text #1
ID : 1
Format : Timed Text
Codec ID : tx3g
Duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 2 bps
Stream size : 899 Bytes (0%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
Text #2
ID : 2
Format : Timed Text
Codec ID : tx3g
Duration : 59mn 15s
Bit rate mode : Variable
Bit rate : 2 bps
Stream size : 775 Bytes (0%)
Language : English
Encoded date : UTC 2014-02-11 11:19:42
Tagged date : UTC 2014-02-11 11:19:55
The MPC-HC window allocates 500px * 500px for the artwork, but the screen stays black.
The "Play" button is pushed, but nothing is played (stays at 00:00).
If I switch the splitter to Haali, I can read this file (see more infos here (http://codecs.forumotion.net/t1523-m4a-audio-file-doesn-t-play-with-mpc-hc)).
Sorry if this problem is not only LAV Splitter related, I'm no expert.
Sorry to dig up this old post.
Did you have some time to take a look at it? Is it LAV Splitter related? Is there a possible fix?
Here is another file if you want to make some tests : http://www.criticalmusic.com/podcast/episodes/CriticalPodcast33Enei.m4a
Thanks!
NikosD
29th June 2014, 09:30
It seems it's a problem with LAV filters and JPEG files.
It's not the audio part, it's probably a splitter problem in MP4 container (or a video issue)
e.g this JPEG file has no audio.
https://www.sendspace.com/file/k7q9em
It can't be played by MPC-HC (it shows just a black screen in pause mode or even moving slider displaying black screen)
MPC-HC old v1.6.8 and PotPlayer can play it fine.
The above file from pihug12 plays fine by PotPlayer, BTW.
CiNcH
29th June 2014, 17:51
Hi nev,
I am currently developing the video renderer for the DVBViewer and hoped you could help me out with something...
The EVR presenter provides the IDirect3DDeviceManager9 over which we provide the IDirect3DDevice9 for you to create your D3D resources (surfaces) for the DXVA2 decoder.
Problem now is that when playback is running, a call to IDirect3DDevice9::Reset fails with D3DERR_INVALIDCALL. Reset is called for example when the graphics adapter changes by moving the video window to a different monitor. I release all resources in the renderer before the reset, but I have no clue how to tell the decoder to release them. Only after the reset do I call IDirect3DDeviceManager9::ResetDevice to give you the new device. But I could not find anything to tell you that I am about to reset and that you should release everything.
Do you have any idea? Do I have to kill the graph before doing the reset? I also tried to send an EC_ERRORABORT with D3DERR_DEVICELOST into the graph before the reset. But it didn't help either.
Aleksoid1978
29th June 2014, 23:09
it's probably a splitter problem in MP4 container (or a video issue)
Yes - bug in LAVSource/Splitter. It's output incorrect subtype for JPEG stream in MP4/MOV
Deihmos
1st July 2014, 02:04
The last version of lav splitter that worked for me is version 59.1. On windows 8.1 using windows media center when I resume from sleep lav is unable to play the video until I restart wmc. I don't know what the problem could be but it does the same thing on all my htpcs. Using version 59.1 works without issues.
Anyone know why the new versions are doing this.?
TheDarkTemplar
1st July 2014, 02:53
I can't seem to get the Advanced Subtitle Selection mode to work. I read the readme section that talked about it, so I am fairly sure I am understanding the code correctly...
I put in eng:eng|f eng:eng|d eng:off *:eng so that it will only enable English forced or default subtitles if the audio is English, and enable any English subtitles if the audio is not English. It doesn't load default, forced English subtitles no matter what the audio language is though. In fact, even if I simply put *:eng in and nothing else then it still won't load English subtitles. The readme specifically says that command will play them no matter what though...
Is it just broken or something?
nevcairiel
1st July 2014, 02:54
Sounds like your player overwrites the choice.
TheDarkTemplar
1st July 2014, 02:57
If I change the selection mode from advanced to default, then it does load default subtitles fine. So, it seems it's definitely capable of switching them on if it wants. Hmm...
theoneofgod
1st July 2014, 17:23
Any chance of a function to pass-through AAC or similar to how ffdshow handles it?
wanezhiling
2nd July 2014, 15:03
With lav splitter, the color of the subtitle (https://www.sendspace.com/file/edpg3v) becomes green: http://i1.tietuku.com/66a3005df2638fd1.png
Farfie
3rd July 2014, 05:22
Hey nev,
Do you have any intention to support flash in an swf container? Or is it not possible, or does it already? Because I see Flash in the supported types for LAV Video. I just want to apologize in advance if this is a silly question.
What exactly do you mean by "Flash"? ActionScript directed vector/bitmap-sprite animations of "Shockwave Flash" (*.swf)? — They are not video streams (H.263, VP6, H.264) like in "Flash Video" (*.flv).
It is a pity that two completely different concepts share the same name part, causing misunderstanding and confusion.
Farfie
3rd July 2014, 07:48
What exactly do you mean by "Flash"? ActionScript directed vector/bitmap-sprite animations of "Shockwave Flash" (*.swf)? — They are not video streams (H.263, VP6, H.264) like in "Flash Video" (*.flv).
It is a pity that two completely different concepts share the same name part, causing misunderstanding and confusion.
Unfortunately, I'm not sure. From trying to deal with these files, I'm pretty sure they're definitely a pain... all I can offer is what mediainfo gives me.
http://puu.sh/9UKHC/8c9c1b8fe6.png
So maybe it's VP6? Or maybe mediainfo is confused? Because I don't see why there would be 2 video streams either, but hey, what do I know! :confused:
Well, maybe it is ActionScript directed VP6 video inside a ShockWave Flash container. The presence of ActionScript is probably not detected by MediaInfo; but this interactivity (even if it is just playback controls or cue points) is what makes it rather impossible to implement completely without a dependency to Adobe libraries. I doubt there are freely usable AS interpreters not by Adobe. And as you see yourself, supporting only the few SWF containing a video, but not the many SWF containing vector animations, would make "SWF support" a rather bold statement.
Are there any samples of SWF files with ... G-rated video content?
hoborg
3rd July 2014, 08:11
Hey nev,
Do you have any intention to support flash in an swf container? Or is it not possible, or does it already? Because I see Flash in the supported types for LAV Video. I just want to apologize in advance if this is a silly question.
Hi.
Did you tryed to rename *.swf to *.flv ?
That will not remultiplex the file with a different container format. SWF and FLV are different.
hoborg
3rd July 2014, 08:16
That will not remultiplex the file with a different container format. SWF and FLV are different.
Yes, but sometimes the videos have wrong extension...
A wrong extension will only keep a file from appearing in a filtered directory listing, but not from being opened in an application if the application indeed supports the format. Except the programmer was stupid enough to decide based on the extension instead of the content how to handle the file.
LAV splitters will certainly try to detect based on the content if they support a container format.
zveroboy
3rd July 2014, 20:46
nevcairiel
Can I make a feature request?
I download the live stream from the internet to a file and open this file in the player, not stopping downloading.
Is it possible to the splitter tracked the increasing of the file "on the fly"? I want to the viewing-position should not be reached the end, until I stop the download.
This feature is implemented in DAUM Pot player, but I want to use MPC-BE.
foxyshadis
3rd July 2014, 23:16
Unfortunately, I'm not sure. From trying to deal with these files, I'm pretty sure they're definitely a pain... all I can offer is what mediainfo gives me.
http://puu.sh/9UKHC/8c9c1b8fe6.png
So maybe it's VP6? Or maybe mediainfo is confused? Because I don't see why there would be 2 video streams either, but hey, what do I know! :confused:
It's definitely VP6-in-FLV-in-SWF. You can use JPEXS to extract the video.
TheDarkTemplar
4th July 2014, 00:05
If I change the selection mode from advanced to default, then it does load default subtitles fine. So, it seems it's definitely capable of switching them on if it wants. Hmm...
I guess I'll just assume advanced is broken and use the default mode unless someone has a solution. It's not too inconvenient to have to enable/disable subtitles manually when starting a lot of movies anyway. :D
nevcairiel
4th July 2014, 00:06
Advanced Mode works just fine. Most likely your pattern string is not doing what you think it should.
TheDarkTemplar
4th July 2014, 01:16
Like I said, just *:eng doesn't even enable them when set to advanced.
I have just discovered the issue however. I realized the subtitles need to have an explicit [eng] tag in order for it to enable them, not just merely be subtitles in the language. All the videos I was testing with had softsubs simply titled 'English Subtitles' or the like without the actual tag, so it wasn't enabling any of them.
nevcairiel
4th July 2014, 01:34
Well yeah, it reads the language Tag, the title could be anything.
nautilus7
5th July 2014, 12:38
Hi, I have some satellite broadcasts (World Cup EBU feeds) that LAV filters can't decode the 3rd audio track properly. Same happens with mkvmerge and eac3to. Here's a sample (https://www.sendspace.com/file/gulxjy) of such broadcast. Can you have a look, please?
EDIT: Track No3 is supposed to be "Dolby E".
Mercury_22
5th July 2014, 16:03
@Nev Can you make LAV splitter to select the playlists in a BD in the ascending order of their names for equal or almost equal length playlists ? This will improve the selection of the correct playlist
e.g. A BD has ...00800.mpls of 00:46:03, 00801.mpls of 00:45:13, 00802.mpls of 00:46:03, 00803.mpls of 00:46:03,...mpls Now Lav is selecting 00803.mpls while the correct playlist is 00800.mpls
Edit: XBMC (maybe others too) seems to use this logic with better results
dbezerra
7th July 2014, 18:37
Nev,
Would be possible to have a fallback mode in Lav Audio for the Bitstream options?
Here is my scenario: MPC-HC with LAV filters & MadVR, connected to both the TV and Receiver, via Nvidia GTX 650.
TV: EDID reports only stereo - no DD, DTS, etc
Receiver: Capable of all audio formats.
I want to take advantage of the receiver capabilities, but at the same time I need sound via TV when kids are watching movies or when I just don't feel like turning on the receiver (casual viewing of a TV series, etc). Today I have to keep changing LAV settings - unchecking all bitstream options when I want to watch via TV, check them all when I want to watch via the receiver.
If a fallback mode is possible, I could leave them all checked, and let LAV to fallback to pcm when necessary.
(I know that Reclock with decoded audio is another option, but I prefer to have it bitstreamed to the receiver)
Thanks
theoneofgod
7th July 2014, 19:52
Nev,
Would be possible to have a fallback mode in Lav Audio for the Bitstream options?
Here is my scenario: MPC-HC with LAV filters & MadVR, connected to both the TV and Receiver, via Nvidia GTX 650.
TV: EDID reports only stereo - no DD, DTS, etc
Receiver: Capable of all audio formats.
I want to take advantage of the receiver capabilities, but at the same time I need sound via TV when kids are watching movies or when I just don't feel like turning on the receiver (casual viewing of a TV series, etc). Today I have to keep changing LAV settings - unchecking all bitstream options when I want to watch via TV, check them all when I want to watch via the receiver.
If a fallback mode is possible, I could leave them all checked, and let LAV to fallback to pcm when necessary.
(I know that Reclock with decoded audio is another option, but I prefer to have it bitstreamed to the receiver)
Thanks
+1. Good idea.
yonta
9th July 2014, 10:04
LAV splitter(v0.62.0.0) doesn't read mp3 audio track in this .mp4 file (https://drive.google.com/file/d/0B1mCVSSmbT2LY1BUNUNmaGd5bkk/edit?usp=sharing)
I tried mpc-be internal, mplayer, vlc and they all work fine.
filler56789
9th July 2014, 16:57
LAV splitter(v0.62.0.0) doesn't read mp3 audio track in this .mp4 file (https://drive.google.com/file/d/0B1mCVSSmbT2LY1BUNUNmaGd5bkk/edit?usp=sharing)
I tried mpc-be internal, mplayer, vlc and they all work fine.
It seems the original mp3 stream was borked already... OR, perhaps, it was screwed by MP4Box :confused:
Anyway, neither ffmpeg nor L-Smash remuxer like your sample file:
[mov,mp4,m4a,3gp,3g2,mj2 @ 02ec25a0] Could not find codec parameters for stream 1
(Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, 2 channels, s16p, 320 kb/s): unspecified frame size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Guessed Channel Layout for Input Stream #0.1 : stereo
I used MKVmerge GUI for remuxing the audio to an MKA file, then I applied AVI-Mux GUI, and this is what MediaInfo said about the resulting 391kB MP3:
Audio
Format : MPEG Audio
Format version : Version 1
Format profile : Layer 3
Mode : Joint stereo
Duration : 4mn 44s
Bit rate mode : Constant
Bit rate : 320 Kbps
Channel(s) : 2 channels
Sampling rate : 48.0 KHz
ahaha2013
9th July 2014, 17:37
The pre-language of srt can't not work. Why? How?
I have set the pre-lang in the lav spiliter.
http://i1.tietuku.com/fe65ced99f301158.png
mpc(1.7.6.30) + lavfiters(0.62) + vsfilter.dll(3.0.0.300 git 6c0c23a)
There were two file:
How To Train Your Dragon.eng.srt
and
How To Train Your Dragon.srt
What I wanted was it can auto load *.eng.srt.
clsid
9th July 2014, 17:47
The language settings in LAV only apply to embedded streams. LAV Filters does nothing with external subtitle files. That is the job of your player. You can configure the preferred language in MPC-HC.
ahaha2013
9th July 2014, 18:30
The language settings in LAV only apply to embedded streams. LAV Filters does nothing with external subtitle files. That is the job of your player. You can configure the preferred language in MPC-HC.
So MPC-HC can realize this, external subtitle files, with preferred setting?
But I did this with the mpc-hc's setting,indeed.
http://i1.tietuku.com/bebff222b204cee2.png
What did I miss?
sneaker_ger
9th July 2014, 19:55
It's under "Options">"Playback">"Default track preference". You may also need to tick the "Allow overriding..." box.
regiregi22
9th July 2014, 20:23
Maybe this has been answered before but I was unable to find the post. When you are downmixing with LAV Audio from 5.1 to stereo, are the surround channels hard-panned to the same side? I have generated some pink noise 6-channel wav files, each file with the tone only in one channel, and I notice that when playing the Rear Left or the Rear Right files, they are not hard panned, but bleed some sound on the oppositte front speaker.
What I wonder is if there is any official recommended practice in the way of doing that downmixing or is it just LAV development team decission...
Best regards
Asmodian
9th July 2014, 21:31
Yes there is are recommended downmix matrices. Do you have the Matrix Encoding (in the Mixing tab) set to None or one of the Dolby Pro Logics?
regiregi22
10th July 2014, 01:02
It's set to None. Do you know the spec name for those matrices so to google them?
foxyshadis
10th July 2014, 02:30
Dolby Pro Logic (https://en.wikipedia.org/wiki/Dolby_Pro_Logic) (and its successors) is the spec name. Quite a few AC3 2.0 tracks are actually 5.0 Pro-Logic II, and some AC3 5.1 are actually 7.1 matrixed the same way (but that's known as Dolby Digital EX or Surround EX). If one of them was selected, then your 6-channel audio would be mixed into two channels, preparing it to be unmixed (imperfectly) by a receiver later.
(The main difference between Pro Logic and Pro Logic II is that you get an extra channel, and II doesn't sound horrible when any random stereo track is decoded, often quite pleasant as fake surround goes, unless you're very tuned to its artifacts. Lots of surround speaker systems license it, and I use it myself for music.)
If it's set to none and you're absolutely certain that your sample is silent on that channel in other software - have you played it in Audacity or another audio software to verify? - then it sounds like a ffmpeg/libav bug. Try other software first, because it could be a driver or speaker problem too.
regiregi22
10th July 2014, 17:13
Thanks for the explanation. So from what I have read, I could just tick the Dolby Pro Logic II option and listen to plain stereo tracks (music or film) converted from 2.0 to 5.1? My bedroom HT is in stereo, but I have another HT with 6 speakers.
I have generated some full-band pink noise wav test files 48K/16 of around 30 seconds each. Those are 6-channel files, each file is exactly the same stream but placed in a different channel inside the file. Channel 4 wich is LFE is in addition being limited in 20hz-120hz, so to calibrate the subwoofer accordingly (DO NOT USE the full band pink noise file "4.wav" to calibrate the subwoofer, you have to use the filtered 20-120hz file. Named "4.wav" file its only here for experimental purposes). All files are recorded at the cinema standard -20dBFS and peaking at -8dBFS, so they can be used in conjuntion with an SPL meter to calibrate your 5.1 speakers to match the speakers from your listening position. With any cheap SPL you can calibrate it to the estandard cinema loudness level +85dB, or the domestic +79dB, or something inbetween. The subwoofer has to be calibrated at +4dB relative to each of the other speakers, so if you calibrate each of the speakers to +85dB, the subwoofer has to measure +89dB on the SPL meter. Remember to use C-weighting and setting it up to SLOW mode.
OK, so when I open each file in Foobar, in normal mode, sound from the speakers comes only from files 1 and 2. Everything's right because I have just an stereo setup. When I activate the DSP called "Downmix channels to stereo", I hear:
Left speaker: channels 1(FL), 5(RL)
Right speaker: channels 2(FR), 6(RR)
Both speakers: channels 3(C), 4(LFE)
If Foobar can open the files OK, so the test files have to be OK. I myself generated them and they measured fine in Reaper. But then when I open each file in MPC-HC (using LAV filters, Reclock, madvr), everything is the same except that the rear channels, 5.wav and 6.wav files, are not hard panned at all. It sounds like if they were balanced something like 80%-20% between left and right. I have measured them with a digital multimeter (not RMS, but give us a rough idea), one speaker measured around 0.073vac while the other measured 0.120vac
Those are the test files if anyone would like to reproduce this behaviour or use them to volume calibrate a surround system:
http://www9.zippyshare.com/v/4465967/file.html
And this is my audio config in LAV and Reclock
http://img7.imagevenue.com/loc352/th_07944_1_122_352lo.jpg (http://img7.imagevenue.com/img.php?image=07944_1_122_352lo.jpg)http://img275.imagevenue.com/loc392/th_07953_2_122_392lo.jpg (http://img275.imagevenue.com/img.php?image=07953_2_122_392lo.jpg)http://img157.imagevenue.com/loc421/th_07960_3_122_421lo.jpg (http://img157.imagevenue.com/img.php?image=07960_3_122_421lo.jpg)
On a different matter, is there any way to use ASIO with LAV filters, so to be able to use ReWire to Reaper and use some analysis tools? If not ASIO, any idea on how to send any stream to Reaper from MPC/LAV?
nevcairiel
10th July 2014, 17:25
Only if you select one of the matrix encoding options it'll partially throw the backs/sides into the opposing channel, if matrix encoding is set to none, it'll strictly throw it into the matching left/right channel.
Sounds like something else is going on.
For ASIO, you need a player that offers a ASIO audio renderer, there is no standalone audio renderer available AFAIK.
e-t172
10th July 2014, 19:11
On a different matter, is there any way to use ASIO with LAV filters, so to be able to use ReWire to Reaper and use some analysis tools? If not ASIO, any idea on how to send any stream to Reaper from MPC/LAV?
There's this thing ("ASIOBridge") (http://vb-audio.pagesperso-orange.fr/Cable/) that looks like a solution. Never tried it, though.
regiregi22
10th July 2014, 19:13
Got it, so it should work like Foobar, each channel to each speaker.
If not ASIO, any remote way to redirect the output in order to analyse or even apply effect in VST form?
SamKook
10th July 2014, 19:43
Surodev has a directshow ASIO renderer: http://surodev.com/products/asio-renderer/
I did a bit of testing for the guy back when I was trying to find a replacement for reclock WASAPI renderer and it worked with LAV, but I had some problems with changing the audio volume from MPCHC(he improved it a bit after the testing, but the range that would actually change was pretty small and at some point I never heard back from him).
regiregi22
11th July 2014, 13:34
There's this thing ("ASIOBridge") (http://vb-audio.pagesperso-orange.fr/Cable/) that looks like a solution. Never tried it, though.
I haven't tried ASIOBridge, instead I have installed Virtual cable which seems to work fine for this purpose. Will try it later anyway.
This is what MPC outputs, as you can see there is a hard 4.22dB difference between left and right channel when downmixing to Stereo. This is only the rear left channel playing, which should sound only on the left speaker. What makes me wonder LAV uses some king of mixing algorithm instead of just routing the rear left speaker to the front left speaker.
http://img275.imagevenue.com/loc385/th_80143_Clipboard01_122_385lo.jpg (http://img275.imagevenue.com/img.php?image=80143_Clipboard01_122_385lo.jpg)
And this is the same file played through Foobar with the "Downminx channels to stereo" DSP activated. Those -317dB is Reaper's noise floor, digital zero in fact:
http://img206.imagevenue.com/loc596/th_80626_Clipboard02_122_596lo.jpg (http://img206.imagevenue.com/img.php?image=80626_Clipboard02_122_596lo.jpg)
regiregi22
11th July 2014, 13:38
Is it possible for someome to take a quick test with those test files to check that it's something related to my setup instead of a bug?
jkauff
12th July 2014, 22:45
On a different matter, is there any way to use ASIO with LAV filters, so to be able to use ReWire to Reaper and use some analysis tools? If not ASIO, any idea on how to send any stream to Reaper from MPC/LAV?
If you don't mind spending some money, JRiver Media Center can use ASIO for video and audio playback. This and the other features of the program make it well worth the $50 (and nevcairiel now works for JRiver, so you know it's going to work well with LAV).
regiregi22
14th July 2014, 13:26
If you don't mind spending some money, JRiver Media Center can use ASIO for video and audio playback. This and the other features of the program make it well worth the $50 (and nevcairiel now works for JRiver, so you know it's going to work well with LAV).
Thanks for the input. I already solved the issue with Virtual cable, and pretty much prefer MPC-HC.
Still waiting for someone to check this behaviour as a bug though...
dude2012
16th July 2014, 14:23
as of version 0.62.0 I can no longer bitstream DD+ 7.1 (5.1 still works). If I revert to an older version like 0.58.2 bitstream works fine. Anyone else experiencing this?
nevcairiel
16th July 2014, 14:39
Only SP3 is supported, and future versions may drop support for Windows XP all together.
vinnytx
17th July 2014, 08:30
Hi,
how can I enable use of MFT decoder for WMV9 video in Lav Filters 0.62?
In the preference I have only this checkbox "Use Microsoft WMV9 DMO decoder for WMV3 and VC-1"
I use Windows 7
LigH
17th July 2014, 10:17
My guess would be that only renaming the checkbox label was forgotten...
nevcairiel
17th July 2014, 15:11
That is indeed the case, the MFT is used in place of the DMO on Windows 7 and above.
You can see that during playback, too, decoder will be wmv9 mft.
nautilus7
18th July 2014, 00:59
Hi, I have some satellite broadcasts (World Cup EBU feeds) that LAV filters can't decode the 3rd audio track properly. Same happens with mkvmerge and eac3to. Here's a sample (https://www.sendspace.com/file/gulxjy) of such broadcast. Can you have a look, please?
EDIT: Track No3 is supposed to be "Dolby E".
Nev, does libav/ffmpeg support Dolby E?
nevcairiel
18th July 2014, 08:04
Dolby E is not supported, and its doubtful that it'll ever be since Dolby is rather protective of that format.
zerowalker
18th July 2014, 08:30
Am i alone with this issue: http://code.google.com/p/lavfilters/issues/detail?id=468&thanks=468&ts=1405604364 ?
regiregi22
18th July 2014, 09:44
Why is there applied a 0.71 ratio to surround channels when downmixing them to stereo? I thought that reduction was only mandatory for the center channel, because there would be a +3dB build-up when playing that center channel in both left and right front speakers, so you apply a 0.71 ratio to have the same overall volume. Rear left and right are hard panned to both front left and right speakers, so they wouldn't need any reduction.
I know that I can move the slider to 1, but why is the default recommended 0.71?
Best regards
nevcairiel
18th July 2014, 12:12
It's 0.71 to favor the fronts, and not drown out dialog with the surrounds. Its just a default as you say.
nautilus7
18th July 2014, 12:33
Dolby E is not supported, and its doubtful that it'll ever be since Dolby is rather protective of that format.
I see, thanks.
Reino
18th July 2014, 14:40
Am i alone with this issue: http://code.google.com/p/lavfilters/issues/detail?id=468&thanks=468&ts=1405604364 ?No you're not. I've had some spare time, so I had a look:
http://www.ld-host.de/uploads/thumbnails/c8ece81c7d6d625acaeb8be0b8d2b146.png (http://www.ld-host.de/uploads/images/c8ece81c7d6d625acaeb8be0b8d2b146.png)_____http://www.ld-host.de/uploads/thumbnails/366dc190e091c68db67bc267cadb67f5.png (http://www.ld-host.de/uploads/images/366dc190e091c68db67bc267cadb67f5.png)
ffplay-20140318-git-aa86ccc (http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-20140318-git-aa86ccc-win32-static.7z)____ffplay-20140319-git-ce9d3da (http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-20140319-git-ce9d3da-win32-static.7z)
I didn't have any problems seeking, but as you can see with ffmpeg the image is corrupted as of March 19 2014.
But the strange thing is that with LAV 0.61.2, which is released on June 12 2014, the image is still fine. Does this mean LAV 0.61.2 was based on an old ffmpeg version?
cyberbeing
18th July 2014, 16:08
Does this mean LAV 0.61.2 was based on an old ffmpeg version?
Yes, LAV 0.61.2 used 2014-03-02 ffmpeg.
Official LAV Filters builds always use Nev's custom patched FFMPEG branch, where you can look this up by tag (or alternatively by the LAV git submodule hash for ffmpeg):
http://git.1f0.de/gitweb?p=ffmpeg.git;a=summary;js=1
nevcairiel
18th July 2014, 16:28
I didn't check the exact dates, but FFmpeg is usually only updated for major versions (ie in 0.61, not in 0.61.2) to avoid regressions like this. If anything I only back port individual patches to my custom fork for minor releases.
For this particular problem, I suggest bringing it to ffmpegs attention.
zerowalker
19th July 2014, 02:23
I didn't have any problems seeking
The thing is, this clip has been Cut, and will Always show the issue.
The original file is Only fine as long as you play from frame 1 and forward.
Cutting it seems to be like a seek, it doesn't start from the first frame. I guess there is some special thing going on there, still weird, would understand if it was a P-Frame or something like that.
If this is an ffmpeg bug, is someone gonna bug report it, or shall i do it?
zerowalker
19th July 2014, 10:49
Noticed another "bug?", not sure if it's EVR or LAV or both.
If the video is YV24 x264 (Tried MagicYUV YV24 didn't matter there), the renderer will resize in Point instead of Billinear/Bicubic.
This doesn't happen in MPC-HC if the internal LAV is used (EVR non-custom must be used, else it will work with both versions).
Can someone verify this?
nevcairiel
19th July 2014, 10:52
EVR fails at AYUV support, which is the only 4:4:4 format it supports, and is disabled by default in LAV. Maybe you enabled it in your external LAV.
zerowalker
19th July 2014, 10:56
Ah, finally, damn need to reset my settings as i am not sure what i have touched.
Thought it was a Player bug at first so asked at the forum for it, but now it's solved, thanks:)
But how come EVR Custom Presenter works?
cyberbeing
19th July 2014, 11:15
EVR Custom has the AYUV input format disabled, I believe.
With normal EVR, you can set the EVR prop 'Aspect Ratio Mode' to 'NonLinearStretch' which will force it to use Bilinear or similar with AYUV, but that setting has limitations.
Video will always be streched to output window size without maintaining aspect ratio (no black bars). Video will always be output with untouched level range (no TV->PC conversion).
zerowalker
19th July 2014, 11:38
Wait so EVR CR simply says (AYUV is no go), and LAV will use something else, like an automatic disable of it?
Ah yes noticed that. Didn't know about the TV->PC though, that explains why it was quite dark.
But it also messes up thing completely in some videos, there will be black bars in the video itself, i think it happens with DVD Resolution, so you only see parts of the Video (I I I I) like that, white spaces = video.
MasterNobody
19th July 2014, 13:41
No you're not. I've had some spare time, so I had a look:
http://www.ld-host.de/uploads/thumbnails/c8ece81c7d6d625acaeb8be0b8d2b146.png (http://www.ld-host.de/uploads/images/c8ece81c7d6d625acaeb8be0b8d2b146.png)_____http://www.ld-host.de/uploads/thumbnails/366dc190e091c68db67bc267cadb67f5.png (http://www.ld-host.de/uploads/images/366dc190e091c68db67bc267cadb67f5.png)
ffplay-20140318-git-aa86ccc (http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-20140318-git-aa86ccc-win32-static.7z)____ffplay-20140319-git-ce9d3da (http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-20140319-git-ce9d3da-win32-static.7z)
I didn't have any problems seeking, but as you can see with ffmpeg the image is corrupted as of March 19 2014.
But the strange thing is that with LAV 0.61.2, which is released on June 12 2014, the image is still fine. Does this mean LAV 0.61.2 was based on an old ffmpeg version?
As far as I investigated it is ffmpeg specific (libav doesn't have this) problem with this patch (http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=6f7ca1f55be1270e0d7c33409de4473e4dd00add). As you source most probably was encoded by lossless x264 and after cutting file ffmpeg can't guess that this is x264 stream (x264 SEI was removed).
nevcairiel
19th July 2014, 14:06
That makes sense, but its important to know that x264 produces files that are not standards compliant, so the SEI is required to identify it and switch into quirks mode.
MasterNobody
19th July 2014, 14:31
That makes sense, but its important to know that x264 produces files that are not standards compliant, so the SEI is required to identify it and switch into quirks mode.
Yes, x264 can produce "de jure" not spec compliant streams when encoding in lossless mode with 8x8dct enabled. But x264 was the only encoder (and afaik still is if we exclude JM) for many years that supported and was used for lossless H.264 encoding so "de facto" this became the "standard" for lossless encoding. So this became the chicken and egg problem if you fix decoder to be "de jure" spec compliant than you broke A LOT OF already encoded streams (and like in this example they can miss x264 SEI so you can't really depend on it) that is probably one of the reasons why x264 encoding is also not fixed because it will require this "de jure" spec complaint decoder which will broke all old streams.
P.S. imho it would be better to have in ffmpeg separate param for enabling different compatibility workarounds than depend on SEI that can be missing (for example if decoding starts not from the begining of stream).
nevcairiel
19th July 2014, 14:35
One suggestion was to disable the broken 8x8dct mode in x264 for lossless, that way you only create files that work everywhere. Someone should probably suggest a patch to the x264 ML.
MasterNobody
19th July 2014, 14:41
One suggestion was to disable the broken 8x8dct mode in x264 for lossless, that way you only create files that work everywhere. Someone should probably suggest a patch to the x264 ML.
Agree, this one of the solutions for x264 but decoders still need to have both path to not broke old streams and as I said SEI detection is imho incorrect for this because it is not reliable.
nevcairiel
19th July 2014, 14:43
I'm sure the FFmpeg developers are open to better auto detection ideas. I wouldn't know how to do something else.
MasterNobody
19th July 2014, 14:54
I'm sure the FFmpeg developers are open to better auto detection ideas. I wouldn't know how to do something else.
P.S. imho it would be better to have in ffmpeg separate param for enabling different compatibility workarounds than depend on SEI that can be missing (for example if decoding starts not from the begining of stream).
i.e. make it user or calling app decision instead of auto detection with sensible default which imho currently should be x264 style and latter (when number of non x264 encode lossless streams will be not missingly small) can be changed to spec complaint one.
zerowalker
20th July 2014, 02:53
I can say that it was indeed x264 lossless.
Not sure about the settings, i think it was medium or for that, but may have been slower or faster.
The file was cut with Virtualdub, but as said before seeking causes the issue, and i can gladly provide a full file if that's needed.
But if it's true that x264 produces non-compliant files with lossless in some occasions, that should be fixed. Though don't get how it works in some decoders, but well not my field of expertise i guess.
But how do we go about this, did you make a bug report?
As i haven't done it yet as i see that you are discussing it.
sneaker_ger
20th July 2014, 06:34
The x264 devs already have a fix ready just waiting to be committed to the master git. (i8x8 will simply be turned off for lossless)
zerowalker
20th July 2014, 23:36
Ah great. Hmm, i have used that A Lot for youtube content though.
Think luckily enough they have been decoded correctly. Well probably because it's not seeking so it's bypassing the issue.
vinnytx
22nd July 2014, 12:14
I set LAV Filters with CUVID acceleration and I have opened a WMV9 video.
I was hoping that the DXVA2 acceleration would work since LAV Filters now uses the microsoft MFT decoder but it is not. The DXVA2 does not work for WMV9 video
nevcairiel
22nd July 2014, 15:34
If you want DXVA2 acceleration, then set it to DXVA2 instead of CUVID.
vinnytx
22nd July 2014, 17:54
I'd like to have CUVID acceleration for h264 contents and DXVA2 for wmv9 files.
macromizer
22nd July 2014, 19:04
I'd like to have CUVID acceleration for h264 contents and DXVA2 for wmv9 files.
Then you'll have to manually change your settings.
NikosD
23rd July 2014, 08:23
I'd like to have CUVID acceleration for h264 contents and DXVA2 for wmv9 files.
PotPlayer is flexible enough to allow such configurations.
QBhd
23rd July 2014, 09:30
^^^ Agreed.... it's very easy to do in PP
QB
vinnytx
23rd July 2014, 14:40
Please, tell me how to do
nevcairiel
23rd July 2014, 14:49
Discussions about players are off topic for this thread, please keep them elsewhere.
dude2012
23rd July 2014, 16:02
Nev, was wondering if you have any thoughts on this: I downloaded a song in .dts format and when bitstreaming with 0.62.0 my receiver says DTS ES Discrete 6.1, but if I play as PCM I'm only getting 5.1 PCM stream. Am using dtsdecoder 1.1.0.8. To deepen mystery, when I play Lord of The Rings' DTS ES Discrete 6.1 track as PCM receiver correctly shows 7.1 PCM (since I'm using the "Expand 6.1 to 7.1" option. Here is info from Lav Audio on this song file:
Filter : LAV Audio Decoder - CLSID : {E8E73B6B-4CB3-44A4-BE99-4F7BCB96E491}
- Connected to:
CLSID: {B98D13E7-55DB-4385-A33D-09FD1BA26338}
Filter: LAV Splitter Source (internal)
Pin: Audio
- Connection media type:
Audio: DTS 44100Hz 7ch 1411kbps
AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: Unknown GUID Name {00002001-0000-0010-8000-00AA00389B71}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 256000
cbFormat: 18
WAVEFORMATEX:
wFormatTag: 0x2001
nChannels: 7
nSamplesPerSec: 44100
nAvgBytesPerSec: 176400
nBlockAlign: 4
wBitsPerSample: 16
cbSize: 0 (extra bytes)
nevcairiel
23rd July 2014, 16:36
Try without the external decoder. Maybe it is causing this, its a black box and just does what it does.
zerowalker
23rd July 2014, 16:41
Shouldn't lossless x264 work with --partitions 'none' for the newest LAV Decoder (or ffmpeg etc)?
Cause even if i disable i8x8 it still appears, am i missing something here?
MasterNobody
23rd July 2014, 17:39
Shouldn't lossless x264 work with --partitions 'none' for the newest LAV Decoder (or ffmpeg etc)?
Cause even if i disable i8x8 it still appears, am i missing something here?
You need either update x264 to the newest version (rev. 2453) where it is disabled correctly or if you use old version of x264 then you need to use --no-8x8dct because --partition option can't disable them in I-frames (it only configures inter-frames partitions).
zerowalker
23rd July 2014, 18:38
Ah okay that explains it, thanks
dude2012
23rd July 2014, 18:42
Try without the external decoder. Maybe it is causing this, its a black box and just does what it does.
Interesting, without the .dll Lav does output as 8-channel, although ReClock properties says "PCM IEEE Float", is that a problem?
Thanks.
EDIT: Never mind, I found a discussion on another board where you explain that it's normal for lossy formats like DTS to be output with 32-bit float.
NikosD
25th July 2014, 12:54
@Nev
Any progress on the HEVC_MAIN_VLD ?
Soukyuu
25th July 2014, 14:34
I'm getting weird behavior with mpc-hc and lav now and then. It's pretty rare, so I can't seem to reproduce it. Sometimes, jumping to next chapter in an mkv results in loss of audio. Jumping back to the start of the chapter "revives" it again. Any idea what could be causing this?
ocyl
26th July 2014, 10:35
I'm getting weird behavior with mpc-hc and lav now and then. It's pretty rare, so I can't seem to reproduce it. Sometimes, jumping to next chapter in an mkv results in loss of audio. Jumping back to the start of the chapter "revives" it again. Any idea what could be causing this?
I have experienced similar loss of audio during seeking (doesn't have to be a chapter jump) from time to time, too. Reseeking would bring audio back.
e-t172
26th July 2014, 11:22
Come to think of it, I've experienced that as well. It's kinda rare, though, and I wouldn't be able to reproduce it. Seems to happen at random.
Soukyuu
26th July 2014, 12:38
Good to know I'm not alone. The last file I had this happen with is
General
Unique ID : 201357972140827631690935044814852352308 (0x977C2282D2DD481EB3D30821F9406934)
Complete name : unimportant
Format : Matroska
Format version : Version 2
File size : 434 MiB
Duration : 23mn 39s
Overall bit rate : 2 565 Kbps
Encoded date : UTC 2014-07-25 05:57:50
Writing application : mkvmerge v5.0.1 ('Es ist Sommer') built on Oct 9 2011 11:55:43
Writing library : libebml v1.2.2 + libmatroska v1.3.0
Attachment : Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes / Yes
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High 10@L5.0
Format settings, CABAC : Yes
Format settings, ReFrames : 16 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 23mn 39s
Width : 1 280 pixels
Height : 720 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 10 bits
Scan type : Progressive
Title : 10bit H.264 - 720p
Writing library : x264 core 142 r2431kMod ac76440
Encoding settings : cabac=1 / ref=16 / deblock=1:1:1 / analyse=0x3:0x133 / me=umh / subme=11 / psy=1 / fade_compensate=0.00 / psy_rd=0.72:0.00 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=18 / lookahead_threads=4 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / fgo=0 / bframes=16 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=23 / scenecut=40 / intra_refresh=0 / rc_lookahead=60 / rc=crf / mbtree=1 / crf=16.0000 / qcomp=0.80 / qpmin=0 / qpmax=81 / qpstep=4 / ip_ratio=1.40 / aq=3:0.76
Language : Japanese
Default : Yes
Forced : No
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : A_AAC
Duration : 23mn 39s
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Compression mode : Lossy
Title : 2.0 AAC
Language : Japanese
Default : Yes
Forced : No
Text
ID : 3
Format : ASS
Codec ID : S_TEXT/ASS
Codec ID/Info : Advanced Sub Station Alpha
Compression mode : Lossless
Title : FFF
Language : English
Default : Yes
Forced : No
Menu
00:00:00.000 : en:Prologue
00:02:13.966 : en:Opening
00:03:44.014 : en:Part A
00:10:21.954 : en:Part B
00:18:30.900 : en:Part C
00:21:54.771 : en:Ending
00:23:24.819 : en:Preview
Superb
26th July 2014, 21:38
Audio loss on seek happened randomly here as well. A few times actually. Another seek fixed it, of course, so I didn't even bother reporting until I saw you guys do. ;)
Using the built-in LAV Filters w/ the latest MPC-HC.
Helios61
27th July 2014, 13:49
Hi nevcariel!
Is there a way to output PCM Audio as bitstream (bypass windows mixxer) with lav audio?
Best regards
Helios
nevcairiel
27th July 2014, 13:51
Thats not LAVs task, you need to setup your player to do this, ie. by using a WASAPI exclusive audio renderer.
Helios61
27th July 2014, 14:07
Thats not LAVs task, you need to setup your player to do this, ie. by using a WASAPI exclusive audio renderer.
I think, you've missunderstood :)! I'm talking about a PCM audio track of a mkv video (mulichannel, stereo..).
nevcairiel
27th July 2014, 14:12
No, I think you misunderstand how everything works.
PCM audio in a MKV is no different than any other audio. You need to setup exclusive mode, no other way to bypass the mixer. Nothing LAV Audio is responsible for.
Helios61
27th July 2014, 14:19
I know, but it's a mess to change everytime the audio renderer!
huhn
27th July 2014, 15:48
just stay with wasapi.
clsid
27th July 2014, 16:46
I have experienced similar loss of audio during seeking (doesn't have to be a chapter jump) from time to time, too. Reseeking would bring audio back.
I have seen it happen a few times too. Only with AAC audio. It is pretty rare though.
ocyl
27th July 2014, 23:30
I used to run LAV audio and video decoders with Haali Media Splitter (for more than two years), and did not encounter the audio loss issue. It started after I switched splitter from Haali to LAV recently.
Finnish Flash
28th July 2014, 15:05
I have seen it happen a few times too. Only with AAC audio. It is pretty rare though.I've experienced this too. Also with AAC. Not sure about other formats.
macromizer
28th July 2014, 16:39
I know, but it's a mess to change everytime the audio renderer!
Why would you be doing that to begin with?
trodas
31st July 2014, 01:32
For years, I had no problemo opening and playing a MKV and MP4 files using the Haali Matroska Splitter.
Sadly on x64 Win 7 Ultimate that filter is NOT working anymore (or perhaps the playback is wrong?), so I searched for alternatives.
For example these Gabest’s Matroska Splitter files:
http://www.hack7mc.com/2009/02/mkvs-for-minimalists-on-windows-7.html
Or getting the latest Haali Media Splitter - 20/05/2010 2010-05-20
http://www.matroska.org/downloads/windows.html
Sadly once again, absolutely nothing worked.
MatroskaDiag show that NOTHING is installed using these Haali trusty, great working splitters :( Using these new Gabest's it report:
Matroska Splitter : Gabest's Matroska Splitter
Installed : yes, in D:\Install\Win7 MKV\MatroskaSplitterx86.ax (1.0.3.1)
Can be created : yes
Matroska Splitter : Haali's Matroska Splitter
Installed : no
Can be created : no
RenderFile with DirectShow : OK
But once again it fail to work. MP4 files it won't play at all, and the MKV files plays only audio, video get updated only when I move the window of BSplayer. Suuuuux :(
So I tried the LAV filters 0.62 and get similar result. MP4 no go, MKV no go. Nothing worked. Of course I have every the filetypes selected correctly.
Of course all other videos like avi, wmv, mpg (but not asf, surprisigly it need seeking to play and it still stall at start) are working fine. FFDshow used to decode them.
What I coudl possibly doing wrong?!
sneaker_ger
31st July 2014, 08:44
Are you trying with Windows Media Player? If so, try setting LAV to preferred:
http://www.codecguide.com/windows7_preferred_filter_tweaker.htm
I can also recommend a different player like MPC-HC (http://forum.doom9.org/showthread.php?t=166689). (Comes with integrated LAV.)
trodas
31st July 2014, 10:06
NO no no no! I not trying WinMediaPlayer. It plays the movies anyway... All I want is working BSplayer. That it is. So the DirectShow filters must work.
I tried disabling the Media Foundation completely, but no change. Nothing plays, nothing works at all.
I'm clueless, why there are so terrible problems to play simple file. The old good Haali splitter worked so so so well, never had any troubles. Now this - NOTHING work on Win7 in this regard. I did not want the Mediaplayer at all. No way.
huhn
31st July 2014, 11:59
he said you should try MPC-HC not windows media player.
i tried the BSplayer and i will never do it again...
a toolbar and a firefox extenastion was the firs thing the player was trying to install and later it wanted me to install ffdshow, a mpeg2 decoder, ac3 filter and more of this totally not necessary stuff when lavfilter is already installed.
at the end the player was able to use lavfilter. i can't find a filter list with in the player but there is something wrong with your setup.
so i can't recommend this player at all but lavfilter should work with it.
so please delete all codec stuff on your PC and use MPC-HC linked below from speaker_ger and report back if this works.
clsid
31st July 2014, 13:41
Use your brain. If video is shown when you move the player window, then obviously the splitter and video decoder is working. The problem is with the rendering of the video. First update your graphics driver. Also change the video renderer in the player settings. A good choice would be EVR. Since the problem is unrelated to LAV Filters, you should go to the BSplayer forum for more help.
NikosD
31st July 2014, 17:02
Interesting...from Anandtech's presentation and review of A10-7800:
The other feature using the GCN cores is HEVC Compute support with PowerDVD 14, using OpenCL to speed up decoding for high definition content. With a soon-to-be released update, AMD Fluid Motion Video should also be supported
AMD also points out in its release that PowerDVD 14 is fully supporting HEVC compute via OpenCL on AMD APUs, with also AMD Fluid Motion Video in a later update.
nevcairiel
31st July 2014, 17:53
They can't build a video decoder, so now they advertise some OpenCL stuff Cyberlink builds? :p
NikosD
31st July 2014, 18:12
True, but TBH who can ?
All of them (Intel, Nvidia, AMD) rely on developers like you, FFMpeg and mainly commercial (due to license costs) in order to leverage their HW.
But they build the drivers of course.
theoneofgod
1st August 2014, 12:19
Any progress on this issue here: https://code.google.com/p/lavfilters/issues/detail?id=467&sort=-modified&colspec=ID%20Type%20Status%20Priority%20Filter%20Summary%20Modified
nevcairiel
1st August 2014, 12:30
If there were progress, it would be mentioned in the issue. Asking is not required, and only adds noise.
I can already tell you that it will probably be weeks before I can even look at the issue, because I simply don't have a external DTS decoder available right now. The code looks fine tho, I suggest to simply decode the audio in your PC.
theoneofgod
1st August 2014, 12:35
If there were progress, it would be mentioned in the issue. Asking is not required, and only adds noise.
I can already tell you that it will probably be weeks before I can even look at the issue, because I simply don't have a external DTS decoder available right now. The code looks fine tho, I suggest to simply decode the audio in your PC.
I wouldn't call knowing more than I did already "noise". Thanks for the update.
Dav3Th3Rav3
1st August 2014, 12:42
EDIT: Issue is fixed, caused by a feature in NVIDIA Control Panel. To fix, find Content Type Reported To The Display under Adjust Desktop Color Settings and change from Auto-select (Recommended) to Desktop Programs
The green color shift is only caused when NVIDIA detects Fullscreen Video and applies that preset. Since adjusting it to Desktop Programs, no color shift is observed.
Recently, LAV Video Decoder has been shifting ALL my colors (even outside of the video) to a much greener palette on my PC, and for awhile I thought this was a problem on my machine. I have tried a full clean, downloading the latest NVIDIA Drivers, installing the latest K-Lite, etc but nothing worked.
To my surprise, I just noticed this same exact problem on ANOTHER entirely different PC with vastly different specs. The only thing in common on the setups were LAV Filters builds and both using NVIDIA hardware. Remember, this is all on a FRESH install of the latest K-Lite (10.6.3 - July 17th, 2014) on the latest NVIDIA drivers (340.52 - July 29, 2014).
Issue is persistent across x86 & x64, DXVA2 & CUVID
Since printscreen doesn't capture the problem, here's some images from my phone: (http://imgur.com/a/SoPrG/)
http://i.imgur.com/z7oPrAa.jpg
I will try any suggestion or advice, thanks!
theoneofgod
1st August 2014, 12:46
Recently, LAV Video Decoder has been shifting ALL my colors (even outside of the video) to a much greener palette on my PC, and for awhile I thought this was a problem on my machine. I have tried a full clean, downloading the latest NVIDIA Drivers, installing the latest K-Lite, etc but nothing worked.
To my surprise, I just noticed this same exact problem on ANOTHER entirely different PC with vastly different specs. The only thing in common on the setups were LAV Filters builds and both using NVIDIA hardware. Remember, this is all on a FRESH install of the latest K-Lite (10.6.3 - July 17th, 2014) on the latest NVIDIA drivers (340.52 - July 29, 2014).
Issue is persistent across x86 & x64, DXVA2 & CUVID
Since printscreen doesn't capture the problem, here's some images from my phone: (http://imgur.com/a/SoPrG/)
http://i.imgur.com/z7oPrAa.jpg
I will try any suggestion or advice, thanks!
K-Lite is an overkill for most people. You'd be much better off reproducing the issue, if you just had MPC-HC with the built in LAV Filters. Try different NVIDIA drivers.
nevcairiel
1st August 2014, 12:47
Its impossible for the video decoder to change your colors. Sounds like its something the driver does when it realizes a video is playing.
Dav3Th3Rav3
1st August 2014, 13:08
Its impossible for the video decoder to change your colors. Sounds like its something the driver does when it realizes a video is playing. BINGO!
This is absolutely retarded. Must be a new feature, but NVIDIA has a "Content Type Reported To Display" feature that's by default set to "Auto-select (Recommended)". There are two other settings, Desktop Programs and Fullscreen Video.
The green color shift is only caused when NVIDIA detects Fullscreen Video and applies that preset. Since adjusting it to Desktop Programs, no color shift is observed.
THANK YOU FOR THE QUICK RESPONSE! Excellent support, thank you :-)
http://i.imgur.com/qihbtrS.jpg
Sulik
2nd August 2014, 06:37
AnyETA on DXVA HEVC support ? :)
truexfan81
2nd August 2014, 19:35
AnyETA on DXVA HEVC support ? :)
whenever the amd/nvidia/intel start releasing cards with support for hevc ;)
mastan
2nd August 2014, 20:00
whenever the amd/nvidia/intel start releasing cards with support for hevc ;)
Intel already has: http://downloadmirror.intel.com/23885/eng/ReleaseNotes_GFX_64.pdf
HEVC decode now supported by the driver and video players can now take advantage of the GPU accelerated decode support offered by Intel
Deihmos
3rd August 2014, 12:03
Can anyone assist me with the advance subtitle selection? What I want is if english audio then subs are off - English audio then english forced subs - any other language then english subs.
This is what I have so far.
eng: off;eng:eng|f;*:eng
When audio
foxyshadis
3rd August 2014, 12:37
Intel already has: http://downloadmirror.intel.com/23885/eng/ReleaseNotes_GFX_64.pdf
Intel removed it from the beta driver update in June, as well as more recent betas. I absolutely wouldn't rely on that update until they come out with something stable.
NikosD
3rd August 2014, 14:10
Interesting HEVC OpenCL solution from Strongene here:
http://xhevc.com/en/downloads/downloadCenter.jsp
It's a DS filter working with discrete AMD cards (HD 5000 or better) or APU.
I haven't tried it with Nvidia/Intel, it could work.
Using my old Core2Duo and HD 5750 card, it works for most of my H.265 samples, but with no clear performance benefits over the CPU only decoding.
My platform is very old supporting PCI-E v1.1x4, so maybe that's the problem.(it needs PCI-E v2.0)
It's free, you can try it with better AMD cards/platform or with Nvidia/Intel cards.
nevcairiel
3rd August 2014, 14:12
Any other HEVC decoders are off-topic in the LAV thread, if you want to discuss them, feel free to open a new thread in the HEVC forum.
Deihmos
3rd August 2014, 14:13
The versions after 0.59.1 introduced a bug when I resume from sleep. last version of lav splitter that worked for me is version 59.1. If I play something in WMC then put my PC to sleep then nothing will play if I resume from sleep until I restart the player. Version 0.59.1 works perfectly fine so something must have changed to cause this behavior. Any ideas what is causing this?
It happens on all my computers and have to upgrade from 0.59.1 because of a few bugs with it that were fixed in the newer releases.
NikosD
3rd August 2014, 14:26
I would like to discuss yours DXVA HEVC but...:D
clsid
3rd August 2014, 16:00
Build fails here. Pkg-config is unable to find the speex stuff.
And an on-topic comment regarding HEVC:
There has been an almost 20% increase in decoding performance after today's FFmpeg update ;)
I am getting 98 fps on a 4K sample with the x64 build, and 45 fps with x86 build.
mastan
3rd August 2014, 18:03
Intel removed it from the beta driver update in June, as well as more recent betas. I absolutely wouldn't rely on that update until they come out with something stable.
DXVA Checkers shows HEVC_VLD_Main with the latest stable drivers https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=23885&lang=eng&ProdId=3719
Seems pretty stable to me.
qyot27
3rd August 2014, 18:10
Build fails here. Pkg-config is unable to find the speex stuff.
If the Speex build in question is static, did you pass --pkg-config-flags="--static" to FFmpeg?
detmek
3rd August 2014, 18:20
Those stable drivers are from May. Intel removed it in newer beta drivers from Jun. Some people report Intel also removed 4k H264 in latest beta driver.
BTW, I have those drivers on Pentium G3220 and DXVA Checker does not show HEVC_VLD. But, its Pentum, so...
SUPERBIF
4th August 2014, 14:46
Question:
Have just replaced my very old:
Asrock E350 Zacate
- AMD Dual-Core Zacate E350/E350D APU
- Supports AMD's Cool 'n' Quiet Technology
- UMI 2.5 GT/s
- Integrated AMD Radeon HD 6310 graphics
- DX11 class iGPU, Pixel Shader 5.0
- Max. shared memory 512MB
with this new Intel Q1900-ITX:
- Intel® Quad-Core Processor J1900 (2 GHz)
- Intel® 7th generation (Gen 7) graphics
- DirectX 11.0, Pixel Shader 5.0
I am using LAV filter with XBMC but on my new system I get very low frames on 720p hz live TV so video and audio is not in Sync. I have configured scaling to bicubic -0,60
On my old AMD system this was not a problem.
Is it possible to get MPEG4 hardware acceleration on LAVfilter or should how can I get it to run smoothly?
nevcairiel
4th August 2014, 15:05
J1900 is a Atom CPU, its pretty slow, so no surprises it doesn't work reliably. In theory its GPU is compatible with DXVA2 for H.264/MPEG2/VC-1, but I've never seen Intel support MPEG-4 hardware acceleration.
sneaker_ger
4th August 2014, 15:12
The question would be whether he's talking about H.264 or Mpeg 4 Part 2.
nevcairiel
4th August 2014, 15:14
Most people refer to MPEG-4 Pt2 when they say MPEG-4, because if they don't, they are being uncommonly inaccurate. :p
SUPERBIF
5th August 2014, 07:24
Thanks for the answer. According to Intel it's a Celeron quad core, so I don't know why it not able to play the mpeg4 codec from live TV?
Is my old E350 really better GPU wise and to use with LAV?
axlt2002
5th August 2014, 10:31
Hi guys,
My PC graphic setup comprises an A6-3500 APU and a Radeon HD 6770 1GB GDDR5 GPU. The PC is connected to a Samsung TV through the 6670 HDMI port; the GPU is configured to be the primary graphic card in the BIOS (the motherboard is an ASROCK A75M BIOS v2.00) and this is confirmed also by the Catalyst Control Center. Dual Graphics is also enabled both in the BIOS and in CCC. I then decided to use AMD System Monitor to made some tests.
As you can see from the graphic below, when playing a video game, the 6670 starts to work and sometimes, when needed, the 6530D of the APU works as a supplmentary computational capacity (this is not anyway captured below but I have checked it):
http://i57.tinypic.com/2j0m39y.jpg
So, the Dual Graphics works as expected, considering the 6670 as the primary card.
I have then tried to play a 4K video (125 Mbps) and I was expecting to see the 6670 start to work as well...As you can see from the image below, only the CPUs were used and both GPUs (6670 and 6530D) utilization was 0%. The result was a heavy stuttering playback...
http://i62.tinypic.com/jsevzd.jpg
Just let you know that I was using MPC-HC player with LAV filters and DVXA2 (native) configured to be used also for 4K videos.
Finally the question: is this a correct behaviour? For video playback only the CPU are used? If yes, I'm quite confused to understand the DXVA2 concept...video should be decoded by the GPU...isn't it?
Looking forward for some help!
Thanks in advance!
LigH
5th August 2014, 10:44
Video should be decoded by the GPU if the GPU supports the video format.
Hardly any GPU (except the most recent intel chips) supports HEVC decoding yet. So how should the GPU help if it doesn't know how?
nevcairiel
5th August 2014, 10:57
Just let you know that I was using MPC-HC player with LAV filters and DVXA2 (native) configured to be used also for 4K videos.
Finally the question: is this a correct behaviour? For video playback only the CPU are used? If yes, I'm quite confused to understand the DXVA2 concept...video should be decoded by the GPU...isn't it?
AMD doesn't support 4K video decoding. If you want 4K don't buy AMD, instead get an NVIDIA card, or even an integrated Intel GPU.
axlt2002
5th August 2014, 12:09
Video should be decoded by the GPU if the GPU supports the video format.
Hardly any GPU (except the most recent intel chips) supports HEVC decoding yet. So how should the GPU help if it doesn't know how?
Hi, thanks for the answer!
Here the infos related to the video:
Generale
Complete name : E:\Personale\Multimedia\Test Folder\Audio-Video Check\3840x2160 125 Mbps.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42
File size : 2,69 GiB
Duration : 3min 4s
Overall bit rate mode : Variabile
Overall bit rate : 125 Mbps
Encoded date : UTC 2012-12-31 19:20:50
Tagged date : UTC 2012-12-31 19:20:50
Video
ID : 2
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L5.1
Format settings, CABAC : Si
Format settings, ReFrames : 5 frame
Format settings, GOP : M=3, N=33
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 3min 4s
Bit rate mode : Costante
Bit rate : 125 Mbps
Width : 3.840 pixel
Height : 2.160 pixel
Display aspect ratio : 16:9
Frame rate mode : Costante
Frame rate : 23,976 fps
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bit
Scan type : Progressivo
Bits/(Pixel*Frame) : 0.629
Stream size : 2,69 GiB (100%)
Language : Inglese
Encoded date : UTC 2012-12-31 19:20:52
Tagged date : UTC 2012-12-31 19:20:52
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
It doesn't seem to be HEVC encoded...do I miss something?
sneaker_ger
5th August 2014, 13:08
No, you are correct. You didn't state what codec was used in your initial post so LigH had to guess (and guessed HEVC because of the 4k resolution).
axlt2002
5th August 2014, 13:16
No, you are correct. You didn't state what codec was used in your initial post so LigH had to guess (and guessed HEVC because of the 4k resolution).
lol! I read my initial post several times before posting it in order to check if I was missing some important detail...and I missed it!
So, do you have then some other thoghts on this?
axlt2002
5th August 2014, 13:18
AMD doesn't support 4K video decoding. If you want 4K don't buy AMD, instead get an NVIDIA card, or even an integrated Intel GPU.
4K in this case is just the resolution, but as written the post above, is encoded in a "traditional" manner...
So I really don't understand why the video doesn't pass through the GPU...any suggestion?
sneaker_ger
5th August 2014, 13:19
nevcairiel is referring to the resolution. Everything is correct, it's simply not supported.
huhn
5th August 2014, 13:22
it is UHD. the DXVA decoder is limited depending on the GPU. AMD UHD decoding was or is still broken. i just tried it with my r9 270 no chance it uses the CPU.
you can try it with your gpu to you need to enable (UHD) 4k in lav video decoder. it's an AMD so i don't think it will work.
intel and nvidia can decode UHD
axlt2002
5th August 2014, 15:38
it is UHD. the DXVA decoder is limited depending on the GPU. AMD UHD decoding was or is still broken. i just tried it with my r9 270 no chance it uses the CPU.
you can try it with your gpu to you need to enable (UHD) 4k in lav video decoder. it's an AMD so i don't think it will work.
intel and nvidia can decode UHD
Thanks huhn for your answer!
Indeed I have already enabled UHD in LAV filters settings and DXVA2 (native) as well. The result is the one reported at the begginning of this thread...stuttering playback! :( Unfortunately I tend to agree with you that 4K videos are decoded using only CPU(s).
According to the discussion so far, if I'm going to play an HD video (lets say 1920x1080), is this going to use DXVA (i.e. the 6670 will do its tasks leaving the CPU resting in peace)?
GTPVHD
5th August 2014, 16:20
http://www.guru3d.com/articles_pages/amd_a10_7800_kaveri_apu_review,16.html
Unfortunately Ultra HD videoplayback resulted into stuttering.
The reason why we noticed stuttering seems to be that the trailer is not DXVA encoded, or DXVA at 4K does not yet work.
Kaveri has their latest UVD4 fixed function hardware decoder and still fails miserably at UHD.
huhn
5th August 2014, 16:51
According to the discussion so far, if I'm going to play an HD video (lets say 1920x1080), is this going to use DXVA (i.e. the 6670 will do its tasks leaving the CPU resting in peace)?
the CPU is only uploading the stream to the GPU.
and it's not that easy it has to be compatible with the DXVA decoder.
it's not like 1080p will always work. feed it 120 hz it can die or not used with 16 ref frames ,10 bit, other h264 settings to much kbits. it's not reliable on self made videos. but works fine with BD.
so in short the problem is your GPU/CPU not lavfilter.
AMD said they will fixed this issue years ago never happens maybe with the next series i feel sorry for people how believed them :-(
NikosD
5th August 2014, 19:34
@clsid and nevcairiel
By disabling Hyper-threading I found out that both LAV x86/x64 didn't drop their performance level, almost at all, during 4K HEVC decoding.
The performance drop of using 4 threads instead of 8, was <10% (!) and the CPU usage of 4 threads was 95%.
The OpenCL decoder had more than 80% increase in CPU usage using 4 threads instead of 8 during playback of 4K HEVC. (from 32% to 58%)
It's clear that the FFMpeg's HEVC decoder (LAV) is weak in multi-threading decoding on more than 4 threads.
andyvt
5th August 2014, 19:49
It's clear that the FFMpeg's HEVC decoder (LAV) is weak in multi-threading decoding on more than 4 threads.
That's not necessarily true.
HT is a mechanism to get more throughput from MT workloads (either at the process or system level) where the physical core would otherwise be waiting. In a MT workload where the workload doesn't fit that profile HT has little benefit. TBC, I'm not saying that the hypothesis isn't correct, just that you haven't really proved it because the underlying assumptions are flawed. You would need to re-run the test on a system with more than 4 physical cores and compare runs on all cores vs. runs when limiting processor affinity.
NikosD
5th August 2014, 19:57
I don't have such system.
If someone has such system, he could give it a try and tell us.
The fact is that OpenCL decoder handles 8 threads on 4 cores, a lot better/faster.
James Freeman
5th August 2014, 20:02
Is the LFE channel boosted by 10db or is it decoded "as is" so I need to boost in my receiver/amplifier?
To simulate this boost in the digital domain, can I just lower -10db all other channels?
e-t172
5th August 2014, 20:11
Is the LFE channel boosted by 10db or is it decoded "as is" so I need to boost in my receiver/amplifier?
It is decoded as is, which is how it should be. The 10dB boost should be done at the bass management stage (which is in the AV receiver in most setups), not at the decoding stage.
To simulate this boost in the digital domain, can I just lower -10db all other channels?
Yes.
andyvt
5th August 2014, 20:33
The fact is that OpenCL decoder handles 8 threads on 4 cores, a lot better/faster.
In your original post on this topic you made some comments about CPU utilization, and drew some conclusions based on them. While I don't doubt the veracity of your observations I'm not sure you can draw the conclusions that you have based solely on those observations.
If the OpenCL decoder displays greater utilization of cores 5-8 when HT is enabled it doesn't mean that it's necessarily faster (you would need to measure time to prove this, because as I pointed out before you can't assume that utilization equals speed) or better (you'd have to use SSIM or something similar to compare the decoded frames). Again, I'm not saying that your hypothesis is incorrect, just that the information you have provided so far doesn't demonstrate that it is correct.
NikosD
5th August 2014, 21:11
Between my initial post here and the last post regarding HyperThreading there were a lot of tests posted in my thread here in doom9 that you can find in my signature.
As I wrote to my original post, the PCI-E v1.0 x4 was a real bottleneck and you definitely can't draw final conclusions based on that only.
I didn't draw any conclusion based on C2D CPU with so slow PCI-E bus.
In fact I wrote just the opposite!
About the 5-8 threads when I wrote better handling I meant better use/optimization of 5-8 threads, not picture quality of course!
About faster, I meant the final result of using LAV vs OpenCL decoder.
If LAV manages to utilise better the 5-8 threads, it could be faster than OpenCL CPU decoding part, or even faster in general.
For now, it's just slower and the x86 version, a lot slower.
James Freeman
6th August 2014, 04:28
It is decoded as is, which is how it should be. The 10dB boost should be done at the bass management stage (which is in the AV receiver in most setups), not at the decoding stage.
Thank you e-t172.
I do not have a receiver so I need to manage the bass digitally via plug-in.
What do you think about AC3Filter?
I think it does the job very well after tweaking, clipping prevention and maximizing headroom.
I lower all channels (except LFE) -10db at the input, I set the crossover frequency to 80Hz, then I lower the master volume till my clip audio interface meter shows below -0.2 at peaks.
I created a Surround Test audio file with pink noise (all frequencies equal) every channels reaching -0.1 in his turn, then they are played all together to adjust the master volume maximize headroom.
Note that I down mix the 5.1 to 2.1 via my audio interface control panel which is a huge mixer with everything I need.
axlt2002
6th August 2014, 09:41
the CPU is only uploading the stream to the GPU.
and it's not that easy it has to be compatible with the DXVA decoder.
it's not like 1080p will always work. feed it 120 hz it can die or not used with 16 ref frames ,10 bit, other h264 settings to much kbits. it's not reliable on self made videos. but works fine with BD.
so in short the problem is your GPU/CPU not lavfilter.
AMD said they will fixed this issue years ago never happens maybe with the next series i feel sorry for people how believed them :-(
Hi huhn and All!
Just to doulbe check, I have made other trials with some clips with HD resolution and the 6670 is involved in the process of decoding the video stream. I agree on the fact that also for this resolution a lot depends on other parameters...but with my actual playlist, no issues so far (fortunately).
Afterwards i tried also to play an UHD video with around 17 Mbps rate and the CPUs were able to manage it without any stuttering (total load was around 61%). The rate of 125 Mbps of my intial testing clip was too much for them (load 100%)!
Of course I never pointed LAV filters as the guilty for this issue! My trials started as a simple curiosity and landed in the AMD epic fails on the 4K resolution management! :(
Is this an hardware issue or it will be possible to have it fixed through driver updates? Being a complete noob, is not only a question of redirect the video stram to the GPU?
huhn
6th August 2014, 11:52
Is this an hardware issue or it will be possible to have it fixed through driver updates? Being a complete noob, is not only a question of redirect the video stram to the GPU?
the problem is the GPU can't decode it. they said they will fix it for years nothing happened. so give up on this this was with 5xxx series or 6xxx. i think UVD 2.2 should handle UHD. AMD is currently limited to level 4.1. you need at least level 5.1 for UHD and for high frame rate UHD you need level 5.2.
this is going off topic so i leave it at this feel free to make a new thread if you like to know more about DXVA and there limits.
andyvt
6th August 2014, 12:23
About the 5-8 threads when I wrote better handling I meant better use/optimization of 5-8 threads, not picture quality of course!
On a HT CPU use of threads > physical core count does not necessarily mean that a process is better optimized, it can indicate that or it can indicate the opposite because HT is a mechanism to use HW that would otherwise be idle waiting. If the physical core is fully utilized, and isn't waiting for anything it would be sub-optimal to allow another thread to run.
If you'd like to continue this discussion (since it has veered more towards how CPUs work), perhaps it would be better if we do that somewhere else as to not clutter up this thread. Also, if you can provide your Ffmpeg testing methodology, I have access to a 12/24 box. It would be interesting to see how it actually scales over 4 physical cores.
axlt2002
6th August 2014, 13:13
the problem is the GPU can't decode it. they said they will fix it for years nothing happened. so give up on this this was with 5xxx series or 6xxx. i think UVD 2.2 should handle UHD. AMD is currently limited to level 4.1. you need at least level 5.1 for UHD and for high frame rate UHD you need level 5.2.
this is going off topic so i leave it at this feel free to make a new thread if you like to know more about DXVA and there limits.
Thanks a lot for the support! It was a really interesting discussion...a part the related conclusions! ;)
No need to further go in details right now...
Thanks a lot for the work on LAV filters!
clsid
6th August 2014, 13:58
To stay a bit on-topic. LAV uses 1.5x logical cores by default for the number of threads. So 12 threads on a 4+4 CPU. This performs a bit better than using 8 threads.
It is normal that HT cores have relatively crappy performance. They are limited to whatever resources are not yet utilized. A low-end CPU usually has less resources per physical core than high-end ones. So HT performance on a Pentium is probably less than with a Core i7.
A simple test on a 4+4 Core i7 with 4k HEVC:
threads - fps
1: 27.3
2: 47.8 (~20 per thread extra)
3: 62.0 (~14 per thread extra)
4: 71.1 (~9 per thread extra)
6: 79.8 (~4.4 per thread extra)
8: 85.4 (~2.8 per thread extra)
12: 98.3 (~3.2 per thread extra)
16: 102.6 (~1 per thread extra)
(I did just 1 pass per test, so the numbers can have a little variance)
ahaha2013
6th August 2014, 14:13
The source codes not to support gcc4.9.1? Why when I compiled, there were a lot of warning prompt?
Win8.1 x86
MSYS_MinGW-w64_GCC_491_x86-x64_Full.7z
Mixer73
7th August 2014, 01:51
A simple test on a 4+4 Core i7 with 4k HEVC:
Good test, clsid. Using CPU utilisation is a useless metric.
It is clear the performance gain of most video-related processing is asymptotic as you add more cores, which is to be expected.
NikosD
7th August 2014, 04:31
To stay a bit on-topic. LAV uses 1.5x logical cores by default for the number of threads. So 12 threads on a 4+4 CPU. This performs a bit better than using 8 threads.
A simple test on a 4+4 Core i7 with 4k HEVC:
threads - fps
12: 98.3 (~3.2 per thread extra)
16: 102.6 (~1 per thread extra)
From your test, maybe you could change that x1.5 multiplier to x2
clsid
7th August 2014, 14:03
Not really. The gain is just too small. It won't have much benefit for realtime playback. More threads also means longer initial delay and more overhead.
ney2x
7th August 2014, 16:15
Hi guys!
Slightly off-topic:
A friend of mine is selling his Quadro K2000, does upgrading my existing GPU which is GTX 560 Ti worth it in terms of CUDA Processing?
Thanks in advance.
P.S. My CPU is Core i7 2600K, 16GB DDR3, Windows 7 x64. Running 3 Virtual VM's
Gravitator
7th August 2014, 19:37
Салам!
Picture crumbles when CUVID / MPEG-4 decoder > sample (http://files.videohelp.com/u/227452/test-HW-CUVID%20(sample).avi)
Asmodian
7th August 2014, 22:48
A friend of mine is selling his Quadro K2000, does upgrading my existing GPU which is GTX 560 Ti worth it in terms of CUDA Processing?
Not in the context of LAV; not unless you are doing something that wants double precision floating point. The K2000 is a 560Ti with half the memory bandwidth.
Aleksoid1978
8th August 2014, 00:11
Incorrect detect first audio stream as MP3 - but it's a aac(latm).
http://aleksoid.voserver.net/Sample/AAC_LATM/aac_latm_sample_cut.ts
foxyshadis
9th August 2014, 00:23
Hi huhn and All!
Just to doulbe check, I have made other trials with some clips with HD resolution and the 6670 is involved in the process of decoding the video stream. I agree on the fact that also for this resolution a lot depends on other parameters...but with my actual playlist, no issues so far (fortunately).
Afterwards i tried also to play an UHD video with around 17 Mbps rate and the CPUs were able to manage it without any stuttering (total load was around 61%). The rate of 125 Mbps of my intial testing clip was too much for them (load 100%)!
Of course I never pointed LAV filters as the guilty for this issue! My trials started as a simple curiosity and landed in the AMD epic fails on the 4K resolution management! :(
Is this an hardware issue or it will be possible to have it fixed through driver updates? Being a complete noob, is not only a question of redirect the video stram to the GPU?
Unfortunately, OpenCL decoding is primarily useful for the iDCT/MC/deblock, but at 125Mbps, you have a huge amount of mostly single-threaded CABAC overhead that's probably swamping the decoding time. With a 125Mbps clip, multiple independent slices or CAVLC would make more sense. (HEVC gives us wavefront, which lets massively parallel decoding work far better at huge bitrates.) I hope ffmpeg or libav eventually gets an OpenCL decoding implementation, it'd still help some for these crazy scenarios.
Casshern
10th August 2014, 11:43
There are some new features of mpls playlists being used on some blurays. The german version of "Grand Budapest Hotel" uses multi-angle mpls files to select the different language versions (they differ by localized inserts and title cards). Unfortunately LAV only picks the first playlist-angle out of such a mpls playlist, without any option to choose the other (sub-playlist) versions. This is completely different from multi-angle video streams.
kasper93
10th August 2014, 12:28
I wouldn't expect lav filters to support advance Blu-ray features. This is a job for separate filter. http://forum.doom9.org/showthread.php?t=164314 though it isn't integrated in any player yet.
Tapatalk 4 @ GT-I9300
Casshern
11th August 2014, 14:40
I wouldn't expect lav filters to support advance Blu-ray features. This is a job for separate filter. http://forum.doom9.org/showthread.php?t=164314 though it isn't integrated in any player yet.
Tapatalk 4 @ GT-I9300
Its not really an advanced bluray-feature. After all LAV allows to open mpls files and index.bmv files with chapters. This is just a special kind of mpls file.
starla
12th August 2014, 11:04
There are some new features of mpls playlists being used on some blurays. The german version of "Grand Budapest Hotel" uses multi-angle mpls files to select the different language versions (they differ by localized inserts and title cards). Unfortunately LAV only picks the first playlist-angle out of such a mpls playlist, without any option to choose the other (sub-playlist) versions. This is completely different from multi-angle video streams.
That Blu-ray is probably having HDMV or BD-J based logic that is selecting the angle based on the user selected language. If such is true then it would require full Blu-ray support to be present in the LAV splitter.
Mercury_22
12th August 2014, 14:07
@NEV Any chance you'll add up-mixing too to LAVAudio Mixer ?
huhn
12th August 2014, 14:33
@NEV Any chance you'll add up-mixing too to LAVAudio Mixer ?
I take this as yes:
https://code.google.com/p/lavfilters/issues/detail?id=11&colspec=ID%20Type%20Status%20Priority%20Filter%20Summary%20Modified
Casshern
12th August 2014, 14:47
That Blu-ray is probably having HDMV or BD-J based logic that is selecting the angle based on the user selected language. If such is true then it would require full Blu-ray support to be present in the LAV splitter.
This purely a matter of an mpls feature. The playlist file contains all the "angles" - no bd-j logc necessary. At the moment LAV plays the first angle of such playlist files. It would be nice if it would expose a choice of which angle to play - just like LAV has chapter support. This is not hugely important and might not even be on the agenda of the LAV developers, but maybe its easy to implement. And even if not, then i hope its still interesting to see that such mpls files exist.
nevcairiel
12th August 2014, 15:16
Even if it did allow switching of angles, there is no guarantee that there is any information which angle is which, so you would probably still have to guess which to play.
starla
12th August 2014, 19:52
This purely a matter of an mpls feature. The playlist file contains all the "angles" - no bd-j logc necessary. At the moment LAV plays the first angle of such playlist files. It would be nice if it would expose a choice of which angle to play - just like LAV has chapter support. This is not hugely important and might not even be on the agenda of the LAV developers, but maybe its easy to implement. And even if not, then i hope its still interesting to see that such mpls files exist.
Yes the playlist will contain the possible angles, but as nevcairiel said the angle chosing logic is done in HDMV or BD-J side (or by end user by testing the all possible angles - not that user friendly when the first different clip based on the angle could be after a half of the movie is already watched :))
Casshern
12th August 2014, 21:37
Even if it did allow switching of angles, there is no guarantee that there is any information which angle is which, so you would probably still have to guess which to play.
This would be no different from having to guess which subtitle track is for the hearing impaired, contains only forced subtitles or is the regular subtitle track. Also with audio tracks sometimes it's not obvious which track is which (due to wrong language flags, or multiple english tracks for SDH, commentary, music only etc.).
With "Grand Budapest Hotel" it would not involve much guessing as the first localized titlecard appears right after the credit sequence.
Anyhow - it's not a "crucial" feature or anything. But as LAV opens mpls files it would be nice if it also supported this feature. And as you are aware now (or have been all along) that these files exist my mission is complete - the rest it up to your judgement, mood and time.
Manni
13th August 2014, 15:03
Hi everyone,
First of all, as this is my first post here, I'd like to thank all those responsible for LAV. Great work!
I have noticed a small incompatibility between LAV and MadVR (which I also reported to Madshi).
I'm using the KCP Black package but I can reproduce the issue if I install the latest LAV, MadVR and MPC-HC or MPC-BE packages, so not KCP or player related.
If I leave the auto display mode option empty in the MadVR settings (so MadVR doesn't switch to the closest refresh rate for the content being played), all is well.
As soon as I populate the line with valid refresh rates for my display (a JVC X30 / RS-45), i.e. 1080p23, 1080p24, 1080p50, 1080p59 and 1080p60, I get a black screen when launching a DVD (which switches the display mode from my default of 1080p23 to 1080p50 or 1080p59 depending on whether the DVD is PAL or NTSC).
The only way to keep the auto display mode is to select DXVA2 native h/w acceleration in the LAV Video settings instead of none.
Any other mode causes black screen after the refresh rate change when playing DVDs.
Any idea what might be causing this, and whether this is LAV or MadVR related?
Thanks!
Trioli
15th August 2014, 18:57
I've been using this since the very first version, it's very impressive how far it got :)
I wonder, is there any plan to implement some kind of Volume normalization? I realize that software amplification isn't very desireable but right now i have to use ffdshow audio processor for normalization, would like to see this in LAV.
nevcairiel
15th August 2014, 19:03
Unlikely to ever happen, sorry.
magic144
16th August 2014, 06:42
Any progress on this issue here: https://code.google.com/p/lavfilters/issues/detail?id=467&sort=-modified&colspec=ID%20Type%20Status%20Priority%20Filter%20Summary%20Modified
I know this is quite a long way back now, but I just got round to trying this on my system. The DTS sample provided plays back at the correct speed via bitstreaming to my external Yamaha amp over HDMI. My setup uses Zoom Player, LAV, and I have an AMD Radeon HD 5670 with the 14.4 drivers.
Just wanted to provide this feedback.
nevcairiel
16th August 2014, 07:47
I'm quite sure it should work, but maybe some receivers just don't do 44.1
clsid
16th August 2014, 15:11
That is possible, since AC3Filter has an option to disallow bitstreaming for 44.1.
theoneofgod
17th August 2014, 02:02
I know this is quite a long way back now, but I just got round to trying this on my system. The DTS sample provided plays back at the correct speed via bitstreaming to my external Yamaha amp over HDMI. My setup uses Zoom Player, LAV, and I have an AMD Radeon HD 5670 with the 14.4 drivers.
Just wanted to provide this feedback.
I was running through optical out.
SeeMoreDigital
17th August 2014, 10:43
I was running through optical out.
As nevcairiel has already mentioned. Not all receivers support DTS at 44.1KHz (as used with DTS-CD).
What does it say in your amplifiers user manual with regards to DTS support?
theoneofgod
18th August 2014, 12:29
As nevcairiel has already mentioned. Not all receivers support DTS at 44.1KHz (as used with DTS-CD).
What does it say in your amplifiers user manual with regards to DTS support?
Nothing about DTS CD or DTS at 44.1KHz, so that must be it.
Though it might be a limitation my AV has with the Optical input, not able to test with HDMI at the moment.
clsid
18th August 2014, 15:23
@nevcairiel
Another MS DMO/MFT bug?
http://forum.doom9.org/showthread.php?p=1690335
filler56789
19th August 2014, 12:37
@nevcairiel
Another MS DMO/MFT bug?
http://forum.doom9.org/showthread.php?p=1690335
Well, it looks like M$ managed to bork both the decoder and the encoder, so I don't see how (or why) LAV Video should provide workarounds for their bugs.
IanD
20th August 2014, 08:58
Is there an intention to incorporate MVC decoding in LAV filters once someone develops a stable decoder filter?
nevcairiel
20th August 2014, 10:01
Why, do you have one? :)
IanD
20th August 2014, 11:16
Why, do you have one? :)
I wish.
No, I would like to be able to watch my 3D Bluray on my HTPC with MPC/LAV and avoid all the commercial software crap and limitations, as a future option. I'm using MPC/LAV for most of my 2D viewing already, although I miss having DVD menu navigation with the EVR Custom renderer.
I notice that the open source community is having a lot of trouble getting a stable fast decoder for MVC.
nevcairiel
20th August 2014, 11:18
For a bit I considered building this with Intels software decoder in the MSDK, but I've not have the time to pursue these plans, plus you still need a video renderer to be able to deal with it, unless you just want Half-SBS as a work around.
The reason why there is no open-source decoder is that 3D is widely unpopular and mostly considered nothing more than a novelty, which I kinda agree with. 3D at home seems really underwhelming, maybe unless you have a giant projector setup, but on TVs it just doesn't work well IMHO.
ryrynz
21st August 2014, 08:10
Nevcairiel, will the patch for 453 (allowing selecting subtitles by substring match) be included in the next version? I'm finding this particularly useful, cheers.
IanD
21st August 2014, 08:13
The reason why there is no open-source decoder is that 3D is widely unpopular and mostly considered nothing more than a novelty, which I kinda agree with. 3D at home seems really underwhelming, maybe unless you have a giant projector setup, but on TVs it just doesn't work well IMHO.
I'm hoping Ultra-D and its ilk will change all that: partly because it should be possible to see a little around objects by moving the POV, like a hologram, and partly because of the lack of glasses.
I would love a TV that can present material as though looking through a window, where the viewer is not merely constrained to a face-on perspective. This is what 3D should have been when it was recently re-released.
I was not particularly impressed with cinema 3D using polarised glasses, but was more impressed with a brief dabble with a passive 3D TV in the home environment (apart from the resolution reduction).
As far as the 3D decoder, I would love an implementation that can perform hardware decoding to substantially speed up the process, whether by Intel or Nvidia or ATI mainstream domestic PU.
Djfe
21st August 2014, 17:46
@nevcairiel I wanted to ask whether you are interested in optimizing your LAV Splitter for programms like the TS Doctor if you have time
The LAV Splitter is awesome for playback but not for editing software which needs to now exact timecodes of shown frames and whether it is an I/B/P-Frame.
The Haali Media Splitter behaves better in that aspect but has sometimes other issues with playback
it would be really awesome if you could maybe even work together with Cypheros to implement a better handling of TS files/H264 for his software
nevcairiel
21st August 2014, 17:52
My focus is playback. Patches are welcome to improve any other use cases.
Djfe
21st August 2014, 19:46
OK, maybe in the future
atm I'm not really familiar with C++
andyvt
21st August 2014, 19:56
@nevcairiel I wanted to ask whether you are interested in optimizing your LAV Splitter for programms like the TS Doctor if you have time
The LAV Splitter is awesome for playback but not for editing software which needs to now exact timecodes of shown frames and whether it is an I/B/P-Frame.
FWIW, while you can edit with DS it's not the best framework for doing so. I've found that working directly on top of ffmpeg to be a much better approach.
Djfe
21st August 2014, 21:29
Well TSD just cuts the TS Stream and uses LAV and Haali to get an information at which ts packets it has to cut off the stream and show the user the video at these packets
you can use ffdshowtryout as a decoder but isn't as reliable as LAV though
I don't want to recode my videos/records I just want to cut the stream without loosing any quality
Richardw322
22nd August 2014, 00:33
Setting LAV as preferred is not the correct choice. You must set it to "USE MERIT" if you want xy-vsfilter to get loaded. It is explained in the help of Win7DSFilterTweaker. Do MKV files show up in the MC library? If not, that is why it refuses to play them. Some Registry tweaks are needed for MC to recognize such files. Use K-Lite Codec Pack (Basic version, with "LAV for everything" install profile) and everything will be configured correctly fully automatically.
Thanks for the tip, CLSID. Downloaded the LAV filters and have been going nuts trying to play MKV (Personal DVD rips, I have the disc) in Media Center. (Also doesn't help that the little woman has a sprained ankle and wont let me near the computer!!) :scared:
Djfe
23rd August 2014, 17:04
@nevcairiel can you take a look at the following file pls:
http://www.filedropper.com/02-2020-33-42paokfc-benfica
the lav filters only decode the audio tracks (except the dolby e/aes3 one, but that is expected since it's a commercial codec) but not the video track
it's MPEG HD and was muxed/encoded by an uplink
filler56789
23rd August 2014, 17:51
http://www.filedropper.com/02-2020-33-42paokfc-benfica
the lav filters only decode the audio tracks (except the dolby e/aes3 one, but that is expected since it's a commercial codec) but not the video track
it's MPEG HD and was muxed/encoded by an uplink
It seems the "uplink" produced a broken video stream. Mplayer displays the images, but also shows a warning when playing the demuxed .m2v file (no warning when playing the TS file). BTW, ffmpeg is unable to demux or remux that video (outputs a 0-byte file). I managed to demux via TSmuxer. FWIW, the MPEG-2 input plugin for VirtualDub is unable to open that stream as well.
P.S.: Next time, please choose a file host that lets us know the download size ;)
Djfe
24th August 2014, 00:51
as far as I know the video stream only consists out of P-Frames -> no I-Frames
even though it is probably broken in some way: there has to be a fix, else VLC, MPlayer, ffdshow and maybe other programms wouldn't be able to play the stream
interesting that even demuxers are are failing on it
maybe I should file a bug report for ffmpeg as well
nevcairiel
24th August 2014, 05:43
If you have a broken file, always test with FFmpeg/ffplay, and if it fails there as well, you cab immediately open an issue with them instead, since that's what LAV is based on.
Note that a stream without any key frames is likely to remain unplayable. Broken files are broken.
Personally, I'll at least not spent much time at all trying to fix obviously broken streams.
IanD
24th August 2014, 05:52
as far as I know the video stream only consists out of P-Frames -> no I-Frames
Not possible: P frames are just differences from I frames, you must have I frames to start with.
Perhaps you meant it's all I frames, in which case it would be very close to "motion jpeg".
Whatever the situation, it is up to sources to follow standards, not decoders to allow for every possible variation.
Kurtnoise
24th August 2014, 08:12
Build fails here. Pkg-config is unable to find the speex stuff.
Same error occurs here with libopus using a fresh copy of the trunk...
NikosD
24th August 2014, 08:17
No video with this sample using LAV x86/x64
HEVC incompatibility (I think LAV splitter)?
https://www.sendspace.com/file/rxsbka
Strongene's HEVC decoder plays fine in PotPlayer.
nevcairiel
24th August 2014, 08:43
HEVC in FLV is not supported and never will be (unless Adobe creates a spec). There is no official or even unofficial spec for that, and everything else is just random hacks, and neither me nor ffmpeg will support such practices.
Don't use flv, never flv.
NikosD
24th August 2014, 09:46
I don't.
But obviously others do.
Is there officially H.264 in FLV ?
Because if there is, then it will be for H.265, my guess.
The clip is from Strongene's samples and that's why they give an flv splitter along with their decoder.
But once again PotPlayer supports even that!
nevcairiel
24th August 2014, 09:47
Developers that steal code from others obviously also have no trouble supporting broken hacks.
Its not a big accomplishment to support that. Its like two lines of code, but its called having principles and design goals instead of littering the code with hacks, or it ends up like an unmaintainable mess like ffdshow or the old mpc-hc decoders.
NikosD
24th August 2014, 10:28
There are hacks everywhere.
If literally it's just a few lines of code, then I'm sure you'll find a way to maintain LAV filters and protect them becoming a mess.
nevcairiel
24th August 2014, 10:35
Its not the only reason. I will not support such behavior, and as such it will never happen, and hopefully deter people from creating it in the first place.
VFR maniac
24th August 2014, 13:25
Strongene's HEVC-in-FLV is stupid.
Strongene abuses CodecIDs of FLV and probably brings about fatal incompatibility with the future supports of FLV.
If we support them, the workaround will be highly complicated and encroach on unrelated regions.
From 2 to 7 CodecIDs are predefined in the official spec (Version 10.1), and Strongene defines from 11 to 14 for HEVC including draft versions.
CodecID is only 4-bit, i.e. CodecIDs are values of the range of 0 to 15.
If we permit Strongene's, the rest is 0, 1, 8, 9, 10 and 15.
Djfe
24th August 2014, 13:54
Not possible: P frames are just differences from I frames, you must have I frames to start with.
Perhaps you meant it's all I frames, in which case it would be very close to "motion jpeg".
Whatever the situation, it is up to sources to follow standards, not decoders to allow for every possible variation.
Ok than it has probably I-Frames
but except the artefacts at the beginning it is playing fine
I tested it with ffplay and the video plays fine, it just uses the wrong audio stream on default (dolby e), which it isn't able to play
ffplay output:
[mpeg2video @ 03d74a00] Invalid frame dimensions 0x0. 0B f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframe f=0/0
[mpegts @ 03d73ea0] PES packet size mismatch 0KB sq= 0B f=0/0
Last message repeated 2 times
Input #0, mpegts, from 'Y:\TSD Test\test\02-20_20-33-42_PAOK FC -Benfica_.ts'
:
Duration: 00:00:19.96, start: 32171.787089, bitrate: 20976 kb/s
Program 1
Stream #0:0[0x200]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420
p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], max. 17500 kb/s, 25 fps, 25 tbr, 90k
tbn, 50 tbc
Stream #0:1[0x1010](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, ster
eo, s16p, 373 kb/s
Stream #0:2[0x1020](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, ster
eo, s16p, 373 kb/s
Stream #0:3[0x1030](eng): Audio: s302m (BSSD / 0x44535342), 48000 Hz, stereo
, s32, 2304 kb/s
[mpeg2video @ 03d74a00] warning: first frame is no keyframe
[mpeg2video @ 03d74a00] warning: first frame is no keyframeB f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframe f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframeB f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframeB f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframeB f=0/0
[mpeg2video @ 03d74a00] warning: first frame is no keyframeB f=0/0
Last message repeated 1 times
[mpegts @ 03d73ea0] PES packet size mismatch 509KB sq= 0B f=0/0
[s302m @ 03d77680] frame has invalid header 209KB sq= 0B f=0/0
[mpeg2video @ 03d74a00] ac-tex damaged at 84 547KB sq= 0B f=0/0
32193.62 A-V: -0.002 fd= 18 aq= 0KB vq= 0KB sq= 0B f=0/0
first frame is no keyframe is probably the reason for the artefacts at the beginning
since it plays fine, I won't file a bug, yet.
filler56789
24th August 2014, 14:12
...
first frame is no keyframe is probably the reason for the artefacts at the beginning
Nope, because I see that warning message "all the time" when using MPlayer with many different types of video.
since it plays fine, I won't file a bug, yet.
ffmpeg is unable to demux/remux the M2V stream, so at least you should post the sample file to their FTP site.
jkauff
24th August 2014, 15:44
I don't.
But obviously others do.
Is there officially H.264 in FLV ?
Because if there is, then it will be for H.265, my guess.
The clip is from Strongene's samples and that's why they give an flv splitter along with their decoder.
But once again PotPlayer supports even that!
I don't think there will ever be another version of FLV. All of Adobe's new tools use HTML5.
Djfe
24th August 2014, 15:46
Nope, because I see that warning message "all the time" when using MPlayer with many different types of video.
ffmpeg is unable to demux/remux the M2V stream, so at least you should post the sample file to their FTP site.
thx for reminding me of that, will do
I hope the following command was correct:
C:\Users\Siggi\Desktop\ffmpeg-20140824-git-1aa153d-win32-static\bin>ffmpeg -i "Y
:\TSD Test\test\02-20_20-33-42_PAOK FC -Benfica_.ts" -vcodec copy -an -f mpeg
2video "Y:\TSD Test\test\test.m2v"
ffmpeg version N-65860-g1aa153d Copyright (c) 2000-2014 the FFmpeg developers
built on Aug 24 2014 00:08:13 with gcc 4.8.3 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrw
b --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinge
r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --en
able-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
libx265 --enable-libxavs --enable-libxvid --enable-decklink --enable-zlib
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 0.101 / 56. 0.101
libavformat 56. 2.100 / 56. 2.100
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 0.103 / 5. 0.103
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
[mpeg2video @ 03ee4da0] Invalid frame dimensions 0x0.
[mpeg2video @ 03ee4da0] warning: first frame is no keyframe
[mpegts @ 00387ee0] PES packet size mismatch
Last message repeated 2 times
Input #0, mpegts, from 'Y:\TSD Test\test\02-20_20-33-42_PAOK FC -Benfica_.ts'
:
Duration: 00:00:19.96, start: 32171.787089, bitrate: 20976 kb/s
Program 1
Stream #0:0[0x200]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420
p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], max. 17500 kb/s, 25 fps, 25 tbr, 90k
tbn, 50 tbc
Stream #0:1[0x1010](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, ster
eo, s16p, 373 kb/s
Stream #0:2[0x1020](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, ster
eo, s16p, 373 kb/s
Stream #0:3[0x1030](eng): Audio: s302m (BSSD / 0x44535342), 48000 Hz, stereo
, s32, 2304 kb/s
Output #0, mpeg2video, to 'Y:\TSD Test\test\test.m2v':
Metadata:
encoder : Lavf56.2.100
Stream #0:0: Video: mpeg2video ([2][0][0][0] / 0x0002), yuv420p, 1920x1080 [
SAR 1:1 DAR 16:9], q=2-31, max. 17500 kb/s, 25 fps, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 0 fps=0.0 q=-1.0 Lsize= 0kB time=00:00:00.00 bitrate=N/A
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing ove
rhead: unknown
EDIT:
attached full log
EDIT2:
Trac Ticket
https://trac.ffmpeg.org/ticket/3890
zerowalker
24th August 2014, 23:58
Am i doing something wrong or is x264 PC range not decoding correctly?
It always assume it's TV range.
DragonQ
25th August 2014, 12:21
Am i doing something wrong or is x264 PC range not decoding correctly?
It always assume it's TV range.
Those options only apply if you're outputting RGB. By default LAV will send NV12 or YV12 to the renderer.
zerowalker
25th August 2014, 14:23
Ah that explains it.
Hmm, to bad this can't be done with flags to the Renderer, at least not with EVR i guess.
But well, is there any drawback with decoding to RGB vs "Original Format"?
LigH
25th August 2014, 14:40
1. conversion takes time and CPU load
2. conversion reduces quality (rounding errors, might even become apparent for only 8 bits per component)
3. result is twice as large (RGB: 24 bit per pixel; YV12: average 12 bits per pixel over 2x2 pixels), takes more time to pass the bus from PC RAM to video card memory
zerowalker
25th August 2014, 14:49
2. conversion reduces quality (rounding errors, might even become apparent for only 8 bits per component)
Won't this always occur anyway?
1,3 are something to think of though.
xabregas
25th August 2014, 16:29
Can someone be kind enough to explain me file source async. I never used it or saw it in mpc -» filters while watching a video, and now i see, before it was lav splitter source alone and now i have lav splitter and file source async. What is this? Which one is better?
TIA
nevcairiel
25th August 2014, 16:37
There should be no difference in playback at all. If there is, its a bug.
vivan
25th August 2014, 16:42
Won't this always occur anyway?It will, but at last stage.
Chroma upsampling -> color conversion (yuv -> rgb) -> upscaling.
madVR does all of this with 16 bit precision and dithers to 8 bit at the last stage. But if you force decoder to output rgb, you will get needless precision decrease in the middle.
Probably it would be noticable only at huge upscale factors and with high bit depth source (in form of huge grain size)... but still.
sneaker_ger
25th August 2014, 18:43
Hmm, to bad this can't be done with flags to the Renderer, at least not with EVR i guess.
I remember the CCCP team saying that flags including colormatrix (don't know about range) actually could be handled by the MS renderers but that LAV is not sending them because of some blacklist. They had a patch but I don't know what came out of it. nevcairiel must have had his reasons to blacklist them.
Was this problem re-evaluated?
nevcairiel
25th August 2014, 19:45
Its sent to EVR now, but it only obeys the matrix to some degree, not the range flags.
zerowalker
25th August 2014, 19:51
It will, but at last stage.
Chroma upsampling -> color conversion (yuv -> rgb) -> upscaling.
madVR does all of this with 16 bit precision and dithers to 8 bit at the last stage. But if you force decoder to output rgb, you will get needless precision decrease in the middle.
Probably it would be noticable only at huge upscale factors and with high bit depth source (in form of huge grain size)... but still.
Didn't know 16bit RGB to YUV was possible. Or well i mean it was even useful.
But hmm, well to bad, renders Fullrange pretty worthless as it's not automatic in a good sense. Or well not useless but wanted it to be better;P
foxyshadis
25th August 2014, 23:35
Not possible: P frames are just differences from I frames, you must have I frames to start with.
Perhaps you meant it's all I frames, in which case it would be very close to "motion jpeg".
Whatever the situation, it is up to sources to follow standards, not decoders to allow for every possible variation.
This is known as Periodic Intra Refresh, and x264 has had it for nearly 5 years, professional MPEG-2 encoders even longer. It is perfectly cromulent, it's up to ffmpeg to fix their intra-refresh support. It's rare on TV, but common in video-conferencing.
It will, but at last stage.
Chroma upsampling -> color conversion (yuv -> rgb) -> upscaling.
madVR does all of this with 16 bit precision and dithers to 8 bit at the last stage. But if you force decoder to output rgb, you will get needless precision decrease in the middle.
Probably it would be noticable only at huge upscale factors and with high bit depth source (in form of huge grain size)... but still.
All handled in 32-bit floating point, actually; such high precision that even though madvr and shaders convert to and from RGB constantly it never hurts quality. Linear light upscaling and dithering are two more things that benefit from better input; even if you don't use them, the video gets flatter and blotchier if you truncate early, a particular problem on animation.
zerowalker
26th August 2014, 00:25
I knew it's used in anything that changes colors or add effects etc. As less rounding errors and then dither down will "ease the issues".
But that YUV to RGB did this is something i didn't know.
I thought it would simply translate the color information, not doing any upsampling or downsampling that would matter, at least for YV24 (as the other has low Chroma).
Hmm, is this something that can be used when using YUV in editing software like After Effects etc, or will i have to decode it manually to RGB48 or something weird for that to be possible?
nevcairiel
26th August 2014, 05:50
This is known as Periodic Intra Refresh, and x264 has had it for nearly 5 years, professional MPEG-2 encoders even longer. It is perfectly cromulent, it's up to ffmpeg to fix their intra-refresh support. It's rare on TV, but common in video-conferencing.
While it does technically play when you just assume it has intra refresh, it lacks any metadata to inform the decoder of this fact, and as such the decoder is incapable to determine what to do to get an artifact free image.
foxyshadis
26th August 2014, 11:11
While it does technically play when you just assume it has intra refresh, it lacks any metadata to inform the decoder of this fact, and as such the decoder is incapable to determine what to do to get an artifact free image.
I bet it does, but ffmpeg doesn't parse it. There's a ton of user-private, reserved, or "unimplemented" descriptors shown when you run it through dvbsnoop, and I wouldn't be surprised if one of them was it.
nevcairiel
26th August 2014, 11:49
I bet it does, but ffmpeg doesn't parse it. There's a ton of user-private, reserved, or "unimplemented" descriptors shown when you run it through dvbsnoop, and I wouldn't be surprised if one of them was it.
kierank looked at it, and he didnt recognize anything indicating it, and I figure he would know. But who knows, a stream with Dolby E is obviously something internal, maybe they use some special encoder that writes its own magic.
DragonQ
28th August 2014, 21:38
So I noticed today that when playing a video on my HTPC with a Dolby TrueHD audio track, the audio is really dodgy (constant stutter and popping). If I look at EVR's graph the red line looks like a square wave (rather than a flat line) when it's doing this, plus the "actual fps" is down to like 5-6 instead of 23.796 (see this screenshot (http://www.aotplaza.com/Files/HTPC/Screengrabs/LAV%20-%20Dolby%20TrueHD%20Issue.png)). It's not a dodgy file since it happens with all of them (DTS-HD MA and other formats are fine), and it happens in both MPC-HC with MadVR and MediaPortal with EVR, so I don't think it's a renderer-specific issue. I have LAV Audio set to downmix to 5.1 using standard downmixing values, plus Clipping Protection and Normalise Matrix are enabled. The strange thing is that if I keep watching (with the audio muted because it's hellish to listen to), it'll sometimes go away. Sometimes it'll come back as well, and if I play the video from the start again it'll randomly fix itself and break itself at different points in the video. This suggests to me it that isn't a timecode issue either. Oh, and seeking always seems to break it as well.
Has anyone else noticed a problem with Dolby TrueHD? The files all play fine on my other machines (which all use LAV Filters too), although I don't use HDMI or 5.1 on any of those.
SeeMoreDigital
28th August 2014, 21:55
So I noticed today that when playing a video on my HTPC with a Dolby TrueHD audio track, the audio is really dodgy (constant stutter and popping).
Out of interest. What container are these media files stored in, .m2ts or .mkv?
DragonQ
28th August 2014, 21:57
Almost all of my HD stuff is MKV. Do you think it could be a muxing issue?
EDIT: It turns out I only have a handful of videos with TrueHD (all 23.976p films in MKVs).
wanezhiling
30th August 2014, 16:25
LAV is integrated into KMPlayer 4.0 beta now.
NikosD
30th August 2014, 20:32
Does KMPlayer integrates nightly builds, because MPC-HC is far behind latest builds.
wanezhiling
31st August 2014, 05:30
No, they only use stable builds.
sneaker_ger
31st August 2014, 08:24
About the x264 lossless bug:
I'm sure the FFmpeg developers are open to better auto detection ideas. I wouldn't know how to do something else.
Didn't x264 do some watermarking in otherwise unused bits so the developers can identify x264 encodes even in the absence of the SEI? That was discussed on doom9 some time ago.
NikosD
31st August 2014, 13:00
@nevcairiel
When do you think next stable version will be out ? Is there an ETA ?
I think 0.62 is too old now.
nevcairiel
31st August 2014, 13:01
Luckily, what you think is of no importance to LAV. :)
Releases come when they are deemed ready, not when you would like them to be.
NikosD
31st August 2014, 13:23
Being impolite is your forte, undoubtedly your most strong characteristic, but the whole thing it's not about me or even you (!) - yes there are things in this world that are not around you, but unfortunately they are dependent of you :cool:
It seems that the only way for LAV filters to be updated inside various players that use them, is to release a next stable version.
A lot of people is struggling with slow HEVC decoders and latest nightly build of LAV video, certainly has a serious improvement on that.
It would be useful for the community, not me.
I use nightly builds and don't wait for stable releases.
nevcairiel
31st August 2014, 13:34
You know why the latest nightly is so much faster? Because I worked on making it so. It didn't magically happen over night just by itself, you know.
But anyone that thinks he knows whats best, its all open-source, feel free to create your own project!
I'll keep running my project the way I see fit. It works quite well for me.
PS:
MPC-HC doesn't limit itself to release versions.
fairchild
31st August 2014, 15:35
Out of curiousity, what is the link to the Lav Filters nightly so I can bookmark it and never ask this again? I know the one for the MPC-HC nightlies is http://nightly.mpc-hc.org/
I usually stick to the stable releases unless some new features are coming, but would be nice to know when I'm feeling frisky and would like to be on the bleeding edge.
Thanks for all your hard work Nev!
filler56789
31st August 2014, 15:46
Out of curiousity, what is the link to the Lav Filters nightly so I can bookmark it and never ask this again?
Currently there are ZERO :( sites hosting "the freshest" revisions of LAV.
The last one to die was betaking's VDISK,
last-updated on 2014-June-20:
http://www.vdisk.cn/betaking
wanezhiling
31st August 2014, 16:45
The last one to die was betaking's VDISK,
last-updated on 2014-June-20
Betaking is updating his builds here (http://pan.baidu.com/s/1gd1its3#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6).
filler56789
31st August 2014, 17:22
Betaking is updating his builds here (http://pan.baidu.com/s/1gd1its3#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6).
Thanks for the up-to-date info :thanks: ---
--- the old bookmark (http://pan.baidu.com/share/link?uk=2214911777&shareid=497331#dir/path=%2F%E8%87%AA%E7%BC%96%E8%AF%91%E8%BD%AF%E4%BB%B6) now leads to a different page.
NikosD
31st August 2014, 17:43
You know why the latest nightly is so much faster? Because I worked on making it so. It didn't magically happen over night just by itself, you know.
You worked on something that others did.
You just embedded some code from OpenHEVC project into the LAV filters.
You didn't steal it of course, because it's an open-source fork of FFMpeg, but you didn't write anything.
You just ported to LAV filters, OK that's a job too.
Also it was me that I insisted on that Strongene's decoder was so much faster than LAV video in HEVC due to vectorized code that you took from OpenHEVC.
But anyone that thinks he knows whats best, its all open-source, feel free to create your own project!
I'll keep running my project the way I see fit. It works quite well for me.
That's the main and biggest problem of LAV filters project.
It's on you and only on you.
PS:
MPC-HC doesn't limit itself to release versions.
Which is the last version of nightly LAV filters inside the latest nightly MPC-HC and how long ago that nightly LAV filters version was released ?
nevcairiel
31st August 2014, 18:03
You just ported to LAV filters, OK that's a job too.
If you think thats just copy-pasting and done, then you're mistaken. It took the better part of a afternoon doing that, making sure it works and ensuring that the decoder still outputs proper images. The OpenHEVC code does not get merged to main FFmpeg for a reason, because their code doesn't necessarily work in all cases, so it needs a lot of testing to make sure this part works for the cases I need in LAV.
That's the main and biggest problem of LAV filters project.
It's on you and only on you.
You're free to use something else, developed by a whole team, because there are so many developers eager to work for free on DirectShow stuff. Oh wait.
Which is the last version of nightly LAV filters inside the latest nightly MPC-HC and how long ago that nightly LAV filters version was released ?
You'll have to ask them, I don't keep track which versions they use, or for any other project for that matter.
In general you're one of those users that need to realize that I do this in my freetime, and everytime your entitled comments manage to annoy me, I'll go do something else instead, and no development is happening. You should be happy that I work on this for free, in my spare time, instead of demanding and complaining everytime you post.
But of course, you'll just take this as another chance to call me impolite.
e-t172
31st August 2014, 18:15
That's the main and biggest problem of LAV filters project.
It's on you and only on you.
LAV is free software. There's nothing stopping you from forking it if you are not pleased with its current leadership.
NikosD
31st August 2014, 18:15
I only asked you if there is an ETA for the next stable release.
And yes you' ve been impolite in your answer.
clsid
31st August 2014, 21:06
Which is the last version of nightly LAV filters inside the latest nightly MPC-HC and how long ago that nightly LAV filters version was released ?MPC-HC is updated with latest LAV whenever there have been important fixes. This month has been a bit slow because some of the devs have been on vacation! You can see upcoming MPC-HC changes on the personal GitHub pages of the devs. Here is the one that updates to very latest LAV:
https://github.com/Underground78/mpc-hc/commit/4afb5bc9df30f62e658b9a90fbc53555058d9be7
If you want the latest and greatest all the time, you should compile the stuff yourself. It is easy to do.
Hendrik does a great job providing us with high quality software. He gets too many complaints, and too little gratitude.
jmone
1st September 2014, 05:59
Hi Nikos,
I've followed the development of LAV with great interest from the very beginning, and to me it is one of the better example of the selflessness that exists in the open source community.
As the project grew so did his skills and reputation in this area... so it was of no surprise when he officially become part of JRiver. They say a "lucky" man, is one whose hobby and job is the same! Good on Hendrik, that he now gets paid to work in the industry he has so passionately supported (and still does) for free.
For me I saw the development of LAV Filters rise from the "complexity" and sporadic development with FFDSHOW, and we now have another (and I think much better) alternative. I'm sure as time passes there will be new efforts that are similarly born to provide an alternative to LAV for (whatever) reason. Maybe you could be such a catalyst for such a new start and run your project as it suits you?
So from me I say "Thanks" to Hendrik for all his work and what he has done over the years. I really appreciate it.....even if at times I may have been also too assertive in championing my pet requirements :)
Kind Regards
Nathan
foxyshadis
1st September 2014, 10:59
Removed several off-topic/pointless posts.
NikosD
1st September 2014, 12:11
I have more than 20 samples of HEVC .ts files that seem to be recognized as MPEG-2 (!) by LAV Video in DXVA Checker.
They decode fine, though.
A small sample here:
https://www.sendspace.com/file/7c5700
nevcairiel
1st September 2014, 12:21
LAV Splitter identifies this as a HEVC stream, otherwise it also wouldn't decode.
I do not know how DXVA Checker works, I suggest asking its author how it determines this wrong information.
NikosD
1st September 2014, 12:28
Thanks.
I have already done that and I'm waiting for his reply with more interest, now that I'm sure it's not LAV filters.
You were faster ;)
ddjmagic
1st September 2014, 14:16
Is it possible to setup LAV Splitter to only deliver subtitles for a certain language to the player? (so no other subs are shown/selectable in the player)
nevcairiel
1st September 2014, 14:17
Is it possible to setup LAV Splitter to only deliver subtitles for a certain language to the player? (so no other subs are shown/selectable in the player)
No, it'll always show all subtitle streams in the selection.
The only behaviour you can influence is which it pre-selects when the file is opened.
ddjmagic
1st September 2014, 14:45
No, it'll always show all subtitle streams in the selection.
The only behaviour you can influence is which it pre-selects when the file is opened.
Thanks for the info :)
clsid
2nd September 2014, 00:16
You forgot to update "LAVFilters.Dependencies.manifest" with latest library versions ;)
Kurtnoise
2nd September 2014, 07:34
Same error occurs here with libopus using a fresh copy of the trunk...
This issue is still there...you prefer to have a ticket in the bugtracker ?
nevcairiel
2nd September 2014, 07:38
neither libopus nor speex use pkg-config in my ffmpeg version. They build just fine out of the box if you use my build scripts.
Kurtnoise
2nd September 2014, 07:45
You mean build_ffmpeg.sh script ? If yes, I used to use it...:o
clsid
2nd September 2014, 23:03
Btw, the pkg-config detection failure is due to the configure script looking for it with the same prefix as for GCC, while the MSYS package from xhmikosr only contains a plain pkg-config.exe.
nevcairiel
3rd September 2014, 04:41
Yeah but pkg-config is not needed, so that's irrelevant . :)
Usually you would have a wrapper script with the full tool chain name which then calls the original pkg-config, but as nothing uses it in the LAV build...
Mixer73
4th September 2014, 02:06
So from me I say "Thanks" to Hendrik for all his work and what he has done over the years. I really appreciate it.....even if at times I may have been also too assertive in championing my pet requirements :)
I have to second this. LAV Filters is a brilliant, fast, feature rich and stable package that has far surpassed the chaotic and unloved FFDShow.
nevcairel is blunt; but he earned the right to be, he created this of his own idea and all of his own time. He created something that increases the enjoyment I get out of watching shows all the time.
tuco76
4th September 2014, 14:28
Thank you.
foxyshadis
4th September 2014, 22:10
Let's get this thread back on a technical track, not a personal one.
tuco76
5th September 2014, 11:32
I take it from prev. posts, there's currently no nightly build available?
Searched myself, found nothing either.
Any update on this much appreciated!
huhn
5th September 2014, 12:19
I take it from prev. posts, there's currently no nightly build available?
Searched myself, found nothing either.
Any update on this much appreciated!
you can build them your self if i'm not mistaken and this one was posted by nev.
http://forum.doom9.org/showthread.php?p=1690300#post1690300
but what are you looking for?
tuco76
5th September 2014, 14:14
you can build them your self if i'm not mistaken
Honestly, the only time I actually build/wrote sth. so far was on my C 64, I think :p
I'm nowhere as deep into most of the stuff you guys chatting about here, I see a lot of reading coming my way :)
Anyway, since I'm currently stuck with a pretty limited notebook,
I greatly appreciate the slightest performance improvement ;)
and this one was posted by nev.
http://forum.doom9.org/showthread.php?p=1690300#post1690300
but what are you looking for?
That exactly :p, awesome!
Nev's post providing the links somehow slipped me doing thread search, it just gave me the posts mentioning it's improvements :)
Thanks a bunch!
SamuelMaki
8th September 2014, 08:53
Hey there! I am sorry to bother you guys, but somehow my LAV-filters installation is corrupted, and re-installing doesn't help! I get all kinds of colorful anomalies and sometimes whole screen is covered in one bright color. Using Microsoft codecs doesn't produce any of these, and I have tried multiple gpu-drivers and video renderers and -players. I would love to have some kind of advice how to manually clear every tiny bit of LAV-filters out of my system, so I can do a true "clean install" and see if it fixes anything. Or if you people have other advice?
E: I am sorry for offtopic, seems this is more wide problem in my system after all. Firefox and ffdshow brings the same problems, so feel free to ignore my rant.
filler56789
8th September 2014, 13:53
According to betaking's directory @ baidu,
LAV.Version == 0.63 already.
However the first post of this thread still hasn't been updated :confused:
clsid
8th September 2014, 14:05
@SamuelMaki
Your problems are directly related to you graphics card. Either something is wrong with the driver (settings) or there is a hardware problem with the card, such as overheating or damaged memory. Due to the random nature, it is most likely a hardware problem. Start with remove the dust from your computer case, and especially the fans.
You can monitor temperature with GPU-Z:
http://www.techpowerup.com/gpuz/
And a stress testing tool:
http://www.ozone3d.net/benchmarks/fur/
nevcairiel
8th September 2014, 14:17
According to betaking's directory @ baidu,
LAV.Version == 0.63 already.
However the first post of this thread still hasn't been updated :confused:
You shouldn't believe everything you see on chinese websites.
filler56789
8th September 2014, 14:56
You're right, that's not 0.63 yet, it's only 0.62.999999999 :D
nevcairiel
8th September 2014, 21:24
I don't control how other people name their binaries, but there is no 0.63, and since I don't name development versions any special .. my naming for the latest Git version would be 0.62-26-ga42436a .. ie. what git describe says. :p
jkauff
8th September 2014, 23:30
I don't control how other people name their binaries, but there is no 0.63, and since I don't name development versions any special .. my naming for the latest Git version would be 0.62-26-ga42436a .. ie. what git describe says. :p
Just curious. I know MPC-HC incorporates some of the latest dev builds in their nightlies, but what about JRiver? Could I play an HEVC clip in the MC player with good results?
nevcairiel
9th September 2014, 19:33
Mostly release builds, unless there is a pressing issue to use something else (only happened once, and it was a custom build based on last release + one patch :p). I don't consider HEVC of any importance to consumers yet, which is why i'm not falling over backwards to release a new version for every performance improvement. ;)
I have a few things I want to work on before the next version, and sadly time and other personal reasons did not permit me to do so to an extent as I would've liked, so its all a bit delayed.
truexfan81
10th September 2014, 06:05
Mostly release builds, unless there is a pressing issue to use something else (only happened once, and it was a custom build based on last release + one patch :p). I don't consider HEVC of any importance to consumers yet, which is why i'm not falling over backwards to release a new version for every performance improvement. ;)
I have a few things I want to work on before the next version, and sadly time and other personal reasons did not permit me to do so to an extent as I would've liked, so its all a bit delayed.
nevcairel you do a wonderful job with LAV, so if it takes a bit longer to keep the quality, its worth the wait.
thanks again
DigitalLF
11th September 2014, 18:33
Hello! i got a problem.. or well... a something that would make my life easier!
i got a home cinema and a bedroom tv both are connected to my computer and i lav decoder for audio but i have to downmix in my bedroom but not in my home cinema. is there way to do that in lav filter? nevcairiel?
nevcairiel
11th September 2014, 18:37
LAV supports downmix to stereo just fine. You should check the options. Not sure what you're really asking though.
DarkSpace
11th September 2014, 19:46
Hello! i got a problem.. or well... a something that would make my life easier!
i got a home cinema and a bedroom tv both are connected to my computer and i lav decoder for audio but i have to downmix in my bedroom but not in my home cinema. is there way to do that in lav filter? nevcairiel?
If I understand your problem correctly, you want to receive 2.0 in your bedroom, while simultaneously receiving 5.1 in your home cinema room.
I'm sure this can be achieved, but the place this should be done is not the software decoder, but rather the place that outputs the audio to your two sets of speakers.
This might be an AV System that your PC is connected to, in which case you have to make it downmix the 5.1 input to 2.0 for your bedroom speakers, while giving untouched 5.1 to your home cinema speakers.
This might be the Computer if you have both of these speaker sets connected directly to your PC, in which case you have to get Windows to output the audio to both speaker sets in different configurations.
This might be something different, depending on your setup, too, in which case you're probably better off asking somewhere specific to your component.
The only way I see to get 2.0 and 5.1 audio from LAV Audio simultaneously is to decode the same audio twice (i.e. open the movie twice) with different settings, and this is a waste of resources, at least.
romulous
12th September 2014, 13:07
Hi nev,
Question from Blight. Would you happen to know why LAV's property page will not show if the filter is unregistered with the system? The latest Zoom Player beta has added a feature to use local - ie not installed - filters. So basically if you copy the LAV dll's into a folder on a system where LAV is not installed, point Zoom to that folder, Zoom will then use them for playback. Playback works fine - it is just that we can't open LAV's property page.
Thanks.
romulous
nevcairiel
12th September 2014, 13:13
The property pages are registered COM objects, you can only create them if the filter is registered.
There is one way around that, and thats using ISpecifyPropertyPages2 (header included in LAVs developer_info folder), its what MPC-HC uses to get a direct instance of the property page without the need for COM to create it.
romulous
12th September 2014, 13:48
Ah, thanks. Blight tried a quick test of that, and it didn't work unfortunately. He said that it doesn't provide backward compatibility, so he will have to create the pages manually - that is going to take some work, so it has to go on the to-do list for a later time.
romulous
sneaker_ger
12th September 2014, 15:16
Where should we report HEVC decoding problems with the nightly you posted? Here, at OpenHEVC or at ffmpeg?
This sample (https://mega.co.nz/#!5xlinK5A!YmdKBFFA-PxHjrIzjKEOyZ4QrAWU17ShsCJMdBf4bbk) crashes for me some time within the first 20 seconds. Stable 0.62 seems fine. (Both 32 bit and 64 bit)
Core i7-860, Win 7
nevcairiel
12th September 2014, 15:19
I watched the entire thing with the latest development version and it seems fine. I'll post a new test build later.
Edit:
Here it is:
32-bit: http://files.1f0.de/lavf/LAVFilters-0.62-26-ga42436a.zip
64-bit: http://files.1f0.de/lavf/LAVFilters-0.62-26-ga42436a-x64.zip
sneaker_ger
12th September 2014, 16:31
That seems to fix it, thank you.
DragonQ
12th September 2014, 22:12
Hello! i got a problem.. or well... a something that would make my life easier!
i got a home cinema and a bedroom tv both are connected to my computer and i lav decoder for audio but i have to downmix in my bedroom but not in my home cinema. is there way to do that in lav filter? nevcairiel?
Sounds like something your receiver should be doing. Some of them, like mine, have a "zone 2" output that has separate settings; perfect for dual locations.
jkauff
13th September 2014, 07:45
Sounds like something your receiver should be doing. Some of them, like mine, have a "zone 2" output that has separate settings; perfect for dual locations.
If the OP doesn't have zones on the receiver, JRiver Media Center can do zones. Less expensive than a new receiver.
fairchild
13th September 2014, 20:58
Another option for DigitalL, is to do the following which is what I do. I setup 2 different folders on my computer both with MPC-HC or MPC-BE or whatever your media player of choice is. I then configure one of them with Lav for bitstreaming which I use when I'm outputting to my soundbar which decodes: 7.1 DTS, DTS-HD, Dolby TrueHD, Dolby Digital, and Dolby Digital Plus.
I then use the different installation of MPC-HC with it's Lav setup to downmix all to 2.0 which I use when listening through my headphones + sound card. (useful when watching stuff late at night and not wanting to disturb anybody)
cyberbeing
14th September 2014, 08:02
I'm getting weird behavior with mpc-hc and lav now and then. It's pretty rare, so I can't seem to reproduce it. Sometimes, jumping to next chapter in an mkv results in loss of audio. Jumping back to the start of the chapter "revives" it again. Any idea what could be causing this?
I have experienced similar loss of audio during seeking (doesn't have to be a chapter jump) from time to time, too. Reseeking would bring audio back.
Come to think of it, I've experienced that as well. It's kinda rare, though, and I wouldn't be able to reproduce it. Seems to happen at random.
Audio loss on seek happened randomly here as well. A few times actually. Another seek fixed it, of course, so I didn't even bother reporting until I saw you guys do. ;)
Using the built-in LAV Filters w/ the latest MPC-HC.
I have seen it happen a few times too. Only with AAC audio. It is pretty rare though.
I've experienced this too. Also with AAC. Not sure about other formats.
FWIW, this rare loss-of-audio seeking issue still exists in the LAV Filters 0.62-26-ga42436a test build nevcairiel posted yesterday. Reproduced it on the first MKV+AAC-LC video I played after updating, as a total fluke. Worth mentioning that I have 'Fast Seek' disabled in MPC-HC, no idea if this matters or not though, since no one else mentioned it.
DigitalLF
14th September 2014, 14:19
LAV supports downmix to stereo just fine. You should check the options. Not sure what you're really asking though.
im sorry.. What i meant was is there a way to automatically change from 2.0 (bedroom) and 5.1 (home cinema) depending on what screen is enabled?
the computer is connected to the bedroom with just a HDMI and the computer is also connected to a HDMI Switch for the Home Cinema so its 2 diffrent outputs.
this is basically all that is missing in my setup.. :/
fairchild
14th September 2014, 18:55
im sorry.. What i meant was is there a way to automatically change from 2.0 (bedroom) and 5.1 (home cinema) depending on what screen is enabled?
the computer is connected to the bedroom with just a HDMI and the computer is also connected to a HDMI Switch for the Home Cinema so its 2 diffrent outputs.
this is basically all that is missing in my setup.. :/
No there is no way to do that built into Lav, but I gave you a way to do it. You just have to do some work and open whichever media player you are sending at the time to whichever display.
ocyl
14th September 2014, 23:50
FWIW, this rare loss-of-audio seeking issue still exists in the LAV Filters 0.62-26-ga42436a test build nevcairiel posted yesterday. Reproduced it on the first MKV+AAC-LC video I played after updating, as a total fluke. Worth mentioning that I have 'Fast Seek' disabled in MPC-HC, no idea if this matters or not though, since no one else mentioned it.
I have "Fast Seek" disabled in MPC-HC, too.
nevcairiel
15th September 2014, 11:42
Its really impossible to reproduce this problem reliably, and as such impossible to fix it reliably as well. How do I know its fixed and not just not happening at the moment.
In any case, I applied some changes to how AAC is handled after a seek, maybe we get lucky. Assuming its actually in LAV Audio, and not in LAV Splitter.
NikosD
16th September 2014, 07:30
This clip seems unplayable by both MPC-HC & LAV filters (external) using latest nightly versions.
http://trailers.divx.com/hevc/TearsOfSteel_4K_24fps_9500kbps_2aud_9subs.mkv
nevcairiel
16th September 2014, 08:24
The file is invalid, seems like it was created before the spec was finalized.
NikosD
16th September 2014, 08:59
Thanks.
Then it makes me wonder two things.
Why they still have it on-line (available for download) and if their own DivX HEVC decoder/plug-in or any other decoder can play it.
I tried Pot and Strongene's OpenCL and they couldn't.
ocyl
16th September 2014, 09:30
Its really impossible to reproduce this problem reliably, and as such impossible to fix it reliably as well. How do I know its fixed and not just not happening at the moment.
In any case, I applied some changes to how AAC is handled after a seek, maybe we get lucky. Assuming its actually in LAV Audio, and not in LAV Splitter.
Thank you, nevcairiel. Hopefully we do get lucky with it.
huhn
16th September 2014, 12:47
Thanks.
Then it makes me wonder two things.
Why they still have it on-line (available for download) and if their own DivX HEVC decoder/plug-in or any other decoder can play it.
I tried Pot and Strongene's OpenCL and they couldn't.
they created a mkvmerge version that could handle these file with there splitter way be for the spec was finished.
so there splitter/decoder may still be able to do it.
sebas_led
16th September 2014, 17:24
Hi Nev:
I've noticed that you are including swscale-lav-3.dll into current LAV distro.
There is a way to use it, ie pre-configuring in the registry, creating a config.ini, COM accesing, so videos are automatically scaled to a predefined resolution?
Thanks in advance.
nevcairiel
16th September 2014, 17:26
No, LAV does not scale the video. The library is only used to scale the chroma if required for output (ie. the video renderer doesn't accept anything else).
sebas_led
16th September 2014, 19:25
No, LAV does not scale the video. The library is only used to scale the chroma if required for output (ie. the video renderer doesn't accept anything else).
Thank's Nev! I will try to use Elecard.
tuco76
17th September 2014, 11:23
When setting up LAV Video Decoder with MadVR, I noticed Dithering Mode is set to Random in LAV by default, against Ordered in MadVR. From testing, I couldn't tell a difference switching those, so far.
Is it preferable choosing matching modes? Does that play a part anyway, concerning PQ/performance ?
(Error Diffusion in MadVR is not an option here, makes my GPU break sweat)..
nevcairiel
17th September 2014, 11:28
With madVR, LAV will never perform any dithering. Dithering in LAV is only performed when required, ie. when converting from 10-bit to 8-bit.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.