View Full Version : LAV Filters - DirectShow Media Splitter and Decoders
oguzpasa
19th August 2012, 03:20
guyz im a newbie. so i dont know how to install that patched ffmpeg versions in http://git.1f0.de/gitweb?p=ffmpeg.git;a=summary
anybody can help?
Mikey2
19th August 2012, 04:45
Does the "Mixing" functionality correctly "down-mix" 7.1 (or 6.1 (DTS-ES)) sources to my 5.1 speaker setup?
Originally I thought that this was the case, but imouto.my's configuration guide (http://imouto.my/watching-h264-videos-using-compute-unified-device-architecture-cuda/) suggests that it needs to be done in ffdshow's mixer to properly mix 7.1 down to 5.1 channels. (Unfortunately this is difficult, if not impossible, to objectively test this functionality.)
Also, now that I am on the subject, doesn't it make more sense to put the "Convert Output...", "Expand Mono to Stereo", and "Expand 6.1 to 7.1" options to be on the "Mixing" tab? (I almost forgot about those settings since I am messing around with the Mixing options...)
Finally, is "LFE Mix Level" the equivalent of "LFE Crossover" in ffdshow? If so, what is the crossover frequency?
blackjack12
19th August 2012, 06:02
@blackjack12, what happens if you force deinterlacing off (press Ctrl+Alt+Shift+D multiple times) in madVR? Does that solve all problems?
Madshi,
As noted before and sorry for taking so long ...
The answer is yes ...
With deinterlacing set and done with MadVR, the MPEG2 files that are really progressive that for whatever reason indicate interlaced at the MadVR renderer, when you force deinterlacing off as you suggest ... all turns good ...
Hope that you and Nev can figure this out.
nevcairiel
19th August 2012, 07:14
Originally I thought that this was the case, but imouto.my's configuration guide (http://imouto.my/watching-h264-videos-using-compute-unified-device-architecture-cuda/) suggests that it needs to be done in ffdshow's mixer to properly mix 7.1 down to 5.1 channels. (Unfortunately this is difficult, if not impossible, to objectively test this functionality.)
The guide is old. LAVs new mixing functionality should work just fine when downmixing 6.1/7.1 to 5.1
Also, now that I am on the subject, doesn't it make more sense to put the "Convert Output...", "Expand Mono to Stereo", and "Expand 6.1 to 7.1" options to be on the "Mixing" tab? (I almost forgot about those settings since I am messing around with the Mixing options...)
Probably, should restructure it some day.
Finally, is "LFE Mix Level" the equivalent of "LFE Crossover" in ffdshow? If so, what is the crossover frequency?
No, its not LFE Crossover. It just controls if (and how strong) an existing LFE channel is mixed into the front channels when doing downmix to stereo, it does not affect anything if you downmix to 5.1 or any other format with LFE.
madshi
19th August 2012, 10:33
@blackjack12, thanks for the detailed reports. I appreciate it. I am a bit confused now, though, because your reports #12001 and #12006 and #12009 seem to contradict each other. So is the final conclusion now that everything is alright as long as you have deinterlacing forced off in madVR? But then I don't understand the screenshots from your #12001 report because there deinterlacing *IS* in fact turned off for all the "BAD" screenshots? So how does that fit to your report #12009?
If the incorrectly turned on deinterlacing is the cause of all the trouble, does that apply to the VC-1 and h264 problems, too?
Try changing the madExcept\processing\deinterlacing option to "if in doubt, deactivate deinterlacing". This should make madVR behave more similar to EVR.
So there are really 2 separate problems here:
(1) madVR activates deinterlacing although it isn't needed. This depends on your madVR settings. As explained above, changing them to "if in doubt, deactivate deinterlacing" seems to take care of the problem. Please understand, though, that there are broadcasts out there which need deinterlacing although they appear to be encoded progressively. That's why madVR has this setting in the first place. EVR plays such files with interlaced artifacts, madVR plays them fine (at least when using its own IVTC algorithm).
(2) I can reproduce the interlacing artifacts with my Radeon 3850. This is clearly a fault of the AMD DXVA deinterlacing. It should perform IVTC, but it does not. You can "fix" this by forcing madVR into "film" mode (either in the settings or by pressing Ctrl+Alt+Shift+T). That nicely solves the problem with the "Good Year" sample, too. Of course forcing madVR into film mode won't work for natively interlaced content (music concerts, sports etc).
oguzpasa
19th August 2012, 14:09
guyz im a newbie. so i dont know how to install that patched ffmpeg versions in http://git.1f0.de/gitweb?p=ffmpeg.git;a=summary
anybody can help?
any help???
noee
19th August 2012, 14:58
install git client, then clone the ffmpeg repo into your Lavfilters repo
#!/bin/bash
# cd lavfilters
git clone git://git.1f0.de/ffmpeg.git ffmpeg
roytam1
19th August 2012, 15:08
install git client, then clone the ffmpeg repo into your Lavfilters repo
#!/bin/bash
# cd lavfilters
git clone git://git.1f0.de/ffmpeg.git ffmpeg
use "git submodule init" to setup the sub-directories and use "git submodule update" to check them in.
Deim0s
19th August 2012, 15:14
nevcairiel,
When mixing in stereo, LAV Audio mixer uses an incorrect coefficient for LFE Mix Level.
Applied in the mixer LAV Audio coefficient 1.00, actually equals 0.7071.
File 5.1 mixes on a matrix:
Lt = 100*L + 0.7071*C + 0.7071*LF + 100*SL
Rt = 100*R + 0.7071*C + 0.7071*LF + 100*SR
http://i.imgur.com/wfYvg.png
Equal to the file, mixed in with the parameters of LAV Audio:
(GraphStudioNext -> LAVSplitter -> LAVAudio -> Dump)
Center Mix Level: 0.7071
Surround Mix Level: 1.00
LFE Mix Level: 1.00
http://i.imgur.com/y14CN.png
Test file from here:
http://www.microsoft.com/windows/windowsmedia/howto/articles/Multichannel.aspx
nevcairiel
19th August 2012, 16:14
Thats normal. The LFE channel is duplicated, from originally one channel to two channels, and this requires a reduction in volume by 3dB. This happens automatically for all channels that are duplicated when mixing them.
Deim0s
19th August 2012, 16:46
nevcairiel,
Yes, but the center, when selected in the LAV Audio coefficient of 0.7071, mixes, as planned, with a 0.7071.
For the LFE channel, to get a real coefficient 0.7071, you need to select the mixer LAV Audio coefficient 1.00 (using the dump file and audio editing).
It is possible to do, that would be in the mixer LAV Audio displayed the real coefficients that will be mixing?
mkanet
19th August 2012, 19:20
@Nev/@blackjack12
I'm curious if this issue is related to the issue I'm having for 1080i TV material (HBO, SHO, AMC, and other premium TV channels). This is where certain scenes in the video (usually during panning or movement of the camera back and forth will cause the video to stutter for a second or so).
This bug described above is well known in the MS Media Center community that has access to US premium digital cable TV content. What makes this content different than other digital TV recordings is they constantly switch between hard and soft telecine. This bug commonly referred to as the "29/59 bug" (https://www.google.com/search?q=29%2F59+bug) where (for whatever reason) the PC cant switch to soft telecine seamlessly.
I recently upgraded from a GT545 to a GT640; hoping the GPU would completely handle soft-telecine and hard-telecine switching smoothly. While the GT640 did significantly reduce the stutter, it's still visible enough to be distracting.
Unfortunately, madvr is not an option for me when watching TV content since my Media Center solution uses a custom EVR presenter which cant be changed; especially since it integrates a full blown graphics, menus, extra movie info onto the screen when necessary.
While I love the LAV filters in general, have found that the deinterlacing performance of the LAV Video Decoder is inconsistent at best and poor at worst across a general mix of video types.
It is worst in allowing the AMD Radeon GPU’s to hardware deinterlace across all video formats. The hardware deinterlacing of the AMD cards appears in my tests to be the best across the board when it is used but the NVidia can produce very good results with LAV Video and CUVID.
Basic Testing:
Windows 7/Window 8 Preview (64 bit)
MPC-HC 1.6.3.5818 (32 bit) – some testing with 64 bit MPC-HC but not much and not focus (for 64 bit, EVR-CP used, no MadVR, no ArcSoft filters)
MadVR 82.5 (with and w/o latest ringing mods)
NVidia 560Ti and GT525M
NVidia Drivers 301.42 and 302.82 (Win 8) – LAV CUVID
Radeon HD 4890 and 6570
AMD Drivers 12.6 – LAV None, copy-back and native
LAV 51.3(also tested latest builds to this date)
LAV Splitter and LAV Audio used in all testing
ArcSoft Video Decoder 2.28.444.129 X86
All combinations that can be used with LAV and MadVR were looked at. Aggressive, frame rate, mode, software, etc. and details can be provided if needed but the test files are best way to look at. These were on 4 “desktop” type units and one laptop.
Using the ArcSoft Video Decoder provided the best and most consistent deinterlacing performance in my tests while the NVidia produced good to superb results depending on the video formats tested. Using the de-interlacing in MadVR worked with NVidia but found the internal GPU only with LAV Video and passing to the renderer yielded better results. For the AMD GPU’s tested the MadVR de-interlacing did not work on several files. Only software (YADIF) de-interlacing worked as noted briefly by someone earlier.
File clips that are good to test de-interlacing can be found in the Google Drive link listed below and downloaded for testing. These can be used to easily see issues quickly. All files are .mkv types prepared from the native and purchased video material using MakeMKV and then remuxing with the latest version of MKVMerge/Toolnix. The audio has been removed just to keep file size as small as possible. Watching the rolling credits is a great test of deinterlacing performance and quality in many cases.
Problematic file types but inconsistent: MPEG2i (DVD, check the rolling credits for large visual differences), VC-1i, H264i (AVC and all produced with Premiere Pro from and with interlaced content)
Google Drive link for excellent examples (they must be downloaded, viewing the preview in the YouTube format is useless):
https://docs.google.com/folder/d/0B_DzSqUkDhPoODB4eWRpN2dsOVU/edit
Hope these are helpful in testing and optimizing deinterlacing performance with the LAV Video Filters in the future.
blackjack12
19th August 2012, 19:31
@blackjack12, thanks for the detailed reports. I appreciate it. I am a bit confused now, though, because your reports #12001 and #12006 and #12009 seem to contradict each other. So is the final conclusion now that everything is alright as long as you have deinterlacing forced off in madVR? But then I don't understand the screenshots from your #12001 report because there deinterlacing *IS* in fact turned off for all the "BAD" screenshots? So how does that fit to your report #12009?
If the incorrectly turned on deinterlacing is the cause of all the trouble, does that apply to the VC-1 and h264 problems, too?
Try changing the madExcept\processing\deinterlacing option to "if in doubt, deactivate deinterlacing". This should make madVR behave more similar to EVR.
So there are really 2 separate problems here:
(1) madVR activates deinterlacing although it isn't needed. This depends on your madVR settings. As explained above, changing them to "if in doubt, deactivate deinterlacing" seems to take care of the problem. Please understand, though, that there are broadcasts out there which need deinterlacing although they appear to be encoded progressively. That's why madVR has this setting in the first place. EVR plays such files with interlaced artifacts, madVR plays them fine (at least when using its own IVTC algorithm).
(2) I can reproduce the interlacing artifacts with my Radeon 3850. This is clearly a fault of the AMD DXVA deinterlacing. It should perform IVTC, but it does not. You can "fix" this by forcing madVR into "film" mode (either in the settings or by pressing Ctrl+Alt+Shift+T). That nicely solves the problem with the "Good Year" sample, too. Of course forcing madVR into film mode won't work for natively interlaced content (music concerts, sports etc).
Madshi,
First it is good that you were finally able to duplicate what I have seen for a long time and continue to see across 5 systems with a range of CPU’s and GPU’s.
Frankly shocked that nobody has reported before because the biggest issues continue to be with standard DVD ripped material (not illegally downloaded) that has been directly converted using MakeMKV. This retains the original MPEG2 video material of which the majority is progressive. I am seeing issues with every configuration from the older Radeon 4890 to newer NVidia 560Ti and GT525M
There are no contradictions, just 2 situations.
Using LAV and GPU only for deinterlacing – deinterlacing is turned off with MadVR.
Using deinterlacing done with MadVR.
The latest post was the first tests using the deinterlacing capabilities with MadVR.
To summarize findings with the Radeon 4890 GPU using MadVR deinterlacing.
(Radeon 6570 appears similar but it is a newer DirectX11 capable card with the newest non-legacy drivers)
If set the MadVR dieinterlacing to “if in doubt deactivate” all appears good … But … with the “Good Year” sample, the deinterlacing turns on again after about 10 seconds! … Just as reported in post 12004 by sneaker_ger. I will look into the sample and original for any issues.
Have also now found a number of other DVD ripped samples that are reporting as interlaced. They actually show interlaced in media info as well. They look bad with the Radeon processors and MadVR deinterlacing. Better with the NVidia/CUVID and will report on later.
Converting everything with Handbrake solves all the problems when content is converted to H264 progressive, but lose some resolution.
Will let you know what I find with the NVidia cards and systems as well. They showed the same issues.
The bottom line is if/when MadVR has deinterlacing set correctly, the results are superb... but how do we get that to happen with a single setting that is good across the board?
When I find a "good" settings list or other issues will post all setup screens.
Note: Is there any way that it is/or would be possible to set the MadVR parameters “offline” without having to have a video running.
QUICK UPDATE for Radeon 6570 systems using MadVR deinterlacing - "if in doubt deactivate deinterlacing" checked:
File formats tested with a lot of different materials.
H264 progressive - GOOD
H264i interlaced - GOOD
VC-1 progressive - GOOD
VC-1i interlaced - GOOD
MPEG2 progressive - GOOD
MPEG2i interlaced - BAD
MPEG2i - This is native/true interlaced MPEG2 content from a MakeMKV DVD rip. With MadVR, interlacing it is BAD. If force off and let LAV and hardware only deinterlace looks great. Preliminary same conclusions with NVidia but the MPEG2i does not look as bad ... will post some new samples and screen shots later.
Looks like all good if use "if in doubt deactivate deinterlacing" checked ... except MPEG2i content. It appears that MadVR deinterlacing is not handling the MPEG2i content correctly or well. If it is turned off and the hardware only is used to deinterlace it looks great. Looks like a conflict or "double" deinterlace type effects, really don't know.
Pat357
19th August 2012, 19:35
nevcairiel,
Yes, but the center, when selected in the LAV Audio coefficient of 0.7071, mixes, as planned, with a 0.7071.
For the LFE channel, to get a real coefficient 0.7071, you need to select the mixer LAV Audio coefficient 1.00 (using the dump file and audio editing).
It is possible to do, that would be in the mixer LAV Audio displayed the real coefficients that will be mixing?
Why would the "LFE" channel need to be handled differently than the "CENTER" ? Both have 1 source in a 5.1/7.1 composition
and after down-mixing to stereo they have both 2 sources.
This explains the 0.7071 coefficient to preserve the total power [W] from each channel in the new setup.
Deim0s
19th August 2012, 20:04
Pat357,
Sorry for my bad English.
I mean, the selected coefficient for LFE channel in the mixer LAV Audio, does not correspond with the real coefficient that is mixing.
For example, to mix the LFE channel with real coefficient 0.7071, the mixer LAV Audio must selected 1.00.
mkanet
19th August 2012, 22:47
Nev, I just wanted you to know that the "Remove Soft-telecine" option doesnt have any affect on the frame rate reported by the decoder (when viewing in Reclock). I am using aggressive deinterlace, adaptive algorithm, high-quality processing)
I have tried both half checked, and full checked option. They both do exactly the same thing as older versions without this option.
I can see framerate changing from 59.940 to 23.976 (back and forth) throughout each 1080i TV recording.
It's possible I misunderstood what this feature does; but, if it did what I was hoping for, it would definitely solve the issue I have with videos that cause the decoder to decoder to switch back and forth between 59.940 and 23.976.
Here is another version, i actually added an option on the options panel to control it now.
http://files.1f0.de/lavf/LAVFilters-0.51.3-36-g76de254.zip
The "Remove Soft-Telecine" checkbox is the new one, and it has 3 states.
- Unchecked it behaves as any previous versions, it just sends the soft-telecine flags to the renderer
- Checked it removes all flags and adjusts the timestamp to 23.976
- In the "intermediate" state, it only removes the flags, but leaves the timestamps alone.
It would be great if you could test both the checked and the "half checked" mode, and see how they behave on your setup. I'm mostly interested to be able to determine which mode should be the default.
Specifically, i'm interested if the intermediate mode is enough to make it play properly, because its much safer to do then to try to fiddle with the timestamps.
Additionally, this version also includes a small fix for the "Travis" sample, it might work better now.
madshi
19th August 2012, 23:10
Frankly shocked that nobody has reported before because the biggest issues continue to be with standard DVD ripped material (not illegally downloaded) that has been directly converted using MakeMKV. This retains the original MPEG2 video material of which the majority is progressive. I am seeing issues with every configuration from the older Radeon 4890 to newer NVidia 560Ti and GT525M
FWIW, the madVR default setting is "if in doubt deactivate deinterlacing". I'm not sure why you had it set differently in your initial tests.
There are no contradictions, just 2 situations.
Using LAV and GPU only for deinterlacing – deinterlacing is turned off with MadVR.
Using deinterlacing done with MadVR.
But if you do the deinterlacing in LAV then it shouldn't matter which renderer you use. The result should be the same with every renderer because all renderers will get progressive images from LAV and will never know that the original content was interlaced.
If set the MadVR dieinterlacing to “if in doubt deactivate” all appears good … But … with the “Good Year” sample, the deinterlacing turns on again after about 10 seconds! … Just as reported in post 12004 by sneaker_ger. I will look into the sample and original for any issues.
With "if in doubt deactivate", madVR switches deinterlacing on in the first moment an interlaced frame is sent from the decoder. This seems to be after 10 seconds with the "Good Year" sample. Probably EVR enables/disables deinterlacing on the fly, depending on which frame type is sent by the decoder. I could do that, too, in madVR, but I don't think it's the right way to handle the situation. I believe DXVA deinterlacing should be capable of handling such content. It's just too bad AMD fails on this.
Have also now found a number of other DVD ripped samples that are reporting as interlaced. They actually show interlaced in media info as well. They look bad with the Radeon processors and MadVR deinterlacing. Better with the NVidia/CUVID and will report on later.
Which of the 3 problems is it? See bottom of my post.
The bottom line is if/when MadVR has deinterlacing set correctly, the results are superb... but how do we get that to happen with a single setting that is good across the board?
The long term plan is to add an automatic video vs film vs progressive detection to madVR which decides based on content. That should allow correct results in all situations with all decoders, even if the files are encoded in a weird way. Currently every solution is nothing but a compromise. What madVR does is a compromise, what EVR does is a compromise, too.
Note: Is there any way that it is/or would be possible to set the MadVR parameters “offline” without having to have a video running.
Not yet. On my to do list (like so many other things).
QUICK UPDATE for Radeon 6570 systems using MadVR deinterlacing - "if in doubt deactivate deinterlacing" checked:
File formats tested with a lot of different materials.
H264 progressive - GOOD
H264i interlaced - GOOD
VC-1 progressive - GOOD
VC-1i interlaced - GOOD
MPEG2 progressive - GOOD
MPEG2i interlaced - BAD
Which of the 3 problems is it? See:
-------
Generally, if you report problems with specific samples with LAV + madVR, please always check if madVR reports deinterlacing to be on/off, and whether overriding that decision by pressing Ctrl+Alt+Shift+D fixes things. You would noticably increase the usefulness of your reports if you mentioned right away what the real problem is. There are 3 basic possibilities:
(1) Image quality is bad with deinterlacing off, but good with deinterlacing on. The problem is that it's not turned on automatically.
(2) Image quality is bad with deinterlacing on, but good with deinterlacing off. The problem is that it's turned on automatically.
(3) Image quality is bad in any case, no matter if deinterlacing is activated or not.
For every problem you see, it would be nice if you could specify which of the 3 problems we're talking about. Also, it would be helpful to know if EVR plays the same file correctly with the same decoder settings.
blackjack12
20th August 2012, 00:24
Which of the 3 problems is it? See:
-------
Generally, if you report problems with specific samples with LAV + madVR, please always check if madVR reports deinterlacing to be on/off, and whether overriding that decision by pressing Ctrl+Alt+Shift+D fixes things. You would noticably increase the usefulness of your reports if you mentioned right away what the real problem is. There are 3 basic possibilities:
(1) Image quality is bad with deinterlacing off, but good with deinterlacing on. The problem is that it's not turned on automatically.
(2) Image quality is bad with deinterlacing on, but good with deinterlacing off. The problem is that it's turned on automatically.
(3) Image quality is bad in any case, no matter if deinterlacing is activated or not.
For every problem you see, it would be nice if you could specify which of the 3 problems we're talking about. Also, it would be helpful to know if EVR plays the same file correctly with the same decoder settings.
Will do ... will post good and short samples for all file types that I know can be problematic so you can use for testing as well. You only need a new MPEG2i sample which is now the problem child with Radeon GPU. (Prelim result - think is okay with NVidia)
One quick question. With the AMD Radeon driver, just want to confirm how it should be setup for best results? As reported, I have always had auto deinterlace on with pull down and no other post processing.
Nev ... I think I sent you on a somewhat diverted goose chase and apologize. But really want LAV and MadVR to work flawlessly together for everything ... the results are superb when they all work ... :)
madshi
20th August 2012, 07:30
Yes, in the AMD drivers, activate all those funny deinterlacing options, including pulldown, IVTC and whatever you find there. But disable most other funny stuff like noise reduction, detail enhancement etc, unless you're a fan of such algorithms. Samples for the troublesome videos would be nice, if they play fine with LAV + EVR. If this seems to be a madVR problem, though, it might make sense to move it to the madVR thread. Unless the problem only occurs with LAV + madVR, then I'm not sure where to discuss it.
blackjack12
20th August 2012, 09:32
Yes, in the AMD drivers, activate all those funny deinterlacing options, including pulldown, IVTC and whatever you find there. But disable most other funny stuff like noise reduction, detail enhancement etc, unless you're a fan of such algorithms. Samples for the troublesome videos would be nice, if they play fine with LAV + EVR. If this seems to be a madVR problem, though, it might make sense to move it to the madVR thread. Unless the problem only occurs with LAV + madVR, then I'm not sure where to discuss it.
Madshi,
Will move to MadVR forum.
Will update on AMD Radeon MPEG2i interlaced issues after update to the latest 12.8 Catalyst driver that was released a couple of days ago.
Definite issues with MPEG2i content that is corrected when forcing interlacing off in MadVR. The material is interlaced but MadVR is not deinterlacing correctly or there is some kind of conflict. You can literally see frame jump when forcing MadVR deinterlace off. ...Then all is perfect. (again AMD Radeon only)
Lyoko
20th August 2012, 15:46
I'm sorry because my English very Bad! :(
I'm want example LAV for Delphi > Delphi 10-XE2 Or 16. Thank you very much!
Pat357
20th August 2012, 18:52
Definite issues with MPEG2i content that is corrected when forcing interlacing off in MadVR. The material is interlaced but MadVR is not deinterlacing correctly or there is some kind of conflict. You can literally see frame jump when forcing MadVR deinterlace off. ...Then all is perfect. (again AMD Radeon only)
You say if you force deinterlacing to OFF in MadVR, the movie looks perfect ?
On the other hand you're sure this movie is interfaced.... Humm....strange ...why do you think it's interlaced at all ?
Did you have the same problem with NVidia cards ?
Was deinterlacing ON are OFF in MadVR ?
blackjack12
20th August 2012, 21:03
You say if you force deinterlacing to OFF in MadVR, the movie looks perfect ?
On the other hand you're sure this movie is interfaced.... Humm....strange ...why do you think it's interlaced at all ?
Did you have the same problem with NVidia cards ?
Was deinterlacing ON are OFF in MadVR ?
Deinterlacing on in MadVR.
All indicate interlaced in MadVR, also in MediaInfo.
All other file formats are good (all MKV container tests)
UPDATE:
99% of material is actually progressive, there is an "interlaced" blip at the beginning that signals "interlaced" with MadVR even though most of the material is progressive. Force MadVR deinterlacing off and results are good.
Problem is seen with AMD Radeon and NVIDIA GeForce GPU's
blackjack12
21st August 2012, 01:43
Generally, if you report problems with specific samples with LAV + madVR, please always check if madVR reports deinterlacing to be on/off, and whether overriding that decision by pressing Ctrl+Alt+Shift+D fixes things. You would noticably increase the usefulness of your reports if you mentioned right away what the real problem is. There are 3 basic possibilities:
(1) Image quality is bad with deinterlacing off, but good with deinterlacing on. The problem is that it's not turned on automatically.
(2) Image quality is bad with deinterlacing on, but good with deinterlacing off. The problem is that it's turned on automatically.
(3) Image quality is bad in any case, no matter if deinterlacing is activated or not.
For every problem you see, it would be nice if you could specify which of the 3 problems we're talking about. Also, it would be helpful to know if EVR plays the same file correctly with the same decoder settings.
Madshi,
The final MPEG2 “interlaced” (but not really) material issues. - DVD material rips direct with MakeMKV ver 1.7.6 or 1.7.7
Radeon 6570 GPU, ver. 12.8 drivers (Now see same on NVidia 560Ti and GT525M systems)
MadVR is “BAD”
Reports deinterlacing on : force off and is “GOOD” … (2)
EVR/EVR-CP is “GOOD”
Can actually see the FPS jump a little at beginning that looks like interlaced then goes to 24fps. An interlaced beginning blip that triggers MadVR and MediaInfo reads but EVR ignores or plays through.
MediaInfo shows material as interlaced but the reason that I did not include samples is because when I used MKVMerge to create clip of credits where easy to see, the clip now indicates progressive. I can’t link or upload the entire rip for you to see and test. But this happens on almost all the files. They indicate interlaced, but break them up and now have a “progressive” clip that plays fine.
Even tried re-ripping with absolute newest MakeMKV to see if that was issue but all show same result.
So the interlaced flag that looks like is a quick blip in the beginning is being seen and responded to by MadVR but EVR “ignores”? and plays correctly.
Did not upload samples but here some DVD’s that I had that easily showed the issues: (ripped with MakeMKV ver 1.7.7)
13 Going on 30
xXx
The Back to the Future Series
… Many, many more
I then used the latest MKVMerge and clipped the first 30 seconds off the ripped material to see if could get rid of the “interlaced” blip and it did! Now the files play as progressive without issue.
The “interlaced” blip at the beginning causes the entire video to be seen as “interlaced” by MadVR when in fact it is not. ... I think may be in the beginning logo, quick check and I found a lot of problem DVD's were from Columbia Pictures. With more thorough searching probably can find more connections.
A similar issue with the “Good Year” clip that switches to “interlaced” after 10 seconds, but all of these have an interlaced blip at the very beginning of the video.
Note:
See the exact same behavior with NVidia/CUVID with 560Ti and GT525M systems.
UPDATE NOTE:
Clipping off 1.0-20 sec at the beginning of the MKV file got rid of the "interlace blip" on most files and they indicated deinterlacing off with MadVR and progressive in MediaInfo in MPC-HC - and played without issue.
Columbia logo had interlace blip in the "middle" of intro on some files and had to clip out entirely. The "old" intro logos are crappy and cause most of the problems ...
Not practical but it worked ... Really need MadVR to address this. EVR/EVR-CP allows these files to play correctly.
madshi
21st August 2012, 08:12
Ok, I'll see if I can make madVR behave identical to EVR for such files.
blackjack12
21st August 2012, 16:33
Ok, I'll see if I can make madVR behave identical to EVR for such files.
Thanks Madshi ...
Let me know if you want/need some sample material to test but for this if you have a number of ripped DVD's using MakeMKV which contain the original MPEG2 material it shouldn't be hard to find some with problems. Especially older DVD's. :(
I also wanted you to know that on the very few files/DVD's that are actually interlaced material, the MadVR deinterlacing quality was just phenomenal in comparison to anything else tested.
bjd
21st August 2012, 17:07
Note:
See the exact same behavior with NVidia/CUVID with 560Ti and GT525M systems.
Do you get issues even when the Cuvid Decoder is set to adaptive interlacing, the default is none (Weave) incidently ?
If Cuvid is de-interlacing, MadVR should not detect.
blackjack12
21st August 2012, 18:22
Do you get issues even when the Cuvid Decoder is set to adaptive interlacing, the default is none (Weave) incidently ?
If Cuvid is de-interlacing, MadVR should not detect.
For the NVIDIA/CUVID if you turn on deinterlacing in MadVR you should turn off in LAV - set to "weave" off.
If you turn on with "adaptive" then MadVR will/should see "progessive" and not turn on deinterlacing.
If you do this I strongly recommend turning off or unchecking deinterlacing with MadVR. If you don't I have seen many times conflicts and very bad results.
My experience is that you really have to choose ... MadVR for deinterlacing or LAV/CUVID only.
When I have time will post all settings for both AMD and NVIDIA setups and hopefully others can avoid some of the hit and miss struggles I have had over the past months ... :(
Note:
I have seen quite large differences between the 560Ti and GT525M in some fundamental decoding with LAV/CUVID and am not sure why.
Because I have 2 systems in HTPC setups with the Radeon 6570 cards I have not focused a lot on the NVIDIA setups yet as they are in computers not being used as HTPC's.
JohnnyFu
22nd August 2012, 13:19
Hello everyone,
I'm looking for a h264 sample video file, preferbly TS, with very high bitrate (above 40.000Mbit/s).
I would really appreciate it if somebody could post one, I already searched the internet for some time without finding anything usefull:(
best regards
Sebastian
Deshi
22nd August 2012, 15:33
Hello everyone,
I'm looking for a h264 sample video file, preferbly TS, with very high bitrate (above 40.000Mbit/s).
I would really appreciate it if somebody could post one, I already searched the internet for some time without finding anything usefull:(
best regards
Sebastian
This might be it...
http://tinyurl.com/KillaSampla
http://rapidshare.com/files/82525583/killa.sampla.x264.mkv.html
mkanet
22nd August 2012, 15:47
There are some bluray movies that have a video bitrate slightly higher than 40mbit/sec; which the m2ts files can be remuxed to ts such as "28 Days Later...". Just remux the movie .m2ts file to .ts. However, I haven't found anything readily downloadable.
Since you didn't mention video resolution, below, is a 2160p roasted duck H.264 (50mbit/s) video in ts container. Plays back fine on my PC (Nvidia GT640).
http://www.sendspace.com/file/a1b8ty
Hello everyone,
I'm looking for a h264 sample video file, preferbly TS, with very high bitrate (above 40.000Mbit/s).
I would really appreciate it if somebody could post one, I already searched the internet for some time without finding anything usefull:(
best regards
Sebastian
JohnnyFu
22nd August 2012, 19:53
Thank you guys, I'll look into the samples when I'm back at the office.
zerowalker
23rd August 2012, 20:27
Does anyone know why Goldwave can decode audio formats if ffdshow has them activated, but not if LAV has it?
dansrfe
24th August 2012, 02:31
nevcairiel,
Feature request: When DTS bitstreaming is enabled (and DTS-HD MA is not) and DTS-HD MA is the source input for LAV Audio Decoder, would it be possible to send the DTS Core to bitstream instead of simply sending PCM and bypassing the bitstream option?
Te reasons for this is I have an ASUS EN9500GT and unfortunately it doesn't support 8 channel LPCM OR DTS-HD MA so the only other choices in this case are DTS bitstream or 2 channel LPCM and 2 channel LPCM is not acceptable obviously. I plan to upgrade to something much better soon but until then I'm hoping that LAV Audio Decoder can perform this workaround instead of me having to disable LAV Audio and bitstream the DTS Core through ffdshow audio decoder.
Thanks for LAV!
nevcairiel
24th August 2012, 07:01
Feature request: When DTS bitstreaming is enabled (and DTS-HD MA is not) and DTS-HD MA is the source input for LAV Audio Decoder, would it be possible to send the DTS Core to bitstream instead of simply sending PCM and bypassing the bitstream option?
Are you sure it doesn't already do that?
I'm quite positive it should.
red5goahead
24th August 2012, 08:52
Hi
I have to upgrade my pc. Core i5 3470 with P67 , Z68 or Z77 chipset. Quicksync will be avaiable on video decoding with Lav?
thanks
Pat357
24th August 2012, 16:59
Does anyone know why Goldwave can decode audio formats if ffdshow has them activated, but not if LAV has it?
I'm not sure wat Goldwave uses for audio something like ACM's or the DirectShow (DSHOW) interface/format.
FFdshow supports both, while LAV supports only DSHOW.
So if Goldwave uses these acm's instead of DShow, you're out of luck and only FFDshow can work.
Snowknight26
24th August 2012, 17:19
Audio, not video.
dansrfe
24th August 2012, 17:19
Are you sure it doesn't already do that?
I'm quite positive it should.
That's strange... LAV outputs the way I want when I select the audio output with DirectShow prepended to it but it doesn't work when I select "S/PDIF Front..." directly as the output in MPC-HC. And the video stutters when I select the latter option as well. Does it make a difference if I bitstream over WASAPI or DirectSound or are those irrelevant because ReClock might be able to bitstream over WASAPI but some people don't like bitstreaming through ReClock for some reason?
EDIT: Yeah LAV Audio bitstreams the DTS Core when I select "DirectSound ... S/PDIF Front..." and when I select ReClock with bitstream passthrough over WASAPI excl.
Pat357
24th August 2012, 23:27
Audio, not video.
Right.... I see, thanks for noticing me.:D
mkanet
25th August 2012, 03:01
Hi Nev, have you heard any feedback other than me for your "Remove Soft-telecine" feature? I've very curious to know if it works for other people. Whether I had it fully enabled or half-enabled, or disabled, I could see see the framerate jump between 23.976fps to 59.940fps depending if that part of the TV show was hard or soft telecine (FPS displayed in Reclock from the LAV decoder output using CUVID).
Maybe this feature wasn't meant for mix soft-hard telecine content? It would be awesome if there was a way to keep the fps stable. I have IVTC enabled in the Nvidia drivers on my GT640 VP5 (fifth gen purevideo).
Pat357
26th August 2012, 00:15
Hi Nev, have you heard any feedback other than me for your "Remove Soft-telecine" feature? I've very curious to know if it works for other people. Whether I had it fully enabled or half-enabled, or disabled, I could see see the framerate jump between 23.976fps to 59.940fps depending if that part of the TV show was hard or soft telecine (FPS displayed in Reclock from the LAV decoder output using CUVID).
Maybe this feature wasn't meant for mix soft-hard telecine content? It would be awesome if there was a way to keep the fps stable. I have IVTC enabled in the Nvidia drivers on my GT640 VP5 (fifth gen purevideo).
FPS from mixed soft/hard telecine'd video should be stable if you don't remove any flags (with repeat flags present!) & not change timestamps.
This means the new optional checkbox in Lavvideo unchecked (half checked might even still work, I haven't got the chance to test it, full checked won't work, i can tell you that for sure)
If you let MadVR then IVTC (InVerse TeleCine) this (almost) untouched stream (with repeat flags present!),
you should have the "original ± 24 FPS" back and this will stay so for hard- en soft Telecine.
Isn't that nice :D
BTW. CUVID or any other algorithm in your graphic card can only deal with soft-telecine, not for hard-telecine.
To deal with both you'd also need MadVR's IVTC.
mkanet
26th August 2012, 01:16
What I was trying to say earlier.. none of the options for "Remove soft-telecine" make any difference on typical american premium TV content (mpeg2 1080i); which contain mixed soft/hard telecine. I don't use MadVR for my HTPC since my media center app needs it's EVR custom presenter for display integrated menus, graphics, for TV/movies. For whatever reason, I've never been able to get IVTC to work correctly on this type of content using pure CPU hardware; which is a known issue (aka 29/59 bug) (https://www.google.com/search?&q=29+59+bug+media+center). This type of video content isn't readily available for most people since it requires subscription to premium cable; and, almost always copy protected.
If I swap out LAV video decoder with dscaler mpeg2 ivtc mod, it keeps the fps stable at 23.976 no matter what; and, video stays stable and smooth. I was also able to achieve the same thing with FFdshow AVIsynth ivtc, except it was unnecessarily too CPU intensive (not meant for realtime processing like the dscaler ivtc mpeg2 decoder). BTW: I don't use MPC-HC on my HTPC except for occasionally playing small video clips once in while.
FPS from mixed soft/hard telecine'd video should be stable if you don't remove any flags (with repeat flags present!) & not change timestamps.
This means the new optional checkbox in Lavvideo unchecked (half checked might even still work, I haven't got the chance to test it, full checked won't work, i can tell you that for sure)
If you let MadVR then IVTC (InVerse TeleCine) this (almost) untouched stream (with repeat flags present!),
you should have the "original ± 24 FPS" back and this will stay so for hard- en soft Telecine.
Isn't that nice :D
BTW. CUVID or any other algorithm in your graphic card can only deal with soft-telecine, not for hard-telecine.
To deal with both you'd also need MadVR's IVTC.
Pat357
26th August 2012, 19:26
Hi Nev, have you heard any feedback other than me for your "Remove Soft-telecine" feature? I've very curious to know if it works for other people. Whether I had it fully enabled or half-enabled, or disabled, I could see see the framerate jump between 23.976fps to 59.940fps depending if that part of the TV show was hard or soft telecine (FPS displayed in Reclock from the LAV decoder output using CUVID).
Maybe this feature wasn't meant for mix soft-hard telecine content? It would be awesome if there was a way to keep the fps stable. I have IVTC enabled in the Nvidia drivers on my GT640 VP5 (fifth gen purevideo).
I wasn't aware you "can not" use MadVR....
If the framerate jumps between 23.976 and 59.940, this is exactly the proof that IVTC is working on the soft-telecine'd parts of the video ! This also means that on IVTC the duplicated frames were properly removed, else you would still have 29.97 instead of 23.976 FPS.
Don't worry about your 640 card, everything looks OK as far as I can tell.
mkanet
26th August 2012, 20:10
There might be a way for me to swap out the video renderer of my media center app; but wouldn't be worth it at all to lose all the cool integrated graphics, menus, information for TV and movies; otherwise, the media center experience wouldn't be much better than double-clicking media files in Windows Explorer.
What I was trying to say earlier is the "remove soft-telecine" feature doesnt seem to have any affect on these types of media files. It might be possible this feature won't help in what I am hoping for. I was just hoping for a way to keep the framerate stable at 23.976 using LAV Video decoder; same as dscaler IVTC mpeg2 decoder (does NOT change to 59.940 during video playback).
Ultimately, the problem is that when the framerate changes back and forth, it causes most modern display cards to stutter video; even on the latest and greatest generation nvidia hardware decoding VP5 on the GT640.
I wasn't aware you "can not" use MadVR....
If the framerate jumps between 23.976 and 59.940, this is exactly the proof that IVTC is working on the soft-telecine'd parts of the video ! This also means that on IVTC the duplicated frames were properly removed, else you would still have 29.97 instead of 23.976 FPS.
Don't worry about your 640 card, everything looks OK as far as I can tell.
Pat357
27th August 2012, 00:57
What I was trying to say earlier is the "remove soft-telecine" feature doesnt seem to have any affect on these types of media files. It might be possible this feature won't help in what I am hoping for. I was just hoping for a way to keep the framerate stable at 23.976 using LAV Video decoder; same as dscaler IVTC mpeg2 decoder (does NOT change to 59.940 during video playback).
LAV alone (without MadVR) can't handle Hard telecine, simple as that.
This makes that the hard-telecine is played at 29.97 x2 = 59.94fps in your case.
Ultimately, the problem is that when the framerate changes back and forth, it causes most modern display cards to stutter video; even on the latest and greatest generation nvidia hardware decoding VP5 on the GT640.
If you can't live with these 59.54 fps, use the Dscaler IVTC mod decoder. If the Dsaler decoder is too limited for you,
you might consider disabling the IVTC in Nvidia CP and set the new checkbox from LAV on half-checked/unchecked. Try if this makes any difference.
Note : an interesting check you can do after disable IVTC in NV CP is put set the checkbox full checked/half/not checked.
If I'm right, you should see a difference now only for soft-telecine, so make sure that when testing, you're using soft-telecine'd stuff !
Mercury_22
28th August 2012, 08:05
Any chance you can add SHOUTcast support ? for (us the lazy :)) internet radio listeners
Cause the one in MPC-HC it's taking a long time to start compared with manually copy the URL from pls file and paste directly in the player
nevcairiel
28th August 2012, 09:17
Playlists is not something that i think the source filter should handle.
Reino
28th August 2012, 20:14
I believe there's some misunderstanding here. LAV Filters already has SHOUTcast support (opus-streams work well too btw). It's MPC-HC that's still lacking proper support. Be sure to read my next post too.
Copy-paste the following in notepad and save it as a reg-file:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\http]
;LAV Splitter Source
"Source Filter"="{B98D13E7-55DB-4385-A33D-09FD1BA26338}"
;File Source (URL)
;"Source Filter"="{E436EBB6-524F-11CE-9F53-0020AF0BA770}"Double-click the reg-file for the changes to take effect. Now opening m3u/pls-files (SHOUT- and Icecast streams) in MPC-HC should go a lot faster.
If you want revert these changes, put a semicolon in front of LAV Splitter Source's CLSID-code, remove the one in front of File Source (URL)'s CLSID-code and double-click the reg-file again.
This should be considered as a temporary solution though, because in the first place it's MPC-HC that should start looking further than [HKEY_CLASSES_ROOT\http] for streaming capable DirectShow filters!
Mercury_22
28th August 2012, 23:12
I believe there's some misunderstanding here. LAV Filters already has SHOUTcast support (opus-streams work well too btw). It's MPC-HC that's still lacking proper support. Be sure to read my next post too.
Copy-paste the following in notepad and save it as a reg-file:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\http]
;LAV Splitter Source
"Source Filter"="{B98D13E7-55DB-4385-A33D-09FD1BA26338}"
;File Source (URL)
;"Source Filter"="{E436EBB6-524F-11CE-9F53-0020AF0BA770}"Double-click the reg-file for the changes to take effect. Now opening m3u/pls-files (SHOUT- and Icecast streams) in MPC-HC should go a lot faster.
If you want revert these changes, put a semicolon in front of LAV Splitter Source's CLSID-code, remove the one in front of File Source (URL)'s CLSID-code and double-click the reg-file again.
This should be considered as a temporary solution though, because in the first place it's MPC-HC that should start looking further than [HKEY_CLASSES_ROOT\http] for streaming capable DirectShow filters!
:thanks: You're right it's working
Maybe this can be enable/disable in/with the installer ?
mark0077
29th August 2012, 19:09
Is there any way for LAV Video Decoder to allow on the fly changes to "Hardware Acceleration" -> "Hardware/GPU" -> "Algorithm" settings?
For most of my mpeg2 content, I need to manually select to either use or not use "Adaptive" vs "None" de-interlacing during playback based on whether I can see if it needs deinterlacing or not. Can I somehow make these settings changes take effect without restarting the movie?
I use avisynth frame interpolation after LAV Video Decoder so I can't use madVR's de-interlacing settings and therefore can't use its keyboard shortcuts to change this on the fly.
kitame
30th August 2012, 05:54
is there any solution to counter screen tearing on fixed screen refresh rates? a monitor of mine hates 23.976 or 29.97 and causes screen tearing whenever i play sources with output frame rates like those =(
theres seems to be an issue with 29.97fps videos as well, they tend to generate ghosting problems or better known as telecine judder.
http://img839.imageshack.us/img839/6655/judder.png
note: notice the mouth, in motion you'd see afterimages of the line.
DragonQ
30th August 2012, 11:09
Do you have Windows Aero off? You need to have it on to avoid tearing in videos, in my experience.
hoborg
30th August 2012, 12:06
Hi.
I dind't see any tearing on that picture.
Here is tearting:
http://www.tweakguides.com/images/GGDSG_19.jpg
Wiki:
http://en.wikipedia.org/wiki/Screen_tearing
ryrynz
30th August 2012, 13:49
@hoborg He was referring to two separate issues tearing and ghosting, the picture he posted highlighted only the second issue (ghosting).
SassBot
30th August 2012, 14:52
is there any solution to counter screen tearing on fixed screen refresh rates? a monitor of mine hates 23.976 or 29.97 and causes screen tearing whenever i play sources with output frame rates like those =(
theres seems to be an issue with 29.97fps videos as well, they tend to generate ghosting problems or better known as telecine judder.
note: notice the mouth, in motion you'd see afterimages of the line.
Is that really an issue with LAV? That just looks like poor quality deinterlacing or your source already has blend issues to begin with. Also, since when has "ghosting" ever been known as telecine judder? Telecine judder is a jerkiness in things like smooth pans due to the pattern of duplication of fields to turn a 24fps signal into 29.97. It has nothing to do with blended after images.
kitame
30th August 2012, 15:37
then i might've misunderstood the meaning of judder, although the issue is still there, its not exactly LAV's fault but the fixed screen refresh rate's, im asking if theres any form of solution that can be done without opting to drastic measures.
and i doubt its the source, when i try my other monitors that can match the source's framerate the ghosting drastically lessens. but forcing the screen refresh rate to lock at 60fps reintroduces them, my hypothesis about this one is that the frames that ghosts is getting duplicated, making them more visible.
also concerning interlaces, turning it forced off or on doesnt solve it.
edit: i have a hypothesis, is it possible that the supposedly current frame is getting drawn after the supposedly next frame is drawn? like a frame pattern of 1 2 3 5 4 6 7 9 8, where as the swapped orders causes the ghosting effect.
also from 29.97 to 60 its orders is somewhere near 1 1 2 2 3 3 4 4 5 5, but if you apply my hypothesis it could be 1 1 2 2 3 3 5 4 5 4 6 6 7 7 9 8 9 8 making the ghost effect more visible.
SassBot
30th August 2012, 15:42
The screenshot you posted seems to purely be an issue of a blended source or deinterlacing a telecined source instead of properly IVTCing it. Can you post a sample clip of the source?
kitame
30th August 2012, 16:03
know any site that i could upload the whole thing untouched? a 90mb 6min file i mean.
edit: nvm, backread and saw sendspace. i hate my ISP... 30KB/s up.
SassBot
30th August 2012, 16:10
It doesn't have to be the full file. Just like a 30 second snippet that shows the problem areas.
CharlieCL
30th August 2012, 16:15
I am wondering whether LAV codec changed time resolution.
kitame
30th August 2012, 16:33
lol, i did try to cut a segment, although by the time i finished doing so the original already completed uploading XD
http://www.sendspace.com/file/toi2i7 [original]
http://www.sendspace.com/file/hc5z3z [28sec clip]
edit: i did some observation of other files with similar issues to this, the problem does show on the others but this particular file seems to have the worst... im feeling that this file is the problem on top of the issue.
nhakobian
30th August 2012, 17:17
then i might've misunderstood the meaning of judder, although the issue is still there, its not exactly LAV's fault but the fixed screen refresh rate's, im asking if theres any form of solution that can be done without opting to drastic measures.
and i doubt its the source, when i try my other monitors that can match the source's framerate the ghosting drastically lessens. but forcing the screen refresh rate to lock at 60fps reintroduces them, my hypothesis about this one is that the frames that ghosts is getting duplicated, making them more visible.
If you have a hard telecine source encoded as progressive (or field-blended as has already been suggested), it can appear on playback to have similar characteristics to frame judder (every so often you'll have a field blended "stickiness" to the picture). This is more common with old(er) tv-shows (and anime) that were shot on film, had telecine applied, then had CGI/edits applied at video frame rates.
These sources particularly difficult as different elements on screen could be composited at different framerates, i.e., the background could be 30i, while the foreground could be 24p telecined to 30i. In that case, there isnt any way to fully correct the image. The closest you can get is performing IVTC (if there is enough motion in the foreground to lock into the pattern) and then performing adaptive deinterlacing to clear up the background (or visa-versa). From the frame you provided, it almost looks like this was a segment where this type of correction failed. If the whole video looks like this, its a good chance than it was a poor encode or just had such bad alternating IVTC cadences or interlaced sections that the encoder gave up. (I've seen this type of output on Netflix videos and cable on-demand too since they take a bit of hand holding to get any better output.)
Just had a thought, it could also be a strange field order reversal in the source, but that wouldnt be as likely.
Either way, this is probably an issue with the source, or with the encode, not the playback. Its possible that maybe something in the encoded file is wierd and its causing Lav to mess up.
kitame
30th August 2012, 17:23
i see, so most likely the files with these sort of issue is the main cause. re-encoding this as is wouldn't solve the problem either, i tried anyway, and the raws aren't available either.
Mikey2
31st August 2012, 07:15
I thought I already posted this, but I cannot see the post. Basically, I just grabbed my first 10Bit video. I thought that the LAV Video Decoder will correctly decode and output this type of source. However, the read-me on the source said I need to use CoreAVC. I have CoreAVC, but I prefer to use LAV for [software] decoding. Am I ok just using LAV as usual? Do I need to turn-off the 8-bit 4CC codes (NV12 etc)?
Finally, I am using madVR for rendering...does this have any relevance on that (i.e. once decoded, is a 10bit raw video any different from an 8bit one, and if so, does anything need to be done on the rendering side of things?)
Finally, does this make that big a difference in image quality?
Thanks much in advance for your help and sorry if this is a re-post.
nevcairiel
31st August 2012, 07:17
LAV works just fine out of the box with 10-bit content, you don't need to change anything (neither in LAV or madVR).
Most 10-bit encodes are not done for quality benefits, but for better compression. You can get a 10-bit encode to be 10-20% smaller then the same encode as 8-bit.
kitame
31st August 2012, 13:25
^ not only the benefits of compression, but usually encoders opt for 10bit because of its fault-tolerant behavior.
even if your settings is off it can tolerate without damage on the video quality, which means its less hassle for the encoder when using 10bit.
you can see this practice being used when file sizes of 10bit encodes is far larger than of the 8bit encodes.
as for LAV's settings, try resetting it to default if you're getting issues. as far as the user's end, yes it has a visible difference in image quality, although only as a byproduct of going 10bit because of the given reason above.
Mikey2
31st August 2012, 19:48
Thanks for the responses! I was able to decode 10Bit (P010) when going straight from LAV Video->Madvr.
However, and I guess this should be posted on ffdshow's thread, but part of the funkiness is in LAV. No matter what I do, when LAV Video is connected to ffdShow the pins show YV12. (I.e. In this case it seems to down-sample to 8bit YV12.)
Let me put it in another way (i.e. repeat myself. ;) )I posted a similar question here before just when using an 8BIT source. It seems that the LAV OUT PIN and the ffdShow IN PIN always show YV12 regardless of the source. (I use ffdShow for debanding and occasionally for aviSynth.) This did not bother me in the past since going from YV12<>NV12 is not an issue. However, losing P010 is of course an issue (is it dithering/down-sampling to 8bit?)
Furthermore, both filters have a list of the FOURCC codes to output. If I turn-off all of the 8-bit ones, I can force the output to p010, but am I correct that this is needless up-conversion? This does in fact allow ffdShow to output 10Bit; i.e. I can pipe LAV (YV12 8BIT)-> ffdshow(P010 10BIT [with all 8-bit codes unchecked]->madVR. But I have a feeling this is still losing the 10bit resolution when ffdShow does its magic in 8BIT then up-converts to 10BIT (This is just a guess.)
Normally I would use a ffdshow preset filter for this (i.e. IF 4CC IS P010 THEN disable all 8-bit output types.) But this does not work because LAV Video is still erroneously sending YV12 to the filter.
For now it looks like I need to skip ffdshow. Without it, LAV VIdeo converts to P010 (10BIT)->madVR (P010 10BIT) without any issues.
Finally, I was shocked: on my Pioneer Kuro (which is known for its color-deptch), the difference was dramatically better! I was definitely not expecting that!
Thanks in advance for your help!
MikeY
kitame
31st August 2012, 21:14
try setting ffdshow's primary output colorspace to P010 under the same tab and see if that solves it.
clsid
31st August 2012, 21:19
The processing filters in ffdshow only support 8-bit.
LAV uses dithering when converting 10-bit to 8-bit.
The quality gain of 10-bit video is mainly due to more efficient encoding.
The thought of 'having more colors' is just placebo effect, because madVR also dithers to 8-bit!
Keiyakusha
31st August 2012, 22:16
Finally, I was shocked: on my Pioneer Kuro (which is known for its color-deptch), the difference was dramatically better! I was definitely not expecting that!
Just want to expand a bit on what clsid said. You should think of 10bit as of "yet another thing in x264 that makes encoding more efficient" by using 10bit it is easier to get the same quality as 8 bit but with smaller filesize. Thats it. Don't expect any wonders from it. Assuming that everything works fine , its not going to look any better if you output P010 from LAV.
kitame
1st September 2012, 01:00
^ depends if LAV's dithering is worse than MadVR's =P
Mikey2
1st September 2012, 03:09
Oh well, wishful thinking I guess.
I am still surprised that most people think that how the video is decoded (via software, CUVID, libdavcodec, Cyberlink, CoreAVC, Intel, Adobe (flash HW Accel,) Arcsoft etc etc etc..) actually has an effect on the video-quality (post-processing notwithstanding.) It took me a long time to realize this, and it saved me a bit of money by putting the decoding of my videos on my overclocked CPU, freeing up my GPU's for better resizing algorithms in the renderer.)
Since my Pioneer Kuro display speaks of 10bit signals in the HDMI 1.3 specification, I thought that 10Bit was an example of the later, but I guess it is the former. (Unfrotuanteyly with only one example, I cannot even make a subjective test. So my comment about it being "better looking "was unwarranted. I'm sorry about that. FWIW it does look great and plays without any lost frames/jitter nor any "black crush" or other signal-loss, so that's all that really matters right? :)
...OK now to finally watch the darn movie! ;)
mindbomb
1st September 2012, 23:29
i'm absolutely in love with the mixer in lav audio.
small comment:
"don't mix stereo sources" option's name should be changed to "don't mix stereo/mono sources" ?
since it seems to also affect mono audio. (which is a great feature)
Joniii
2nd September 2012, 10:15
Would it be possible to add similar surface overlay "hack" that ffdshow has for displaying subtitles in DXVA?
I would like to use LAV Video because it has also MPEG-2 DXVA but without subtitles, it's better to use ffdshow DXVA.
egur
2nd September 2012, 19:59
The processing filters in ffdshow only support 8-bit.
LAV uses dithering when converting 10-bit to 8-bit.
The quality gain of 10-bit video is mainly due to more efficient encoding.
The thought of 'having more colors' is just placebo effect, because madVR also dithers to 8-bit!
That's not quite right. When converting YUV to RGB from true 10 bit, the error in RGB will be smaller allowing smoother gradients. This is most visible in blue gradients (e.g. blue skies).
kitame
2nd September 2012, 20:13
^ you have to tell that to a vast majority of people, discussing benefits of 10bit vs 8bit is mind bleeding.
Keiyakusha
2nd September 2012, 20:38
That's not quite right. When converting YUV to RGB from true 10 bit, the error in RGB will be smaller allowing smoother gradients. This is most visible in blue gradients (e.g. blue skies).
what is "true 10 bit"?
Also, while its probably true mathematically, its hard to believe this is actually visible (or actually I don't believe at all). And if so, this is nothing else than, how it was called, placebo effect.
Edit: I'm sure if i'll take blue to white gradient and convert it from rgb to yuv (4:4:4 since we're not talking about subsampling) and back, there will be no visible differences, while mathematically of course there will be some. So having more precision from 10bit is useless because we can't get better than perfect result.
And true 10bit (if I'm guessing right what you mean) doesn't exist in consumer world where we use LAV and ffdshow. Not to mention that with proper dithering there is still no visible issues with any blue skies when we will do yuv-rgb conversion after.
kitame
2nd September 2012, 21:18
the visibility is present on videos that usually ends up with heavy banding, try encoding a video from the source at 10bit with the same or less bitrate of that 8bit encode that suffers heavy banding.
the problem with 8bit encodes is the part where balancing dithering and denoising is annoyingly hard and while pushing for a low bitrate usually results in banding imho, and 10bit solves this problem even if it does dither down to 8bit, because realtime dithering doesnt have the awful bottleneck of bitrate starvation.
Keiyakusha
2nd September 2012, 21:25
the visibility is present on videos that usually ends up with heavy banding, try encoding a video from the source at 10bit with the same or less bitrate of that 8bit encode that suffers heavy banding.
the problem with 8bit encodes is the part where balancing dithering and denoising is annoyingly hard and while pushing for a low bitrate usually results in banding imho, and 10bit solves this problem even if it does dither down to 8bit, because realtime dithering doesnt have the awful bottleneck of bitrate starvation.
Its not what we're talking about. We talking about YUV-RGB conversion and how more bits give more precision to make (or not) this conversion better. Or at least I'm talking about it.
egur
2nd September 2012, 21:29
what is "true 10 bit"?
Also, while its probably true mathematically, its hard to believe this is actually visible (or actually I don't believe at all). And if so, this is nothing else than, how it was called, placebo effect.
Edit: I'm sure if i'll take blue to white gradient and convert it from rgb to yuv (4:4:4 since we're not talking about subsampling) and back, there will be no visible differences, while mathematically of course there will be some. So having more precision from 10bit is useless because we can't get better than perfect result.
And true 10bit (if I'm guessing right what you mean) doesn't exist in consumer world where we use LAV and ffdshow. Not to mention that with proper dithering there is still no visible issues with any blue skies when we will do yuv-rgb conversion after.
By "true" 10 bit I mean that the 2 lower bits are not always zero, otherwise they'll be the same as 8 bit.
Blue gradients can create a "step" or band when converted to RGB. The error of the conversion between two neighboring pixels in RGB can be 2 (2 in 8 bit) this is caused since Cb values are multiplied by ~2.
When viewed in a high brightness and contrast display such a plasma or a powerful projector, this is very clear.
FYI, video processors in TVS operate in 10-16 bit depending on the model.
It's good to go down to 8 bit as late as possible to avoid accumulated rounding errors.
Keiyakusha
2nd September 2012, 21:45
By "true" 10 bit I mean that the 2 lower bits are not always zero, otherwise they'll be the same as 8 bit.
Blue gradients can create a "step" or band when converted to RGB. The error of the conversion between two neighboring pixels in RGB can be 2 (2 in 8 bit) this is caused since Cb values are multiplied by ~2.
When viewed in a high brightness and contrast display such a plasma or a powerful projector, this is very clear.
FYI, video processors in TVS operate in 10-16 bit depending on the model.
It's good to go down to 8 bit as late as possible to avoid accumulated rounding errors.
I see. I got your point. Still I believe your point of view is too mathematically-influenced. (Or how should I say it?. Sorry my English is not good.) I believe this kind of rounding errors are small enough (hard enough to see) to be disregarded, and TVs that operate in 10+ bits (same as many other features we can find in TVs) I consider to be mostly marketing tricks to take more money from consumers. But I think this is beyond something that we should discuss in this thread.
However I fully agree, going to 8bit as last step always preferable. My point is just that when its not very convenient, like in case of ffdshow - we don't lose much (if something at all).
kitame
2nd September 2012, 21:49
Its not what we're talking about. We talking about YUV-RGB conversion and how more bits give more precision to make (or not) this conversion better. Or at least I'm talking about it.
you missed the last part of what i said:
"because realtime dithering doesnt have the awful bottleneck of bitrate starvation."
which basically means 10bit->8bit vs 8bit will sport less banding with greater compression, simply because you've stored the video at a more accurate form and dithering in realtime doesn't induce that of bitrate starved 8bit encode's issues.
or a more shorter explanation, starving bitrate in 8bit encode causes banding, while dithering down to 8bit in realtime doesnt have a bitrate limitation. so in the beginning if you provided plenty of bitrate there'll be no banding issues at all.
edit: although yes far from the original discussions, it still tackles the issues and reasons.
Keiyakusha
2nd September 2012, 22:01
you missed the last part of what i said:
"because realtime dithering doesnt have the awful bottleneck of bitrate starvation."
Sorry. I guess I missed not last part but the whole thing.
which basically means 10bit->8bit vs 8bit will sport less banding with greater compression, simply because you've stored the video at a more accurate form and dithering in realtime doesn't induce that of bitrate starved 8bit encode's issues.
or a more shorter explanation, starving bitrate in 8bit encode causes banding, while dithering down to 8bit in realtime doesnt have a bitrate limitation. so in the beginning if you provided plenty of bitrate there'll be no banding issues at all.
True. But again its not what we was talking about.
Fullmetal Encoder
2nd September 2012, 23:05
That's not quite right. When converting YUV to RGB from true 10 bit, the error in RGB will be smaller allowing smoother gradients. This is most visible in blue gradients (e.g. blue skies).
The irony is that, as I understand it, a fundamental limitation of one of our most popular display technologies (LCDs) is that they typically have the most difficulty displaying shades of blue properly. I will be very interested to see what OLEDs can do about such issues.
RealSnoopyDog
3rd September 2012, 10:56
Hi nevcairiel, i just found an older recording of a movie via SAT (H.264 1080i - .ts format) on my HD, which has a "glitch" somewhere. Normally, you see some pixel errors there and playback continues normally, but the latest two 0.51.3 LAV builds that i have crash here.
I tested with 0.51.3-33 and 0.51.3-36 => crash.
0.51.3, 0.51.3-18 and 0.51.3-28 => playback continues.
This happens with nVidia and ATI
vad74
3rd September 2012, 17:13
nevcairiel
I founded big problem with LAV Video Decoder and XBMC. My computer have Intel Core i3 processor. I install XBMC DSPlayer, and in LAV setup select Intel QuickSync decoder for hardware accelerate H.264 video streams. In XBMC in fullscreen mode I run 1080p video. Than I press Enter - Video properties - LAV Video Decoder properties. XBMC go to window mode, and open window with LAV Video Decoder properties. And I see in active decoder avcodec! Not Intel QuickSync. Then I repeate run this video from XBMC in window mode. And in LAV window I see active decoder QuickSync.
What I need do for use QuickSync with XBMC in fullscreen mode? Please help me. LAV v0.50.5. XBMC DSPlayer last version. Thanks.
nevcairiel
3rd September 2012, 17:15
If XBMC in fullscreen mode uses D3D Exclusive mode, then the decoder just cannot get access to the required D3D interfaces, because its locked by XBMC. That is all.
I still have on my list to try to fix this with WMC, maybe the same thing works for XBMC, but it'll have to wait a while.
Pat357
3rd September 2012, 17:22
Hi nevcairiel, i just found an older recording of a movie via SAT (H.264 1080i - .ts format) on my HD, which has a "glitch" somewhere. Normally, you see some pixel errors there and playback continues normally, but the latest two 0.51.3 LAV builds that i have crash here.
I tested with 0.51.3-33 and 0.51.3-36 => crash.
0.51.3, 0.51.3-18 and 0.51.3-28 => playback continues.
This happens with nVidia and ATI
Can you upload a sample ? (Mediafire or so...)
powder21
3rd September 2012, 22:00
Hi all. The old ATI video card on my uncle's HTPC needs replacing. I'm looking at the following nVidia cards (not an ATI fan)
EVGA GeForce GTX 560 (Fermi) DS SSC 1GB 256-bit GDDR5 (http://www.newegg.com/Product/Product.aspx?Item=N82E16814130685)
MSI N550GTX-Ti Cyclone OC GeForce GTX 550 Ti (Fermi) 1GB 192-bit GDDR5 (http://www.newegg.com/Product/Product.aspx?Item=N82E16814127573)
Current Setup:
AMD Athlon II x4 2.3Ghz Quad
ATI Radeon HD 5750
4GB DDR3
Player is MPC-HC
Video: LAV Splitter -> LAV Video (DXVA2 Copyback) -> madVR
Audio: LAV Splitter -> LAV Audio -> AC3Filter (downmixing) -> Reclock (for WASAPI only)
It appears either card I'm looking at is more powerful than the ATI card, but I have no idea how much more power might be needed when I throw CUVID into the mix. I will also be using madVR's ability to auto-switch display modes and, while I can't imagine the nVidia cards not being able to handle that, I thought I'd get some opinions before ordering. The power consumption of the 550 would be less than the 560 so I'd kind of prefer that one (plus that particular card's fan is supposed to be super quiet), but it has 144 less CUDA cores and again, never used CUVID before, so I don't know how that factors in.
Please let me know. Thanks.
ALSO: Currently (before card crapped out) with software deinterlacing unchecked in LAV and Auto activate deinterlacing when needed (if in doubt, deactivate deinterlacing) checked in madVR, the deinterlacing worked great. Wondering if the same would be true with cards I'm looking at.
kitame
4th September 2012, 06:03
^ wait for GTX650Ti (not the GTX650, its a ripoff GTX640 with ddr5 support), the power consumption on this shouldn't be over 100w.
im no fan of graphics acceleration because of the issues at hand, but well as far as gpu acceleration is concerned anything over GT520 can handle 1080p.
powder21
4th September 2012, 06:27
Unfortunately, waiting is not an option at the moment and the 650 would be out of price range anyway.
Good to know the 550 should handle the hardware acceleration seeing as how I already ordered it. :)
Kind of in one of those need it now sort of situations. Thanks for the info and suggestion. Much appreciated.
Keiyakusha
4th September 2012, 10:30
Cuvid, dvxa and such works just as good on any gpu, even cheapest one (assuming it have this capability at all) Its not related to the gpu processing power. Taking the one that eats less energy (and possibly even weak enough to be cooled passively) is what many HTPC guys do. As for madvr I don't know about minimum requirements but 550 gpu should be more than enough/ better ask that in madvr thread though
nevcairiel
4th September 2012, 10:35
Cuvid, dvxa and such works just as good on any gpu, even cheapest one. Its not related to the gpu processing power.
Thats only partly true. The decoder itself is independent of the GPU itself, and has the same speed on all cards, however the memory bandwidth is important when you're dealing with CUVID, and if you plan to deinterlace, also the shader performance to some degree.
Having said that, the only card truely too slow are the 510/520 or the 605/610/620 (just decoding+deinterlacing with EVR, no madVR or other expensive things).
For madVR, some people are reportedly happy with a 430 or similar, personally i would get at least a 440 or above, but those ranges are not available in newer models. So the 550 will do just fine.
Anyone with some patience, i would recommend to try to look for a 640 with DDR5 (only OEM so far), or a 650 (tba), or just get a 7xxx AMD. I'm personally quite happy with a passive 7750 right now. :) (i simply use CPU decoding and don't bother with anything else)
Keiyakusha
4th September 2012, 10:57
Thats only partly true. The decoder itself is independent of the GPU itself, and has the same speed on all cards, however the memory bandwidth is important when you're dealing with CUVID, and if you plan to deinterlace, also the shader performance to some degree.
Well, Last time I tried budget gpu with 128bit interface and DDR5 memory, it was having enough bandwidth for playing standard blurays. Current budget variants should have better bandwidth. They wouldn't be stuffing them with decoding chip anyway if its not capable of playing things.
As for deinterlace and stuff, I have no idea about that, that's why pointed that madvr thread may be better place to ask. Though I'm sure 550 gpu will be more than enough
LordMerlin
4th September 2012, 14:10
What I need do for use QuickSync with XBMC in fullscreen mode? Please help me. LAV v0.50.5. XBMC DSPlayer last version. Thanks.
In the settings XBMC in the video section, enable the setting "Use of a window on the whole screen instead of full-screen mode".
powder21
4th September 2012, 18:52
Thats only partly true. The decoder itself is independent of the GPU itself, and has the same speed on all cards, however the memory bandwidth is important when you're dealing with CUVID, and if you plan to deinterlace, also the shader performance to some degree.
Having said that, the only card truely too slow are the 510/520 or the 605/610/620 (just decoding+deinterlacing with EVR, no madVR or other expensive things).
For madVR, some people are reportedly happy with a 430 or similar, personally i would get at least a 440 or above, but those ranges are not available in newer models. So the 550 will do just fine.
Anyone with some patience, i would recommend to try to look for a 640 with DDR5 (only OEM so far), or a 650 (tba), or just get a 7xxx AMD. I'm personally quite happy with a passive 7750 right now. :) (i simply use CPU decoding and don't bother with anything else)
Thanks nev! I would have liked to have waited for a reply like this, but when you need a component replaced in order to get back up and running, well, you need it pronto. Especially when family is involved :)
This is definitely some good info to have though, so I will keep it in mind for other HTPC builds.
mkanet
4th September 2012, 20:04
It doesn't take much to play bluray. My old 8500GT GDDR2 from 2006 could playback bluray/hd-dvd movies with low CPU usage using PowerDVD. Even back then, the 8500GT was considered a lower-end display card; but, the first generation from Nvidia to support bluray playback via GPU.
Well, Last time I tried budget gpu with 128bit interface and DDR5 memory, it was having enough bandwidth for playing standard blurays. Current budget variants should have better bandwidth. They wouldn't be stuffing them with decoding chip anyway if its not capable of playing things.
As for deinterlace and stuff, I have no idea about that, that's why pointed that madvr thread may be better place to ask. Though I'm sure 550 gpu will be more than enough
Keiyakusha
4th September 2012, 20:20
It doesn't take much to play bluray. My old 8500GT GDDR2 from 2006 could playback bluray/hd-dvd movies with low CPU usage using PowerDVD. Even back then, the 8500GT was considered a lower-end display card; but, the first generation from Nvidia to support bluray playback via GPU.
Its not about CPU usage (or better to say purevideo engine load) but about bandwidth. Even if DXVA works, Cuvid (and dxva cb?) may not (or at least not at full realtime speed). High bitrate full HD frames in one direction and uncompressed in another - this is may be too much for some gpus. Not that I measured any of this. I just know that newer even budget cards can handle it.
sneaker_ger
4th September 2012, 20:24
Its not about CPU usage (or better to say purevideo engine load) but about bandwidth. Even if DXVA works, Cuvid (and dxva cb?) may not (or at least not at full realtime speed). High bitrate full HD frames in one direction and uncompressed in another
Don't forget that the uncompressed picture has to be send yet another time back to the GPU before being send to the display...
ajp_anton
4th September 2012, 20:35
When I change subtitle language, the video pauses for half a second. Doesn't matter much as I don't often change subs mid-film (=)), but why does this happen?
LAV-everything + MPC-HC + madVR.
ddjmagic
4th September 2012, 20:40
I'm having a small problem with MPC-HC with Lav Filters with i3-2100 when trying to playback a MKV made from a NTSC TV Show episode ripped with MakeMKV, it's mpeg2 9000kbps and DD 2.0 audio, when I playback it seems fine but when move the mouse to the bottom to get the seekbar, instead of the seekbar I get the bottom inch of the picture froze (The rest still plays fine) and then the mouse does not do anything, I have to ctrl-alt-delete to get out of it.
Same thing happens if I try and right click, it freezes. I have tried DXVA on and off, its still the same, any suggestions? Blu-ray are fine!
Keiyakusha
4th September 2012, 20:40
Don't forget that the uncompressed picture has to be send yet another time back to the GPU before being send to the display...
Yeah I forgot that...
@nev
Btw what if for example I use cuvid or dxva cb on nvidia but sending result to iGPU (using LucidVirtu)? Or the other way, if I decode via quicksync but then sending stuff to discrete GPU? Would it mean that with this approach bandwidth requirement will be split between GPUs?
sneaker_ger
4th September 2012, 20:41
When I change subtitle language, the video pauses for half a second. Doesn't matter much as I don't often change subs mid-film (=)), but why does this happen?
LAV-everything + MPC-HC + madVR.
I think the graph is being rebuild which causes that pause. Some splitter+decoder combinations can avoid that (gabest?).
Pat357
4th September 2012, 20:47
Its not about CPU usage (or better to say purevideo engine load) but about bandwidth. Even if DXVA works, Cuvid (and dxva cb?) may not (or at least not at full realtime speed). High bitrate full HD frames in one direction and uncompressed in another - this is may be too much for some gpus. Not that I measured any of this. I just know that newer even budget cards can handle it.
Like said before by other people : not every newer budget card can handle BD video : the GT 510/520 and GT 605/610/620 are now for sale in your shop, but these can handle BD content only in DXVA.
This means no MadVR, limited CUVID (max 30fps), limited interlacing,...
Keiyakusha
4th September 2012, 21:00
Like said before by other people : not every newer budget card can handle BD video : the GT 510/520 are still for sale and can handle BD content only in DXVA.
This means no MadVR, limited CUVID (max 30fps), limited interlacing,...
No madvr, deinterlacing or anything else - sure. I never said you can have this all (I never even do realtime deinterlacing or play interlaced streams at all). They can do 24-30fps cuvid, this is all I care about and this all I say. (EDIT: not sure about any OEM cards though)
Guest
4th September 2012, 21:17
the GT 510/520 are still for sale and can handle BD content only in DXVA.
This means no MadVR, limited CUVID (max 30fps), limited interlacing,... No! The 520 (VP5) does CUVID decoding way faster than the higher-end VP4 cards. And the postprocessing looks fine to me.
nevcairiel
4th September 2012, 21:18
I think the graph is being rebuild which causes that pause. Some splitter+decoder combinations can avoid that (gabest?).
The graph is not rebuilt, its just paused to switch the stream, which causes a minor delay.
It would be possible to avoid that, however the problem is that streams are read-ahead and buffered a bit, so if you change the stream without doing the pause and reset buffers dance, it might take a bunch of seconds until the switch occurs. You can see that with Gabest, if you switch now, it takes a while until it actually changes (more obvious with audio), i prefer an instant switch with a small playback glitch.
No! The 520 (VP5) does CUVID decoding way faster than the higher-end VP4 cards. And the postprocessing looks fine to me.
Even NVIDIA itself admitted that the 520 is not fast enough for full-scale deinterlacing.
I would be very careful with that card. Going the lowest you can find that might potentially still work is not a strategy i would generally recommend. ;)
mkanet
4th September 2012, 23:30
Im guessing this is more of an academic point you're making; which is understandable.
From a practical/real-life point... it's a little amusing. I've never had to worry about "bandwidth" when playing back standard BD discs; even on my 6 year old PC. PowerDVD works just fine; with a little help from Reclock, the picture is on par with my 24P capable standalone device; at least my eyes can't tell the difference. I've upgraded my display adapter since 2006; more than once.. But, it wasn't because of 2D bluray playback. I do enjoy watching 3D bluray though very much with my GT640 display card.
Its not about CPU usage (or better to say purevideo engine load) but about bandwidth. Even if DXVA works, Cuvid (and dxva cb?) may not (or at least not at full realtime speed). High bitrate full HD frames in one direction and uncompressed in another - this is may be too much for some gpus. Not that I measured any of this. I just know that newer even budget cards can handle it.
wanezhiling
5th September 2012, 01:34
Even NVIDIA itself admitted that the 520 is not fast enough for full-scale deinterlacing.
Since 304.48beta, the 520 was "reborn".:D
Now it works fine with lav cuvid(double fps), even the clip is 1080i 60m size.:)
Of course madVR still costs too much than 520 has.
kitame
5th September 2012, 10:51
^ do note that deinterlace and decode are separate matter, stack them and issues will start popping up.
ddjmagic
5th September 2012, 11:27
I'm having a small problem with MPC-HC with Lav Filters with i3-2100 when trying to playback a MKV made from a NTSC TV Show episode ripped with MakeMKV, it's mpeg2 9000kbps and DD 2.0 audio, when I playback it seems fine but when move the mouse to the bottom to get the seekbar, instead of the seekbar I get the bottom inch of the picture froze (The rest still plays fine) and then the mouse does not do anything, I have to ctrl-alt-delete to get out of it.
Same thing happens if I try and right click, it freezes. I have tried DXVA on and off, its still the same, any suggestions? Blu-ray are fine!
Works fine this morning :rolleyes: Must of just been a one off :)
ddjmagic
5th September 2012, 11:42
It tries to eliminate playlists which have loops or repeated clips in them, but thats not always reliable so it may end up on those wrong tracks in some situations.
Thanks for the answer. It works most of the time anyway, and Its not hard to change to the correct playlist :)
I didn't know if it used some kind of database/list or if it chose it by length/size etc.
Another quick question regarding index.bdmv playback and occasional wrong playlists, is it possible for me to tell Lav Filters what playlist to use on troublesome discs so it chooses the correct one next time I playback that particular movie?
I know its not an huge issue, but it would be nice to get it working 100%, users could report troublesome discs and what the correct playlist should be, then it could be added to a list of some kind.
Not sure if this is even possible :helpful:?
I'd be happy to maintain a list of some kind.
nevcairiel
5th September 2012, 14:04
You can simply run the appropriate mpls file from the PLAYLIST folder, instead of the index.bdmv.
LAV does not save such information, and it never will.
clsid
5th September 2012, 15:11
If the splitter ever gets a tray icon, it could show the available playlists in there.
Joniii
5th September 2012, 15:19
Nevcairiel, any chance you could try the subtitles surface overlay on DXVA, it would be a nice feature for us that use subtitles and prefer to use DXVA.
dansrfe
5th September 2012, 15:27
Is DVD playback still planned with LAV Splitter and LAV Video? Thanks!
nevcairiel
5th September 2012, 15:42
Nevcairiel, any chance you could try the subtitles surface overlay on DXVA, it would be a nice feature for us that use subtitles and prefer to use DXVA.
Repeating your questions won't help getting it done, its just annoying. :)
Is DVD playback still planned with LAV Splitter and LAV Video? Thanks!
Who ever said anything about the splitter?
I will never write a dvd navigator or anything crappy like that.
Video support is still planned, but its annoying, and i don't watch DVDs, so its a low priority.
ddjmagic
5th September 2012, 15:56
You can simply run the appropriate mpls file from the PLAYLIST folder, instead of the index.bdmv.
LAV does not save such information, and it never will.
No other way around this? I use XBMC and a BAT file that tells it to use MPC and open the index.bdmv so playing the mpls file won't work that way.
So is it not possible for LAV to ever work 100% correctly with all Blu-ray discs?
Or is it possible in the future maybe?
Edit: The main reason I'm asking is I noticed AnyDVD HD seems to always show the correct playlist in its status window (On all my discs anyway) I'm just wondering what it does differently to determine that.
Sebastiii
5th September 2012, 16:06
@ddjmagic
You can try mediaportal (don't want to push it lol or maybe a little) but with bdhandler plugins, you get a selection list and with 1.3.0Alpha MP has a native Blu-ray player (working with non BD-J one and best user experience with LAV Suite (Thanks Nevcairiel)).
Joniii
5th September 2012, 16:08
Repeating your questions won't help getting it done, its just annoying. :)
I know, I just thought you missed it as you didn't say anything. Would be great to know if there is any chance you could even think about it?
Pat357
5th September 2012, 20:07
I know, I just thought you missed it as you didn't say anything. Would be great to know if there is any chance you could even think about it?
To avoid that good ideas for additions & improvements will be forgotten, there is a list created with all idea's bundled : http://code.google.com/p/lavfilters/issues/list
So, there is no need to ask something over and over again : once it's in the list, it can't be forgotten. :rolleyes:
Because the list is very long, Nev has to make choices on what to do first.
Getting a nice splitter and audio & video codec all for free is of course fun for us (:D), but always remember that it's supposed to be fun for Nev too !! :eek:
As long as it's fun for Nev, he will keep on improving his software and again, it will be fun for everyone !! :D
When it stops being fun for Nev,.... I guess you can figure out yourself what will happen then...
dansrfe
5th September 2012, 22:23
@nevcairiel
What about unencrypted bluray menu support?
ddjmagic
6th September 2012, 15:19
Edit: The main reason I'm asking is I noticed AnyDVD HD seems to always show the correct playlist in its status window (On all my discs anyway) I'm just wondering what it does differently to determine that.
I take this back, just tried a disc I had trouble with in the past (American Pie USA BD)
AnyDVD HD picks an incorrect playlist, although a different playlist to LAV (which also picks the wrong one)
AnyDVD picks 00805.mpls, which is 00:48:54 long (No chapters) and is just one part of the movie (The playlist plays 0805.m2ts which happens to be the biggest stream file) I'm guessing this is what confuses AnyDVD.
LAV picks the longest playlist 00302.mpls (03:33:30) which is 66 Chapters and contains all the SD special features.
Correct playlists are 00801.mpls (01:35:38) Unrated Cut.
and 00800.mpls (01:35:32) Theatrical Cut with a 4 second ratings logo before the movie.
VLC & XBMC also choose the same playlist as LAV, so I'm guessing that some discs are structured in a way that makes it impossible to determine the correct playlist.
Only thing I could see that maybe could help this particular disc, is if LAV had some kind of rule that if a playlist contained SD content then it skipped it as the main movie and also a rule if the playlist has no chapters then skip as main movie. This would eliminate playlist 00302 & 00801.
Kind of like -
under 15 mins - skip
repeated content - skip
no chapters - skip
SD content - skip (Or just simply prefer HD video/audio content over SD)
Then play longest playlist remaining.
I know this is probably not possible, I'm not a programmer and would have no idea how LAV tries to determine the correct playlist
I know its not a big deal and switching playlists is simple, I just think 100% main movie playback would be a great feature, just trying to help achieve that anyway I can :)
BetA13
6th September 2012, 18:30
No other way around this? I use XBMC and a BAT file that tells it to use MPC and open the index.bdmv so playing the mpls file won't work that way.
So is it not possible for LAV to ever work 100% correctly with all Blu-ray discs?
Or is it possible in the future maybe?
Edit: The main reason I'm asking is I noticed AnyDVD HD seems to always show the correct playlist in its status window (On all my discs anyway) I'm just wondering what it does differently to determine that.
hy there mate..im trying out xbmc atm, and like it so far. but i want MPC HC quality in it..the picture with xbmc is terrible..
Could u show me how u set it up so i can use MPC HC with it? or send me ur BAT file so i can take a look at it ?
that would really help me :)
greetz BetA
ddjmagic
6th September 2012, 19:07
hy there mate..im trying out xbmc atm, and like it so far. but i want MPC HC quality in it..the picture with xbmc is terrible..
Could u show me how u set it up so i can use MPC HC with it? or send me ur BAT file so i can take a look at it ?
that would really help me :)
greetz BetA
I setup the external player and got the BAT files from this thread -
http://forum.xbmc.org/showthread.php?tid=116724
kitame
6th September 2012, 19:16
is it possible to integrate ReplayGain or something similar in LAV audio? as an optional addition thats similar to DRC, with normalize matrix it could possibly do both loudness balancing and anti-clipping.
http://wiki.hydrogenaudio.org/index.php?title=ReplayGain
thanks for reading my question.
imperia
8th September 2012, 11:35
Hello,
I am using LAV codecs to watch digital television.
Since a few days there is UHDTV broadcast available on Astra 2B.
Parameters are 12441V DVB-S2 QPSK SR 29500 FEC 3/4
http://en.kingofsat.net/tp.php?tp=706
Resolution is 3840x2160 16:11
My question is:
What is the maximum resolution that video cards like GTX 460 support for hardware decoding? Because LAV decoder is able to play the stream but its using CPU for decoding and this on E8400 is 100% CPU usage. Is it possible for GTX 460 to hardware decode 3840x2160 H264?
Pat357
8th September 2012, 15:03
Hello,
I am using LAV codecs to watch digital television.
Since a few days there is UHDTV broadcast available on Astra 2B.
Parameters are 12441V DVB-S2 QPSK SR 29500 FEC 3/4
http://en.kingofsat.net/tp.php?tp=706
Resolution is 3840x2160 16:11
My question is:
What is the maximum resolution that video cards like GTX 460 support for hardware decoding? Because LAV decoder is able to play the stream but its using CPU for decoding and this on E8400 is 100% CPU usage. Is it possible for GTX 460 to hardware decode 3840x2160 H264?
Unfortunately not : the GTX 460 is also a VP 4 (video processor 4th generation) and for all VP4's max. resolution for HW is 1920x1080.
Only the newer VP5 cards can do 3840x2160 in HW (like for example CUDA/CUVID).
Note that LAV might block higher resolutions than 1920x1080 to prevent problems with unsupported cards.
This is for NVidia, I don't know for AMD, but I'm sure someone else will enlighten us.
imperia
9th September 2012, 00:36
I tried running DXVA Checker. Here are the results from first page, but I don't know to read them :)
NVIDIA GeForce GTX 460
ModeMPEG2_IDCT: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeMPEG2and1_VLD: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeMPEG2_VLD: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeMPEG2_A: DXVA1, 720x480 / 1280x720 / 1920x1080
ModeMPEG2_C: DXVA1, 720x480 / 1280x720 / 1920x1080
ModeMPEG1_VLD: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeVC1_VLD2010: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeVC1_VLD: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeVC1_IDCT: DXVA1/2, 720x480 / 1280x720 / 1920x1080
ModeWMV9_IDCT: DXVA1/2, 720x480 / 1280x720 / 1920x1080
32FCFE3F-DE46-4A49-861B-AC71110649D5: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeH264_VLD_NoFGT: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeMPEG4pt2_VLD_Simple: DXVA2, 720x480 / 1280x720 / 1920x1080
ModeMPEG4pt2_VLD_AdvSimple_NoGMC: DXVA2, 720x480 / 1280x720 / 1920x1080
9947EC6F-689B-11DC-A320-0019DBBC4184: DXVA2, 720x480 / 1280x720 / 1920x1080
B194EB52-19A0-41F0-B754-CC244AC1CB20: DXVA2, 720x480 / 1280x720 / 1920x1080 / 3840x2160
PS. I think I got it now :(
http://en.wikipedia.org/wiki/Nvidia_PureVideo
vad74
9th September 2012, 08:22
nevcairiel
If XBMC in fullscreen mode uses D3D Exclusive mode, then the decoder just cannot get access to the required D3D interfaces, because its locked by XBMC. That is all.
If XBMC in fullscreen mode and in LAV selected DXVA, then the active decoder is DXVA. Only QuickSync dont work.
Mixer73
9th September 2012, 10:27
Hey guys
I installed LAV on my 7MC rig to get MKV support and audio formats and all that, but it seems to have borked WMV playback in MCE.... Are there any specific settings I should set or avoid with splitter/decoder in order to let WMC play back WMV files successfully?
Warlock
9th September 2012, 13:17
Guys, can you help me set up the lav according to my gpu? I own a GF 8600GT, 512MB DDR3. I'm currently using mpc-hc + lav + madvr + madflac + Haali.
aufkrawall
9th September 2012, 14:55
This is for NVidia, I don't know for AMD, but I'm sure someone else will enlighten us.
Southern Islands cards should support 4k, but actually they don't (bugged).
pankov
9th September 2012, 16:19
And here you can download a sample from this 2160p UHDTV test stream at Astra
http://www.mediafire.com/?dz6j9e6jj8g0yfc
Nev,
can you, please, check it out.
I see couple of issues with it
1. The aspect ratio looks incorrect - the image seems too much vertically squeezed. If my math is correct 16:11 should be taller than 16:9 but this one is even shorter than 2.35:1.
2. Intel's QuickSync decoder is not working just as the NVidia one. Is this by design or should I address Eric with this problem?
mrcorbo
9th September 2012, 16:56
And here you can download a sample from this 2160p UHDTV test stream at Astra
http://www.mediafire.com/?dz6j9e6jj8g0yfc
Nev,
can you, please, check it out.
I see couple of issues with it
1. The aspect ratio looks incorrect - the image seems too much vertically squeezed. If my math is correct 16:11 should be taller than 16:9 but this one is even shorter than 2.35:1.
2. Intel's QuickSync decoder is not working just as the NVidia one. Is this by design or should I address Eric with this problem?
I tried playing this clip in mpc-hc w/ lav, mplayer, and vlc and all played with the same aspect ratio. In the pin info in LAV, the VIDEOINFOHEADER2 has the clip's aspect ratio as 181:70. In addition, both Mplayer and VLC handled the clip poorly with bad artifacting.
The clip itself seems to have issues. If anything, LAV seems to be handling it better than expected.
SeeMoreDigital
9th September 2012, 17:38
And here you can download a sample from this 2160p UHDTV test stream at Astra
http://www.mediafire.com/?dz6j9e6jj8g0yfc
Nev,
can you, please, check it out.
I see couple of issues with it
1. The aspect ratio looks incorrect - the image seems too much vertically squeezed. If my math is correct 16:11 should be taller than 16:9 but this one is even shorter than 2.35:1.
2. Intel's QuickSync decoder is not working just as the NVidia one. Is this by design or should I address Eric with this problem?
Here's the files spec according to DGAVCIndex: -
Stream Type: Transport [188]
Profile: High
Level: 5.1
Frame Size: 3840x2160
SAR: 16:11
Display Size: 5585x2160
Frame Rate: 25.000000 fps
Colorimetry: BT.601 [5]
Frame Structure: Frame
Frame Type: not yet
Coded Number: 106
Playback Number: 106
Frame Repeats: 0
Field Repeats: 0
Bitrate: 35.715
Bitrate (Avg): 48.719
Bitrate (Max): 72.559
It would seem the video stream has been given a the incorrect SAR...
pankov
9th September 2012, 20:40
SeeMoreDigital,
why do you say that the SAR is incorrect?
I think the problem comes from the DAR. The SAR is more believable even though I think it looks better at 16:9 or 16:10.
So can somebody else capture some samples from this test stream and confirm/deny that it's actually the transmission that's broken not our playback chains.
If we leave the AR issue aside we are still left with the question - can this sort of material be played with some kind of hardware decoding.
From what I've read Quick Sync should be able to handle it.
nevcairiel
9th September 2012, 20:42
Only Ivy Bridge does 4K decoding, if you're running it on your 2500k from your signature, no 4K for you.
NVIDIA (via CUVID) only supports it with VP5 (VDPAU Feature Set D). AMD claims to support it with the 7xxx series, but in my tests, it just failed miserably.
In other news, the stream seems terrible broken in general.
pankov
9th September 2012, 21:23
Thanks, Nev,
I've obviously got the quick sync talk wrong. I thought that all QS CPUs support 4K.
Now that you've said that only Ivy Bridge ones do I tried it on my other PC with Core i5 3570K and with it LAV successfully used the Quick sync decoder.
:)
There was one other problem though - if I use madVR to render at 1920x1080p it crashes ... I guess Intel's HD4000 GPU can't handle it.
I'll do more test on this issue later.
Nevertheless when I use EVR it plays smoothly without errors but still brings the CPU in its highest performance state and uses around 20-25% of it's resources. These percentages are divided between the following threads:
LAVSplitter.ax -> 8-9%
IntelQuickSyncDecoder.dll -> 6-7%
IntelQuickSyncDecoder.dll -> 3-4%
LAVVideo.ax -> ~1%
all the rest are ~0% each
I then played a normal 1080i50 DVB stream and the total CPU usage was ~3-4% of which the LAVSplitter was around 1.5-2% and IntelQS -> 0.7-1%.
Is this all sound normal to you?
I'm not complaining - I just want to know if my systems are behaving as expected.
Pat357
10th September 2012, 16:11
Nev,
Lav-splitter seems to fail on this posted 4k DVB .TS stream for me.
When trying to play this .TS using MPC-HC and LAV (vid+splitt), the video stalls at the start. It never starts playing ! :confused:
When I just change the splitter (MPC internal) everything plays fine.
If I remux .TS to MKV, lav-splitter (+LAV-vid) is OK and plays nice too.
I'm I the only one with a "borking" LAV-splitter ?
I just want to know if something messed with my DShowfilters and might have broken some things.
EDIT : Reinstalling LAV-filters seems to have solved it....
-
Nvidia GTX-570, i7-core 970@3.8, 24GB RAM DDR3-2000
Areca HW RAID controller 8x SATA6 + 8x WD2000FYYS disks.
OCZ vertex 3 240GB.
nevcairiel
10th September 2012, 16:13
You're simply running some random build, and not the release. :p
Apparently the version of ffmpeg currently in my ffmpeg repository has some issues with it, causing these problems.
Edit:
And i pushed an ffmpeg update which was long overdue anyway
mzso
10th September 2012, 17:59
If you're happy with the decoder, it doesn't matter what video card you use.
Hardware deinterlacing is the only thing really missing with ATI for a "perfect" setup with madVR,
Is this still the case? I was talking to someone who said AMD had some sort of vector adaptive hardware deinterlacer (which is supposed to better than NVIDIA-s). Or the issue never was the lack of deinterlacing support from the driver, but for some reason the inability to use it? (Like with CUVID)
(Also there's an option for DXVA in LAV for decoding, doesn't that also have deinterlacing capability?)
nevcairiel
10th September 2012, 18:02
That quote was from before madVR got hardware deinterlacing options, i guess, so it doesn't apply anymore.
mzso
10th September 2012, 18:32
That quote was from before madVR got hardware deinterlacing options, i guess, so it doesn't apply anymore.
I see. Guess it uses whatever the driver provides.
OK, so what was the obstacle with using the driver's deinterlacing with LAV in case of an AMD video adapter?
mindbomb
11th September 2012, 02:25
it wasn't that AMD had a problem, it was more that the cuvid mode gave nvidia an advantage at the time by allowing deinterlacing through the video decoder rather than the renderer.
and since madvr didn't support deinterlacing, that was a really useful feature at the time.
mzso
11th September 2012, 09:12
it wasn't that AMD had a problem, it was more that the cuvid mode gave nvidia an advantage at the time by allowing deinterlacing through the video decoder rather than the renderer.
and since madvr didn't support deinterlacing, that was a really useful feature at the time.
I see. I was a bit confused on the hows and whys.
So out of curiosity either of NVIDIA's or AMD's hardware deinterlacer considered better? (comparing the best methods)
Edit:
So I tried deinterlacing with madVR instead of LAV with one specific file and I didn't get any dropped frames outside the start of video. I'm guessing its probably using a different method, but I can't know for sure. (I have an NVIDIA card of course). If this is the case which LAV settings result in the same method for deinterlacing?
Pat357
11th September 2012, 18:54
Hello,
not sure if this thread is appropriate for it, but:
How do you make hardware acceleration work on videos with resolutions beyond 1920x1080 using GT 520 (GF119) + MPC-HC x64 1.6.3.5818 (EVR) + LAV Filters x64 0.51.3 (DXVA2 native)?
Thanks in advance.
I hope you didn't find a 2160i (interlaced) video ??
What is the resolution from your video ?
Try it with LAV CUDA or LAV CB, as in these modes IIRC, there are no blocks on any resolutions. (res > 1080p HD)
LAV Native DXVA might block some res. higher then 1920x1088 IIRC
GTPVHD
11th September 2012, 19:24
http://www.anandtech.com/show/6263/intel-haswell-architecture-disclosure-live-blog
Higher encode quality, faster Quick Sync with GT3
Introducing hardware based SVC codec, can encode once and playback multiple times
4Kx2K video acceleration is supported
Moved some video processing stuff off the EU array into a dedicated video quality engine
Hardware image stabilization is new in Haswell
In the past only had two concurrent engines: codec and imaging/scale/composite, now you can do more in parallel as long as there's enough bandwidth to sustain
Haswell looking pretty good at the moment for video decoding and post processing.
kitame
11th September 2012, 19:31
@jq963152 - not possible, the GT520 already struggles with 1080p, or if it is possible it ain't gonna be pretty.
plus whats the point of HW if you got muscle CPUs ._. not like 20% load on the CPU adds 30watts more(thats the GPU's equivalent power consumption)
kitame
11th September 2012, 20:12
oh wait, didnt notice you didnt include madvr, although it still does perform horribly =/
edit: also a fair bit of warning, dont feed it interlaced videos. yes it may be able to handle it with some magic but it won't sport dropless playback.
bjd
11th September 2012, 22:01
Just upgraded my laptop to a pentium b970 based one and quicksync decoding in lav is working and cpu usuage is about 40% lower as well as memory usage compared to avcodec software mode. All the documentation says quicksync is disabled on this chip so not why the decoding is working - any ideas please ?
nevcairiel
11th September 2012, 22:02
Just upgraded my laptop to a pentium b970 based one and quicksync decoding in lav is working and cpu usuage is about 40% lower as well as memory usage compared to avcodec software mode. All the documentation says quicksync is disabled on this chip so not why the decoding is working - any ideas please ?
QuickSync encoding is disabled, the decoder is available on all Sandy Bridge CPUs.
bjd
11th September 2012, 22:15
QuickSync encoding is disabled, the decoder is available on all Sandy Bridge CPUs.
Cheers Nev, that is a welcome bonus I was not expecting - works great by the way
mindbomb
12th September 2012, 00:00
i have a question about flac playback for more than 5.1 channels.
specifically, how well does lav audio handle that type of thing. I have heard that flac isn't good for more than 5.1 because of issues with channel mapping.
On the other hand, it is supposed to support up to 8 channels.
I'm wondering if it is a good idea to backup movies with 7.1 or 6.1 lossless audio with flac
kitame
12th September 2012, 02:22
@jq963152 - its about how stressed it is to perform that much to the point of dropping frames if you add in madvr, not that it matters to everyone though.
dansrfe
12th September 2012, 03:00
I'm kind of unsure on how to correctly set the mixing levels of the center, surround, and LFE channels. Are there any general guidelines I should follow? Also, why does LFE go up to 3.0? Does that multiply the volume of the LFE channel by 3?
bugmen0t
12th September 2012, 08:03
The usual way, to make lav sound the same as other players, is to set center = lfe = sqrt(2)/2 = 0.7071 and surround = 1. If your speakers cannot reproduce low bass you maybe want to leave lfe at 0.
Technically the lfe should even get a 10db boost (required by specs) to be loud enough (automatically applied by the receiver when using multi-speaker setup, but not when mixing). That's why nev allowed for higher lfe settings than 1. However when mixing like that one would decrease the overall dynamic range, which is why people don't normally do that.
To put it simple: there is no way to make it sound exactly the same as a multi-speaker setup.
kitame
12th September 2012, 11:03
LFE should be totally negated outside of true multi-channel setups, since LFE signals are already in the left and right channel, most of the LFE sources only has emphasized lower frequencies. even 2.1 setups has crossovers to get their own LFE feeds.
if you do downmix LFE at gains higher than 1 it will overpower the other channels, and mostly causing the outputs to clip.
jmonier
12th September 2012, 13:55
i have a question about flac playback for more than 5.1 channels.
specifically, how well does lav audio handle that type of thing. I have heard that flac isn't good for more than 5.1 because of issues with channel mapping.
On the other hand, it is supposed to support up to 8 channels.
I'm wondering if it is a good idea to backup movies with 7.1 or 6.1 lossless audio with flac
I've specifically checked channel mapping with 7.1 channels and it works fine.
Pat357
12th September 2012, 15:27
Are you sure about that? And if yes, what's the reason for that?
It has certainly been that Nev blocked >1080p playback for native DXVA, and unless he changed it, the block is still there.
The reason is to protect the user when he tries to play such resolutions in dxva using an unsupported video card.
My guess is that the DXVA makes it harder to properly handle errors from unsupported resolutions.
Because: then how are you supposed to play back videos with resolutions beyond 1920x1080 (4K Videos for example) with hardware acceleration :confused:?
What about CUVID and DXVA CB ? You can also try the Arcsoft decoder or Cyberlink in DXVA with MPC-HC.
AFAIK, for these there are no blocks for any resolution IIRC.
In a lot of threads here some users apparently are posting some 4K (3840x2160p) testclips for example. What software do they use to play them back with hardware acceleration?
Like I said CUVID and DXVA CB (some used a modded version from LAV with the blocks for DXVA removed).
CoreAVC can also do this in "cuda" mode (=same as LAV cuvid), maybe Arcsoft decoder or Cyberlink's in DXVA (also with MPC-HC)
DragonQ
12th September 2012, 16:18
A tick box would be OK if it had a little hyperlink next to it leading to a page listing the capabilities of all graphics processors (I think there's one on Wikipedia).
clsid
12th September 2012, 18:06
I would suggest an internal table that contains a list of graphics card device ids plus their capabilities.
The device id could be shown on a status tab (amongst other info).
nevcairiel
12th September 2012, 18:17
I have no interest in maintaining such a table, its a major PITA. I rather make it auto-detect if the GPU accepts a 4K decoder.
Blight
13th September 2012, 01:10
nev:
Now that the Opus format is ratified and gaining traction, an official (non-test) LAV filters version with opus support would be welcomed.
roytam1
13th September 2012, 01:35
@nev: commits are missed in submodules?
Unable to checkout '9e1a5315d9bb5ca6012851fac526ad2e6f612497' in submodule path 'libbluray'
in dvdvideo branch:
Unable to checkout 'e54f1b14c5b4682f6ab2c51e42d99202c537cdd8' in submodule path 'libbluray'
noee
13th September 2012, 02:06
Yeah, I'm getting this too:
2>e:\my docs\projects\lavfilters\libbluray\src\util\mutex.h(24): fatal error C1083: Cannot open include file: 'config.h': No such file or directory
2> hdmv_vm.c
Libbluray and lavsplitter fail to build.
nevcairiel
13th September 2012, 15:03
Speaking about NVIDIA, they also released the GTX650 with GDDR5, which might be a good pick for a HTPC card with some performance headroom. :)
I hope one of the manufacturers produces a good passive version of it. :)
Joniii
13th September 2012, 22:35
Is there any way to get subtitles on Media Center, I noticed those show on MPC-HC even on DXVA but not on WMP or WMC.
kitame
14th September 2012, 12:05
^ i don't even think you can chain LAVs in WMP/WMC, although CCCP could force it to, FFDShow's subs render is the only thing i know of that works with WMP.
ryrynz
14th September 2012, 12:19
Nev, with the mixer enabled duplicating stereo to 7 channels drops the volume down, can I have LAV retain the volume?
nevcairiel
14th September 2012, 12:27
Nev, with the mixer enabled duplicating stereo to 7 channels drops the volume down, can I have LAV retain the volume?
LAV does not support upmixing at this time.
If you play stereo and have 7 channels selected, you just get stereo in the two front channels, and a lot of silent channels. The stereo signal should be untouched.
ryrynz
14th September 2012, 12:40
The stereo signal should be untouched.
Ah, it's the receiver doing that then.
LAV does not support upmixing at this time.
Possible implementation soonish?
nevcairiel
14th September 2012, 12:43
Not sure if it has been posted in here already (?), but just came across the following article:
4k decoding already works just fine on Ivy Bridge, and has for a few month already.
andyvt
14th September 2012, 13:55
And what could the driver update they mentioned for next month be for then :p:confused:?
The driver adds 4K output, current drivers are limited to 1080p when not using DP. Unfortunately IVB will require two DP outs to do this, so the feature is more about press than usefulness.
As you wrote it would already work: could you possibly report about the performance?
What metrics are you interested in? CPU utilization is ~4% on an i7-3770K.
Are maxed out AVC HP@L5.2 "4K" videos with 5 reference frames and 300 Mbps at 60 fps working?
Got a sample?
nevcairiel
14th September 2012, 14:19
crf 0 is lossless, the hardware cannot decode that.
Anyway, please keep stuff about hardware performance and whatnot out of the LAV thread, it adds way too much noise.
Pat357
14th September 2012, 16:24
4k decoding already works just fine on Ivy Bridge, and has for a few month already.
The article is not about decoding, but about getting the decoded frames on a real 4K display.
It seems we still need 2 HDMI or 2 Display Port cables to "drive"a 4k display (IvyB).
Haswell should be able to do this with only 1 HDMI cable or 1 DP cable. (something about fully supporting the HDMI v1.4a spec).
nevcairiel
14th September 2012, 16:28
The article is not about decoding, but about getting the decoded frames on a real 4K display.
It seems we still need 2 HDMI or 2 Display Port cables to "drive"a 4k display (IvyB).
Haswell should be able to do this with only 1 HDMI cable or 1 DP cable. (something about fully supporting the HDMI v1.4a spec).
I know that, i just corrected his mis-interpretation of the article.
pie
15th September 2012, 08:34
One thing about using lavfilters that is a real show stopper for me is that the splitter simply stops playback of audio when the cpu is under high load - I use a pretty old laptop so this becomes annoyingly obvious whenever I'm simultaneously web browsing (or doing anything else that moderately taxes the cpu) and watching a video.
What this equates to is jerky audio (stops and starts), making the video absolutely unwatchable - in this case the Haali splitter handles this much better as the audio generally does not stop at all (although it may lag behind the video; this is actually ok and much more watchable as it is less noticeable; it usually also catches up when the cpu is under less load too)
cyberbeing
15th September 2012, 10:55
One thing about using lavfilters that is a real show stopper for me is that the splitter simply stops playback of audio when the cpu is under high load
...
in this case the Haali splitter handles this much better...
LAV Splitter uses a Base Priority of 7 (Below Normal) for the Audio Decoder.
Web Browsers normally would have a Base Priority of 8 (Normal).
Haali Splitter uses a Base Priority of 9 (Above Normal) for the Audio Decoder.
If you boost the priority of everything through your media player (MPC-HC has a check-box for this), I suspect it would resolve your audio dropouts with LAV Splitter.
nevcairiel
15th September 2012, 11:01
Note that thread priorities are always relative to the process, not the system. If you have performance issues, you might as well try to increase the priority of the whole player.
cyberbeing
15th September 2012, 11:47
Was there a particular reason why LAV Splitter lowers the priority of the audio decoder thread while Haali Splitter, MPC-HC's Splitter, AV Splitter, and others all raise the priority?
nevcairiel
15th September 2012, 11:51
A 20 year old PC could decode audio, so i simply gave priority to video. Once you don't have enough performance to do both, something bad will happen, no matter how its setup.
I could probably remove that code and make it have all the same priority.
PS:
Everyone else doing something in this DirectShow world most likely just means they copied from each other, not that there is a real reason to it. :D
pie
15th September 2012, 13:13
A 20 year old PC could decode audio, so i simply gave priority to video. Once you don't have enough performance to do both, something bad will happen, no matter how its setup.
While it's true that pretty much any PC can decode audio, when you combine it with video and you prioritise audio below video, you're going to notice audio dropping first (when starved of resources) which is arguably bad because audio dropping is more noticeable than video lagging.
It would be good if you did remove the difference in priority ^^ :thanks:
nevcairiel
15th September 2012, 15:41
I asked you before to stop posting about these things here, please take it to a more appropriate place. If you really want to know, buy the hardware and test, instead of posting random quotes from random review pages.
mandarinka
15th September 2012, 20:01
While it's true that pretty much any PC can decode audio, when you combine it with video and you prioritise audio below video, you're going to notice audio dropping first (when starved of resources) which is arguably bad because audio dropping is more noticeable than video lagging.
It would be good if you did remove the difference in priority ^^ :thanks:
That's true - when the audio decoding runs out of cpu cycles, it has very nasty effects - skips, repeated samples, artifacts. It is very unpleasant. On the other hand, a minor slowdown in video decoding won't usually even be noticed. The other splitters using higher priority for audio know what they are doing :)
/Well, they usually come from times when your average cpu didn't have ample performance headroom - I don't mean to bash LAV filters though./
nlnl
17th September 2012, 06:35
nevcairiel
Do you have plans for .ifo support (dvd lists)?
nevcairiel
17th September 2012, 07:07
nevcairiel
Do you have plans for .ifo support (dvd lists)?
I cant say i do.
golagoda
18th September 2012, 06:06
After this commit (http://git.1f0.de/gitweb?p=ffmpeg.git;a=commit;h=2626cc4580bfd560c6983338d77b2c11c16af94f) .srt files inside .mkv files are no longer displayed by vsfilter (including xy-vsfilter) if Lav Splitter is used. It's pretty much pointless and most likely effects other subtitle renderers so it'd probably be good to revert it in the 1f0 repo.
nevcairiel
18th September 2012, 06:33
After this commit (http://git.1f0.de/gitweb?p=ffmpeg.git;a=commit;h=2626cc4580bfd560c6983338d77b2c11c16af94f) .srt files inside .mkv files are no longer displayed by vsfilter (including xy-vsfilter) if Lav Splitter is used. It's pretty much pointless and most likely effects other subtitle renderers so it'd probably be good to revert it in the 1f0 repo.
Why does everyone jump to reverting immediately when something doesn't work?
The commit there is perfectly fine, i just need to map the new codec id to the appropriate DirectShow type, and everything will work just fine again.
I rarely revert a commit, unless its really obvious the commit was wrong. In general, avoiding useless modifications to ffmpeg in my repo is the best course of action - because in the long run, it'll just cause grief to maintain these changes.
Speaking of, i should clean my patches again and submit some to ffmpeg for inclusion.
Anyhow, i'll add the new codec id to lavs subtitle types, and it will work just fine again, no revert required.
kolak
18th September 2012, 15:24
Have an issue with LAV decoder connecting to some Sony decoder in graphstudio- reported size biHeight= -1080 instead of 1080. Decoder is sending v210 format and in case of some other filters all works fine. Any way to fix it? I assume it's Sony decoder what is broken, but some other filters seams to still work fine with it.
dansrfe
18th September 2012, 23:31
@nevcairiel
Feature requests:
-> LAV Decoder checkbox option to crop half of the picture for Full-SBS MKV files which are being played back on a 2D setup. I have a bluray disc from which I made a Full-SBS encode (to future-proof the encode for when MPC, LAV, and madVR get updated to support 3D, which I hop will happen).
Something even better would be something like what ffdshow raw filter has (I use this currently to crop videos) in which there are four text boxes around a rectangle which depicts the sides to crop from. That would be an excellent addition to LAV Decoder even though I realize it is not exactly a "decoder" function. It would help remove the occasional dependency on ffdshow raw that I have to use to crop material before it is sent to the renderer.
-> A tray icon for LAV Filters
hoborg
19th September 2012, 13:32
Hi.
I have just quick question - does Audio delay working even while audio bitstreaming?
nevcairiel
19th September 2012, 13:35
I have just quick question - does Audio delay working even while audio bitstreaming?
It should yes, because it just modifies timestamps, it doesn't actually change the audio.
Blight
19th September 2012, 22:22
Hi nev,
I tested it and LAV supports SHOUTcast streaming, but... How do I get the currently playing title and other dynamic meta-data?
Can you add support for the IAMMediaContent interface?
Or is there another way to get at the meta data?
P.S.
Do you have an ETA for a non-test release? I want to add an OPUS LAV profile to Zoom Player, but there are only test versions supporting it out right now.
nevcairiel
20th September 2012, 08:11
I do not have an ETA, i'm still working on some features i want in the version, but work is going slow due to time constraints.
Blight
23rd September 2012, 16:04
What about the SHOUTcast streaming meta-data?
I'm not sure how ffmpeg parses the meta-data, but it stands to logic it may just mean hooking the IAMMediaContent interface and grabbing it's data from an existing structure.
Mercury_22
23rd September 2012, 19:23
It's just me or... after last libbluray update playing the index.bdmv makes MPC-HC crash but playing the m2ts file it's working OK ?
Sebastiii
23rd September 2012, 20:42
Why does everyone jump to reverting immediately when something doesn't work?
The commit there is perfectly fine, i just need to map the new codec id to the appropriate DirectShow type, and everything will work just fine again.
I rarely revert a commit, unless its really obvious the commit was wrong. In general, avoiding useless modifications to ffmpeg in my repo is the best course of action - because in the long run, it'll just cause grief to maintain these changes.
Speaking of, i should clean my patches again and submit some to ffmpeg for inclusion.
Anyhow, i'll add the new codec id to lavs subtitle types, and it will work just fine again, no revert required.
Thanks :) working again :P
nevcairiel
24th September 2012, 01:03
It's just me or... after last libbluray update playing the index.bdmv makes MPC-HC crash but playing the m2ts file it's working OK ?
Should be fixed, was a stupid typo.
Sebastiii
24th September 2012, 06:36
Thanks :)
It's working now.
blackjack12
25th September 2012, 00:49
Should be fixed, was a stupid typo.
Still seeing some issues for me and crashes of MPC-HC with Windows 8 when using LAV video filters.
Also is it just me or did something change in VC-1 interlaced performance and other interlaced HD/BD files with latest LAV builds. (Life, National Parks: Americas Best Idea)
Since latest builds, can no longer get good performance with a ton of dropped and delayed frames. They worked great for months and now see the same thing on different systems when using LAV Video decoder.
Windows 7(64)
Radeon 6570 driver ver 12.8
MPC-HC 1.6.4.6007
Older Radeon 4890 system with "legacy" driver 12.8 works fine ... ?
UPDATE NOTE:
Most of the performance issues seem to be related to the latest builds (0.83.3) of madVR and not LAV filters. Have reverted back to madVR 0.82.5 with antiringing 6 updates and things are much better.
Still seeing issues with a new Windows 8 install. A lot of problems with LAV and VC-1 material both non and interlaced material with Radeon 6570/ver 12.8 drivers. LAV does not seem to be mapping correctly to the WMVideo Decoder in Windows 8? If force LAV not to decode VC-1 material and use WMVideo Decoder DMO then all appears to be okay.
oddball
25th September 2012, 01:00
I'm currently using this line in the splitter when playing MKV's eng:eng|f;eng:off;*:eng;*:*
However if I play a bluray rip and play the index.bdmv with MPC-HC it defaults to playing the French DTS-MA track instead of the default English track. Any idea why? Oh and it seems to playback a foreign PGS subtitle too.
CiNcH
25th September 2012, 12:48
@ nev,
as you know, LAV Video works well with the DVBViewer DVBSource for H.264 as LAV Video parses the bitstream for NALU's all by itself. As you might know, DVBSource also supports VC-1 inside m2ts. Unfortunately, DVBSource + LAV Video for VC-1 only results in some green parasitic image, just like it is the case with 'WMVideo Decoder DMO', 'ffdshow Video Decoder' and 'ffdshow DXVA Decoder'. The DVBSource plays well with CyberLink and ArcSoft though. Does LAV Video (and all the others) expect a certain buffer format (like an Access Unit or something) inside the media sample? Or just a different FourCC maybe?
oddball
25th September 2012, 15:06
Nev I have been told by Madshi to report a bug to you.
Playing the test clip birds - 18514072.mp4 from http://hdcam.web-pda.info/ results in MadVR saying the source filter is reporting the frame rate as 1.000 FPS when it should be 59.940. Can you verify and fix in a future build? Thanks.
sneaker_ger
25th September 2012, 19:32
I'm currently using this line in the splitter when playing MKV's eng:eng|f;eng:off;*:eng;*:*
However if I play a bluray rip and play the index.bdmv with MPC-HC it defaults to playing the French DTS-MA track instead of the default English track. Any idea why? Oh and it seems to playback a foreign PGS subtitle too.
Did you put "eng" into the audio line? The advanced selection is for the subtitle track only and doesn't occur until after the audio track has been selected.
terence_13
26th September 2012, 04:46
Playing backwards: Nev, I found a comment from you on a request of using iMediaSeeking for setting a negative playback rate. essentially, you dismissed this request as beeing impossible on any modern temporal compressed video format. while this might be true, I searched a bit and got the impresseion reverse playback is possible, but a bit harder to implement:
1) Buffering the decoded frames for later use in reverse playback
2) Decoding a GOP, rendering it in reverse order while decoding the next previous GOP
Another cheap way might be decoding just I frames
I also found a paper that deals with fast forward and backward: http://bit.kuas.edu.tw/~jihmsp/2010/vol1/JIH-MSP-2010-02-006.pdf
I do not have mutch background on all this, but wanted to bringing up this topic again, as smooth fast forward AND fast rev are such a desirable usability/ convinience thingy to have. Also, somehow it must be possible, as consumer players usually implement this.
Is there anything you can do (plan to do) in the filter end, or is this something the player or renderer have to implement?
starla
26th September 2012, 11:38
1) Buffering the decoded frames for later use in reverse playback
2) Decoding a GOP, rendering it in reverse order while decoding the next previous GOP
As far as i remember this is how MS DVD navigator + MPEg2 decoder combo is handling the reverse playback.
Another cheap way might be decoding just I frames
This wont be as easy as it sounds, nev had already a look on this area when I asked if it would be possible to decode only I frames when playback rate is >= 4.0x as the 1080i material is too heavy on modern HW to be decoded on 32x speed. As far as I remember ffmpeg was not processing the content nicely.
CiNcH
28th September 2012, 14:23
as you know, LAV Video works well with the DVBViewer DVBSource for H.264 as LAV Video parses the bitstream for NALU's all by itself. As you might know, DVBSource also supports VC-1 inside m2ts. Unfortunately, DVBSource + LAV Video for VC-1 only results in some green parasitic image, just like it is the case with 'WMVideo Decoder DMO', 'ffdshow Video Decoder' and 'ffdshow DXVA Decoder'. The DVBSource plays well with CyberLink and ArcSoft though. Does LAV Video (and all the others) expect a certain buffer format (like an Access Unit or something) inside the media sample? Or just a different FourCC maybe?
Hmm, too bad there is no answer :( . Can you at least point me to the code where LAV Splitter prepares the media sample for VC-1 and sends it downstream, and where LAV Video receives the sample and hands it over to DXVA for decoding?
nevcairiel
28th September 2012, 14:56
Impatient people, always fun to be around.
In case you didn't notice, i didn't answer much at all recently, because i'm busy. If you can't wait until you get a response, your loss. :)
Mercury_22
29th September 2012, 08:19
Lav can't play "mkv Live stream recording" files !?
It seems that LAV can't play test4 file (http://sourceforge.net/projects/matroska/files/test_files/matroska_test_w1_1.zip/download) from the official Matroska Test Suite - Wave 1 (http://www.matroska.org/downloads/test_w1.html)
4. Live stream recording
This file is using the EBML feature that allows Master elements to have no known size. It is used for live streams because they don't know ahead of time the size of the Segment (virtually infinite) and even sometimes the size of the Clusters (no caching on the server side). The first timecode of the file also doesn't start at 0 since it's supposed to be a capture from something continuous. The SegmentInfo also doesn't contain any Duration as it is not know.
The sample comes from the Big Buck Bunny open project. It contains Theora video (1280x720), Vorbis audio, uses only SimpleBlock (matroska DocType v2)
A similar file can be created with mkclean using the "--live" option
Xaurus
29th September 2012, 15:13
Lav can't play "mkv Live stream recording" files !?
It seems that LAV can't play test4 file (http://sourceforge.net/projects/matroska/files/test_files/matroska_test_w1_1.zip/download) from the official Matroska Test Suite - Wave 1 (http://www.matroska.org/downloads/test_w1.html)
Mediainfo is totally empty when checking out the test4 clip. Seems weird to me...
Xaurus
30th September 2012, 00:07
If someone is interested...
LAV CUVID performance comparison in Graphstudio Next 0.5.0.1 of my main rig GTX 570 and my new GTX 660 in my HTPC rig, with LAV 0.51.3, using files from this (http://www.auby.no/files/video_tests/) website:
"Birds" (h.264) 5 passes
GTX 570: 47,1717 fps avg.
GTX 660: 129,0831 fps avg.
"hddvd" (vc-1) 5 passes
GTX 570: 76,8576 fps avg.
GTX 660: 140,4523 fps avg.
mindbomb
30th September 2012, 20:30
when using the mixer with 4.0 channels, it appears "convert audio to standard output channels" option doesn't work.
Is it possible to have it work?
nevcairiel
30th September 2012, 20:38
when using the mixer with 4.0 channels, it appears "convert audio to standard output channels" option doesn't work.
Obviously not, because you told it explicitly to mix (and therefor output) 4.0 instead. I don't think changing this would make much sense, it would just confuse people.
If you explicitly tell it to mix to 4.0, why would it in the end output anything else?
Mercury_22
30th September 2012, 21:27
After latest updates LAV it's crashing MPC-(HC&BE) on exit in native mode and in SW and CB can't even start playing
Tested with H264 so far (splitter and audio seems OK)
nevcairiel
30th September 2012, 21:30
If you expect to have something that always works, don't use random git builds =P
I'm still in the process of some big changes, so don't expect git to always be 100% stable :)
mindbomb
30th September 2012, 21:51
Obviously not, because you told it explicitly to mix (and therefor output) 4.0 instead. I don't think changing this would make much sense, it would just confuse people.
If you explicitly tell it to mix to 4.0, why would it in the end output anything else?
I see.
well, I think specifically for 4.0, I think you can have it default to 5.1 with silent channels, since I suspect compatibility is an issue with 4 channels. At least for nvidia cards it seems.
andyvt
1st October 2012, 14:41
I see.
well, I think specifically for 4.0, I think you can have it default to 5.1 with silent channels, since I suspect compatibility is an issue with 4 channels. At least for nvidia cards it seems.
Working around compatibility issues with specific hardware is the responsibility (used loosely here) of the filter that interacts with the hardware (the audio renderer in this case). If you tell the decoder to output 4 channels, it should do that and not make up data. While the primary use case is generic audio output there are others (like transcoding or bit perfect playback) where a behavior like what you suggest would be unacceptable.
zn
1st October 2012, 15:37
thanks, i will try it
For MPC-HC, see #post1588980. Although my post is about SHOUTcast, the registry-fix should work for video streaming too.
You could also give ZoomPlayer a try. At least with SHOUTcast streams it works just fine.
P.s. I got a notification-email about your post in the LAV-thread about "File Source (URL)" or "LAV Source" handling streams in MPC-HC...where has it gone??
I have the same problem with openning URL to file and URL to STREAM with MPC-HC/MPC-BE
Nevcairiel, whenever I open a pls-file (linking to a nsv[vp6+mp3]-stream for instance) in MPC-HC, it always loads File Source (URL) (in combination with LAV Splitter), even when I block File Source (URL) and prefer LAV Source.
Since LAV Source is capable of handling the stream on its own, without File Source (URL) (works just fine in GraphStudioNext), can we say this is a MPC-HC issue?
blackjack12
1st October 2012, 16:23
If you expect to have something that always works, don't use random git builds =P
I'm still in the process of some big changes, so don't expect git to always be 100% stable :)
Nev,
Recognize the unstable builds, but want to note that I have seen the same thing.
Crashes in both MPC-HC and MPC-BE:
Windows 8 RTM
AMD Radeon 6570
Driver ver. 12.8
LAV 51.3-53
Crashes always seen when using LAV Video Decoder for VC1 content. If uncheck the VC1 decoding in LAV and use internal filters or "native" WMVideo Decoder DMO the media players do not crash.
See no issue with another system with Radeon 4890 and Windows 7.
With NVidia you can use the native NVidia capability and there does not seem to be a problem.
Hope this may be helpful in your future updates.
Keep up the great work ...
nevcairiel
1st October 2012, 16:24
Hey, its time for a new test version. Its been so long since the last release, and i finally had some time to finish this feature (mostly)
http://files.1f0.de/lavf/LAVFilters-0.51.3-89-g8c3b2ec.zip
DVD Video
This version introduces support in LAV Video for decoding the video when playing DVDs with the DVD Navigator.
Why did that take so long, you may wonder?
Well, the problem is that the DVD decoder is expected to also handle the DVD subtitles and the DVD menu - so this had to be implemented first. As a consequence, LAV Video now has the basic infrastructure setup for drawing subtitles/menus onto the video frames, which may be used more in the future.
Known issues with DVD decoding:
- Does not work with QuickSync (at all). Should fallback to software. Erics QS decoder has no support for this, or the appropriate interface for me to shoe-horn support into there.
- DVD playback works with DXVA2 Native, however menus and subtitles will not be shown. Since the video frame is completely contained in the GPU, its not possible yet to draw onto it, but may be in the future.
- Some Still-Frame DVD Menus may not work properly (yet) - menu overlays not updating properly, or similar.
Anyhow, have fun testing, if you dare. :p
nevcairiel
1st October 2012, 16:30
What about the SHOUTcast streaming meta-data?
I'm not sure how ffmpeg parses the meta-data, but it stands to logic it may just mean hooking the IAMMediaContent interface and grabbing it's data from an existing structure.
I have no idea if it manages to read that metadata, i may check into that at a later point, its not a high priority for me.
Does LAV Video (and all the others) expect a certain buffer format (like an Access Unit or something) inside the media sample? Or just a different FourCC maybe?
VC1 should be delivered exactly one whole frame per buffer (including start codes and everything), and not split over multiple buffers.
Additionally, the media type needs to contain the entry point and sequence headers of the VC1 stream.
Windows 8 RTM
Until i actually had a chance to check Windows 8, its completely unsupported. This won't change until after the general availability, which isn't for 3 more weeks, plus quite a bit of time to actually set a system up and find out whats wrong.
Until then, you're on your own with Windows 8.
hoborg
1st October 2012, 16:46
Edit - my mistake, i forgot to overwrite LAVAudio decoder...
madshi
1st October 2012, 16:56
@nevcairiel - Could this mean full DVD playback support with madVR on all OSs, without any hacks? Or does the MS Navigator still make problems, eventually?
nevcairiel
1st October 2012, 17:01
@nevcairiel - Could this mean full DVD playback support with madVR on all OSs, without any hacks? Or does the MS Navigator still make problems, eventually?
I have no idea what causes the macrovision problem, and why it would go away with a certain combination of decoders/post processing filters - so i'm sure it'll still be a problem.
I haven't encountered the problem for a while myself, so i dunno. (not that i actually watch much DVDs)
madshi
1st October 2012, 17:26
K, thx.
mindbomb
1st October 2012, 17:27
love this update.
Subtitles work great with libdvdnav.
One issue is that on the main menu, right before an option is highlighted, there is a freeze and a flash of green and black.
And it actually just lead to an mpc crash after I minimized it and opened it again.
This is the dmp file, idk if it will help:
http://www.mediafire.com/?wwmgrl0yug81w26
hoborg
1st October 2012, 17:34
nevcairiel:
Great work!
Just small note - DVD decoding will crash if YADIF deinterlacing is on - mostly on entering DVD menu.
CiNcH
1st October 2012, 17:51
Thanks for your information!
VC1 should be delivered exactly one whole frame per buffer
As far as I can see, you are doing this in LAVFDemuxer.cpp, using ffmpeg's av_read_frame, right?
So in case of H.264 it is possible to send any size of data chunks and in case of VC1 one has to send exactly one frame per media sample. Is the decoder side H.264 parser to ensure compatibility with certain DVB-TS demuxers?
wanezhiling
1st October 2012, 18:06
http://pan.baidu.com/share/link?shareid=66325&uk=3558042035
LAV Splitter (http://i.imgur.com/cDgwx.png)
MPC Splitter (http://i.imgur.com/E96qU.png) is ok.
PS: Thanks for LAV DVD.:)
fairchild
1st October 2012, 18:12
Nev, thanks for the DVD support, but I'm here to report that I can't get it working. I've tried both MPC-HC Lite and MPC-BE and both spit out the following error:
MPC-HC could not render some of the pins in the graph, you may not have the needed codecs or filters installed on the system.
The following pins failed to find a connectable filter:
DVD Navigator::Video
DVD Navigator::Video
Media Type 0:
--------------------------
Unknown
AM_MEDIA_TYPE:
majortype: MEDIATYPE_DVD_ENCRYPTED_PACK {ED0B916A-044D-11D1-AA78-00C04FC31D60}
subtype: MEDIASUBTYPE_MPEG2_VIDEO {E06D8026-DB46-11CF-B4D1-00805F6CBBEA}
formattype: FORMAT_MPEG2_VIDEO {E06D80E3-DB46-11CF-B4D1-00805F6CBBEA}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 136
VIDEOINFOHEADER:
rcSource: (0,0)-(0,0)
rcTarget: (0,0)-(0,0)
dwBitRate: 0
dwBitErrorRate: 0
AvgTimePerFrame: 333667
VIDEOINFOHEADER2:
dwInterlaceFlags: 0x00000000
dwCopyProtectFlags: 0x00000000
dwPictAspectRatioX: 4
dwPictAspectRatioY: 3
dwControlFlags: 0x00000000
dwReserved2: 0x00000000
MPEG2VIDEOINFO:
dwStartTimeCode: 0
cbSequenceHeader: 0
dwProfile: 0x00000002
dwLevel: 0x00000002
dwFlags: 0x00000000
BITMAPINFOHEADER:
biSize: 40
biWidth: 720
biHeight: 480
biPlanes: 1
biBitCount: 0
biCompression: 0
biSizeImage: 0
biXPelsPerMeter: 0
biYPelsPerMeter: 0
biClrUsed: 0
biClrImportant: 0
I also tried dslibdvdnav filter with the same results. I also have the Microsoft DTV-DVD video decoder blocked or else it always loads. I simply copied your latest test build over the x86 folder as usual with your test builds. Also the DVD being used is the Avengers which loads up and plays just fine using EVR + the microsoft DTV-DVD video decoder + DVD Navigator
VipZ
1st October 2012, 18:15
Thanks nev, DVD playback working fine (Ignore previous statement about it not working, something must have gone bit odd with system with reg/unreg lav and restart fixed)
Now that LAV Video can handle DVD Video, is there any chance for LAV Splitter to support sub's within VOB files and via MPC's IFO parsing now?
Also on an unrelated subtitle bug, it seems that SRT based sub's within OGM files don't work as expected, instead of using the styling from MPC-HC/BE like MKV or external it renders to a very small font, switching to MPC Ogm source results in the expected behaviour. If you need an OGM with SRT sample let me know. (This happens with both current test and last stable)
CiNcH
1st October 2012, 18:19
- DVD playback works with DXVA2 Native, however menus and subtitles will not be shown. Since the video frame is completely contained in the GPU, its not possible yet to draw onto it, but may be in the future.
Any clue, how 'CyberLink Videp/SP Decoder' handles DVD menus in DXVA mode (BSP = Bitstream Profile)? See attached image...
http://forum.doom9.org/attachment.php?attachmentid=12997&stc=1&d=1349112007
nevcairiel
1st October 2012, 18:40
Just small note - DVD decoding will crash if YADIF deinterlacing is on - mostly on entering DVD menu.
Thanks, found the issue and fixed it.
Now that LAV Video can handle DVD Video, is there any chance for LAV Splitter to support sub's within VOB files and via MPC's IFO parsing now?
Subtitles from VOB files should in theory already work, but i do not plan on doing any IFO parsing.
Also on an unrelated subtitle bug, it seems that SRT based sub's within OGM files don't work as expected, instead of using the styling from MPC-HC/BE like MKV or external it renders to a very small font, switching to MPC Ogm source results in the expected behaviour. If you need an OGM with SRT sample let me know. (This happens with both current test and last stable)
A sample would be good.
Any clue, how 'CyberLink Videp/SP Decoder' handles DVD menus in DXVA mode (BSP = Bitstream Profile)?
Probably the same way the MS decoder does it, with a secondary output pin.
Nev, thanks for the DVD support, but I'm here to report that I can't get it working.
You need to re-register the filter (and in MPC-HC also "refresh" it in the external fitler list), otherwise it won't know that it can accept the dvd types.
VipZ
1st October 2012, 18:44
Subtitles from VOB files should in theory already work, but i do not plan on doing any IFO parsing.
A sample would be good.
LAV Source/splitter doesn't expose any subtitles on VOB files at present. I think as long as LAV supports VOB files fully, MPC's IFO parser should do the rest.
Here's a OGM with SRT sub's sample, http://www.mediafire.com/download.php?324ev47iwvqfd38
I have also noticed that LAV Video doesn't respect enable/disable for sub's it will always show subtitles, maybe this is a MPC-BE issue?
thomaz909
1st October 2012, 18:57
any chance to get "deband" from ffdshow integrated into lavfilters video decoder ?
deband is nice for correcting bad color gradients and also nice for "smoothing" compression artefacts.
look at the right side of the example images:
without deband:
http://www.abload.de/img/debanddisabledllkao.png
deband enabled (threshold: 2, radius: 16):
http://www.abload.de/img/debandenabledg2s67.png
nevcairiel
1st October 2012, 19:15
any chance to get "deband" from ffdshow integrated into lavfilters video decoder ?
Nope, LAVs main function is decoding, not post-processing.
mark0077
1st October 2012, 19:18
Thanks for the new build nev. I have downloaded and reregistered the new filter. In mpc-be it seems to play DVDs very well, nice work, but mpc-be seems to be auto switching my video renderer from madVR to EVR for dvds. For normal mpc-hc, which seems to respect my video renderer choice, I still get the macrovision failed errors, so I guess that old problem isn't fixed without a seperate navigator or some of the other "hacks".
nevcairiel
1st October 2012, 19:45
mpc-be seems to be auto switching my video renderer from madVR to EVR for dvds.
Its a "feature" in mpc-be, apparently. LAV does not control this.
e1iminator
1st October 2012, 21:27
to all people that use progdvb; lets convince the developer to include lav splitter as an option
dansrfe
1st October 2012, 22:26
Not to question LAV video but I'm not sure if the primaries being signaled to madVR are the correct ones. it says EBU/PAL for a 720 x 480 4:3 NTSC DVD and on another 720 x 480 16:9 NTSC DVD madVR stated primaries as BT.470 System M.
Are these correct? I'm don't know know about BT.470 System M but EBU/PAL is only used with PAL discs right?
nevcairiel
1st October 2012, 22:36
Whatever it says was set in the bitstream like this. The values are directly taken from the various specs, there isn't much room to go wrong.
madshi
2nd October 2012, 07:19
@dansrfe, if you think there's a bug with those DVDs, a sample of each would help. Personally, I like weird samples, so if you really have a DVD with BT.470 System M primaries, I wouldn't mind getting a sample in any case.
nevcairiel
2nd October 2012, 11:10
Here's a OGM with SRT sub's sample, http://www.mediafire.com/download.php?324ev47iwvqfd38
This is more a MPC-HC issue then a LAV issue. All it does is expose the subtitles using MEDIATYPE_Subtitle and MEDIASUBTYPE_UTF8, which is perfectly fine for all text-based subtitles.
The Ogg splitter in MPC-HC uses MEDIATYPE_Text instead of MEDIATYPE_Subtitle, and for some reason the subtitle renderer behaves differently.
I don't feel like working towards its brokenness here.
I have also noticed that LAV Video doesn't respect enable/disable for sub's it will always show subtitles, maybe this is a MPC-BE issue?
I believe BE overrides the splitters decisions.
kasper93
2nd October 2012, 11:14
@e1iminator I am using LAV filters in progdvb... Where you have problem? :)
Its a "feature" in mpc-be, apparently. LAV does not control this.
I believe BE overrides the splitters decisions.
BE thinks to much. ;p
VipZ
2nd October 2012, 14:17
This is more a MPC-HC issue then a LAV issue. All it does is expose the subtitles using MEDIATYPE_Subtitle and MEDIASUBTYPE_UTF8, which is perfectly fine for all text-based subtitles.
The Ogg splitter in MPC-HC uses MEDIATYPE_Text instead of MEDIATYPE_Subtitle, and for some reason the subtitle renderer behaves differently.
I don't feel like working towards its brokenness here.
Thanks for looking into this for me. cbFormat: 520 works as expected, cbFormat: 524 doesn't work correctly. Does this mean anything towards this issue?
I believe BE overrides the splitters decisions.
I am using the build with with this being an option and have set to not override, also MPC-BE doesn't have a tick to enable the sub's. I also tested with MPC-HC with same issue.
Aleksoid1978
2nd October 2012, 14:19
BE thinks to much. ;p
No :) All it's now is optionals - wait next release;
nevcairiel
2nd October 2012, 14:22
Thanks for looking into this for me. cbFormat: 520 works as expected, cbFormat: 524 doesn't work correctly. Does this mean anything towards this issue?
This causes it?
The format contains 4 null bytes for some reason, i guess i can trim those off if they cause issues for SRT.
oddball
2nd October 2012, 14:27
I have a problem with LAV Audio Decoder (Decoding AC3 at least). I am using it to send audo to ReClock (Not bitstreaming) and let ReClock reencode to AC3 output so I can match the display to the the audio stream. However I am getting distortion and the volume is louder than if I use ffdshow's audio decoder. If I use ffdshow to send the audio unmolested it's perfect. LAV seems to do something strange to the audio when sent as PCM. No. The mixer option is not ticked. I also tried outputting in various output formats in LAV like 16 and 32 floating point. 16bit integer etc gave better results but were still too loud and caused a slight pop. But 32bit floating point gives distortion.
VipZ
2nd October 2012, 14:30
This causes it?
The format contains 4 null bytes for some reason, i guess i can trim those off if they cause issues for SRT.
You are the guru :) After looking through multiple samples that was the only difference between a good or bad result so its just a educated guess from my part.
EDIT: Thanks nev, working great now :)
e1iminator
2nd October 2012, 15:02
@ kasper93
it would be nice if i could select lav splitter instead of elecard, microsoft or prog;
i have problems using prog splitter with channels such as bloomberg and cnbc; video lags audio :)
elecard and microsoft work perfectly...
vad74
3rd October 2012, 07:24
nevcairiel
If XBMC in fullscreen mode uses D3D Exclusive mode, then the decoder just cannot get access to the required D3D interfaces, because its locked by XBMC. That is all.
I asked about this for QuickSync Decoder author. And he answer for me:
Only after the renderer is connected, QS can create a HW device providing the renderer passes a certain interface.
An identical issue occurs in Windows Media Center. I've fixed this for ffdshow. This is something LAV author can fix if he has the time.
Please, try do this.
egur
3rd October 2012, 10:20
I've added support for (unencrypted) DVD decode long ago. Decryption was done within ffdshow. The problem is that I don't know how to determine when a menu frame has arrived. When a menu frame arrives, I should flush the HW decoder. libavcodec doesn't queue so many frames as the Intel implementation so it's not a problem there. In normal file playback, the splitter sends EndOfStream and NewSegment events to signal this, but in DVD it doesn't happen. It only sends BeginFlush and EndFlush on seeks and doesn't send any event when a menu appears.
I didn't kill the DVD playback feature, but it's off by default. Can be changed via the normal config interface.
hoborg
3rd October 2012, 15:54
Nev, can you please share x86 LAVF build with fixed YADF deintelacing?
Weirdo
3rd October 2012, 16:38
A question on Dolby Pro Logic II in the Mixing tab. I thought this worked in two main modes, Music and Movie. Which one does LAV use? Also, would I be correct to assume it's impossible to implement Pro Logic IIx due to licensing fees etc.?
mindbomb
3rd October 2012, 17:24
there is one downmix, but the decoder can be configured for movie or music iirc.
Hypers
3rd October 2012, 17:43
Help me please i've got a problem: When i try to use [URL="http://forum.doom9.org/showthread.php?t=156191"]LAV video filters/URL with any x64 version of your mpc build(1.6.4.5855 (2f0eed8)) with Nvidia Driver 306.23WHQL(GeForce? 460) on Windows x64.
I cant activate CUVID acceleration and even CoreAVC cuda Doesnt work.
But it work on [URL="http://www.xvidvideo.ru/component/docman/doc_download/9063-media-player-classic-homecinema-x64-1634992-without-installer.html"]standart mpc-hc build/URL
it also worked with your mpc build on 301.42 Nvidia driver
dansrfe
4th October 2012, 02:41
@dansrfe, if you think there's a bug with those DVDs, a sample of each would help. Personally, I like weird samples, so if you really have a DVD with BT.470 System M primaries, I wouldn't mind getting a sample in any case.
@madshi
The BT.470 System M primaries DVD has some weird characteristics that I've noticed about it.
1) If I play the DVD from the IFO file and then manually select the main movie Title or click Play movie from the dvd menu it shows BT.470 System M in madVR's OSD for the primaries [from upstream].
2) If I play any of the VOB files directly I get SMPTE C from the [best guess].
That other DVD that I have shows EBU/PAL primaries [from upstream] regardless of whether I play the DVD from the menu/manually select the main movie title or if I go directly to one of the movie VOB files.
Not sure what to make of the results or what is correct and what is not.
nevcairiel
4th October 2012, 09:32
Nev, can you please share x86 LAVF build with fixed YADF deintelacing?
Here you go.
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-95-ga6b7a05.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-95-ga6b7a05-x64.zip
ajp_anton
4th October 2012, 15:11
Just so I got this right:
Clipping protection doesn't do any dynamic compression, it's just a "smart/automatic" static normalizer that updates its normalization factor if/when clipping occurs. (And it never increases volume, it only decreases when necessary (unless you count adding 5 channels without dividing by 5 as increasing the volume).)
Would it be possible to remember the normalization factor when seeking, so the volume doesn't suddenly go back to "normal" when you didn't hear a word and rewind by 5 seconds?
nevcairiel
4th October 2012, 15:53
Just so I got this right:
Clipping protection doesn't do any dynamic compression, it's just a "smart/automatic" static normalizer that updates its normalization factor if/when clipping occurs. (And it never increases volume, it only decreases when necessary (unless you count adding 5 channels without dividing by 5 as increasing the volume).)
Thats right
Would it be possible to remember the normalization factor when seeking, so the volume doesn't suddenly go back to "normal" when you didn't hear a word and rewind by 5 seconds?
I was meaning to do that, as someone else also suggested it before, it'll be in the next version.
dansrfe
4th October 2012, 16:00
Is it better to have normalization on or off? And if on then with clipping protection or off?
Also, does "Don't mix stereo sources" have an effect on stereo sources going to stereo output?
DragonQ
4th October 2012, 16:03
I use "don't mix stereo sources" and "clipping protection" only. All of my TV channels (SD, HD, 2.0, 5.1) are all the same volume (aside from natural minor discrepancies between channels).
nevcairiel
4th October 2012, 16:28
Is it better to have normalization on or off? And if on then with clipping protection or off?
Matrix Normalization ensures that you have a constant volume within one file - however, the volume between different files may change drastically, which is in many cases much worse then anything else (who wants to change the volume of their TV all the time?)
Matrix Normalization off, with Clipping protection will usually give you a constant volume between different files, and only rarely does it have to lower the volume mid-playback to avoid clipping.
When matrix normalization is active, clipping protection does usually not do anything - because the normalization ensures nothing is clipped.
The default settings usually are what most people prefer, in this case clipping on, matrixnorm off.
Also, does "Don't mix stereo sources" have an effect on stereo sources going to stereo output?
The mixer never does any mixing when input channels = output channels, so if you select stereo output, it would never mix stereo input.
The only case where this option comes in useful is if you select mixing to 5.1 output (downmix 6.1/7.1), and you play a stereo file. Without the option active, it would output 5.1, with stereo in the front channels, and everything else silent. With the option on, no mixing is performed, and stereo is output as-is (just two channels, no silent channels).
fastplayer
5th October 2012, 08:45
The only case where this option comes in useful is if you select mixing to 5.1 output (downmix 6.1/7.1), and you play a stereo file.
I was beginning to question my sanity because you wrote "a 5.1 file" at first... *argh*
nevcairiel
5th October 2012, 08:58
I was beginning to question my sanity because you wrote "a 5.1 file" at first... *argh*
Typos happen. :P
Deim0s
5th October 2012, 18:39
May I once again ask them to fix incorrect display of the mixing coefficient LFE channel in the LAV Audio mixer.
Test file wav 5.1:
Link (http://download.microsoft.com/download/winmediatech40/Utility/1.0/W98NT42KMeXP/EN-US/6channel.exe)
When I mix this file in stereo (not LAV), from the matrix:
Lt = 100*L + 0.7071*C + 0.7071*LF + 100*SL
Rt = 100*R + 0.7071*C + 0.7071*LF + 100*SR
The correct result is as:
Image (http://i.imgur.com/7s8eP.png)
If I select to LAV Audio mixer similar parameters:
Center Mix Level 0.7071
Surround Mix Level 1.0
LFE Mix Level 0.7071
in registry:
MixingCenterLevel 1b9f(7071)
MixingSurroundLevel 2710(10000)
MixingLFELevel 1b9f(7071)
I get the wrong result, level LFE channel too low:
Image (http://i.imgur.com/UJh8j.png)
Correct result (0.7071) is obtained only when I put the level of LFE channel in LAV Audio mixer to 1.0:
Center Mix Level 0.7071
Surround Mix Level 1.0
LFE Mix Level 1.0
in registry:
MixingCenterLevel 1b9f(7071)
MixingSurroundLevel 2710(10000)
MixingLFELevel 2710(10000)
Image (http://i.imgur.com/LJ111.png)
Sorry, if my English is bad.
nevcairiel
5th October 2012, 18:51
To make it more user-friendly i should instead change the Center value, so that 1.0 always means "original volume", and the channel duplication factor is calculated in afterwards. How would a normal user know that 0.7071 means "original volume"?
Deim0s
5th October 2012, 19:42
Thanks for the explanation.
But still, for those who want to have an accurate value, it would be nice to have that ability (do not act at random).
And thank you for great work.
Pat357
5th October 2012, 21:34
To make it more user-friendly i should instead change the Center value, so that 1.0 always means "original volume", and the channel duplication factor is calculated in afterwards. How would a normal user know that 0.7071 means "original volume"?
It's easy : 0.7071^2 + 0.7071^2 == 1 !
Asmodian
5th October 2012, 23:03
"normal user" = no algebra to calculate values ;)
I like the idea of 1 = original volume, it seems intuitive.
DragonQ
6th October 2012, 00:45
It's also wrong. :p
I said a while ago there should be a "default" button that'll return things to 0.7071 (or this should happen when changing the speaker output). Another issue with that dialogue box is that unticking "enable mixing" should grey out the other relevant controls but it doesn't right now.
bugmen0t
6th October 2012, 07:23
To add some more confusion: Didn't someone said that particular testfile has channels with incorrect levels, lfe too low, maybe nev?
+1 for a default button
thomaz909
6th October 2012, 13:53
i also want "1" for original volume. :)
with "original" i mean that the same signal on all channels has the same db and maximum possible peak is 0db.
here is my selfmade test ac3 with same volume on all channels (all 5 wavs had same peak db and then encoded with encwavtoac3):
http://www15.zippyshare.com/v/54111956/file.html
http://ul.to/7pwd3gl4
http://www.share-online.biz/dl/ERF43HBMTP
http://www.load.to/l8Povkw3SF/SameVolumeOnAllChannels.ac3
http://netload.in/dateiKMtpOmrwqk/SameVolumeOnAllChannels.ac3.htm
mzso
6th October 2012, 22:36
I suppose it doesn't like that the video has a odd number of rows, which technically is invalid for 4:2:0 content.
madVR will also produce a green line, although at the bottom.
I guess i can try pad it with one extra line of blackness, but not sure how easy that will be.
Not a high priority, odd-numbered 4:2:0 content is invalid by definition (can't have half a row of chroma), and looks fine on nvidias scaler, or if you just use RGB output.
I think I might have ran into something like this, with video a file 693 rows. It's a bit weird though, because it doesn't matter if I switch madVR or LAV to something else the issue is fixed.
sweatherly
7th October 2012, 17:14
First of all, gotta say, I think LAV filters is excellent and has now replaced all my other splitters and decoders on my HTPC, so thank you!
Does anyone know, is there a way to set LAV up to decode only the 'core' when presented with a DTS-MA or True-HD audio track rather than the full HD audio?
Basically, by HTPC is underpowered and my main aim is for it to be quiet. When it goes above 30% CPU the fans kick in and it gets a little too noisy.
If I watch a 1080p source with AC3 audio then all is well, but when I watch a 1080p source with HD audio then this taxes my PC a little more (40-50% CPU) and the fans kick in.
As I only my HTPC connected to my TV I would like to set it up so that when presented with a HD audio stream, instead of downmixing the HD audio to 2 channel, it downmixes the 'core' DTS or 'interleaved' AC3 instead. Anyone know if this is possible with LAV?
hoborg
7th October 2012, 18:28
Here you go.
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-95-ga6b7a05.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-95-ga6b7a05-x64.zip
Thanks!
hoborg
7th October 2012, 19:56
Nev, i noticed that enabling YADIF will cause problems with DVD navigation menu :/
Butons fail to highlight.
Disabling YADIF fix it.
nevcairiel
7th October 2012, 21:54
Nev, i noticed that enabling YADIF will cause problems with DVD navigation menu :/
Butons fail to highlight.
Disabling YADIF fix it.
Try with this version:
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-116-g1de6191.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-116-g1de6191-x64.zip
It seems to fix the issue for me, hopefully without crashing or causing other issues in the process. :D
As a bonus, during normal playback YADIF should no longer "eat" the last frame, either. :)
mbordas
7th October 2012, 22:13
Thanks, that version seems to have also fixed a problem I was having with some dvd menus being black with madVR in FSE mode. Works fine now.
Deim0s
7th October 2012, 23:11
nevcairiel,
Many thanks, after Rev. 50a1358e6967, audio mixer works absolutely exactly.
fairchild
8th October 2012, 00:27
Can someone enlighten me since I'm a bit confused on what I should set my Lav audio mixing settings (when down-mixing to stere) to if I want to achieve the most accurate results. Should I stick to the default mixer values which are:
Center Mix Level 0.71
Surround Mix Level 0.71
LFE Mix Level 0
Or should I use the ones that several user's have been saying are the correct settings which I believe are:
Center Mix Level 0.71
Surround Mix Level 1.0
LFE Mix Level 1.0
DragonQ
8th October 2012, 00:36
Center Mix Level 0.71
Surround Mix Level 0.71
LFE Mix Level 0
This, unless you have a subwoofer.
Keiyakusha
8th October 2012, 00:56
This, unless you have a subwoofer.
By Dolby's definition of LFE (links on it was posted in this thread when LAV's mixer was just implemented) it have no direct relation to subwoofer. Subwoofer plays low frequency and it takes it from all channels that have it. LFE can contain not only low frequencies. Also I'm perfectly able to hear LFE (after it was mixed) with good stereo headphones (some better, some worse).
Deim0s
8th October 2012, 01:25
fairchild,
Standard matrix (not DPL *), will now look like this:
Center Mix Level 0.71
Surround Mix Level 1.0
LFE Mix Level 0.71
More precisely, can be set in the registry.
HKEY_CURRENT_USER\Software\LAV\Audio
MixingCenterLevel 1b9f(7071)
MixingSurroundLevel 2710(10000)
MixingLFELevel 1b9f(7071)
fairchild
8th October 2012, 01:48
[Standard matrix (not DPL *), will now look like this:
What does (not DPL *) signify?
Deim0s
8th October 2012, 01:59
What does (not DPL *) signify?
Mixing in stereo, not Dolby Pro Logic, Dolby Pro Logic II.
mbordas
8th October 2012, 03:21
perhaps OT, but has anybody tried to watch the rumble with jon stewart and bill o'reilly? It's a variable frame rate mp4, and no matter what I do, I get terrible stuttering using latest LAV+madVR. I tried switching to EVR-CP and enabling frame time correction, but to no avail. Any info or suggestions?
CiNcH
8th October 2012, 18:37
I just recognized that when I select 'DXVA2 native', LAV actually uses the WMVideo Decoder DMO for VC1. Is this the intended behaviour? GPU is an Intel HD4000.
The WMVideo Decoder DMO uses way more CPU time than CyberLink DXVA2/Bitstream profile for example.
nevcairiel
8th October 2012, 18:40
I just recognized that when I select 'DXVA2 native', LAV actually uses the WMVideo Decoder DMO for VC1. Is this the intended behaviour? GPU is an Intel HD4000.
The WMVideo Decoder DMO uses way more CPU time than CyberLink DXVA2/Bitstream profile for example.
The current DXVA2 code does not support VC-1 on Intel, because Intel has a non-standard implementation for VC-1 - use QuickSync. :)
CiNcH
8th October 2012, 18:59
use QuickSync.
I do anyway ;) . Just wondered... Thanks for your information.
BTW, I found out why A/V is sometimes out of sync when using LAV Video for some HD broadcasts (e.g. SIXX HD, SPORT1 HD) and why it only happens when watching live. It has to do with the DVB Source's DVB clock (see DVB Source property page). When enabled, the DVB Source provides the reference clock for the graph (instead of the audio renderer). It actually uses the system clock and synchronizes it to the PCR of the live video stream (compensates the drift between the two to prevent buffer overflows/underruns). On the property page of the DVB Source, one can also follow the drift (in ms) between the system clock and the PCR.
I don't know yet why A/V is sometimes out of sync when using LAV Video and the PCR synchronized clock. CyberLink seems to be fine. I will try to further investigate on that. Ideas are welcome...
dansrfe
9th October 2012, 07:06
Have the normal standard matrix stereo mixing levels changed on this last revision?
Currently I have:
Center: 0.71
Surround: 1.0
LFE: 1.0
Mercury_22
9th October 2012, 09:12
Quick question: are upmixing and independent volume control for each channel, still in the cards ?
mkanet
9th October 2012, 15:23
I just realized that LAV Video filter causes VC-1 bluray video to stutter. This doesn't happen with my Arcsoft Video Decoder.
I'm curious what would be an alternate suggested setting to avoid VC-1 stutter. Below, I have all 3 VC-1 settings enabled. It's hard to tell if it's using CUVID VC-1, builtin software decoding VC1, or Microsoft's VC-1 decoder. Whatever is causing the problem, I need to disable.
I currently have the Nvidia CUVID VC-1 option enabled on the main LAV Video decoder settings page ("Video Settings" tab).
I also have VC1 (SMPTE VC-1) format enabled ("Formats" tab).
I also have the "Use Microsoft WMV9 DMO decoder for WMV3 and VC-1" option enabled.
Thanks in advance!
nevcairiel
9th October 2012, 15:33
How about just disabling one and seeing if something changes? :p
I would suggest to start with disabling CUVID, on some older hardware it has some issues with partial acceleration.
But since you didn't really specify anything about your setup otherwise, i cannot comment in any way further. What player? What source/splitter? What hardware? etc.etc.
mkanet
9th October 2012, 16:06
Thanks for the quick reply Nev.
Latest LAV 32bit video decoder and respective splitter (splitter on default settings)
Win7 64bit
Nvidia GT640
306.23 WHQL Driver
Whatever hardware acceleration Arcsoft video decoder is using for VC1 bluray playback, its smooth as silk; with very little CPU utilization. Im not near my computer; but I'm pretty sure the arcsoft video decoder is using the same LAV splitter. I also get smooth VC1 playback with the the PowerDVD 12 player as well.
I was hoping to know what LAV Video hardware acceleration settings would be closest what Arcsoft5/PDVD12 uses.
Also, does "Use Microsoft WMV9 DMO decoder for WMV3 and VC-1" setting override LAV CUVID & software decoding? It's unclear what's being used by LAV.
My PC isn't quite fast enough to do software based VC1 decode; so, disabl
nevcairiel
9th October 2012, 16:26
When you look at the properties page during playback, you can see whats being used.
In general, hardware codecs have priority over software codecs, and the Microsoft DMO codec is a software codec, it just replaces the ffmpeg vc-1 decoder (the MS one is faster then ffmpeg anyway)
VC-1 Blu-rays work just fine on my PC with the same driver. What player are you using?
The only way i can get it to stutter is when i play around with the "VC-1 Timestamp Correction" setting in LAV Splitter, but since you claimed its on default settings. :p
The default for that option is the "intermediate" setting (half-checked), you should make sure its really that (and make sure its really using LAV Splitter)
You could also try switching from CUVID to DXVA2-CB, and see if it changes anything.
LoopinFool
9th October 2012, 17:32
(the MS one is faster then ffmpeg anyway)
I beg to differ.
On my 6-core HP Z420 workstation (Win7 x64 SP1), the LAV Video Decoder filter is clearly faster than the WMVideo Decoder DMO filter on my test WMV3 (VC-1) files (both 1280x720 and 1440x1080). These are files from the Microsoft WMV HD Content Showcase.
Task manager typically shows around a 2% improvement using LAV instead, running in GraphStudioNext, with both the 32bit and 64bit filters.
- LoopinFool
nevcairiel
9th October 2012, 17:33
I beg to differ.
But LAV uses the MS DMO decoder, more efficiently then the WMVideo Decoder DMO wrapper at that. :p
Unless you explicitly turned the wmv9 dmo off in LAV.
LoopinFool
9th October 2012, 18:04
Unless you explicitly turned the wmv9 dmo off in LAV.
I did.
But I'm not sure I've compared it to LAV using the DMO decoder -- I'll be sure to do that.
EDIT: Did more testing. When using the LAV Video filter, the difference between ffmpeg and DMO decoder is too small to measure (on my system) using Task Manager. I'll keep the "use DMO" default enabled now.
- LoopinFool
nevcairiel
9th October 2012, 18:19
I just did a quick and dirty benchmark on a progressive VC-1 file i usually use for benchmarking:
32-bit:
LAV ffmpeg: 74.6 fps
LAV wmv9dmo: 106.1 fps
MS DMO: 104.2 fps
64-bit:
LAV ffmpeg: 82.4 fps
LAV wmv9dmo: 119.6 fps
MS DMO: 118.5 fps
This even was with debug builds of LAV, might get 1-2% more out of a release build.
Long story short, adding the fact that the ffmpeg decoder cannot decode VC-1 interlaced, its a clear choice.
LoopinFool
9th October 2012, 18:54
YADIF crash:
On that premiere-paff.AVC.ts file posted here earlier, the 64-bit Video Decode filter crashes with YADIF enabled. The 32-bit version is fine.
- LoopinFool
Sebastiii
9th October 2012, 19:03
Nevcairiel :
That clear choice for sure :)
nevcairiel
9th October 2012, 19:46
YADIF crash:
On that premiere-paff.AVC.ts file posted here earlier, the 64-bit Video Decode filter crashes with YADIF enabled. The 32-bit version is fine
Fixed, they must've changed the calling syntax on creating some of the filters, curious that it happend to just work on 32-bit.
oddball
9th October 2012, 19:56
The latest beta still reports incorrect FPS from source filter with the test video 'birds - 18514072.mp4' from http://hdcam.web-pda.info/
In MadVR it says
movie 59.892 fps (says source filter)
When it should be 59.940 fps
Also AC3 decoding of the file http://www.lynnepublishing.com/surround/www_lynnemusic_com_surround_test.ac3 to PCM output to ReClock AC3 reencode results in it being overly loud and distorted. No such problem exists when using AC3Filter or ffdshow to decode AC3 to multi-channel PCM.
I hope you can investigate and fix these two issues as they are preventing me from using LAV audio decoder (at least for AC3 decoding and that one particular video clip).
nevcairiel
9th October 2012, 20:07
movie 59.892 fps (says source filter)
When it should be 59.940 fps
Thats what it measured from the first bunch of frames in that file, if you want anything else, report a bug at ffmpeg. Its close enough, imho. It could be unset, and still be perfectly valid. DirectShow specs that field as a rough estimation. I don't feel like crawling around the inner workings of the mp4 demuxer to try to figure this out at this time, for a mostly cosmetical issue.
Also AC3 decoding of the file http://www.lynnepublishing.com/surround/www_lynnemusic_com_surround_test.ac3 to PCM output to ReClock AC3 reencode results in it being overly loud and distorted.
Technically this file is encoded very badly. Its encoded with overflows, which means the maximum volume exceeds 100%. Apparently this is possible to do in AC3, and all spec-compliant decoders would show these overflows. In ffdshow you're probably using the a52 decoder, which is known to generally be quiter then others, so it avoid the overflow. AC3Filter has AFAIK by default all sorts of normalization and whatnot activated, which prevents this from creating distortions (see http://ac3filter.net/wiki/AC3_overflows_in_movies)
In one of the future versions, i might simply allow clipping protection to be active even when mixing is not active, which would allow this issue to be worked around. For now, you can activate DRC for AC3, which resolves this in most cases, or enable the mixer with clipping protection. :p
oddball
10th October 2012, 01:15
Close enough is not good enough I'm afraid. I get tons of dropped frames and frame freeze because it's screwing up the playback chain. It's the only clip I have had issues with though to be honest. So it's ffmpeg which is giving bad framerate reporting. Will look into mentioning it if so.
I tried the mixer with clipping and it does not resolve the issue. Generally I keep DRC off. AC3Filter is playing it vanilla (all normalization, auto gain, bass redirection, you name it is OFF) and it plays back with no distortion when forwarded to ReClock. Anyhow you are probably correct about it being a bad encode.
mkanet
10th October 2012, 03:31
Well I figured out my problem and the answer to my previous question.
If "Use microsoft WMV9 DMO decoder for WMV3 and VC-1" setting is enabled, LAV will use it instead of CUVID VC-1; even if CUVID VC-1 is enabled. Microsoft WMV9 DMO (with or without wrapper) stutters once in a while due to high CPU usage (~30% or so).
If I disabled the "Use microsoft WMV9 DMO decoder for WMV3 and VC-1" setting, CUVID VC-1 setting is definitely used without any video stutter. CUVID VC-1 setting also takes precedence over LAV's ffmpeg (SMPTE VC-1) setting if both are enabled.
So, the problem was not knowing which VC1 LAV decoding is used. It gets particularly confusing if all settings are enabled at the same time. I didn't realize this until I tested in graphstudio. I dont mess with decoder properties pages and filters much since I spend most of my time in SageTV Media Center and a TV remote control only.
There's no question that on my system CUVID works the best; only using about 4% CPU for VC1 (on a 6 year old quad core). My GT640 does a really good job.
nevcairiel
10th October 2012, 06:50
If "Use microsoft WMV9 DMO decoder for WMV3 and VC-1" setting is enabled, LAV will use it instead of CUVID VC-1; even if CUVID VC-1 is enabled.
Thats not how it works. CUVID is always tried before any software codec, only if CUVID fails it goes to the wmv9dmo decoder. The code is quite clear on that, and also works for me just fine.
Something else must've been up in your setup.
In general the 3 options are linked together to some degree, instead of all enabling some other decoder. The vc1 option in the long formats list is a master switch, if you turn that off VC-1 won't be decoded with LAV at all. The WMV9 DMO option switches between ffmpeg and the wmv9dmo. If its enabled there is no way to get ffmpeg to decode vc1. Thats also the reason why changing this option wouldn't make any difference for your problem. There is quite simply a check in there "if wmv9dmo active, use wmv9dmo, else use ffmpeg". It has no influence on CUVID or anything, because the option is only evaluated if it wants to create a software decoder - be it ffmpeg or the wmv9dmo.
In short, you should not even think about which VC-1 software decoder is used, just enable CUVID and its used for decoding - apparently that also works for everyone else like that. :)
Anyhow, as long as it works for you now...
nevcairiel
10th October 2012, 07:01
Close enough is not good enough I'm afraid. I get tons of dropped frames and frame freeze because it's screwing up the playback chain.
The framerate is usually not used for playback by anything, so i highly doubt its the reason for your playback problems.
The only thing the framerate is usually used for is refresh rate changing, but it should be close enough for any half-smart refresh rate changer to use 59.94 Hz (if available).
wanezhiling
10th October 2012, 11:53
http://forum.doom9.org/showpost.php?p=1595165&postcount=212
Same is lav filters
nevcairiel
10th October 2012, 12:08
http://forum.doom9.org/showpost.php?p=1595165&postcount=212
Same is lav filters
Apparently this needs a login to download anything. Can't you asian guys use proper file hosters? <.<
Edit: nevermind, it was just terribly slow, i somehow managed to download it.
nevcairiel
10th October 2012, 12:53
http://forum.doom9.org/showpost.php?p=1595165&postcount=212
Same is lav filters
Theora encoded, how unusual. :)
Should be fixed for the next version.
mkanet
10th October 2012, 16:16
Hi Nev, thanks for explaining in detail. Actually, it makes sense now; and, does match what I'm seeing.
However, I found the real problem. I was still getting stuttering for VC1 in SageTV (but not in graphstudio). The problem is caused by SageTV's splitter not handling VC1 correctly. Unfortunately, SageTV forces the user to use it's propriety splitter for M2TS/TS files. For all other media, such as MKV, it uses the system splitter (LAV). Changing the splitter breaks bluray playback. Too bad there's no "Enable VC-1 Timestamp correction" in their splitter.
Thats not how it works. CUVID is always tried before any software codec, only if CUVID fails it goes to the wmv9dmo decoder. The code is quite clear on that, and also works for me just fine.
Something else must've been up in your setup.
In general the 3 options are linked together to some degree, instead of all enabling some other decoder. The vc1 option in the long formats list is a master switch, if you turn that off VC-1 won't be decoded with LAV at all. The WMV9 DMO option switches between ffmpeg and the wmv9dmo. If its enabled there is no way to get ffmpeg to decode vc1. Thats also the reason why changing this option wouldn't make any difference for your problem. There is quite simply a check in there "if wmv9dmo active, use wmv9dmo, else use ffmpeg". It has no influence on CUVID or anything, because the option is only evaluated if it wants to create a software decoder - be it ffmpeg or the wmv9dmo.
In short, you should not even think about which VC-1 software decoder is used, just enable CUVID and its used for decoding - apparently that also works for everyone else like that. :)
Anyhow, as long as it works for you now...
nevcairiel
10th October 2012, 16:19
The problem is caused by SageTV's splitter not handling VC1 correctly. Unfortunately, SageTV forces the user to use it's propriety splitter for M2TS/TS files. For all other media, such as MKV, it uses the system splitter (LAV).
If you can find out the CLSID of their splitter, i can put a fix into LAV Video. If you install "DirectShowSpy", you can usually peek into SageTV's DirectShow graph with GraphStudio, and get the CLSID of the filter there.
Otherwise, maybe SageTV shows such information somewhere?
mkanet
10th October 2012, 16:40
Oh wow! Really! Nev, thank you so much. That would be awesome!
Luckily, I already know the CLSID and the splitter/filter used.
MpegDeMux.ax (http://www.sendspace.com/file/5m8vl4)
{ABD65DEA-5701-4F21-863B-591B057D2268}
If you can find out the CLSID of their splitter, i can put a fix into LAV Video. If you install "DirectShowSpy", you can usually peek into SageTV's DirectShow graph with GraphStudio, and get the CLSID of the filter there.
Otherwise, maybe SageTV shows such information somewhere?
LoopinFool
10th October 2012, 18:11
nevcairiel,
I've got a small request for the next version of the installer...
Could you please add the .qt extension for LAV Splitter? Yes, .mov is the current standard, but .qt is still an accepted Quicktime file extension.
Since I actually need this, I added it to the registry myself, but it would be nice if the LAV installer included it. The splitter does handle .qt files and adding another supported file extension shouldn't hurt anything.
Thanks,
- LoopinFool
nevcairiel
10th October 2012, 22:03
Could you please add the .qt extension for LAV Splitter? Yes, .mov is the current standard, but .qt is still an accepted Quicktime file extension
What an odd name, but i guess it doesnt hurt anything.
Oh wow! Really! Nev, thank you so much. That would be awesome!
You can try this version, it should hopefully work better in conjunction with the SageTV source:
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-126-gd2108d3.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-126-gd2108d3-x64.zip
I also improved the wmv9dmo decoder, it previously didnt properly deal with source filters that send the timestamps in the "non-standard" format, but now it does.
LoopinFool
10th October 2012, 22:41
What an odd name, but i guess it doesnt hurt anything.
Don't forget...Quicktime did not originate on the Windows platform. Other non-Mac platforms (such as SGI) used .qt before the three-letter .mov version became the de-facto standard due to Windows.
http://www.fileinfo.com/extension/qt
Thank you,
- LoopinFool
hoborg
11th October 2012, 06:26
Hi Nev.
I noticed issue with DVD playback.
Right now i have one DVD in my HTPC with animated menu runing in loop.
I noticed strange freeze in menu. If i start, jump to menu and leaving it play in loop, there it is possibility it will freeze. One time i noticed that menu playback being slower, slower and slower then it freeze.
It happend when DVD play to an end and return to menu.
If i run menu and play the DVD, no problem.
I didnt try it on my PC yet.
I have YADIF ON with 50/60 setting.
nevcairiel
11th October 2012, 06:52
Right now i have one DVD in my HTPC with animated menu runing in loop.
I noticed strange freeze in menu. If i start, jump to menu and leaving it play in loop, there it is possibility it will freeze. One time i noticed that menu playback being slower, slower and slower then it freeze.
A bunch of questsions:
- Is it a static menu (still image background), or dynamic (moving background)?
- You just ignored it, didn't change the selected menu item, or anything like that?
- How long did it sit there until it froze?
- Which DVD is it, maybe i can obtain a copy?
hoborg
11th October 2012, 07:06
A bunch of questsions:
- Is it a static menu (still image background), or dynamic (moving background)?
- You just ignored it, didn't change the selected menu item, or anything like that?
- How long did it sit there until it froze?
- Which DVD is it, maybe i can obtain a copy?
Nev, i need to do more testing. It is some Czech child DVD, i doubt you can obtain it. I am not watching it, my children do. I noticed the problems just by walking around TV, i dind do detail tests yet.
But
- menu is dynamic
- if i start DVD, it have language selection. I am not sure why, but i am not able to select language by my remote on this DVD, but if i hit menu, it will jump to menu and navigation is working.
I will try do more specific test on my PC this evening and if i will be able to preproduce it on my PC, i will rip the menu from DVD and share it.
Hope it will help.
bran
11th October 2012, 14:39
Having trouble bitstreaming DTS-HD on Windows 8.
Latest official MPC-HC
Latest LAV Filters
GTX 460 Official Win 8 drivers
Configured the same way as on Win7, all I get is static or choppy sound, and in the same time choppy video. DTS videos works like a charm.
Anyone got it working with GeForce on Win8?
hoborg
11th October 2012, 18:18
A bunch of questsions:
- Is it a static menu (still image background), or dynamic (moving background)?
- You just ignored it, didn't change the selected menu item, or anything like that?
- How long did it sit there until it froze?
- Which DVD is it, maybe i can obtain a copy?
Hi.
I did some tests and i was able to reproduce slowing down on all DVDs animated menus i tryed.
I tryed to enable/disable YADIF, both have same issue.
Tested on WinXP and Win7 VMR9/EVR
Here is MPC-HC crash report:
Problem Event Name: APPCRASH
Application Name: mpc-hc.exe
Application Version: 1.6.2.4360
Application Timestamp: 4f87c7d2
Fault Module Name: LAVVideo.ax
Fault Module Version: 0.51.3.0
Fault Module Timestamp: 5075e1fe
Exception Code: c0000005
Exception Offset: 000b3c6a
OS Version: 6.1.7601.2.1.0.768.3
Locale ID: 1029
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789
EDIT:
I noticed that sync offset in MPC-HC renderer statistic get out of sync, then it crashed.
nevcairiel
11th October 2012, 18:36
Could it be that the memory MPC-HC uses increases while you're watching it there?
How long does it usually take until it crashes?
Edit:
May have found something else, hang on.
hoborg
11th October 2012, 18:46
Could it be that the memory MPC-HC uses increases while you're watching it there?
How long does it usually take until it crashes?
Well, i didnt think so.
I found a way how to make it crash preaty fast - start DVD in MPC-HC, go to DVD menu, show MPC-HC render statistic. Now cycle mouse over DVD navigation buttons for a while - you can see big jump of green line, then crash ocur.
http://hobring.esero.net/saf/dvd_crash.png
jmonier
11th October 2012, 19:02
I'm seeing a problem with LAV Splitter when seeking in certain mpg files such as the following:
http://www.mediafire.com/?p4hsfqcoj9htj82
What happens is that, after the seek, the audio will start playing immediately, but the video will be frozen for as much as 1-2 seconds and then will start in sync with the audio. This doesn't always happen but it seems to be quite repeatable as you get further into the file. With the clip above, it seems to happen every time when you seek back from near the end of the clip (girl on horseback).
From what I can see, it seems that the splitter is seeking to one place in the audio stream and to another (forward in time) in the video stream. It also appears that the audio stream plays from the correct location and the video stream isn't started until the audio stream catches up with it.
This doesn't happen with the Haali Splitter and doesn't happen at all when the clip is converted to mkv (using mkvmerge).
The mpg files that have this problem all come from one of two US OTA sources. Similar content from other US OTA sources do not have the problem.
I'm using Zoomplayer with LAV Video and Audio, madVR and Reclock.
nevcairiel
11th October 2012, 19:09
From what I can see, it seems that the splitter is seeking to one place in the audio stream and to another (forward in time) in the video stream. It also appears that the audio stream plays from the correct location and the video stream isn't started until the audio stream catches up with it
You can't seek to different points in time for different streams, unless that file is very badly muxed in the first place. Have to seek to one byte position, and read from there. :)
What most likely happens is that it seeks to the time you requested exactly, however the video cannot be decoded yet, because its lacking keyframes, so the decoder has to wait for keyframes. Audio usually doesn't have such a concept, so it starts immediately.
MKV is smarter there, because it actually has an index of the file, where the splitter can determine where ideal seeking points are, so that decoding can resume faster. mpg containers don't have this.
Trying to improve seeking on "stupid" formats that have no index is on the list of things to do, but its not a trivial task, because all you can do is "guess", like try to seek a few seconds before your desired seek point, in the hope that we find a keyframe there to start decoding from.
Not sure when i'll find the time to work on this, its not all that important for me personally.
If i had to guess, that specific OTA channel has a rather large gap between key frames in their encodes, which causes this behaviour. mpeg containers are really more meant for broadcasts and stuff, not for random access playback. ;)
jmonier
11th October 2012, 19:27
Everything you say makes sense and I understood going in that it's a special case. I can live with it, even when using LAV Splitter, and it works perfectly when I substitute the Halli Splitter. I had hoped, since it works perfectly with Haali, that it would be a simple fix.
nevcairiel
11th October 2012, 19:29
Sadly reading backwards in files isn't really a thing thats well supported, so you can't just go backwards and try to find that keyframe you want.. but i'll address it at some point, and invent some crazy heuristic.
Wonder what a safe bet is on going backwards. Whats a usual GOP size on broadcast content? 100 frames?
nevcairiel
11th October 2012, 19:31
Well, i didnt think so.
I found a way how to make it crash preaty fast - start DVD in MPC-HC, go to DVD menu, show MPC-HC render statistic. Now cycle mouse over DVD navigation buttons for a while - you can see big jump of green line, then crash ocur.
Try this version, i fixed some things that may have caused it.
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-134-g40f0d5d.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-134-g40f0d5d-x64.zip
Thanks for testing. :)
We're getting closer to a relase version, dvd playback seems to be getting stable now.
hoborg
11th October 2012, 20:53
Try this version, i fixed some things that may have caused it.
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-134-g40f0d5d.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-134-g40f0d5d-x64.zip
Thanks for testing. :)
We're getting closer to a relase version, dvd playback seems to be getting stable now.
Thanks Nev.
I tested it and it is really better now, no crash anymore, but i am getting freeze now if i try "cycle over DVD menu navigation".
The playback just freeze, no error or crash...
The menu highlighting "reaction time" will become slower until freezing.
nevcairiel
11th October 2012, 21:36
Thanks Nev.
I tested it and it is really better now, no crash anymore, but i am getting freeze now if i try "cycle over DVD menu navigation".
The playback just freeze, no error or crash...
The menu highlighting "reaction time" will become slower until freezing.
I couldn't really reproduce any "slowdowns", but i managed to make it freeze, and fixed the cause.
So, lets try again!
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-137-ga3923db.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-137-ga3923db-x64.zip
mkanet
11th October 2012, 21:59
Thanks Nev, I will test the latest 32bit video decoder with sageTV's demux for VC1 as soon as I get home. I can't wait!!
hoborg
11th October 2012, 22:01
I couldn't really reproduce any "slowdowns", but i managed to make it freeze, and fixed the cause.
So, lets try again!
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-137-ga3923db.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-137-ga3923db-x64.zip
Great work Nev, as ussual :)
:thanks:
VipZ
11th October 2012, 22:22
Thanks Nev, DVD playback working much better now :)
Subtitle options are now being honoured, Face/Off UK DVD working properly now and most vob files /w subs working :)
I have a DVD where opening the vob files don't detect the sub's. Let me know if a sample would be useful if this is something you could fix.
EDIT: 2 issues,
VOB sub's seem to have pallet issues eg, UK Independence day good but green and Deep Impact white/light gray and not eye friendly
Some vob files don't get the correct duration, 2min vs 23min aprox, MPC reads it correctly (UK Deep Impact DVD)
LoopinFool
11th October 2012, 22:36
Whats a usual GOP size on broadcast content? 100 frames?
I'm not sure what's usual, but this one is from an ATSC sub-channel with a very low bitrate, so it's got a very long GOP structure for MPEG2.
GSpot says the I-frame interval averages 45.9 frames with a maximum of 64.
I'd expect OTA HD streams to have much smaller GOPs, but I've never really looked at them.
I've often wondered if some MPEG splitters dynamically build an I-frame index table as they read in the stream so they can at do a really good job when seeking back to somewhere they've already been.
You might want to have a look at DGMPGDec (http://neuron2.net/dgmpgdec/dgmpgdec.html) for ideas (especially DGIndex).
- LoopinFool
Duffy Moon
11th October 2012, 22:38
I'm experiencing an odd phenomenon. When I play files in a playlist, the first is fine, but when the next one opens, the screen is black.
LAVFilters-0.51.3-134-g40f0d5d, MPC-HC and madVR (latest builds).
mkanet
12th October 2012, 03:05
Hi Nev, I wish I had good news. The latest LAV video decoder 0.51.2-126 still stutters in the same way as before. I'm sure you can reproduce it using the sagetV splitter (posted in my earlier forum post). You might be able to know exactly what's going on seeing it in action.
http://i67.photobucket.com/albums/h283/mkanet/VC1Stutter_zpse8900ed8.jpg
What an odd name, but i guess it doesnt hurt anything.
You can try this version, it should hopefully work better in conjunction with the SageTV source:
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-126-gd2108d3.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-126-gd2108d3-x64.zip
I also improved the wmv9dmo decoder, it previously didnt properly deal with source filters that send the timestamps in the "non-standard" format, but now it does.
nevcairiel
12th October 2012, 06:41
I have a DVD where opening the vob files don't detect the sub's. Let me know if a sample would be useful if this is something you could fix.
VOB files have the problem that you can usually only detect a stream once you actually see a data packet for that stream.
Subtitles however can start at any time during playback, so if some subtitle stream just doesn't have any subtitle packets until much later into the file, LAV won't be able to find it.
In the future, it may be possible to dynamically add such streams if they are discovered during playback, so that at least you get a chance to use them once they are discovered, but at this time, all i can say is that VOB files are meant to be played with their DVD navigation info. :p
VOB sub's seem to have pallet issues eg, UK Independence day good but green and Deep Impact white/light gray and not eye friendly
VOBs dont contain a palette, so all you can do is guess and/or use a default palette. The palettes are in the ifo files, play it with a dvd navigator if you want correct colors.
Some vob files don't get the correct duration, 2min vs 23min aprox, MPC reads it correctly (UK Deep Impact DVD)
No idea, maybe a sample could help.
Joniii
12th October 2012, 07:34
Sorry I'm not that familiar how LAV filters work currently.
I'm trying to get LAV filters working with HTPC and was wondering if there is any solution to get subtitles (srt or pgs) with LAV filters and WMP and WMC?
For example with vobsub or using LAV filters without DXVA or something?
Also what is the preferred DXVA mode for use with Radeon 7700 series, copy-back or native?
nevcairiel
12th October 2012, 08:18
Hi Nev, I wish I had good news. The latest LAV video decoder 0.51.2-126 still stutters in the same way as before. I'm sure you can reproduce it using the sagetV splitter (posted in my earlier forum post). You might be able to know exactly what's going on seeing it in action.
Looks like the SageTV demuxer is buggy with VC-1. It sends the timestamps of every frame one frame too early.
I played this file:
http://files.1f0.de/samples/vc1-interlaced-bframes.m2ts
At the beginning of the file, here is how it looks with the SageTV demuxer:
(All times in milliseconds for clarity)
Decode Order (in the file):
I-Frame #1, time: 120
I-Frame #2, time: 40
B-Frame #3, time: 80
B-Frame #4, time: 240
I-Frame #5, time: 160
B-Frame #6, time: 200
B-Frame #7, time: 360
I-Frame #8, time: 280
Reordered into Display Order:
I-Frame #1, time: 120
B-Frame #3, time: 80
B-Frame #4, time: 240
I-Frame #2, time: 40
B-Frame #6, time: 200
B-Frame #7, time: 360
I-Frame #5, time: 160
As you can see, it doesn't start at 0, as it should, and the re-ordered version just doesn't give a proper list of timestamps.
And here with any other working MPEG Demuxer:
Decode Order (in the file):
I-Frame #1, time: 0
I-Frame #2, time: 120
B-Frame #3, time: 40
B-Frame #4, time: 80
I-Frame #5, time: 240
B-Frame #6, time: 160
B-Frame #7, time: 200
I-Frame #8, time: 360
Reordered into Display Order:
I-Frame #1, time: 0
B-Frame #3, time: 40
B-Frame #4, time: 80
I-Frame #2, time: 120
B-Frame #6, time: 160
B-Frame #7, time: 200
I-Frame #5, time: 240
After re-ordering, the times line up perfectly.
Before the question comes up, re-ordering in VC-1 is quite simple.
If you find a I or P frame, delay it until the next I or P frame. B-Frames are output immediately.
So IIBBIBB turns into IBBIBBI. First I frame is delayed until the second I-Frame (which comes immediately after), the two B-Frames are then output immediately, the second I-Frame is output when the third is encountered, and so on.
So, @mkanet:
If there is the possibility to communicate this problem to the SageTV developers, please do so. Feel free to point them in my direction if they have any questions.
While i could try to somehow hack a fix into LAV, i feel rather uncomfortable doing so, because its a rather ugly and fragile work around, for a problem that is quite clearly in the source filter.
In general, i prefer to not employ very ugly hacks to fix bugs in other software. Bugs should be fixed where they happen, and not be worked around in other places. Sorry that this doesn't help you right now, but in the long run its just the better solution for everyone.
nevcairiel
12th October 2012, 09:03
I'm trying to get LAV filters working with HTPC and was wondering if there is any solution to get subtitles (srt or pgs) with LAV filters and WMP and WMC?
No (or not yet). You need to use a dedicated subtitle renderer, i recommend xy-vsfilter.
Also what is the preferred DXVA mode for use with Radeon 7700 series, copy-back or native?
If you want subtitles to work in WMP/WMC, you need to use Copy-Back. Subtitles don't work with Native.
sneaker_ger
12th October 2012, 10:30
If you want subtitles to work, you need to use Copy-Back. Subtitles don't work with Native.
Unless he's using a combination like MPC-HC internal subtitle renderer plus evr-cp for example...
nevcairiel
12th October 2012, 10:31
But he did say which player he uses, and he didn't use MPC-HC. :p
sneaker_ger
12th October 2012, 10:56
You win ... this time
nevcairiel
12th October 2012, 10:57
I clarified my response above to say that it only applies to WMP/WMC, to make everyone happy.
VipZ
12th October 2012, 11:01
VOB files have the problem that you can usually only detect a stream once you actually see a data packet for that stream.
Subtitles however can start at any time during playback, so if some subtitle stream just doesn't have any subtitle packets until much later into the file, LAV won't be able to find it.
In the future, it may be possible to dynamically add such streams if they are discovered during playback, so that at least you get a chance to use them once they are discovered, but at this time, all i can say is that VOB files are meant to be played with their DVD navigation info. :p
Thanks, the one DVD that has this issue opening a VOB where there is dialog at start does indeed show sub stream selections, MPC does find steam in 1st vob as well but doesn't work like always.
VOBs dont contain a palette, so all you can do is guess and/or use a default palette. The palettes are in the ifo files, play it with a dvd navigator if you want correct colors.
MPC-HC a long time ago was able to set all such files to a set style, is this not feasible within LAV?
No idea, maybe a sample could help.
I tried cutting the vob file, but once cut the duration is correct. Would you be happy for me to upload a 1gb segment and PM you the link?
I never use DVD's any more and only really looking into VOB cause LAV now supports DVD's and VOBsub so was just picking up bits that MPC-HC used to support a long time ago with their splitter and decoder, this has been broken for a long time so was looking how feasible it would be to get it working within LAV, anyway LAV > working vob's and as you say use DVD navigator :)
Joniii
12th October 2012, 11:18
Thanks for the info. One thing, should xy-vsfilter work with WMP and LAV with copy-back, or only with players like MPC-HC?
sneaker_ger
12th October 2012, 11:23
Technically every DirectShow player.
Joniii
12th October 2012, 11:30
Technically every DirectShow player.
I can't get xy-vsfilter to load on anything but MPC-HC, no matter what I try.
mark0077
12th October 2012, 15:08
Nev, I have some DVD's / menus I used to use while testing ffdshow updates a few years back, which I found ffdshow had alot of trouble with. Haruhiko found some of these useful when working on the menu highlighting, in terms of accuracy and pretty much got to the stage where these menus looked perfect in ffdshow. Maybe I can help in a similar way with LAV. I'll try to dig up some of those problem menus now and see how they look but heres one below which shows an issue.
I'm using this version of LAV which you posted yesterday.
http://files.1f0.de/lavf/LAVFilters-0.51.3-137-ga3923db.zip
Watching Queen Greatest Video Hits 1, theres a red border highlight when hovering over some of the menu items. In ffdshow / mpc-hc decoders it looks good, but not with LAV, see how it looks offset or something in LAV.
Let me know if I can provide you with any further details or samples even if its not obvious from these images where the issue is.
Mpc-hc internal mpeg2 (http://imageshack.us/a/img405/1884/mpcmpeg2.png)
LAV Video (http://imageshack.us/a/img443/176/lavvideo.png)
EDIT: I'm using evr-cp, and have deinterlacing turned off in LAV, both hardware and yadif, I'm wondering is LAV sending any interlaced flags to evr-cp because of this and causing this problem? Just a hunch. I have mpc-hc's decoder set to not output the interlace flag.
mark0077
12th October 2012, 15:50
Hi Nev, some more comments regarding DVD menus while testing out some DVDs
In Star Wars Episode II DVD
Going from the "Main Menu", to "Language Selection" goes like this
In "Main Menu"
Click "Language Selection"
"Language Selection" appears fine
Click "Main Menu"
Some sort of menu exit animation starts and plays for about 2 seconds fine
5-7 second Freeze / No output (No freeze on hardware player or with mpc internal decoder)
In "Main Menu"
Menu Traversal with different aspect ratios
Going from Say a sub menu thats 4:3 aspect ratio back to the main menu thats 16:9, I can see the old menu get stretched to 16:9 for maybe 0.2 of a second, before I see the main menu start. It just looks weird / unprofessional. My hardware player doesn't do it. Not sure if this is under your control or not.
nevcairiel
12th October 2012, 16:23
Watching Queen Greatest Video Hits 1, theres a red border highlight when hovering over some of the menu items. In ffdshow / mpc-hc decoders it looks good, but not with LAV, see how it looks offset or something in LAV.
That menu looks fine when i run it. I just improved the logic that calculates the size and position of the menu overlays to not do needless changes, maybe a rounding error was creeping in somewhere, try with the next build again.
In Star Wars Episode II DVD
Going from the "Main Menu", to "Language Selection" goes like this
In "Main Menu"
Click "Language Selection"
"Language Selection" appears fine
Click "Main Menu"
Some sort of menu exit animation starts and plays for about 2 seconds fine
5-7 second Freeze / No output (No freeze on hardware player or with mpc internal decoder)
In "Main Menu"
Guess i would need a copy of that disc, or at least the relevant parts (whatever those are on a DVD)
Menu Traversal with different aspect ratios
Going from Say a sub menu thats 4:3 aspect ratio back to the main menu thats 16:9, I can see the old menu get stretched to 16:9 for maybe 0.2 of a second, before I see the main menu start. It just looks weird / unprofessional. My hardware player doesn't do it. Not sure if this is under your control or not.
There may be something that can be done, but i'm not sure yet. I'll put it on my list for things to test after the release, it would be a too risky change, and i want the new version out there. :p
Pat357
12th October 2012, 16:50
I can't get xy-vsfilter to load on anything but MPC-HC, no matter what I try.
Are you using DXVA native ?
If no DXVA native :
Set in xy-filter "load when needed" and make sure the priority of xy-filter (Directvobsub) as DirectShow filter is high enough. (= merrit "Preferred").
If the player supports using external filters, configure DirectvobSub as preferred filter.
mark0077
12th October 2012, 17:51
That menu looks fine when i run it. I just improved the logic that calculates the size and position of the menu overlays to not do needless changes, maybe a rounding error was creeping in somewhere, try with the next build again.
Guess i would need a copy of that disc, or at least the relevant parts (whatever those are on a DVD)
There may be something that can be done, but i'm not sure yet. I'll put it on my list for things to test after the release, it would be a too risky change, and i want the new version out there. :p
Cheers, I'll try the Queen DVD on the next version. I reproduced the freeze going from sub menus to main menu in Star Wars III DVD funnily enough, I havn't alot of DVDs with very animated menus like these ones so havn't reproduced elsewhere yet. These DVDs have exit in / out animations between each menu traversal if that makes sense, so when I click "Main Menu" when in sub menus, there's first an animation, then the main menu loads, its between the out animation and the next menu appearing that the 5 second freeze seems to show up.
EDIT:
SVP With DVDs + LAV Video Decoder
Nev, I use SVP / Interframe via avisynth in ffdshow raw video filter and always convert all content to 60.00fps to match my TV. When used with the LAV video decoder (for DVDs only, fine for every other content), the video goes smooth for 0.5 seconds, stops for maybe 0.2 seconds, smooth again, stops again and so on. cpu usage is still really low, its not like its a performance issue, looks like a buffer is getting filled and flushed or something every so often.
With other decoders this jerkyness doesn't happen in DVDs. Not sure if your interested in trying to reproduce this. If you want the avisynth script I use, give me a shout and I'll send it on.
hoborg
12th October 2012, 18:32
Hi.
I noticed some pixelation if i seek durning DVD playback, but it is only cosmetic. But still ... ;-)
nevcairiel
12th October 2012, 19:42
SVP With DVDs + LAV Video Decoder
Nev, I use SVP / Interframe via avisynth in ffdshow raw video filter and always convert all content to 60.00fps to match my TV. When used with the LAV video decoder (for DVDs only, fine for every other content), the video goes smooth for 0.5 seconds, stops for maybe 0.2 seconds, smooth again, stops again and so on. cpu usage is still really low, its not like its a performance issue, looks like a buffer is getting filled and flushed or something every so often.
With other decoders this jerkyness doesn't happen in DVDs. Not sure if your interested in trying to reproduce this. If you want the avisynth script I use, give me a shout and I'll send it on.
I can't debug this, because this SVP POS crashes as soon as you run the player with a debugger, and has been doing that since like, forever. So anytime i try to extract any kind of information whats happening, it just crashes.
One thing i noticed is that EVR claims its rendering 120 frames per second, which obviously can't be right.
My guess is this: LAV flags all frames as interlaced, because well, they probably are. ffdshow raw just keeps those flags from the input to the output. So 25/30 frames from LAV, become 60 frames after SVP - which still have interlaced flags, and the renderer tries to deinterlace them to 120, causing broken playback.
Proof: When i set "Treat as progressive" in LAV, it suddenly is fluid.
Sounds like a bug in ffdshow or SVP to me, when dealing with interlaced content.
DVD content is generally flagged as interlaced, and in reality its telecined.
mark0077
12th October 2012, 20:01
The only time I get double / double frame rate, is if I use yadif in ffdshow AND avisynth svp. svp still thinks the input is at the original rate, it doesn't get the updated double rate from yadif. I always make sure yadif is off for that reason :)
So in ffdshow raw I have "Set interlaced flag in output media type" disabled, de-interlacing disabled. Same in mpc-hc mpeg2 decoder, I ask it not to pass on the flag, and also to use weave. So I assume the flags shouldn't be getting past decoding.
Unfortunately enabling "Treat as Progressive" in LAV hasn't helped.
Playing "The Matrix" DVD, which has always looked perfect with de-interlacing off / weave. EVR-CP says its playing Frame rate : 25 and all is fine with all decoders. Its not 50 fps so nothing is doubling its rate.
With SVP on, it says for me Frame rate: 60.001 which is as I expect, however its jerky as hell :)
I guess if it can't be debugged theres nothing that can be done. Let me know at any point if I can help anyways. Cheers.
EDIT: Actually got it working perfectly by changing the ffdshow avisynth buffer sizes. I have always used 0/15 and its never caused problems, Changing to 0/9 somehow works perfectly now. Any idea whats specific to LAV that makes 0/15, even 0/10 go crazy :D
nevcairiel
12th October 2012, 20:25
Try this version, it may solve some issues.
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-145-gdb45854.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-145-gdb45854-x64.zip
Among other things it should fix (all in context of DVD):
- Pixelation when seeking
- A/V desync when seeking
- For me, it also seems to solve the SVP stuttering (not sure why exactly.... :D)
- Improved menu positioning logic
Please also test the animated menu issue you had, while its unlikely that it helps, it yet may.
mark0077
12th October 2012, 21:02
Cheers for the new version.
Tried Queen Greatest Hits I, unfortunately I can't actually get to the "Options" menu now where I saw the bad positioning of the highlighted items. When I click options it lights up as if I clicked it, it brings me nowhere though and can no longer click any other items on the main menu. Do you have this DVD? If I can help by sending on the menu part let me know.
avisynth / svp - Changing the avisynth ffdshow buffer ahead sizes seems to have an effect. Lower values stops the huge stuttering but I'm noticing it seems to actually make svp stop adding the smoothness with some values, I'm very confused. I don't have a clue how the buffer sizes would only have this effect with LAV. Usualy for me changing these buffer ahead settings makes nearly no difference. I guess the amount of SVP users is very low so no point spending much time on it. I'm not sure if its avisynth / ffdshow in general thats causing it or svp specific.
Star Wars menu lags - Sorry! It doesn't help with this one.
nevcairiel
12th October 2012, 21:26
Something in the Queen menu is broken, you have to click the options button twice. =p
I don't think its actually a bug, the menu just behaves that way. When you come back from the options menu, and the option button is still highlighted, a single click is enough, its really weird.
Probably it works if you use keyboard/remote navigation (navigating to the button activates it, pressing enter goes to the menu), but can't really do that with MPC-HC it seems.
Regarding the menu issue, my collection of DVDs is rather limited, and none show the issue. Unless i can reproduce it, i cannot fix it. Its technically not a critical issue if it just lags for a few seconds, as long as it plays properly afterwards.
Also need to leave room for improvement in the future, or i might get bored (in 100 years, when my to do list is empty)
mark0077
12th October 2012, 21:49
Hehe exactly. For me though the queen menu. The options menu doesn't respond to the second click. Not does any item after I click it once. Weird.
tetsuo55
12th October 2012, 21:56
Something in the Queen menu is broken, you have to click the options button twice. =p
I don't think its actually a bug, the menu just behaves that way. When you come back from the options menu, and the option button is still highlighted, a single click is enough, its really weird.
Probably it works if you use keyboard/remote navigation (navigating to the button activates it, pressing enter goes to the menu), but can't really do that with MPC-HC it seems.
Regarding the menu issue, my collection of DVDs is rather limited, and none show the issue. Unless i can reproduce it, i cannot fix it. Its technically not a critical issue if it just lags for a few seconds, as long as it plays properly afterwards.
Also need to leave room for improvement in the future, or i might get bored (in 100 years, when my to do list is empty)The star wars dvd's (the last version released on dvd as a full set) are said to be a kind of golden file. The menu's use a lot if nasty stuff to make a dvd player break. Supposedly only those dvd players that follow all the spec rules to the letter can play it correctly. (i think its an half arsed attempt at copy protection)
Getting just one of those discs to work properly and fluently should rule out most issues other disks have.
mark0077
13th October 2012, 01:21
I agree. The star wars DVDs pushed ffdshow And mpc a while back. They will improve lav no doubt.
wanezhiling
13th October 2012, 05:44
Theora encoded, how unusual. :)
Should be fixed for the next version.
Thanks.
PS: mpc/haali splitter +lav v, cant work..:)
Joniii
13th October 2012, 07:53
Are you using DXVA native ?
If no DXVA native :
Set in xy-filter "load when needed" and make sure the priority of xy-filter (Directvobsub) as DirectShow filter is high enough. (= merrit "Preferred").
If the player supports using external filters, configure DirectvobSub as preferred filter.
Hi,
Copy-back, tried with WMP and WMC (xy-VSFilter_3.0.0.65). It is set as "load when needed" and merit is Preferred.
ryrynz
13th October 2012, 08:26
Nev, using build db45854 (Today) I have a video with 712x480 resolution stated as 853x480 which does not stretch to fit my 1920x1080 screen (black bars on either side) Keep aspect ratio and touch window from inside are enabled in MPC.
MadVR reports target rect 159,0,1761,1080 with that build, but with d08efaf (Oct 9) this video fits my screen and MadVR reports target rect 1,0,1918,1080.
MPC's Video Decoder has this video fit my screen target also, rect 0,0,1919,1080. Previous stable release builds are not fitting my screen with this video either.
nevcairiel
13th October 2012, 08:53
Nothing changed in between those versions that has anything to do with aspect ratio things, you must be seeing things. :)
In any case, sample or it didn't happen.
In most cases the AR is just screwed up in those files, and the fact that it works with another decoder i just pure chance, other files which are screwed up in other way work in LAV then, but fail in MPC-HC, etcetc. :p
nevcairiel
13th October 2012, 10:11
PS: mpc/haali splitter +lav v, cant work..:)
Should be fixed
mindbomb
13th October 2012, 17:10
in 51.3.145, when i use the navigate to title menu option of mpc hc in this dvd, it crashes.
Here's the menu and stuff (i split it up into 2 parts):
http://www.mediafire.com/?slillwi87x3yby2
http://www.mediafire.com/?qu4kjt1edzj525a
Duffy Moon
13th October 2012, 17:24
in 51.3.145, when i use the navigate to title menu option of mpc hc in this dvd, it crashes. I'll have a sample in a second.
Same problem here. I thought it was madVR (which caused my blank screen when changing file issue).
iSunrise
13th October 2012, 18:30
I also get a crash when playing DVDs with the latest build.
Just wanted to watch Conan - The Barbarian NTSC DVD and the crash always happens right when the Title Menu appears. It´s 100% reproducible.
Pat357
13th October 2012, 19:18
Hi,
Copy-back, tried with WMP and WMC (xy-VSFilter_3.0.0.65). It is set as "load when needed" and merit is Preferred.
I never use WMP / WMC, so I wouldn't know how to configure it for subs using xy-filter. Sorry.
nevcairiel
13th October 2012, 19:24
in 51.3.145, when i use the navigate to title menu option of mpc hc in this dvd, it crashes.
Thanks for the sample.
Can you confirm this fixes it?
x86: http://files.1f0.de/lavf/LAVFilters-0.51.3-152-gaf988e6.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.51.3-152-gaf988e6-x64.zip
mindbomb
13th October 2012, 21:47
that fixed the issue of the crashing, but now when you click on subtitles, the seekbar resets, and you don't get to the subtitle menu until the seekbar gets to the end. (like it has to wait until it stops playing 30 seconds of a still image)
nevcairiel
13th October 2012, 22:02
that fixed the issue of the crashing, but now when you click on subtitles, the seekbar resets, and you don't get to the subtitle menu until the seekbar gets to the end. (like it has to wait until it stops playing 30 seconds of a still image)
Thats only an issue with DXVA, i'll see if i can fix it somehow. Might be delayed until the next version, DXVA doesn't particularly like it when only one single frame is decoded (like for these still images).
Edit: Should be fixed. Found an easy way to solve it temporarily.
Duffy Moon
13th October 2012, 22:43
DVD menu fixed here too. Thanks for the rapid update.
cyberbeing
13th October 2012, 22:59
@Joniii
If you are using the Win7DSFilterTweaker to tweak the preferred decoders, xy-VSFilter will only auto-load in WMP if you set the video codecs to "Use Merit" or "Microsoft". When "Use Merit" is set, the video decoder with the highest merit (e.g. LAV Video, FFDShow) will be used in WMP along with xy-VSFilter when subtitles exist.
If you use Win7DSFilterTweaker to force a preferred video decoder like LAV Video or FFDShow, xy-VSFilter is prevented from auto-loading in WMP.
mindbomb
13th October 2012, 23:33
Thats only an issue with DXVA, i'll see if i can fix it somehow. Might be delayed until the next version, DXVA doesn't particularly like it when only one single frame is decoded (like for these still images).
Edit: Should be fixed. Found an easy way to solve it temporarily.
I don't know if it was the same issue, I was using cuvid, and it happens with avcodec too.
Pepp
14th October 2012, 02:06
Can anyone tell me how to download the official windows vc-1 codec without going to some dodgy codec site.
Thanks
nevcairiel
14th October 2012, 07:50
I don't know if it was the same issue, I was using cuvid, and it happens with avcodec too.
I had the problem happen on your sample, after my change it didnt happen anymore, so there is that. :P
Can only fix problems i can reproduce.
wanezhiling
14th October 2012, 08:47
http://pan.baidu.com/share/link?uk=3558042035&shareid=1951&fr=3861675805&fa=3861675805
Lav fails to decode it, ffdshow and coreavc are fine.
nevcairiel
14th October 2012, 09:06
http://pan.baidu.com/share/link?uk=3558042035&shareid=1951&fr=3861675805&fa=3861675805
Lav fails to decode it, ffdshow and coreavc are fine.
Fixed
Joniii
14th October 2012, 09:27
@Joniii
If you are using the Win7DSFilterTweaker to tweak the preferred decoders, xy-VSFilter will only auto-load in WMP if you set the video codecs to "Use Merit" or "Microsoft". When "Use Merit" is set, the video decoder with the highest merit (e.g. LAV Video, FFDShow) will be used in WMP along with xy-VSFilter when subtitles exist.
If you use Win7DSFilterTweaker to force a preferred video decoder like LAV Video or FFDShow, xy-VSFilter is prevented from auto-loading in WMP.
Thank you, it worked! Finally i'm able to use LAV, it is just amazing how smooth it is, no pixelation when using skip and all my BD remuxes work, on ffdshow couple of blu-rays had problems like weird flickering blocks. Thanks for your work nev!
One thing, is there 64-bit xy-vsfilter somewhere? If not, would it be hard to compile 64-bit from 32-bit source, im a programmer and I get Visual studio from MSDN, but I have never made anything in 64-bit and only language I really know well is C#.
cyberbeing
14th October 2012, 09:56
At present, the xy-VSFilter source isn't 64-bit compatible. It's actually something our dev is working on at the moment, so if no unforeseen issues arise, the next release may support building as 64-bit.
Joniii
14th October 2012, 10:02
At present, the xy-VSFilter source isn't 64-bit compatible. It's actually something our dev is working on at the moment, so if no unforeseen issues arise, the next release may support building as 64-bit.
Great to know, although 64-bit player might not be any better than 32-bit, 64-bit codecs\filters are still usefull to those who are stuck with 64-bit players like Windows Media Center with 64-bit Windows.
VipZ
14th October 2012, 12:14
Got a vob sample where the AC3 track is miss detected as EAC3.
http://www.mediafire.com/download.php?94q08mhpheee77y
nevcairiel
14th October 2012, 14:17
Got a vob sample where the AC3 track is miss detected as EAC3.
http://www.mediafire.com/download.php?94q08mhpheee77y
And thats a problem why? :D
Seems to play fine.
VipZ
14th October 2012, 14:57
And thats a problem why? :D
Seems to play fine.
Yep if you decode it seems to work fine but when bit streaming its broken. If I play that segment via DVD navigator it works as expected.
JarrettH
14th October 2012, 17:57
All this DVD talk, what's happening :D Sounds like menu support in the next release :devil:
Warlock
14th October 2012, 19:48
Which is better to decode .flac files: lav audio or madflac?
mindbomb
14th October 2012, 20:46
quality-wise, they are the same, but lav audio handles more formats and has more options, so I think lav audio is better.
Warlock
14th October 2012, 20:54
Hmm, I see. Thanks for the advice. Mindbomb, compared with Haali, still worth using it? Or simply leave the lav splitter?
mindbomb
15th October 2012, 01:45
well, im gonna say lav splitter, but you are asking in the lav thread, so what do you expect.
dansrfe
15th October 2012, 04:20
For all practical purposes (other than eac3to I suppose) Haali isn't used anywhere and neither should it be at this point in time.
Reino
15th October 2012, 09:59
Which is better to decode .flac files: lav audio or madflac?Is there something special you require from a decoder concerning flac then? Better in what way? Decoding flac is rather trivial for all decoders.
Nev, is it possible for LAV Filters to extract metadata like MPC-HC's internal filters do?
For a properly tagged mp3 MPC-HC shows "Title" ("Track Name" for MediaInfo) and "Author" ("Performer" for MediaInfo). For a mkv-file that would be "Movie name" for MediaInfo.
nevcairiel
15th October 2012, 10:02
Nev, is it possible for LAV Filters to extract metadata like MPC-HC's internal filters do?
For a properly tagged mp3 MPC-HC shows "Title" ("Track Name" for MediaInfo) and "Author" ("Performer" for MediaInfo). For a mkv-file that would be "Movie name" for MediaInfo.
As long as ffmpeg reads those metadata tags, they can probably be exposed somehow. Its on the list of things to do in the future.
Pat357
15th October 2012, 12:56
What do you think, Nev, time for a new release ?
Jacinto
15th October 2012, 19:25
Hi, can lav filters play order chapters?
RealSnoopyDog
15th October 2012, 21:03
Does anyone know a tool where i can cut out a piece from a full HD .ts file? There is a glitch in it and all versions of LAV video > 0.51.3-28 crash when i play it back. Versions <= 0.51.3-28 succeed.
bejita7
15th October 2012, 21:07
Hi, can lav filters play order chapters?
No, and I hope it will be added to lav splitter soon...
CiNcH
15th October 2012, 21:10
Does anyone know a tool where i can cut out a piece from a full HD .ts file?
Why don't you use TSPlayer from the DVBViewer members section?
Aleksoid1978
15th October 2012, 22:32
Does anyone know a tool where i can cut out a piece from a full HD .ts file? There is a glitch in it and all versions of LAV video > 0.51.3-28 crash when i play it back. Versions <= 0.51.3-28 succeed.
http://www.videohelp.com/tools/tsMuxeR
Aleksoid1978
16th October 2012, 07:19
Hi nevcairiel - in this file http://aleksoid.tosei.ru/Test/Sample/mpg/Kylie.Minogue.-.Where.The.Wild.Roses.Grow.(Ultimate.Kylie).mpg
LAV Splitter do not detect subtitle track;
nevcairiel
16th October 2012, 09:32
Can't be fixed properly. mpg files don't have any information which streams are in the file, so if you have subtitles that don't show any subtitles in the first minute or so, it won't be detected. The only solution would be to try to scan even further into the file, which causes a lot slower startup. mpeg-ps is not a good format for anything.
madshi
16th October 2012, 10:20
Not a big thing, but I just tried forcing LAV to output AYUV and I failed. I've selected AYUV only and removed all other checkboxes. Ok, the video file is 4:2:0. But LAV sends it as NV12, although NV12 is unchecked. Is that as intended? Maybe LAV refuses to upsample chroma? That would be alright with me. But then I think the settings dialog should behave accordingly. Meaning that it should not allow both NV12 and YV12 to be deselected at the same time. Or if it does allow that, LAV should refuse the connection, if no other matching color format can be found. Basically this could be fixed in various different ways. But I think the current logic to allow deactivation of NV12, but then still sending NV12, is confusing.
nevcairiel
16th October 2012, 10:27
The way its setup right now is that for every pixel format it has a list of preferred formats which it tries, for 4:2:0 thats NV12, YV12, YUY2, UYVY, RGB32, RGB24 (in that order), if none are enabled, it currently falls back to the default format, which is NV12.
I suppose i can change this fallback behavior to try to pick the first format which is actually enabled, instead of directly going to NV12.
Additionally, i could also add the 8-bit 4:4:4 formats to the preferred list for 4:2:0 and 4:2:2, after RGB (because 4:4:4 is badly supported on most renderers)
madshi
16th October 2012, 11:01
Personally, I like the ffdshow logic in this case, which is like this:
(1) Don't allow to deselect every pixel format. At least one must stay enabled. It simply makes no sense to disable every pixel format.
(2) Don't ever use a pixel format which was unchecked. The user probably has it disabled for a reason.
Maybe this is too difficult to realize, though, because it would require you to support any possible chroma, color and bitdepth conversions in any direction and combination. Maybe an alternative solution would be to change the pixel format settings logic. E.g. you could add a combobox for every possible input pixel format, and each combobox would only contain those output formats you support for that specific input pixel format. This way it would be 100% clear what happens. But that would be a lot of comboboxes, so maybe not a good idea. Another solution would be to always keep one of the "preferred formats" checked. If the user removes the last checkbox of the "preferred formats", automatically check NV12 again. Something like that.
Just my 2 cents, though.
nevcairiel
16th October 2012, 11:14
Maybe this is too difficult to realize, though, because it would require you to support any possible chroma, color and bitdepth conversions in any direction and combination.
It can already do that, i made it a point to not crash or fail if for some reason i get tricked into outputting some odd format.
Some conversions might just be slow or bad quality (because they use swscale instead of my hand-written code) - and YCgCo might fail (but it already fails if you output it directly to EVR)
I can certainly make it choose an active format if everything else is turned off, either by just using whatever format is enabled and first in the list, or i change my priority lists to include *all* formats, so every input format has a mapping to every output format - that way we can actually get proper prioritization (ie 4:2:2 8-bit would choose 4:2:2 10-bit over 4:2:0 10-bit if everything 8-bit is off).
I don't like hiding too much trickery in the options panel, but maybe one small trick to auto-select NV12 if the user disables everything else might work.
(2) Don't ever use a pixel format which was unchecked. The user probably has it disabled for a reason.
I kinda disagree with that. Most users have no clue what they are doing.
madshi
16th October 2012, 11:34
It can already do that, i made it a point to not crash or fail if for some reason i get tricked into outputting some odd format.
Some conversions might just be slow or bad quality (because they use swscale instead of my hand-written code) - and YCgCo might fail (but it already fails if you output it directly to EVR)
I can certainly make it choose an active format if everything else is turned off, either by just using whatever format is enabled and first in the list, or i change my priority lists to include *all* formats, so every input format has a mapping to every output format - that way we can actually get proper prioritization (ie 4:2:2 8-bit would choose 4:2:2 10-bit over 4:2:0 10-bit if everything 8-bit is off).
"or i change my priority lists to include *all* formats" sounds pretty good to me!
I don't like hiding too much trickery in the options panel, but maybe one small trick to auto-select NV12 if the user disables everything else might work.
Either that, or maybe you could make the last checked checkbox read-only, so that the user simply can't uncheck everything.
Most users have no clue what they are doing.
I won't argue with that. But then, I don't find it a good solution to program a settings dialog like "ok, you've configured me like this, but you probably don't know what you're doing, so I'll just go ahead and ignore what you configured". With a logic like that, why having a settings dialog in the first place? :p
alexirion
16th October 2012, 21:12
Hello,
I'm using lav 0.51.2. Audio bitstreaming of DTS-HD MasterAudio and DolbyTRUE-HD is working via the ATI 5570 HDMI output, connected to the Cambridge Audio Azur 650R receiver.
However, when I play a Bluray with DTS-HD High Resolution I don't have sound from the receiver (it does not show an input signal). When I then once switch to a DTS-HD Master Audio track and go back to the DTS-HD High Resolution stream, the receiver shows DTS-HD Master Audio as input and I have sound, but sound is quiter than usual and the rearspeaker channels are wrongly mixed - so this is not an option for the true movie experience.
I can play the exact same Blueray with PowerDVD 10 and bitstreaming of DTS-HD MasterAudio is working there, the receiver shows the right input format. So from the hardware and driver side everything looks good.
Now, it would be great if it would also be possible to bitstream DTS-HD-HR with lav audio. Can someone help me, please?
Otherwise, I can play the DTS-HD HR file using lav and dtsdecoder.dll, when I disable bitstreaming in the lav audio settings, but there I can not distinguish between DTS-HD MA and DTS-HD-HR with the bitstreaming settings. It would be very good, if this would be possible !! Then I would still have bitstreaming for MA and only disclaim it for HR.
Kind regards,
--Alex
nevcairiel
17th October 2012, 08:19
Decoding of DTS-HD MA is perfectly lossless with the dtsdecoderdll.dll, so if you have issues with DTS-HD bitstreaming and you already have access to the DLL, i suggest you simply use it.
Some devices seem to have issues with DTS-HD HRA bitstreaming, but since it works just fine on my receiver, i cannot really test anything.
Joniii
17th October 2012, 08:24
About the YCbCr and RBG.
I've always set it like this:
BD is 8-bit YCbCr 4:2:0, television processing chips usually do internal processing in YCbCr 4:2:2, so 4:2:2 would be the preferred output mode in CCC to avoid television from doing any extra subsampling\upsampling before finally displaying on RGB.
I've newer touched the ffdshow or LAV color space setting, so I don't really know how that works on the PC. When having 4:2:0 BD, CCC output set as YCbCr 4:2:2 and using Windows EVR, what should I select from from LAV setting, should I select output format as 4:2:0 or 4:2:2?
I dont really understand how this works on the PC, I mean what conversions are done to BD YCbCr 4:2:0 before the GPU sends it as YCbCr 4:2:2?
madshi
17th October 2012, 08:56
Usually everything will be converted to RGB first. Then, if you've set YCbCr 4:2:2 output, NVidia will convert RGB back to YCbCr 4:2:2 before sending the data to the TV. So all you've done is doing the RGB -> YCbCr conversion on your GPU instead of letting the TV do it. I think letting the TV do it is better because then there's no doubt about which decoding matrix should be used. If you send YCbCr to your TV, the TV will have to "guess" whether it should use BT.601 or BT.709 for conversion to RGB. And your GPU will also "guess" which matrix to use for converting RGB to YCbCr. If those 2 guesses don't match exactly, colors will get screwed up. Furthermore, if your GPU sends 8bit YCbCr to your TV, and if it's not untouched YCbCr but converted from RGB, you might get banding problems as a result.
Some people say that when using Overlay, some GPUs may output YCbCr 4:2:2 without first going to RGB, but I have my doubts whether this is really true. Maybe it's true for some GPUs, but even then, that would only work if you used Overlay instead of EVR.
Joniii
17th October 2012, 09:13
Thanks, that makes sense.
So this is how it would be best set?
(BD) YCbCr 4:2:0 -> (LAV) YCbCr 4:2:0 untouched -> (EVR) RGB? -> (Catalyst) RGB Limited(or full?) 4:4:4.
madshi
17th October 2012, 09:32
The proof is in the pudding, trust your eyes. Every display is different. So it shouldn't harm trying different combinations to check what is best. If you ask me, of course you should use madVR instead of EVR... :)
nussman
17th October 2012, 11:12
Shouldn't we all use Display's with 4:4:4 RGB support for the best quality? http://www.avsforum.com/t/1381724/official-4-4-4-chroma-subsampling-thread
Most TV's seems to convert to YCbCr 4:2:0 or YCbCr 4:2:2 first. This is not necessary for HTPC's because all is done in RGB?
Joniii
17th October 2012, 11:36
The proof is in the pudding, trust your eyes. Every display is different. So it shouldn't harm trying different combinations to check what is best. If you ask me, of course you should use madVR instead of EVR... :)
Yeah, but I can only dream about madVR now. I'm stuck with WMC if I wan't to keep my LiveTV, Blu-ray, Music and Picture library :/
I've never seen much difference in different formats, but some annoying perfectionist in me will not be satisfied before I understand the whole chain on PC.
So, Blu-ray YCbCr 4:2:0 is not upsampled in LAV video if its so selected in the settings, but after that where does the conversion to RGB occur and is it Limited or Full? And after that it goes directly to GPU without any software touching it again (except CCC if output format differs from RGB)?
madshi
17th October 2012, 11:46
It also depends on the media player (e.g. does it use a custom mixer?). But usually when using EVR and setting LAV to output 4:2:0, EVR is responsible for all conversions. Which means that ultimately the GPU does the conversions. Whether the conversions are done to video or PC levels RGB depends on various GPU driver settings. IIRC both AMD and NVidia have extra settings for YCbCr -> RGB video conversion, in addition to the GPU output PixelFormat setting. And both of those settings influence each other. So you'll have to check with a test pattern to make sure. madVR bypasses some of the GPU stuff, so for madVR only the GPU PixelFormat setting counts, not the other settings.
nevcairiel
17th October 2012, 11:48
With progressive content and EVR i would usually advice to let LAV convert to RGB, however with interlaced content you lose the ability to use EVRs deinterlacing. This might not be a problem with NVIDIA, because you can activate CUVID deinterlacing in LAV, but that only covers one GPU vendor.
madshi
17th October 2012, 11:54
With progressive content and EVR i would usually advice to let LAV convert to RGB, however with interlaced content you lose the ability to use EVRs deinterlacing.
Would it make sense for EVR users to have this configuration available automatically somehow? I think currently they'd have to switch between RGB and NV12 output all the time, depending on whether the source is interlaced or progressive, correct? Not sure how to make such a setting available without confusing anyone, though.
nevcairiel
17th October 2012, 11:55
Would it make sense for EVR users to have this configuration available automatically somehow? I think currently they'd have to switch between RGB and NV12 output all the time, depending on whether the source is interlaced or progressive, correct? Not sure how to make such a setting available without confusing anyone, though.
Since EVR doesn't let you switch the pixel format after initial connection, i don't see how (at least with a certain degree of reliability)
Joniii
17th October 2012, 12:23
I think I understand it now, thank you Madshi and Nev. :)
Nev, why does LAV video sometimes display active codec as avcodec and sometimes as dxva2cp? If I have Media Center on full screen and start a playback, then check LAV Video setting it says avcodec. If I have Media Center windowed and start playback then it reports dxva2cp.
nevcairiel
17th October 2012, 12:30
DXVA2-CB doesnt work if you start it when WMC is already in exclusive mode. You can't access the D3D device anymore then.
mindbomb
17th October 2012, 15:08
With progressive content and EVR i would usually advice to let LAV convert to RGB, however with interlaced content you lose the ability to use EVRs deinterlacing. This might not be a problem with NVIDIA, because you can activate CUVID deinterlacing in LAV, but that only covers one GPU vendor.
well, theres also yadif for the other vendors, right?
Pat357
17th October 2012, 19:12
I can play the exact same Blueray with PowerDVD 10 and bitstreaming of DTS-HD MasterAudio is working there, the receiver shows the right input format. So from the hardware and driver side everything looks good.
It would be very good, if this would be possible !! Then I would still have bitstreaming for MA and only disclaim it for HR.
Does DTS-HR bitstreaming work with PowerDVD10 or any other software ?
Sebastiii
17th October 2012, 19:35
I have the same issue with DTS-HR and only PDVD make it work. Arcsoft TMT didn't work.
Pat357
18th October 2012, 09:56
I have the same issue with DTS-HR and only PDVD make it work. Arcsoft TMT didn't work.
Not sure what you mean; you've had only problems with *bitstreaming* DTS-HR using ArcSoft ? Does PDVD work with bitstreaming DTS-HR ?
Then don't use bitstreaming; let LAV-Audio decode the DTS HR/MA (and other formats).
Letting LAV decode anything should always work, because your receiver will always get HQ PCM.
Voila, another problem solved ! ;)
nevcairiel
18th October 2012, 10:30
For people wondering when the next version will be released, the current plan is to add an option to be able to disable DVD Video support in LAV Video (in case its unstable and people want an easy way to get rid of it), and then after some final testing release the final version on the weekend. So stay tuned.
Joniii
18th October 2012, 15:32
Why does LAV Video Decoder use YV12 on WMP & WMC and NV12 on MPC-HC? I have all output formats unchecked except NV12 and YV12.
nevcairiel
18th October 2012, 15:37
Why does LAV Video Decoder use YV12 on WMP & WMC and NV12 on MPC-HC?
It uses what the renderer requests to be used. LAV prefers NV12, but if the renderer wants YV12, so be it.
I have all output formats unchecked except NV12 and YV12.
Why would you do that?
Joniii
18th October 2012, 15:49
It uses what the renderer requests to be used. LAV prefers NV12, but if the renderer wants YV12, so be it.
Thanks for the info.
Why would you do that?
Just testing, I unchecked everything else to see which format is used on WMC as default.
cyberbeing
18th October 2012, 16:56
In your latest Git revisions, if you have v210/v410 enabled as both input and output format, an endless loop of LAV Video->LAV Video->LAV Video->and so on... is created when "Render Media File" is used in GraphEdit/GraphStudio.
Joniii
18th October 2012, 17:16
DXVA2-CB doesnt work if you start it when WMC is already in exclusive mode. You can't access the D3D device anymore then.
How did they make DXVA work on ffdshow in exclusive mode?
RGB output doesn't seem to work, I get constant display driver stopped working errors. That's with Windows 8 RTM from Technet and Catalyst 12.8.
Sebastiii
18th October 2012, 17:55
Not sure what you mean; you've had only problems with *bitstreaming* DTS-HR using ArcSoft ? Does PDVD work with bitstreaming DTS-HR ?
Then don't use bitstreaming; let LAV-Audio decode the DTS HR/MA (and other formats).
Letting LAV decode anything should always work, because your receiver will always get HQ PCM.
Voila, another problem solved ! ;)
Yeah, i use LAV Audio to decode with arcsoft.dll :)
That i would like to explain is when i try to use *bitstreaming* DTS-HR works only with PowerDVD (all other format works with LAV Audio / Arcsoft / PowerDVD) so it's seems that my HARMAN need some special INIT that PowerDVD is only the one to do it.
Thanks :)
sweatherly
18th October 2012, 20:21
If I set the option in LAV Splitter to 'demux sub-streams separately' and un-tick 'TrueHD' in the 'formats' tab of LAV Audio shouldn't the AC3 core track be heard when I play the file?
I do not get hear an audio in this case but expected 2 streams to be presented from the splitter, and the decoder to support the decoding of the AC3 track but not understand the HD track.
If this is not expected to work, any chance of a feature request to allow the selection of how to present tracks with that have substreams (e.g. as-is, present HD track only, present core track only - much like the MPEGSplitter from MPC-HC has)?
egur
18th October 2012, 22:29
How did they make DXVA work on ffdshow in exclusive mode?
RGB output doesn't seem to work, I get constant display driver stopped working errors. That's with Windows 8 RTM from Technet and Catalyst 12.8.
A HW acceleration device can be created if the decoder asks EVR for specific interface. It's a little more complicated than that, but it's possible.
The main issue is that when the video decoder is connected to the splitter, it's not connected yet to the renderer and thus fails to create the HW device. If the decoder filter postpones this operation until its fully connected it can succeed.
Maybe this feature is not high on the todo list as it complicates the filter design.
Dodgexander
18th October 2012, 23:07
I am using MPC to play back .wtv files recorded in windows media center. The files contain mpeg2 pal video and 192kbps 48khz stereo. I have disabled the stream buffer source and enabled .wtv in lav splitter. The lav splitter is being used, but for some reason occasionally there is an audio stutter via spdif, in some programmes more heard more often than others. Its kind of a flickering sound. I haven't heard this until recently, so I wondered if it could be induced by something that has changed in a recent update.
My hardware is a Xonar HDAV and I have reclock as the renderer. The Same occurs without reclock in the chain.
Any suggestions?
DragonQ
19th October 2012, 00:07
Could it be a discontinuity in the recording? I would advise running recordings through TS-Doctor but WTV is a proprietary format so you'd need to convert them to TS first.
nevcairiel
19th October 2012, 06:58
In your latest Git revisions, if you have v210/v410 enabled as both input and output format, an endless loop of LAV Video->LAV Video->LAV Video->and so on... is created when "Render Media File" is used in GraphEdit/GraphStudio.
This is why i didn't want to deal with uncompressed formats really, but somehow i got talked into supporting v210 because someone wanted to get the ability to dither it to 8-bit.
I guess i'll add a check to protect against multiple loading in the same graph branch..
How did they make DXVA work on ffdshow in exclusive mode?
ffdshow only supports whats called "Native DXVA", which works a bit different than the "Copy Back" mode.
LAV also supports native mode, and it will also work in WMC.
The disadvantage of native mode is that you cannot use VSFilter (or any other post-processor)
Even if Copy-Back would be made to access the D3D device the same way Native does, it would only work if the decoder is directly connected to the renderer, so still no post-processor.
aufkrawall
19th October 2012, 12:34
Nev, most likely CUDA 5 didn't change anything regarding decoding of WMV3? :(
nevcairiel
19th October 2012, 12:36
Those new CUDA versions have no influence on the decoder. If something changes, you will automatically get it through the driver. They haven't changed the CUVID API function since CUDA 2 or so.
In any case, WMV3 is a cheap format, hardware decoding is rather irrelevant, so i have zero interest in spending any time on it.
aufkrawall
19th October 2012, 15:22
Those new CUDA versions have no influence on the decoder. If something changes, you will automatically get it through the driver. They haven't changed the CUVID API function since CUDA 2 or so.
Interesting, thanks.
In any case, WMV3 is a cheap format, hardware decoding is rather irrelevant, so i have zero interest in spending any time on it.
Are you sure that it's cheap?
Got a 1080p30 vid with ~35mbit and it has quite some load on CPU/VPU.
SassBot
19th October 2012, 15:39
Then convert it to a hardware accelerated codec and shave off the wasted space.
mindbomb
19th October 2012, 18:24
Quick question:
Why is the intel decoder named quicksync, after the api, but the nvidia decoder isn't named cuda?
nevcairiel
19th October 2012, 18:25
Because the decoding api is called CUVID? :P
mindbomb
19th October 2012, 18:37
so intel doesnt have a different name for its decoding api?
LoopinFool
19th October 2012, 20:56
so intel doesnt have a different name for its decoding api?
Quick Sync Video is Intel's name for its video encoding/decoding API.
CUVID is nVidia's name for its video decoder API, which is built on top of CUDA. CUVID is a more accurate name for the API being used.
DirectShow is built on top of the Windows API, but it's better to call it DirectShow because that's more specific. Same for CUVID.
- LoopinFool
mindbomb
19th October 2012, 22:32
alright, thanks for clearing that up.
asasadad_1
20th October 2012, 05:31
LAV Audio Decoder don't decode AAC-LD,ffdshow audio decoder(libfaad2) ok.
sample (http://streams.videolan.org/issues/3157/AAC-LD_inMP4.mp4)
nevcairiel
20th October 2012, 06:02
LAV Audio Decoder don't decode AAC-LD
AAC-LD is simply not supported at this time, and since i know nothing about AAC itself, i won't be implementing it. Maybe one day someone contributes to ffmpeg to allow it to decode AAC-LD.
Since VLC uses the same decoding library, re-posting samples from their bug reports is really only a waste of my time.
asasadad_1
20th October 2012, 07:29
AAC-LD is simply not supported at this time, and since i know nothing about AAC itself, i won't be implementing it. Maybe one day someone contributes to ffmpeg to allow it to decode AAC-LD.
Since VLC uses the same decoding library, re-posting samples from their bug reports is really only a waste of my time.
FFmpeg can make use of the Fraunhofer AAC library for AAC.
http://sourceforge.net/projects/opencore-amr/
VFR maniac
20th October 2012, 09:53
FFmpeg can make use of the Fraunhofer AAC library for AAC.
http://sourceforge.net/projects/opencore-amr/
According to SFLC, fdk-aac's license is incompatible with GPL.
So, someone would think LAVAudio with fdk-aac should be undistributable.
nevcairiel
20th October 2012, 09:59
LAV Filters 0.52
LAV Splitter
- Improved IO performance on network sources
- Added an option to configure the maximum memory usage of the frame queues
- Support ALAC in MKV
- Support SRT subtitles in AVI
- Improved raw video support in combination with LAV Video
LAV Video
- Support for DVD Video decoding
- Slight GPU memory usage reduction with DXVA2 Native
- Fixed video corruption after seeks with VP3/Theora
- Fixed decoding of "old" H.264 4:4:4 lossless files
- More strict handling of output pixel formats, only enabled formats are allowed for output
- QuickSync: Improved compatibility with new driver series
- Improved support for VC-1 with the SageTV MpegDemux
LAV Audio
- Fixed a few issues with audio mixing
- Some channels would occasionally be mixed twice, causing incorrect audio levels
- Downmixing 8ch to stereo could crash on some systems
- Increased maximum LFE coefficient to 3.0 and fixed scale to be consistent with surround/center coefficients
- Added downmixing to Mono
- Clipping protection is no longer reset on seeks
- Added support for Opus
- Fixed excessive memory allocations when decoding MPEG4-ALS
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.52.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.52.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.52-x64.zip)
DVD Video
This release adds the ability to decode DVD video with LAV Video. The complicated part about this feature was that the video decoder needs to handle the DVD menu, which is a bit tricky.
The Menu seems to be working OK most of the time, however not 100% perfect yet on some discs.
Limitations:
- QuickSync does not yet support DVD video playback, and will fallback to software decoding
- DXVA2-Native will decode the DVD video content, however you will not be able to see subtitles or menu overlays due to the nature of how DXVA works (image stays in the GPU)
I've primarily tested DVD playback on Windows 7, with the standard Microsoft DVD Navigator, and EVR, so this combination is the most tested and works quite well.
madVR was also tested a bit, however madVR still has some issues with menu rendering on still-frame menus - in some cases the menu highlights won't update properly, but not to worry, you can still simply click the menu and the movie will start.
If you find it too unstable and are in dire need of DVD watching, there is also a switch on LAV Video's "Format" tab that allows you to turn off DVD support for the time being.
Please report any serious issues you have, though!
... and everything else
Most of the time spent on 0.52 was for DVD support, but of course there is also a long list of other fixes and improvements. Most notable audio mixing was fixed quite a bit to no longer screw up mixing in some situations and give a much more predictable and correct result.
LAV Audio also got support for the Opus codec, which seems to be a new rising star on the speech codec front, but is also pretty good at encoding any content at low bitrates.
As always, please report any regressions as soon as possible, and with as many details as possible - and of course any other bugs which are not regressions you can also report. ;)
Have fun!
wanezhiling
20th October 2012, 10:06
:p First
DragonQ
20th October 2012, 10:06
More stricter? :p
nevcairiel
20th October 2012, 10:10
More stricter? :p
I hate to choose, so i combined both forms. Win-win?
Sebastiii
20th October 2012, 10:41
Thanks Nevcairiel :)
Plutotype
20th October 2012, 11:02
Thanks, huge work behind this release. Will test the features right now.
fastplayer
20th October 2012, 11:03
Thanks for 0.52, nev! Have a nice weekend! :)
andybkma
20th October 2012, 11:04
Thanks, this new version .52 fixes the looping (repeat) problem I was having with .flv files encoded with VP6 or Sorenson Spark
nussman
20th October 2012, 11:37
Thanks for 0.52!
- DXVA2-Native will decode the DVD video content, however you will not be able to see subtitles or menu overlays due to the nature of how DXVA works (image stays in the GPU)
In FFDShow DXVA there is an option "post processing - surface overlay" to support subtitles and DXVA.
Subtitel works fine with LAV Splitter and FFDShow DXVA.
Is this not possible for LAV-Video?
nevcairiel
20th October 2012, 11:42
In FFDShow DXVA there is an option "post processing - surface overlay" to support subtitles and DXVA.
Subtitel works fine with LAV Splitter and FFDShow DXVA.
That depends on your definition of "fine". If you are happy with the image corruption this causes, sure. :p
You can't modify the surfaces because they are still used as reference frames (it should be most obvious with H264, not so strong with vc1/mpeg2)
There may be ways to solve this (make the GPU copy the surface instead) but all in due time.
madshi
20th October 2012, 12:13
Thank you, I especially like "only enabled formats are allowed for output". That will be helpful, maybe for users, but definitely for development testing.
Is there a chance that you could make PDB files available as a separate 7zip/rar/zip download for official builds? I'm asking because I've seen rare crashes in LAV Splitter related to IAMStreamSelect. Without PDB files I can't provide a proper bug report / crash stack trace. If I had PDB files, I could provide you with much more helpful information about where the crash occurred exactly. That said, the LAV version I was using was relatively old, so maybe the issue is already gone in v0.52. Still, it wouldn't harm to be able to get proper stack traces for LAV, in cases I run into any crashes (or freezes) in the future.
nevcairiel
20th October 2012, 12:36
Is there a chance that you could make PDB files available as a separate 7zip/rar/zip download for official builds?
Sure.
I will try to remember to do that (i should probably create a script to package everything into its individual zips).
Here it is for 0.52 official:
x86: http://files.1f0.de/lavf/LAVFilters-0.52-symbols.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.52-x64-symbols.zip
Also added them to the first post.
Because ffmpeg is build with gcc, i sadly do not have debug symbols for those libs.
In the future it may be possible to build debug versions of the libs with MSVC, however at this time the MSVC builds are still significantly slower so for release builds its not viable yet. But if one specific crash is reproducable and happens in one of the libs, such a build could be used to try to pinpoint it. :)
DragonQ
20th October 2012, 12:51
0.52 breaks watching TV using DXVA2 Native in MediaPortal for me. Both MPEG2 SD and H.264 HD channels are really jerky and the EVR graph is all over the place. Reverting to 0.51.3 fixed it. Using latest nVidia drivers by the way.
madshi
20th October 2012, 13:00
Here it is for 0.52 official:
x86: http://files.1f0.de/lavf/LAVFilters-0.52-symbols.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.52-x64-symbols.zip
Also added them to the first post.
Because ffmpeg is build with gcc, i sadly do not have debug symbols for those libs.
Thanks! PDB files for LAV itself should be good enough for now.
nevcairiel
20th October 2012, 13:21
0.52 breaks watching TV using DXVA2 Native in MediaPortal for me. Both MPEG2 SD and H.264 HD channels are really jerky and the EVR graph is all over the place. Reverting to 0.51.3 fixed it. Using latest nVidia drivers by the way.
Works just fine for me.
In general, there really haven't been much changes to how the decoder works.
Edit:
Actually, it fails to use LAV for H.264 content with MediaPortal for me, the media type seems royally screwed up. Nothing i can do.
DragonQ
20th October 2012, 13:45
It was definitely using LAV for video, according to the stats overlay. The graph didn't ever show a flat line.
nevcairiel
20th October 2012, 13:46
Considering it fails to even properly set a H.264 media type here, i'll jsut call it a media portal bug and call it a day. Who knows what else it screws up?
DragonQ
20th October 2012, 13:54
Do you have LAV set for everything in MediaPortal Configuration?
nevcairiel
20th October 2012, 14:03
Of course.
I can see it trying to use LAV for H264, but LAV fails because the media type is just broken and initialization fails.
On mpeg2 channels, the EVR graph looks fine, well at least the green one, the red one is odd because my screen is 60hz and tv is 25fps.
Edit: After relaxing some checks in LAV, it acceps the H264, and it still decodes just smooth.
I can't fix things without reproducing them :(
jwvdbosch
20th October 2012, 14:03
several Video formats are playing upsidedown using mpc-hc 1.6.3.4992 from xvidvideo.ru with lav filters 0.52 so i reverted back to LAVFilters 0.51.3 can you please fix this
nevcairiel
20th October 2012, 14:24
several Video formats are playing upsidedown using mpc-hc 1.6.3.4992 from xvidvideo.ru with lav filters 0.52 so i reverted back to LAVFilters 0.51.3 can you please fix this
Everything works just fine here. Sounds like you have a broken post-processor.
In any case, you should say something more about your setup (what renderer, if there are any post-processing filters), and provide a sample file if it only happens with some files.
NekoKoneko
20th October 2012, 14:50
0.52 crashes MPC-HC when trying to open avi with h264 content.
i5-3550, Windows 7 x64, video driver 9.17.10.2843, LAV Filters 0.52 x64, MPC-HC 1.6.4.6052 x64
Sample video: http://www.speedyshare.com/h8xR6/Akazukin-Chacha-OP1-Eps-1-30-Creditless-7AA0FBDB.avi
LAV Video Configuration: http://tinypic.com/r/eqs1hk/6
nevcairiel
20th October 2012, 15:03
0.52 crashes MPC-HC when trying to open avi with h264 content.
i5-3550, Windows 7 x64, video driver 9.17.10.2843, LAV Filters 0.52 x64, MPC-HC 1.6.4.6052 x64
Sample video: http://www.speedyshare.com/h8xR6/Akazukin-Chacha-OP1-Eps-1-30-Creditless-7AA0FBDB.avi
LAV Video Configuration: http://tinypic.com/r/eqs1hk/6
Works fine for me. Only difference is the video driver. Isn't that a Windows 8 driver? Does it still crash with software decoding?
NekoKoneko
20th October 2012, 15:18
Rolled back to 8.15.10.2761, now everything is OK. Strange, 9.17.10.2843 is recommended by Gigabyte for my board and W7.
Thanks nevcairiel, sorry for false alarm! :)
nevcairiel
20th October 2012, 15:19
Rolled back to 8.15.10.2761, now everything is OK. Strange, 9.17.10.2843 is recommended by Gigabyte for my board and W7.
Thanks nevcairiel, sorry for false alarm! :)
If they recommend this driver, you may want to report this problem to Eric in his own thread:
http://forum.doom9.org/showthread.php?t=162442
At the very least, he has contacts to the driver developers and can forward it.
Pat357
20th October 2012, 15:32
FFmpeg can make use of the Fraunhofer AAC library for AAC.
http://sourceforge.net/projects/opencore-amr/
FFmpeg compiled with opencore-amr also fails to decode it :
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'K:\downloads\AAC-LD_inMP4.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
Duration: 00:00:16.71, start: 0.000000, bitrate: 133 kb/s
Stream #0:0(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, 2 channels, s16, 127 kb/s
Metadata:
handler_name : soun
[aac @ 04a39820] Audio object type 23 is not supported.
It seems Mplayer compiled with "FAAD" can decode this.
mindbomb
20th October 2012, 15:56
idk what happened, but occasionally, dvd subtitles are misaligned, going toward the right edge of the window.
using madvr and dslibdvdnav
might have been a freak occurence, cause i can't get it to happen again.
nevcairiel
20th October 2012, 18:13
0.52 breaks watching TV using DXVA2 Native in MediaPortal for me. Both MPEG2 SD and H.264 HD channels are really jerky and the EVR graph is all over the place. Reverting to 0.51.3 fixed it. Using latest nVidia drivers by the way.
Can you maybe try this version?
I somewhat doubt that it really does anything, but its the only change directly tied to DXVA2
Only replace the LAVVideo.ax with this:
http://files.1f0.de/lavf/LAVVideo-0.52-mplivetv.zip
Also, are you sure it actually used DXVA2 for H.264 in previous versions? Depending on the screwed up media type, it may not have, and caused a fallback to software (i relaxed some checks since)
Anyway, i'll be setting up a better debug version soon with logging and everything, so maybe we can find something out then.
glorp
20th October 2012, 18:40
nev, I have a question about the new dvd support with dxva HA mode. I normally use DXVA-native for playing everyhting and through MPC. The exception is DVDs of course because I need subs and menus. Since in the past LAV didn't really work anyway for menu support I used a second copy of MPC configured to allow the DVD Navigator and MPC internal video codec as the preferred codecs and then essentially disabled LAV for that player copy. That works fine because it handles DVD menus and/or subs and all I really need to do is launch a different copy of MPC exclusively for DVDs.
So I thought I could just do that same trick now for LAV-0.52 but then realized that since the DXVA-CB is a *global* setting there's no way to change the video codec mode in the different MPC copies.
So any thoughts about maybe a way to selectively choose a video decoding mode for different situations or is that just wishful thinking?
AndreaMG
20th October 2012, 19:03
Hi Nev,
Thanks for the dvd support, unfortunately for me with MadVR (EVR is OK) it doesn't work, MPCHC tries to load the dvd but the screen remains black...The funny thing is that I usually play dvds with MadVR with no problem (without any hack in qdvd.dlls) by simply enabling Cyberlink Video/SP decoder (PDVD10) in the external filters. Here is my setup:
Win764 - i72630QM - GTX460M - Latest Nvidia drivers - MPCHC (x86) - Lav filters - FFdshow raw video filter - Avysynth (SVP) - Reclock - AnydvdHD
In MPCHC both internal source and transform filter are all unchecked, external filters merit list:
- Lav Splitter
- Lav Video Decoder
- Cyberlink Video/SP decoder (PDVD10)
- FFdshow raw video filter
- Lav Audo decoder
- dvd navigator
If I check under Lav video decoder/Formats/Enable dvd video decoder with MadVR render it brakes the chain and Cberlink video decoder is not triggered any more...:(
Nev, I think you should say in the notes of the new release that in order for the new feature to work you have to "refresh" the externl filters under MPCHC ;) Thanks a lot for your work!!
blackjack12
20th October 2012, 19:05
Nev,
Recognize the unstable builds, but want to note that I have seen the same thing.
Crashes in both MPC-HC and MPC-BE:
Windows 8 RTM
AMD Radeon 6570
Driver ver. 12.8
LAV 51.3-53
Crashes always seen when using LAV Video Decoder for VC1 content. If uncheck the VC1 decoding in LAV and use internal filters or "native" WMVideo Decoder DMO the media players do not crash.
See no issue with another system with Radeon 4890 and Windows 7.
With NVidia you can use the native NVidia capability and there does not seem to be a problem.
Hope this may be helpful in your future updates.
Keep up the great work ...
Nev,
I know you are not worried about Windows 8 yet but the public release is this week and I will confirm again and with 0.52 that there is a problem with VC-1 playback with LAV with MPC-HC and MPC-BE.
LAV crashes with both MPC-HC and MPC-BE when playing VC-1 content with LAV and AMD Radeon processors. the only way to play correctly for me has been to disable VC-1 video decoding with LAV and use internal filters with MPC-HC and MPC-BE.
This is when using the formats, vc1 checked and "Use Microsoft WMV9 DMO decoder for WMV3 and VC-1".
Uncheck vc1 and allow the internal filters and it works fine.
With NVidia CUVID and not checking "Use Microsoft WMV9 DMO..." and it works fine.
Just something to note when you actually look at a Windows 8 setup.
I am using the latest and fully updated RTM of Windows 8. It has been solid as a rock for me during weeks of testing. People can argue or decide on the newer methods to interface but the underlying stuff is pretty darn good.
SamuriHL
20th October 2012, 19:18
Nev my development env is completely screwed up. I'm getting this:
>c:\dev\projects\lavfilters\ffmpeg\libavutil/common.h(39): fatal error C1083: C
nnot open include file: 'libavutil/avconfig.h': No such file or directory
Any ideas as to what the hell I've screwed up? Thanks!
mkanet
20th October 2012, 19:40
Nev, you did it! I just tried it, for the first time EVER SageTV client on Windows is able to decode VC1 without stuttering; and, very, very little CPU utilization. I really appreciate it. I'll go ahead and share this release with the SageTV community!
LAV Filters 0.52
[CODE]
LAV Video
- Improved support for VC-1 with the SageTV MpegDemux
nevcairiel
20th October 2012, 19:53
So any thoughts about maybe a way to selectively choose a video decoding mode for different situations or is that just wishful thinking?
Not going to happen any time soon. You could just turn off DVD support in LAV if that solves your issues for now.
Thanks for the dvd support, unfortunately for me with MadVR (EVR is OK) it doesn't work, MPCHC tries to load the dvd but the screen remains black...
You should simplify your setup to limit which component could be causing the issues.
Turn off ffdshow raw/SVP, and see if anything changes.
LAV crashes with both MPC-HC and MPC-BE when playing VC-1 content with LAV and AMD Radeon processors. the only way to play correctly for me has been to disable VC-1 video decoding with LAV and use internal filters with MPC-HC and MPC-BE.
This is when using the formats, vc1 checked and "Use Microsoft WMV9 DMO decoder for WMV3 and VC-1".
I tested this in a VM running Windows 8 RTM, and it does work just fine for me. As long as you dont activate any hardware acceleration, which GPU you use should not have any influence on the matter.
Just to make sure, you had hardware acceleration turned off, right?
In any case, MPC-HC has this debug dump feature, which saves crash dumps. Download the LAV debug symbols and put them into the LAV directory, cause it to crash, upload the dump file for me?
You can get the symbols in the first post in this thread.
Nev my development env is completely screwed up. I'm getting this:
That error means you didnt compile ffmpeg. Note that i replaced the scripts to do that.
Dodgexander
20th October 2012, 20:01
I am using MPC to play back .wtv files recorded in windows media center. The files contain mpeg2 pal video and 192kbps 48khz stereo. I have disabled the stream buffer source and enabled .wtv in lav splitter. The lav splitter is being used, but for some reason occasionally there is an audio stutter via spdif, in some programmes more heard more often than others. Its kind of a flickering sound. I haven't heard this until recently, so I wondered if it could be induced by something that has changed in a recent update.
My hardware is a Xonar HDAV and I have reclock as the renderer. The Same occurs without reclock in the chain.
Any suggestions?
Could it be a discontinuity in the recording? I would advise running recordings through TS-Doctor but WTV is a proprietary format so you'd need to convert them to TS first.
I downloaded ts doctor, converted a test file using video re-do to .ts (just stream copied) and ran it through doctor. No errors were found and the "fixed" file from doctor still exhibits the same problem. Bizarre how this has only started happening.
AndreaMG
20th October 2012, 20:06
You should simplify your setup to limit which component could be causing the issues.
Turn off ffdshow raw/SVP, and see if anything changes.
Disabling FFdshow (and SVP consequently) does not change it:( No dvd playback and block in video decoders with lowest merit
nevcairiel
20th October 2012, 20:08
Disabling FFdshow (and SVP consequently) does not change it:( No dvd playback and block in video decoders with lowest merit
Do you have any special LAV configuration? Maybe only RGB output active?
DVDs are typically interlaced, and madVR doesn't deal with interlaced RGB, so usually you end up with a black screen.
To solve this, you may need to deinterlace it before with YADIF - or enable the Y'CbCr output modes in LAV (specifically NV12 for DVDs)
glorp
20th October 2012, 20:33
Not going to happen any time soon. You could just turn off DVD support in LAV if that solves your issues for now.
Actually that works brilliantly now. Disabling DVD support allows the MS DVD navigator to split and handle menus and the MPC internal non-DXVA MPEG2 codec to handle decoding so it gets subs + menus. But LAV still handles DXVA-native decoding of MPEG2 in non-DVD streams plus the same DXVA-native for h.264 & VC1/EVR-CP. Lets me play everything with one MPC configuration.
Thanks nev for another outstanding update.
AndreaMG
20th October 2012, 20:34
Do you have any special LAV configuration? Maybe only RGB output active?
Thanks Nev, I tried also "untouched", but nothing...
Here the screenshots of my lav settings: Thanks again :)
nevcairiel
20th October 2012, 20:36
Thanks Nev, I tried also "untouched", but nothing...
Here the screenshots of my lav settings: Thanks again :)
Attachments take a while to be approved here, please upload the video.png to an image hosting site, or it'll take quite a bit until i can see them.
AndreaMG
20th October 2012, 20:52
Attachments take a while to be approved here, please upload the video.png to an image hosting site, or it'll take quite a bit until i can see them.
Sorry:p
http://imageshack.us/a/img560/6391/videorme.pnghttp://imageshack.us/a/img201/4296/audioh.pnghttp://imageshack.us/a/img197/8516/splitterc.png
DragonQ
20th October 2012, 20:54
Can you maybe try this version?
I somewhat doubt that it really does anything, but its the only change directly tied to DXVA2
Only replace the LAVVideo.ax with this:
http://files.1f0.de/lavf/LAVVideo-0.52-mplivetv.zip
Also, are you sure it actually used DXVA2 for H.264 in previous versions? Depending on the screwed up media type, it may not have, and caused a fallback to software (i relaxed some checks since)
Anyway, i'll be setting up a better debug version soon with logging and everything, so maybe we can find something out then.
Thanks, I'll try this later (might not get a chance for a few days though). There's no actual way of knowing what mode LAV is using in MediaPortal but I recorded a drop in power usage when switching from CUVID to DXVA2 Native so surely it was using it? I'm pretty sure GPU usage changes when switching from None to DXVA2 Native too, but I can check this again.
nevcairiel
20th October 2012, 20:55
Thanks Nev, I tried also "untouched", but nothing...
Here the screenshots of my lav settings: Thanks again :)
The settings look fine. I tried the exact same settings, and playback is flawless for me.
There's no actual way of knowing what mode LAV is using in MediaPortal but I recorded a drop in power usage when switching from CUVID to DXVA2 Native so surely it was using it? I'm pretty sure GPU usage changes when switching from None to DXVA2 Native too, but I can check this again.
Since CUVID causes the GPU to enter its full performance mode, its certainly possible for CPU decoding to use less power. :o
AndreaMG
20th October 2012, 21:01
[QUOTE=nevcairiel;1596733]The settings look fine. I tried the exact same settings, and playback is flawless for me.
Well, thanks anyway, I will wait for Madshi support directly via MadvR (it should be in his to do list) and for now I will stick with Cyberlink video decoder with MadVR and dvds.
Thanks again for your time:)
Sebastiii
20th October 2012, 21:07
Thanks, I'll try this later (might not get a chance for a few days though). There's no actual way of knowing what mode LAV is using in MediaPortal but I recorded a drop in power usage when switching from CUVID to DXVA2 Native so surely it was using it? I'm pretty sure GPU usage changes when switching from None to DXVA2 Native too, but I can check this again.
The only way will be to set ffdshow video as post-process and then you can get filter setting when MP is running but the fact to add ffdshow will turn off dxva.
I will try live tv tonight on H264 + Latest LAV filter. (but i use latest GIT MP too so maybe thing was fixed on MP Side)
DragonQ
20th October 2012, 22:16
Since CUVID causes the GPU to enter its full performance mode, its certainly possible for CPU decoding to use less power. :o
OK, what should I look for to see if DXVA2 Native is being used then? Surely nVidia Inspector would show different GPU usage or something?
Also, if the media type was screwed up why would CUVID work but not DXVA2 Native? Something to do with its looser restrictions?
Superb
20th October 2012, 23:55
You could use DirectShowSpy to see if LAV is running and in what mode...
http://alax.info/blog/777
SamuriHL
20th October 2012, 23:59
No one has any ideas on my build issue? Frack. I reinstalled VS 2010 and I get the same issue. (On the plus side, it fixed my MPC-HC build issue...I really f'd up my build env). I'm using a clean copy of MSYS, as well, but, it doesn't matter if I use the one Nev provided. I've got no avconfig.h file. That's generated isn't it?
mindbomb
21st October 2012, 00:08
that fixed the issue of the crashing, but now when you click on subtitles, the seekbar resets, and you don't get to the subtitle menu until the seekbar gets to the end. (like it has to wait until it stops playing 30 seconds of a still image)
Here's the menu and stuff (i split it up into 2 parts):
http://www.mediafire.com/?slillwi87x3yby2
http://www.mediafire.com/?qu4kjt1edzj525a
Hi nev, I still have this problem. You said you couldn't reproduce it before, but I think that is because I didn't give enough details about what I was using.
I'm using madvr and dslibdvdnav, and when I click on the subtitles option on the main menu, it seems to play this interstitial 30 second still video before going into that menu.
Pat357
21st October 2012, 00:24
OK, what should I look for to see if DXVA2 Native is being used then?
I don't use this MP "player", but if it's based on DShow, can't you use something like "FilterGraphSpy" or "DirectShowSpy" together with GraphStudioNext ?
It should show you the complete filtergraph, including all in- & outputs from each filter.
noee
21st October 2012, 00:35
No one has any ideas on my build issue? Frack. I reinstalled VS 2010 and I get the same issue. (On the plus side, it fixed my MPC-HC build issue...I really f'd up my build env). I'm using a clean copy of MSYS, as well, but, it doesn't matter if I use the one Nev provided. I've got no avconfig.h file. That's generated isn't it?
I take it you've done a complete "fresh pull" for lav and all subprojects? Have you done the mod to your mingw that Nev posted a while back (don't think that should cause your issue, however)?
SamuriHL
21st October 2012, 00:43
I take it you've done a complete "fresh pull" for lav and all subprojects? Have you done the mod to your mingw that Nev posted a while back (don't think that should cause your issue, however)?
Yes, definitely. I've been building fine but hadn't built in a couple weeks and now it won't work. I've been using Nev's msys package but I get the same error no matter what I use. Completely wiped my lav filters dir and recloned it. Nada.
suanm
21st October 2012, 02:48
why not download "Zips: 32-bit & 64-bit" package ? This is so weird
SamuriHL
21st October 2012, 02:52
I have a custom build I do. The zips don't help me.
suanm
21st October 2012, 03:04
I have just now downloaded Zips package(zips:32-bit & 64-bit) from original address.lol
nevcairiel
21st October 2012, 07:58
Hi nev, I still have this problem. You said you couldn't reproduce it before, but I think that is because I didn't give enough details about what I was using.
I'm using madvr and dslibdvdnav, and when I click on the subtitles option on the main menu, it seems to play this interstitial 30 second still video before going into that menu.
I only tried the MS DVD Navigator, and i do not get such an issue. I do not support the alpha-quality dslibdvdnav at this time.
OK, what should I look for to see if DXVA2 Native is being used then? Surely nVidia Inspector would show different GPU usage or something?
Also, if the media type was screwed up why would CUVID work but not DXVA2 Native? Something to do with its looser restrictions?
I know that GPU-Z has a display for the video decoder usage which can show this. Not sure about nvidia inspector. Using DirectShowSpy might also work
And yes, DXVA Native has some special checks because once you decide to use Native DXVA, you cannot fallback to sofware decoding anymore. But with CUVID (or DXVA-CB even), i can fallback from CUVID to software decoding at any point in time.
Yes, definitely. I've been building fine but hadn't built in a couple weeks and now it won't work. I've been using Nev's msys package but I get the same error no matter what I use. Completely wiped my lav filters dir and recloned it. Nada.
Like i mentioned a few posts ago, i replaced the ffmpeg build scripts, so if you accessed those, you might need to adapt to these changes.
Joniii
21st October 2012, 09:18
Thanks for 0.52!
In FFDShow DXVA there is an option "post processing - surface overlay" to support subtitles and DXVA.
Subtitel works fine with LAV Splitter and FFDShow DXVA.
Is this not possible for LAV-Video?
Dunno if you saw some posts couple of pages back but it's possible to get get subtitles with LAV Video in DXVA with xy-vsfilter.
Warlock
21st October 2012, 12:42
This new version, already has the support ordered chapters?
wanezhiling
21st October 2012, 13:53
Where did you see any info about ordered chapters in the changelog?
SamuriHL
21st October 2012, 14:47
Like i mentioned a few posts ago, i replaced the ffmpeg build scripts, so if you accessed those, you might need to adapt to these changes.
Crap. Totally missed that. I'll take a look. Thanks!!
mindbomb
21st October 2012, 15:28
I only tried the MS DVD Navigator, and i do not get such an issue. I do not support the alpha-quality dslibdvdnav at this time.
Alright, fair enough.
Though earlier builds of lav video don't have this problem.
SamuriHL
21st October 2012, 18:24
I see the issue now, Nev. Sorry about that. I didn't notice you had changed the name of the sh script to build the ffmpeg library. And like an idiot I didn't see the file not found error at the top of my build script. OOPS. Thanks!!
owlsroost
21st October 2012, 21:33
Thanks, I'll try this later (might not get a chance for a few days though). There's no actual way of knowing what mode LAV is using in MediaPortal but I recorded a drop in power usage when switching from CUVID to DXVA2 Native so surely it was using it? I'm pretty sure GPU usage changes when switching from None to DXVA2 Native too, but I can check this again.
There is a known problem with the version of the TV .ts file splitter (TsReader.ax) in MP 1.2.3 - it doesn't provide complete/correct mediatype info for H.264.
This is fixed in MP 1.3.0, but you can also use this version of TsReader.ax to fix the problem in MP 1.2.3 - http://forum.team-mediaportal.com/attachments/tsreader_nostopmod63b-zip.113164/
I've just tested LAV 0.52 with MP + latest TsReader.ax and it's working fine for me in DXVA2 Native mode with both nVidia and Intel GPUs, using a selection of MPEG2/H.264 test recordings and live TV I have available.
DragonQ
21st October 2012, 23:42
Ah, that'll be why DXVA2 Native mode works for me then - I've always been using newer test versions of TsReader.ax because the default one in 1.2.3 is so crap.
Anyway, I've just done some tests and it seems that 0.52 does work fine with DXVA2 Native - must've been a one-off when the graphs went mental. Numbers from Task Manager and GPU-Z when watching an HD channel are here:
0.51.3 (DXVA2)
GPU: 64%
Memory controller load: 35%
Video engine load: 47%
CPU: 5-10%
0.51.3 (CPU)
GPU: 53%
Memory controller load: 30%
Video engine load: 0%
CPU: 40%
- stuttering ocassionally when MP does other stuff
0.52 (DXVA2)
GPU: 40%
Memory controller load: 37%
Video engine load: 60%
CPU: 5-10%
0.52 (CPU)
GPU: 50%
Memory controller load: 30%
Video engine load: 0%
CPU: 30%
- stuttering ocassionally when MP does other stuff
nevcairiel
22nd October 2012, 06:59
That explains why i had issues getting it to work, such information would've been useful for someone that doesnt use MP usually. :p I figured out that its crap on my own, but that there is a replacement available.... :)
Anyway, glad it works properly for you now.
FreeFall
22nd October 2012, 08:26
nevcairiel,
Thanks for all your hard work with LAV Filters. Some feedback on DVD playback, after a while subtitles are not cleared from the screen they just keep displaying over the top of each other.
Win7 Pro GTX 580 (306.97) mpc-hc 1.6.5 6094 x86 CUVID + EVR
Sample.
http://www.mediafire.com/?a2b5hq1244f2ue8
extract and open folder in mpc-hc, change language to Japanese with English subs and play the first episode.
Thanks.
FreeFall
malmsteen81
22nd October 2012, 08:57
hi nevcairiel, sorry for stupid question but lav video filter works with 3d bluray? if yes i must use evr render, right?
thanks
Andrea
owlsroost
22nd October 2012, 09:06
That explains why i had issues getting it to work, such information would've been useful for someone that doesnt use MP usually. :p I figured out that its crap on my own, but that there is a replacement available.... :)
Anyway, glad it works properly for you now.
Apologies for not responding to DragonQ's posts earlier, but I didn't see them until late on Sunday evening. Thanks for all the work on LAV :)
DragonQ
22nd October 2012, 10:04
That explains why i had issues getting it to work, such information would've been useful for someone that doesnt use MP usually. :p I figured out that its crap on my own, but that there is a replacement available.... :)
Anyway, glad it works properly for you now.
I've got quite a few mods for MP, it didn't occur to me that that one would've made a difference.
Good spot by owlsroost. ;)
madshi
22nd October 2012, 11:08
Would it be possible/difficult to add support for "splitting" bitmap formats, like PNG, TIFF, JPG, BMP etc? Currently the only way to show PNG images on my PC with a media player seems to be AviSynth. The problem with AviSynth is that it doesn't support more than 8bit. PNG (optionally) supports 16bit per component. So does TIFF. So it would be great if LAV could split high bitdepth PNG files. PNG also supports aspect ratio and primaries/gamut information. Not sure how common this is, though. And I also don't know if ffmpeg/libav supports any of this. FWIW, here are a couple of 16bit sample images:
http://www.spearsandmunsil.com/images/SM_Montage_Frame_00800_Original_4k.tif
http://www.yafaray.org/sites/default/files/issues/patternfile16bit.png
http://files.chromecode.com/temp/gradient-16-bit.png
http://media.photobucket.com/image/recent/RedMistHavoc/The%2520Sims%25203/marsnorthpole_2048.png
nevcairiel
22nd October 2012, 11:13
In theory it should already be capable of splitting those, the question is if it can properly communicate the image to LAV Video (PNG/TIFF aren't the usual video formats), and then how it deals with still-images in general, i'll give it a try later today, see what happens.
madshi
22nd October 2012, 11:43
Sounds good, thanks. FWIW, if I drop a PNG/TIFF file in MPC-HC, MPC-HC says "cannot render". Do you happen to know whether libav/ffmpeg supports 16bit per channel for PNG/TIFF? Without high bitdepth support I would say it's not worth spending any time on this.
nevcairiel
22nd October 2012, 12:03
It should support high-bitdepth, yes.
madshi
22nd October 2012, 12:08
Cool.
Cide
22nd October 2012, 15:02
How would I reset the lav video and audio settings to default? After running the uninstall bats and then deleting / re-installing, it still holds on to my previous settings.
nevcairiel
22nd October 2012, 15:08
Use the installer instead of the zips, it deletes the settings on uninstall, and also has an option to reset the settings on a re-install.
Cide
22nd October 2012, 15:16
Use the installer instead of the zips, it deletes the settings on uninstall, and also has an option to reset the settings on a re-install.
Thanks! That was easy.
nevcairiel
22nd October 2012, 16:37
FWIW, if I drop a PNG/TIFF file in MPC-HC, MPC-HC says "cannot render".
I see whats going on. It doesn't manage to figure out by itself what to demux raw images with, so i need to tell it explicitly to use the "image2" demuxer. I guess i can just hardcode that on a common set of extensions .. png, tif, tiff, jpg, jpeg, gif, bmp, i dunno what else, will dig a bit.
madshi
22nd October 2012, 16:42
Sounds good. And "decoding" to raw 3x8bit or 3x16bit RGB will then work automatically?
nevcairiel
22nd October 2012, 16:44
The problem here is that 16-bit RGBA output is not supported at the moment, is there a DirectShow type for that?
PS:
madVR also doesn't seem to like showing a single still frame, while EVR shows it just fine.
madshi
22nd October 2012, 16:51
AviSynth pretends a single image were actually a video with a runtime of a few seconds. But I guess showing just one image should work, too. However, isn't playback automatically stopped by the media player after the runtime is through? With stopped playback I think madVR simply shows a black screen...
Currently madVR supports the following for 16bit-per-component RGB:
{&MEDIATYPE_Video, &MEDIASUBTYPE_RGB48LE},
{&MEDIATYPE_Video, &MEDIASUBTYPE_RGB48BE},
{&MEDIATYPE_Video, &MEDIASUBTYPE_b48r},
{&MEDIATYPE_Video, &MEDIASUBTYPE_RGBA64LE},
{&MEDIATYPE_Video, &MEDIASUBTYPE_RGBA64BE},
{&MEDIATYPE_Video, &MEDIASUBTYPE_b64a}
DEFINE_GUID2(MEDIASUBTYPE_RGB48LE, '0BGR', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
DEFINE_GUID2(MEDIASUBTYPE_RGB48BE, 'BGR0', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
DEFINE_GUID2(MEDIASUBTYPE_b48r, 'r84b', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
DEFINE_GUID2(MEDIASUBTYPE_RGBA64LE, '@ABR', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
DEFINE_GUID2(MEDIASUBTYPE_RGBA64BE, 'ABR@', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
DEFINE_GUID2(MEDIASUBTYPE_b64a, 'a46b', 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
nevcairiel
22nd October 2012, 17:00
EndOfStream in MPC-HC results in paused mode, not stopped. When i set it to repeat playback forever, i manage to get an image. I guess i could also make it send the same frame more then once for those image sources..
Is there an handy explanation somewhere how the pixels are organized in these RGB formats? I guess it may just be straight forward =p
madshi
22nd October 2012, 17:18
They're all totally straight forward. The only thing you'll have to experiment with is the order of the 3 or 4 channels. And for the Big Endian variants of course you have to swap the 2 bytes for each word. b48r and b64a are also Big Endian.
Superb
22nd October 2012, 17:19
Nev, I wonder... why did you take the approach of blending the dvd sub pictures in the video decoder instead of letting the video renderer do it?
I mean, EVR allows this.
madVR doesn't, but then again it also doesn't work w/ the MS dvd navigator (doesn't support Macrovision), so maybe it should play a lesser role in the decision.
If the video renderer blends the subpictures, then you can use Native DXVA2 decoding and still have dvd navigation, can't you? Wouldn't it also allow Quicksync decoding w/ dvd natigation?
nevcairiel
22nd October 2012, 18:05
Nev, I wonder... why did you take the approach of blending the dvd sub pictures in the video decoder instead of letting the video renderer do it?
Because the way EVR does this is rather crappy and very limited. It may work for simple subtitles like DVD subs, but anything more complex (or with any more colors), and you're more or less screwed.
This is not just for DVD subs, but a generic subtitle rendering framework, which will be extended in the future. It may also get other methods of blending the subs onto the frame, eventually.
rack04
22nd October 2012, 21:06
Is there a way to determine if LAV Filters is actually using DXVA? I'm trying to experiment with the different video decoders to see which one performs better (i.e. less dropped frames with madVR) with a i5-2540M Sandy Bridge and Intel HD Graphics 3000. Unfortunately I am running Windows XP so I don't have access to QuickSync.
nevcairiel
22nd October 2012, 21:17
DXVA in LAV also does not work on XP, you should seriously consider upgrading.
LoopinFool
22nd October 2012, 21:28
Minor issues with deinterlacing:
Force YADIF Deinterlacing. Render a RAW file in the YUY2 colorspace. Both the input and output colorspaces are YUY2 and no deinterlacing happens. I suspect a performance optimization to simply pass the data to the output in that case, but not checking if YADIF needs to happen.
Strange side note: I disabled YUY2 output to make the decode filter convert to UYVY. With the EVR, that enabled YADIF, but with the default Video Renderer, it did not. It was converting to UYVY in both cases. Weird.
I don't know how Field Order: Auto is implemented, but I fed it an interlaced 720x576 25fps WMV clip. It did not select the proper top-field-first mode by default. Both the PAL frame height and frame rate are good clues in this case.
- LoopinFool
rack04
22nd October 2012, 21:29
DXVA in LAV also does not work on XP, you should seriously consider upgrading.
It's a company laptop and for some reason they refuse to move to Windows 7.
pankov
22nd October 2012, 22:25
... Currently the only way to show PNG images on my PC with a media player seems to be AviSynth.
madshi,
you can use DCoder's Image source
http://www.dsp-worx.de/index.php?n=13
(also available through Zoom Player's Install center)
In Zoom Player there is a simple switch called
"User internal JPEG / BMP / PNG image decoder ....."
that controls how ZP will render the images.
rack04
23rd October 2012, 01:52
Forgive me, but I'm going to attempt to describe a bug that I have experienced in the hopes of narrowing down the culprit.
When I playback this (http://playlist.yahoo.com/makeplaylist.dll?sid=132987236&sdm=web&pt=rd) file I get choppy playback (i.e. dropped frames shown by madVR) when using "NVIDIA CUVID" video decoder. The video plays back without dropped frames using "None" and "DXVA (copy-back)" video decoders.
I am using the following software:
Windows 7 Ultimate X64 SP1
Geforce 306.97
LAV Filters 0.52.0
madVR 0.84.3
Reclock 1.8.7.9
MPC-HC 1.6.5.6093
The problem might be my 8800GT is too slow because the video plays without dropped frames with "NVIDIA CUVID" video decoder if I reset madVR to default settings (i.e. not using Jinc upsizing). Although it's strange because I don't get dropped frames with Jinc enabled with "None" and "DXVA (copy-back)" video decoders.
Joniii
23rd October 2012, 08:28
LAV filters works fine on WMC LiveTV and recorded TV except REW/FWD. Would it be possible to get those working on LAV Video?
madshi
23rd October 2012, 08:33
madshi,
you can use DCoder's Image source
http://www.dsp-worx.de/index.php?n=13
(also available through Zoom Player's Install center)
In Zoom Player there is a simple switch called
"User internal JPEG / BMP / PNG image decoder ....."
that controls how ZP will render the images.
Does it support high bitdepth? I kinda doubt that...
pankov
23rd October 2012, 09:02
I'm not sure but sadly I don't know how to test it. The images that you posted earlier do open but I can't tell if they are down converted to 8bit
madshi
23rd October 2012, 09:14
Well, the source filter is from 2005, by that time madVR didn't exist, nor any other renderer which would accept anything other than 8bit. So I very highly doubt this 2005 source filter is capable of outputting any other than 8bit RGB. It would be near to a miracle, to be honest. Well, you can easily check: What does the Media Type information in MPC-HC report for the madVR input pin?
pankov
23rd October 2012, 09:27
Sadly,
I don't know how to make MPC-HC open images - I've added the DC Image Source as preferred external filter but it still says "Cannot render the file".
So I opened it in GraphStudioNext and this is the result
http://imageshack.us/a/img845/2882/dcimagesourcemadvr.png (http://imageshack.us/photo/my-images/845/dcimagesourcemadvr.png/)
So as usually you are right - it's MEDIASUBTYPE_RGB32
:(
Also madVR's OSD in Zoom Player says "RGB32, 8 bit, RGB"
Sorry,
I was just trying to help
madshi
23rd October 2012, 09:36
No worries, I'm hopeful nevcairiel will find a solution for LAV.
nevcairiel
23rd October 2012, 09:44
Finding a solution is not the problem. :)
I will teach LAV Video to internally handle and output RGB48 and RGB64 without conversion.
The only remaining question is how the source filter should handle such still images. As mentioned before, i could make it output the same frame multiple times to emulate a virtual movie of sorts, because some filters just have issues with a single frame (apparently, including madVR). I could easily add two options to configure fps and duration of the fake stream, or just hardcode some values (less options are better). Maybe just tell it to draw 10 frames at 1 fps, just to feed the renderer with more then one single frame.
madshi
23rd October 2012, 09:54
Are there more filters other than madVR which have problems with 1 frame only? If so, emulating a movie would probably be a good idea. If it's only madVR which makes problems, though, I could try to fix that. If you do emulate a movie, I'd prefer a couple of seconds worth of 24fps. I have a very low framerate calibration pattern here and playing it back always feels very sluggish, for some reason. FWIW, for images, AviSynth emulates a movie with a runtime of 42 seconds, with 24.000 fps.
nevcairiel
23rd October 2012, 09:56
42*24 = 1000 frames (roughly). Guess i can do that.
madshi
23rd October 2012, 09:58
Yeah, 1000 frames seems very likely.
jmone
23rd October 2012, 10:02
I look forward to this as it may fix the issue on one video file that is a music video but with only a still image that currently will not play.
nevcairiel
23rd October 2012, 10:09
I look forward to this as it may fix the issue on one video file that is a music video but with only a still image that currently will not play.
This will only work for actual images, not for your broken video files.
You could try this particular file with 0.52 however, i added support for proper handling of mpeg2 end-of-sequence markers, which are typically used for DVD still images.
kolak
23rd October 2012, 17:48
DNxHD 10bit decoding is fixed with ver 0.52 :)
Overall performance and stability also seams to be better :)
LoopinFool
23rd October 2012, 20:30
Yeah, 1000 frames seems very likely.
Especially since this wiki page (http://avisynth.org/mediawiki/ImageSource) mentions 1000 and 24fps a lot.
GraphStudioNext shows a 41.70sec duration when loading a single image with AviSynth. That doesn't quite match either 1000 or 1001 (0-1000) frames at 24fps. I suspect it is indeed 1000 frames.
UPDATE: avs2avi claims it's 1001 frames, which matches the 0-1000 frame number defaults on that wiki page.
- LoopinFool
LoopinFool
23rd October 2012, 22:11
Oh, speaking of AviSynth...
Since ffmpeg can use AVS scripts as input, it would be nice if LAVSplitter could, too.
- LoopinFool
kitame
24th October 2012, 02:31
how about clamp it to screen refresh-rate? or the video source's refresh-rate, it should solve scaling problems.
nevcairiel
24th October 2012, 06:52
Since ffmpeg can use AVS scripts as input, it would be nice if LAVSplitter could, too.
Not going to happen. AviSynth outputs uncompressed video, and LAV Splitter doesn't really like dealing with that, so just stick to the AviSynth DirectShow filter.
aufkrawall
24th October 2012, 08:32
Does madVR make use of the Avisynth DS filter?
Reino
24th October 2012, 09:44
"the AviSynth DirectShow filter"? I take it you mean AVI/WAV File Source?
nevcairiel
24th October 2012, 09:46
I just know that i can play AviSynth scripts in MPC-HC with some source filter that handles it =P
asasadad_1
24th October 2012, 16:48
FFmpeg compiled with opencore-amr also fails to decode it :
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'K:\downloads\AAC-LD_inMP4.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
Duration: 00:00:16.71, start: 0.000000, bitrate: 133 kb/s
Stream #0:0(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, 2 channels, s16, 127 kb/s
Metadata:
handler_name : soun
[aac @ 04a39820] Audio object type 23 is not supported.
It seems Mplayer compiled with "FAAD" can decode this.
maybe u could try ffmpeg -c:a libfdk_aac -i inputfile out.wav?
anyway, it (http://ul.to/f510ugzl) contains a AAC-LD file, a AAC-ELD file(both created via ffmpeg) and lavfilters patched by someone, they works well.
the pathced lavfilters decode that AAC-LD file from videolan stutter.
nevcairiel
24th October 2012, 18:57
AAC-LD is only really useful for true low-delay applications like realtime speech, it doesn't have any real advantages for audio coding in files/movies, which is why i won't go through any legal hoops with the Fraunhofer library to try to support it.
Anyone can build it for themself if they want, however such builds are not redistributable, and anyone that does so is in violation of the license.
Note that using this library will most likely break other parts of AAC playback.
Pat357
24th October 2012, 20:59
Are there more filters other than madVR which have problems with 1 frame only? If so, emulating a movie would probably be a good idea. If it's only madVR which makes problems, though, I could try to fix that. If you do emulate a movie, I'd prefer a couple of seconds worth of 24fps. I have a very low framerate calibration pattern here and playing it back always feels very sluggish, for some reason. FWIW, for images, AviSynth emulates a movie with a runtime of 42 seconds, with 24.000 fps.
Did you already have a look at vapoursynth (http:/www.vapoursynth.om) ?
It an output 8, 9 10 and 16 bit in all color formats : RGB, YUV410P016, YUV422P216, YUV444P416....
There's also a native High Bitdepth image reader..
LoopinFool
25th October 2012, 00:50
I have a 720x486 AVC video. When (and only when) YADIF is enabled in the Video decode filter, it outputs 720x488 instead.
This doesn't happen with the same video in either RAW or MPEG2 formats.
nev, send me a PM if you want/need the video clip.
- LoopinFool
Asmodian
25th October 2012, 03:01
Ah but interlaced 4:2:0 needs to be mod 4 vertically. I assume the AVC is YV12?
You have 243 lines per field and the color is 1/2 resolution.
Are the raw or MPEG2 versions 4:2:2 or 4:4:4?
jmone
25th October 2012, 03:38
This will only work for actual images, not for your broken video files.
You could try this particular file with 0.52 however, i added support for proper handling of mpeg2 end-of-sequence markers, which are typically used for DVD still images.
Thanks - 0.52 fixes this file, plays back perfectly!
LoopinFool
25th October 2012, 04:14
Ah but interlaced 4:2:0 needs to be mod 4 vertically. I assume the AVC is YV12?
You have 243 lines per field and the color is 1/2 resolution.
Are the raw or MPEG2 versions 4:2:2 or 4:4:4?
You are absolutely correct. I also just repeated my tests and it didn't matter whether YADIF was enabled or not. :confused:
I had been testing with ffdshow, which delivers 720x486 frames on its output pin even though the input is flagged as interlaced. Perhaps that's a bug in ffdshow.
If possible, it would be nice if the LAV Video decoder could report 720x488 on its output pin before the frames start streaming. While downstream filters should handle the image size (and buffer) getting bigger, some probably don't (like mine didn't until I fixed it).
I just noticed that even Windows Explorer reports 720x488 when this file is highlighted.
I strongly suspect the other versions of this movie are not flagged as interlaced. I made them myself a while ago using ffmpeg.
Thanks,
- LoopinFool
romulous
25th October 2012, 04:42
Hi nev,
I checked the changelog and did a quick search of the open bug tracker issues, but I couldn't find any mention of this as a known issue, so I thought I'd ask.
When using LAV Video Decoder with CUVID enabled (player is Zoom Player), the Ctrl+Alt+S shortcut is blocked while a video file is playing. So basically, you create a desktop shortcut using that hotkey to perform a function (e.g. open Notepad), and then start up the player and play a video. While that video is playing, if you hit the hotkey, nothing happens - until you close the player or stop the video, whereupon the hotkey activates (e.g. opens Notepad). Only with CUVID enabled though.
Is this by design, or a bug?
Thanks!
nevcairiel
25th October 2012, 06:52
If possible, it would be nice if the LAV Video decoder could report 720x488 on its output pin before the frames start streaming. While downstream filters should handle the image size (and buffer) getting bigger, some probably don't (like mine didn't until I fixed it).
Thats not really possible. Before streaming starts, the decoder has not seen any frame data of the video, so it can't really determine which are the right values. It has to trust the values the source filter tells it, and if the source reads a height of 486 from the container, it will report this.
sneaker_ger
25th October 2012, 13:37
Maybe LAV should crop 2 lines, then?
nevcairiel
25th October 2012, 13:38
Like it was pointed out above, interlaced 4:2:0 needs to be mod4 in height to be "valid", so no, it should not.
sneaker_ger
25th October 2012, 13:47
But after YADIF it is not interlaced anymore.
nevcairiel
25th October 2012, 13:48
If the file was invalid before by having a basically unsupported height, i don't care. :P
njfoses
25th October 2012, 14:00
I have a Sony Vaio laptop with an i7 2670QM(2.20GHz) processor along with an nvidia 540m gpu. Correct me if im wrong but my processor would seem more capable to utilize lav, madvr and mpc-hc then the gpu. Should i be using cuvid without yadif or would i be better off letting the processor do the work and not use cuvid but use yadif? 98% of my sources are hd progressive so interlacing would not come into play often but i still want the optimal setup. Should i use the cpu for interlaced material and then switch to cuvid for progressive material? I would like to pick one or the other for all material if possible. I just dont know if im better off using my gpu or cpu based on my system. Any help is appreciated!
kitame
25th October 2012, 15:00
^ simply put it software decode(aka letting the CPU do it) has more inherent quality to it, because it seems hardware decode(aka letting the GPU do it) does too much damage while decoding them.
nevcairiel
25th October 2012, 15:00
^ simply put it software decode(aka letting the CPU do it) has more inherent quality to it, because it seems hardware decode(aka letting the GPU do it) does too much damage while decoding them.
What are you talking about?
Both software and GPU decoders produce the exact same quality image.
Regarding performance, decoding is handled by a seperate decoder chip in your GPU, it does not relate to the power of the GPU, so you can safely enable it.
I suggest to simply test it for a while in any combination and see if it works. We don't know the performance of every cpu or gpu on this planet to decide =p
kitame
25th October 2012, 15:33
might've had something else in mind then =/
ah i had "encoding" in mind, lol.
LoopinFool
25th October 2012, 16:32
Thats not really possible. Before streaming starts, the decoder has not seen any frame data of the video, so it can't really determine which are the right values. It has to trust the values the source filter tells it, and if the source reads a height of 486 from the container, it will report this.
That's fine. I just figured if the stream is flagged as interlaced and is 4:2:0, the source filter might be able to report the rounded-up height instead. MediaInfo reports "Height: 486 and Original Height: 488". It gets that 488 from somewhere, but perhaps it's decoding the stream, too.
Again, not a problem for me as my internal sink filter now properly re-allocates all of its buffers when the size changes.
By the way, nev, did you get my PM with the crash stack trace? I don't see it in my Sent Items folder.
- LoopinFool
starkline
25th October 2012, 18:13
nevcairiel-- I believe that 0.52 introduced a slight regression in the stream aspect ratio detection for asf containers. The X and Y coordinates are reversed for the source aspect ratio. Reverting lav to 51.3 fixes the issue.
I do not notice any problems with mp4 containers.
Dogway
25th October 2012, 18:34
Since ffmpeg can use AVS scripts as input, it would be nice if LAVSplitter could, too.
Yes, I was about to ask the same thing when today to my surprise realised lavfilters couldn't open avs files :scared:
what to do then, fiddle with the external filters to enable ffdshow everytime we want to preview avs?
LoopinFool
25th October 2012, 18:41
Yes, I was about to ask the same thing when today to my surprise realised lavfilters couldn't open avs files :scared:
what to do then, fiddle with the external filters to enable ffdshow everytime we want to preview avs?
As mentioned here, enabling the "AVI/WAV File Source" filter may work for you.
- LoopinFool
Dogway
25th October 2012, 18:50
As mentioned here, enabling the "AVI/WAV File Source" filter may work for you.
Yes I know, but being aware of "powerful" tools like ffdshow, lavfilters, madvr, etc I never thought I would need internal filter. That's why I'm using a modded austere light MPC-HC version without internal filters.
I'm testing in graphedit but it seems I can't either connect LavSplitter to ffdshow video directly, I need a new splitter + decoder for avs? :scared:
clsid
25th October 2012, 20:21
Haali Splitter supports AviSynth input. Use this tweak:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Wow6432Node\Media Type\Extensions\.avs]
"Source Filter"="{55DA30FC-F16B-49FC-BAA5-AE59FC65F82D}"
Btw, "AVI/WAV File Source" is not an internal filter. It is a standard filter from Windows.
Dogway
25th October 2012, 20:38
I try to refrain myself from Haali Splitter because it is very intrusive, and caused many problems in the past.
Do I need to apply that registry after installing Haali?
I wasn't sure "AVI/WAV File Source" was internal or not, so I tried to load it in the external list as well, but it doesn't help. Graphedit doesn't want to open avs with "AVI/WAV File Source" either.
clsid
25th October 2012, 20:45
Can you add mediatypes and format config options for the following audio formats? Then they can also work with other splitters.
AMR-NB
{726D6173-0000-0010-8000-00AA00389B71}
Nellymoser
{4C4C454E-0000-0010-8000-00AA00389B71}
A-law
{77616C61-0000-0010-8000-00AA00389B71}
WAVE_FORMAT_ALAW = 0x0006
Mu-law
{77616C75-0000-0010-8000-00AA00389B71}
{57414C55-0000-0010-8000-00AA00389B71}
WAVE_FORMAT_ULAW = 0x0007
MS GSM
WAVE_FORMAT_GSM610 = 0x0031
MS ADPCM
WAVE_FORMAT_ADPCM = 0x0002
Truespeech
WAVE_FORMAT_TRUESPEECH = 0x0022
Dogway
25th October 2012, 20:51
Haali Splitter supports AviSynth input,
No, just tested, even with the reg applied. I can't even open Haali Splitter with the .avs in graphedit. This is a nightmare! I can't play AVS! :confused:
LoopinFool
25th October 2012, 22:05
No, just tested, even with the reg applied. I can't even open Haali Splitter with the .avs in graphedit. This is a nightmare! I can't play AVS! :confused:
clsid's registry setting was to use Haali for AVS files in 32-bit applications only, assuming the Haali splitter has been registered.
Here's what I put in my registry in order to have DirectShow use the Windows built-in AVI/WAV file source for AVS files:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Media Type\Extensions\.avs]
"Media Type"="{E436EB83-524F-11CE-9F53-0020AF0BA770}"
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"
That's for 64-bit programs. Add this entry to do the same for 32-bit programs:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Wow6432Node\Media Type\Extensions\.avs]
"Media Type"="{E436EB83-524F-11CE-9F53-0020AF0BA770}"
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"
You probably don't even need the "Media Type" key but it works for me with it there.
- LoopinFool
Reino
25th October 2012, 23:44
The Source Filter is one thing, but you'd also need a suitable video decoder. Dogway hasn't mentioned what colorspace his Avisynth-script puts out. Windows can handle RGB by default, but for YV12, which your script probably is, you'd need something extra. You could install the Helix YUV Codecs, the XviD codec, or you could use FFDShow of course.
With FFDShow you can either change "Raw Video" to "YV12" in the Codecs-section of FFDShow's Video Decoder config, or you could change the merit of FFDShow's Raw Video Decoder to 00400000 with software like DirectShow Filter Manager (http://www.softella.com/dsfm/index.en.htm).
(In case you don't know how to access FFDShow's Raw Video Decoder config: make a copy of the shortcut to FFDShow's Video Decoder config, go to its Properties and in "Target" change configure into configureRaw.)
If people tell me that RGB Fraps is far more common then YUV420 Fraps, then i might add a special rule for Fraps to default to RGB instead of NV12, but this has to be done on a per-codec basis.It's not IMO, but defaulting to RGB is a good idea with this codec regardless. Levels issues and other stuff.Afaik is Fraps always RGB. At least I've never heard of YV12 Fraps files.I'd like to get back at this. About a week ago I made a post, which is actually a summary of all I have learned about Fraps recently.
The current situation with the FFDShow- and LAV Video Decoder is; they both convert the output, whether it's FPS1(yuvj420p) or FPS1(bgr24), to RGB24. And of course, unlike FFDShow, LAV lags the PC.709-->Rec601 capabilities atm.
IMHO now :rolleyes: FPS1(yuvj420p) to the renderer should go out as YV12 and FPS1(bgr24) as RGB, or in other words, no colorspace conversions. Only FPS1(yuvj420p) needs a PC.709-->Rec601 conversion, that's all.
Dogway
25th October 2012, 23:46
Sorry, I can't make it work:
http://i212.photobucket.com/albums/cc35/Dogway/Misc/th_clip-2.png (http://i212.photobucket.com/albums/cc35/Dogway/Misc/clip-2.png)
And yes, I registered the source and mediatype, 32bit what I use.
The Source Filter is one thing, but you'd also need a suitable video decoder.
I'm very confused because I always knew that in MPC-HC terms "Source Filter"=Splitter, now, I am being recommended to use Haali Splitter with "AVI/WAV File Source", Splitter+Splitter? Or is "AVI/WAV File Source" a Transform Filter (aka Decoder)? In such case I wouldn't need ffdshow.
Anyways, I have also tried to decode with ffdshow, RAW Video is set to all supported, and of course avisynth enabled.
I never thought something that used to be so easy has become such a nightmare. I remember using LavSplitter with ffdshow no problem before, what has happened?
clsid
26th October 2012, 00:11
First of all, you should stop messing with external filter settings. You will do more damage than good. My list is totally empty and everything works exactly the way I want.
Dogway
26th October 2012, 00:16
First of all, you should stop messing with external filter settings. You will do more damage than good. My list is totally empty and everything works exactly the way I want.
I guess you do it through merit settings...?
That should be ideal but I once had a look and felt it was way over my head.
edit: I'm having a look at filter manager and it looks more feasible, but without having deep knowledge I feel I have more to fail at than by using external filter settings, do you have any reason why it should be avoided?
Reino
26th October 2012, 01:03
Anyways, I have also tried to decode with ffdshow, RAW Video is set to all supported, and of course avisynth enabled.And...?
I never thought something that used to be so easy has become such a nightmare. I remember using LavSplitter with ffdshow no problem before, what has happened?LAV Splitter can't read Avisynth scripts, so that's impossible. It probably was the "AVI/WAV File Source" then.
Except for FFDShow's Raw Video Decoder, there's absolutely no reason to mess with the merit settings or external filters in MPC-HC. "AVI/WAV File Source" is a standard Windows filter and afaik has been the only one capable of handling Avisynth scripts so far.
How does your Avisynth script look like?
agustin9
26th October 2012, 05:56
Some feedback on DVD playback, after a while subtitles are not cleared from the screen they just keep displaying over the top of each other.
I'm having this problem too. Using latest mpc-hc and madvr.
nevcairiel
26th October 2012, 07:00
IMHO now :rolleyes: FPS1(yuvj420p) to the renderer should go out as YV12 and FPS1(bgr24) as RGB, or in other words, no colorspace conversions. Only FPS1(yuvj420p) needs a PC.709-->Rec601 conversion, that's all.
If you use a renderer thats not as braindead as EVR, it will already do that.
The problem with EVR is that it doesn't let you switch its input format after the initial connection, so you get one chance to decide which pixel format to use, and have to stick with that. At the point of the initial connection, its impossible to know what version of Fraps you're dealing with, you only figure that out once you start getting frame data. And since people claimed that RGB Fraps is way more common, thats the one i assume to be the default - hence EVR gets RGB as its initial type for Fraps.
Now if you use madVR or even VMR-9 on a Fraps YUV420 file, it would switch to NV12/YV12 output, but only EVR doesn't support doing that.
So in short: can't be changed.
ramenchef
26th October 2012, 08:03
I'm having a weird issue. I currently use Haali for mkvs just for ordered chapters. For everything else, LAV splitter is being used. When playing back an ogm file, LAV splitter refuses to automatically load the subtitles. The subtitles show up under the splitter source, but it defaults to no subtitles every time. Subtitle selection mode is set to default with eng,jpn as the options. I am using MPC-HC + xy-vsfilter. I have tried moving directvobsub above and below LAV Splitter in the external filters setting in MPC-HC, but it doesn't help. This is on LAV Filter 5.1.3(?) and 5.2.
http://i.imgur.com/27d1b.png
nevcairiel
26th October 2012, 08:05
Your file has wrong language tags.
You can either put "English" in the language tag, or "eng", but a combination of "English[eng]" will not be recognized properly.
Dogway
26th October 2012, 10:08
there's absolutely no reason to mess with the merit settings or external filters in MPC-HC.
So if I have LAV Video, FFDshow and XviD, who chooses what to decode?
or another scenario, LAV Audio, FFDShow Audio, and MPEG Layer 3 Decoder? (That assuming I don't have more codecs installed, which is highly unlikely as they get installed with programs like PowerDVD, iZotope, TechSmith, etc)
My AVS is simple, because I'm testing:
setmtmode(3,2)
MPEG2Source("source.d2v", cpu=0)
Trim(34165, 42102)
EDIT: To demonstrate that your workflow doesn't work, I deleted all the external filters, and this is what I get:
http://i212.photobucket.com/albums/cc35/Dogway/Misc/th_Filters.png (http://i212.photobucket.com/albums/cc35/Dogway/Misc/Filters.png)
If you're curious, mp4 (avc+aac), mov (asp+pcm)
Reino
26th October 2012, 12:23
Now if you use madVR or even VMR-9 on a Fraps YUV420 file, it would switch to NV12/YV12 output.That's true, but since the decoder's output is RGB, that would mean 2 colorspace conversions; YV12-->RGB-->YV12.
Your splitter correctly detects these files as either FPS1(yuvj420p), or FPS1(bgr24), so wouldn't it be possible to determine the colorspace before connecting to the video decoder? If the splitter detects FPS1(yuvj420p), tell the video decoder not to do any colorspace conversion.
And I don't know what FFDShow's PC.709-->Rec601 conversion is based on, but since ffmpeg can do PC.709-->Rec601 conversions now (-pix_fmt yuv420p -vf colormatrix=bt709:bt601), is it possible to integrate it into LAV Filters? LAV Filters is based on ffmpeg, right?
And btw, I'm not so sure if most people use Fraps's RGB recording mode. It's quite a bit more demanding compared to the YV12 mode and when you do a proper PC.709-->Rec601 conversion, I doubt you would see any (major) differences. A survey (on the Fraps forum) would be interesting.
So if I have LAV Video, FFDshow and XviD, who chooses what to decode?I thought you were trying to play an Avisynth script in MPC-HC. Don't change the subject please.
Your script appears to be YV12, so installing a YV12 video decoder is all you need.
Such a script would play fine here with the AVI/WAV File Source and FFDShow's Raw Video Decoder.
Again: except for FFDShow's Raw Video Decoder, there's absolutely no reason to mess with the merit settings or external filters in MPC-HC, if you want to play Avisynth scripts, or any other media file for that matter. At least I have never had to mess with them for any scenario whatsoever.
nevcairiel
26th October 2012, 12:32
That's true, but since the decoder's output is RGB, that would mean 2 colorspace conversions; YV12-->RGB-->YV12.
Wah?
The decoder outputs YV12 for such files, LAV tries to switch the renderer to NV12 or YV12 mode, and if the renderer accepts that, no conversion is performed at all. If the renderer refuses, it sticks with its current format, which for Fraps defaults to RGB. So either you have YV12 -> RGB for EVR, or you have just plain YV12 -> YV12 for any sane renderer.
LAV doesn't even have the ability to do any double-conversions.
Your splitter correctly detects these files as either FPS1(yuvj420p), or FPS1(bgr24), so wouldn't it be possible to determine the colorspace before connecting to the video decoder? If the splitter detects FPS1(yuvj420p), tell the video decoder not to do any colorspace conversion.
Most video renderers completely fail at fullrange YV12 input, which is why it was prefered to simply use RGB, because when LAV converts to RGB, it properly takes the range and the matrix into account (the "j" in yuvj420p indicates its jpeg-range, aka full-range)
If the Fraps decoder in ffmpeg also manages to tell LAV that the YV12 it outputs is in some specific matrix (709 or 601), it will properly take this into account and create perfect RGB.
If Fraps encoded YV12 is always in the same matrix, i can also hardcode that value somewhere.
I have no plans to add code to change the YUV color matrix. Its not something a decoder should be doing.
Reino
26th October 2012, 13:08
The decoder outputs YV12 for such files, LAV tries to switch the renderer to NV12 or YV12 mode, and if the renderer accepts that, no conversion is performed at all.LAV in Avisynth through DirectShowSource() shows the output to be RGB24, and although I can confirm that VMR-9 puts out NV12, I thought 2 colorspace conversions would take place. But that's good to hear.
Most video renderers completely fail at fullrange YV12 input...I guess that doesn't include VMR-9 then, because with VMR-9 it's still PC.709. With EVR it becomes Rec709 indeed.
If Fraps encoded YV12 is always in the same matrix, i can also hardcode that value somewhere....so I sent an email to FRAPS' author about 6 months ago. He just now finally got back to me with this:Dear Cory,
Thanks for your message and I apologize for the very long delay in getting back to you.
In YUV mode Fraps will use 709 coefficients and generate the full range 0-255 (i.e. it's not clamped between 16-235).
Regards,
Rod MaherIt seems one of FRAPS or libav or me is doing something wrong.FPS1(yuvj420p) is always PC.709. ffmpeg by default also treats it that way. I don't think there's metadata, or any file property that indicates it's using the Rec.709 luma coefficients.
nevcairiel
26th October 2012, 13:18
I guess that doesn't include VMR-9 then, because with VMR-9 it's still PC.709. With EVR it becomes Rec709 indeed.
Both renderers have no clue how to identify PC range YUV content. Microsoft specifys a way to put that information into the mediatype, however besides madVR i know of nothing that reads that information.
Because its the more common format, basically all renderers assume YV12 is limited-range.
Dogway
26th October 2012, 13:20
Don't change the subject please.
(...)there's absolutely no reason to mess with the merit settings or external filters in MPC-HC
Then please, don't create confusion by telling me to don't deal with external filter settings when the OP recommends (http://forum.doom9.org/showthread.php?p=1425963#post1425963) a tutorial where the usage of external filter settings is promoted.
I managed to reproduce the filter chain on graphedit. It works:
"AVI/WAV File Source"->"FFDShow Video Decoder"->"Video Renderer"
It creates the filter chain automatically when I drop the avs in the program, but I still can't play it in mpc-hc for some reason (whatever my external filters configuration is).
vad74
26th October 2012, 15:43
nevcairiel
Can new LAV Filters 0.52 work with QuickSync in fullscreen mode?
Reino
26th October 2012, 16:05
Haha, I never knew about these guides. Notice nevcairiel also states: Those guides are in no way "official", and I do not guarantee the accuracy of these guides, but they should get you started.
I'll say it again; there's absolutely no reason to mess with the merit settings or external filters in MPC-HC to play any audio or video file.
If I'm using it, it's only to block specific filters for testing purposes.
If it successfully creates a DirectShow graph in GraphEdit (it's better to use GraphStudioNext (https://code.google.com/p/graph-studio-next/) btw), but fails in MPC-HC, have you tried to use a regular MPC-HC version (http://xhmikosr.1f0.de/)(*) instead of the "modded austere light version" you're using, or selecting another renderer than madVR?
Note that if you change "Raw Video" to "YV12" in the Codecs-section of FFDShow's Video Decoder config and you're using another video decoder than FFDShow (MPC-HC's internal decoders, or LAV Video Decoder for instance), it will then always connect to that video decoder's output. For a MKV[H.264+AC3] file for instance, that would mean:
LAV Splitter Source --> LAV Video Decoder --> FFDShow Video Decoder --> Video Renderer
\-> LAV Audio Decoder --> Audio Renderer...which is of course completely unnecessary.
If you use FFDShow's Raw Video Decoder (by changing its merit to 00400000) instead, you won't have this problem.
Well, call me crazy, but all I see is a white screen with h5ai 0.22-dev-9 (http://larsjung.de/h5ai) at the bottom.Sounds like he updated to some broken version of that directory index script. I let him know.(*) Looks like he did it again and although I'm using the Firefox plugin NoScript, all Javascript is allowed for that site.
Kinda weird he doesn't check if his own website is functioning properly.
madshi
26th October 2012, 16:29
I'm sure this question was answered before, but I didn't found anything useful in a quick search, so:
With an NVidia card, is there any advantage to using DXVA over CUDA or the other way round? I understand that with EVR/VMR, DXVA gets along with less copying around, but other than that?
Thanks!
nevcairiel
26th October 2012, 16:41
With an NVidia card, is there any advantage to using DXVA over CUDA or the other way round? I understand that with EVR/VMR, DXVA gets along with less copying around, but other than that?
"Native" DXVA has the advantage of never leaving the GPU, which leaves you with like 0% cpu usage, but you know the limitations that includes, so there is that.
Its really only an advantage if you are very focused on battery life, or you have a very slow CPU, like the ION platforms.
Copy-Back DXVA is pretty similar to the CUDA mode, both operate on the same concept really.
CUDA Pro:
- NVIDIA driver does the bitstream parsing and sends the data to the GPU exactly in the way it expects it (may avoid problems here and there, i know of no cases where this matters)
- Support for MPEG4-ASP
- Built-in DI possibility before software post-processing
- Works without a D3D device (can be used in exclusive mode)
- Partial acceleration of VC-1 on older GPUs
CUDA Con:
- No support for WMV3
- Puts the GPU into maximum performance mode (something in the CUDA API causes this)
Think thats about all. None of these points are very strong imho, unless you want the DI.
Dogway
26th October 2012, 17:05
-Yes I'm already using GraphStudioNext, for instance yesterday I updated to v.5.0.0.1 because I had the comctl32.dll error (http://code.google.com/p/graph-studio-next/issues/detail?id=77).
-Yes, I'm already using the regular "modded austere light version (http://xhmikosr.1f0.de/mpc-hc/lite/)" of MPC-HC. :P
I appreciate your help, but please, make yourself clear.
"there's absolutely no reason to mess with the merit settings"
"by changing its merit to 00400000"
Do you want me to change merit or not?
Besides there is no "FFDShow's Raw Video Decoder", maybe you mean "FFDShow's Raw Video Filter"?
OK, now look. I changed "FFDShow's Raw Video Filter" merit to 00400000, and set RAW video to YV12 (Thanks to your shortcut trick (http://forum.doom9.org/showthread.php?p=1597577#post1597577)). I disabled "FFDShow Video Decoder" RAW Video. I enabled VMR9 renderer.
AVS doesn't play, and playing an mp4(avc+aac), ffdshow audio gets preference over LAV Audio.
Now loading avs into GraphStudioNext even doesn't work: "Can't Open File". XD
BUT if I manually build the graph, it works:
"AVI/WAV File Source"->"FFDShow RAW Video Filter"->"Video Renderer"
cyberbeing
26th October 2012, 17:21
When opening AVS files via VFW, your graph should be "AVI/WAV File Source"->"Video Renderer" only with no additional filters.
Dogway
26th October 2012, 17:31
When opening AVS files via VFW, your graph should be "AVI/WAV File Source"->"Video Renderer" only with no additional filters.
When I connect the avs to the video renderer, the RAW filter node gets automatically created and connected between the nodes.
Pat357
26th October 2012, 17:33
Nev,
I'm testing with the latest build from git (41ce391).
I use a 16 bit colordepth .PNG file (48 bits/pixel) with MPC-HC & Madvr.
Lavspliiter reports : PNG , RGB48be, 512x512
If I enable all formats in Lavvideo, I get indeed a 25fps "movie", but Madvr reports RGB32 (8bit) instead of RGB48 ??
Only if I disable RGB32/RGB24, I get a nice 25fps Y416 video.
With a 16-bit gray png :
Lavsplitter : png, gray16be
Madvr : NV12 8bit 4:2:0 (!)
Is this a Madvr issue or what do you think ?
Maybe I'm just testing something that hasn't been finished yet, if, sorry for my impatience ....
nevcairiel
26th October 2012, 17:45
Right now all high-bitdepth RGB gets internally converted to 8-bit RGB, because there is no native support for 16-bit RGB yet.
So yes, patience, find it. :p
cyberbeing
26th October 2012, 18:36
When I connect the avs to the video renderer, the RAW filter node gets automatically created and connected between the nodes.
If you add ConvertToRGB32() or ConvertToRGB24() to the end of your script, it should connect directly to "Video Renderer".
For other colorspaces, an intermediary filter like Microsoft's AVI Decompressor, Microsoft's Color Space Converter, or FFDShow RAW is needed. To enable YV12 support in AVI Decompressor, you can install DivX.
madVR on the other hand is special, and will accept direct YV12, YUY2, YV16, YV24, RGB24, and RGB32 Avisynth connections via "AVI/WAV File Source" without any intermediary conversion filters.
clsid
26th October 2012, 18:53
So if I have LAV Video, FFDshow and XviD, who chooses what to decode?
Things are very simple:
* ffdshow has a very high merit. This means that if a format is enabled in ffdshow settings, ffdshow will get used.
* LAV decoders have a merit that is a little bit higher than most other decoders. So if a format is enabled in LAV (and not in ffdshow), then LAV will be used.
* If a format is disabled in both ffdshow and LAV, then another decoder will get used if you have any others installed.
* With regard to splitters, it is possible to configure a specific splitter for each file extension using similar Registry tweaks as I have posted before for .avs. An easy way to configure this as a novice user is to use Codec Tweak Tool (http://codecguide.com/download_other.htm#codectweaktool)
A good way to test if .avs input works is to first test the most simple script:version()
"AVI/WAV File Source" may give problems with audio. This is one of the reasons why Haali added Avisynth input support to his splitter.
For YV12 conversion, the Xvid VFW codec can be used. That is better than using ffdshow RAW, because it won't have any unwanted side-effects on normal video playback.
Dogway
26th October 2012, 19:07
If you add ConvertToRGB32() or ConvertToRGB24() to the end of your script, it should connect directly to "Video Renderer".
Yes it does, interestingly enough when I add the converttorgb line dropping the avs automatically loads the Convert Color Space node, it isn't necessary, so I can manually delete it and connect directly to video renderer.
MPC never worked, I will try with the latest lite portable version, but I fear it's more a codec and merits thing than anything else.
EDIT:
if LAV decoders merit are a bit higher than other, then why FFDshow Audio still gets preference to decode AAC than LAV Audio?
On relation to avs playback, if I load the avs on MPC-HC it gets stuck on opening, then I have to close the program, and go to processes and finish the process.
I right know thought that the Haali reg I created before (by now I have Haali already uninstalled) was giving me problems on splitter requirements, so I deleted it as well. But MPC still gets stuck.
filler56789
26th October 2012, 19:13
@Dogway, your problem with .AVS files in MPC-HC sounds very weird,
unless I have misunderstood or missed something. :confused: On my setup, MPC-HC uses the following graph for Avisynth scripts:
AVI/WAV File Source -> AVI Decompressor -> Video Renderer
nevcairiel
26th October 2012, 19:20
Would you guys mind moving your AviSynth troubles to an appropriate place? :d
Dogway
26th October 2012, 19:23
If I use RGB output I can connect directly
AVI/WAV File Source -> Video Renderer
If I output yv12 I need ffdshow Raw Filter
AVI/WAV File Source -> ffdshow raw filter -> Video Renderer
AVI/WAV File Source -> AVI Decompressor -> can't connect to Video Renderer (VFW_E_CANNOT_CONNECT(0x80040217))
Reino
26th October 2012, 19:51
"AVI/WAV File Source" may give problems with audio.What kind of problems?
nevcairiel
26th October 2012, 20:09
I know you are not worried about Windows 8 yet but the public release is this week and I will confirm again and with 0.52 that there is a problem with VC-1 playback with LAV with MPC-HC and MPC-BE.
LAV crashes with both MPC-HC and MPC-BE when playing VC-1 content with LAV and AMD Radeon processors. the only way to play correctly for me has been to disable VC-1 video decoding with LAV and use internal filters with MPC-HC and MPC-BE.
Now that i actually have access to a official Win8 copy, i installed it on my Ultrabook and managed to find and fix the issue.
I'll most likely push out a small release soon to address it (and some other things)
filler56789
26th October 2012, 20:19
Would you guys mind moving your AviSynth troubles to an appropriate place? :d
I agree with you, and I'm sorry for having contributed to the off-topic stuff :o , but IMHO you really should have said that 2 pages ago. :)
@Dogway: thanks for the clarification.
Dogway
26th October 2012, 20:39
I agree with you, and I'm sorry for having contributed to the off-topic stuff :o , but IMHO you really should have said that 2 pages ago. :)
@Dogway: thanks for the clarification.
No problem, my questions were on topic and off topic on and off, so it wasn't his fault, but now that it seems clear is not a LAV Video or LAV Splitter issue I won't bother more around here.
But for example, there are still questions open without answers:
-Why isn't LAV Audio the default audio decoder?
-Has LAVSplitter ever been able to connect to ffdshow?
LoopinFool
26th October 2012, 20:40
Would you guys mind moving your AviSynth troubles to an appropriate place? :d
My apologies for starting it. It wasn't even a really big need for me -- just useful for testing.
The crash problem is important to me, though. Please let me know if you got my PM with the stack trace. I'm willing to test with any debug version of your stuff to help track it down. Since it's crashing deep in avcodec-lav-54.dll, and not every time even with my test case, I know it might be difficult to find.
Thanks,
- LoopinFool
nevcairiel
26th October 2012, 21:14
Some feedback on DVD playback, after a while subtitles are not cleared from the screen they just keep displaying over the top of each other.
I'm having this problem too. Using latest mpc-hc and madvr.
Should be fixed. Thanks for the sample, FreeFall.
madshi
26th October 2012, 21:52
"Native" DXVA has the advantage of never leaving the GPU, which leaves you with like 0% cpu usage, but you know the limitations that includes, so there is that.
Its really only an advantage if you are very focused on battery life, or you have a very slow CPU, like the ION platforms.
Copy-Back DXVA is pretty similar to the CUDA mode, both operate on the same concept really.
CUDA Pro:
- NVIDIA driver does the bitstream parsing and sends the data to the GPU exactly in the way it expects it (may avoid problems here and there, i know of no cases where this matters)
- Support for MPEG4-ASP
- Built-in DI possibility before software post-processing
- Works without a D3D device (can be used in exclusive mode)
- Partial acceleration of VC-1 on older GPUs
CUDA Con:
- No support for WMV3
- Puts the GPU into maximum performance mode (something in the CUDA API causes this)
Think thats about all. None of these points are very strong imho, unless you want the DI.
Thanks, that's quite informative.
FreeFall
27th October 2012, 02:43
Thanks, I'll try out the next release.
FreeFall
6233638
27th October 2012, 08:36
Reading back through the topic a few pages, I was wondering if you could please clarify the mixing options, especially as you say they were changed in 0.52.
This post (http://forum.doom9.org/showpost.php?p=1594342&postcount=12291) says that for correct mixing, levels need to be set as 0.7071 center, 1.0000 surround and 1.0000 LFE. When set to this I get a lot of clipping with LFE when downmixing to stereo. (matrix is normalized)
According to this post (http://forum.doom9.org/showpost.php?p=1594722&postcount=12309), it should now be 0.7071 center, 1.0000 surround and 0.7071 LFE. Again, I experience a lot of clipping on LFE.
When testing this out, I was watching Blade Runner (Blu-ray, TrueHD track) and the LFE at roughly 0:23:00 and 0:30:20 exhibit a lot of clipping if LFE is set above 0.04. My guess is there are probably tracks which clip if it is above 0.00 at all.
I also noticed that if the values are changed away from 0.71 in the GUI, and then set back to 0.71, they are not set to 7071 in the registry, just some value close to it.
I found it difficult to set a specific value in the GUI at all, as the arrow keys on my keyboard won't move the slider when it is selected, and it doesn't seem to allow for 0.01 precision with the mouse, which is why I ended up changing values in the registry instead.
nevcairiel
27th October 2012, 09:09
With matrix normalization, you will never get clipping, unless the original track already clips. All coefficients are scaled so that when every channel is at 100%, the final result is 100%.
You must be hearing something else. On 0.04, the LFE will be so silent that you don't hear it anyway.
Regarding the levels, right now they directly reflect the final mixing value, so for Center it should be 0.71 (1.0 with a 3dB volume reduction because its split into 2 channels), Surround 1.0, and do what the hell you want to LFE. There is no defined standard how LFE should be downmixed really. Because its also split into two channels, 0.71 is the "transparent" value.
I default surround to 0.71 instead of 1.0 because people seem to prefer a focus on the front channels.
I wanted to redefine the values so that 1.0 is the "transparent" value for all three scales, and the 3dB reduction is applied automatically if required. Got mixed feedback on that idea =p
In the end, just set it to what ever sounds good to you.
PS:
If you're so OCD over 0.7071 vs 0.71, the GUI is not for you =p
Its a freely draggable slider, why would you expect it to be set to exactly 0.7071 when you just drag it roughly to 0.71? :P
Even if it would accept keyboard, it would only move in 0.01 increments.
6233638
27th October 2012, 09:35
With matrix normalization, you will never get clipping, unless the original track already clips. You must be hearing something else. On 0.04, the LFE will be so silent that you don't hear it anyway.It's a "crackling" sound as soon as I go above 0.04 LFE when downmixing to stereo. I did expect that value to be negligible, but once it hits 0.05 I get this crackling again, which I assumed to be clipping. The levels displayed in the LAV Audio status tab are very low though, so it did seem strange.
I've tested other headphones/speakers so it does seem to be the downmix, and not the playback device distorting. I don't know how to record the output from LAV or extract a sample from the film to upload though.
Regarding the levels, right now they directly reflect the final mixing value, so for Center it should be 0.71 (1.0 with a 3dB volume reduction because its split into 2 channels), Surround 1.0, and do what the hell you want to LFE. There is no defined standard how LFE should be downmixed really.I seem to recall reading a paper that said LFE should either be discarded, or set to 0.80 if you wanted to include it in the downmix but I can't find the source of that now, and this is certainly out of my area of expertise, so there is a good chance I am mistaken.
If you're so OCD over 0.7071 vs 0.71, the GUI is not for you =p
Its a freely draggable slider, why would you expect it to be set to exactly 0.7071 when you just drag it roughly to 0.71? :P
Even if it would accept keyboard, it would only move in 0.01 increments.I just assumed it would "snap" to 0.7071 as that seems to be the "correct" value, just as I would have thought 1.00 would snap to 1.0000
Changing the value in the registry is not a problem for me though, and I'd rather do that to be sure it is correct. Just seemed like a nice usability tweak.
nevcairiel
27th October 2012, 10:23
Can you add mediatypes and format config options for the following audio formats? Then they can also work with other splitters.
Done. I folded some of the MS specific PCM derivates into one option though to limit the format option bloat.
e-t172
27th October 2012, 10:34
I seem to recall reading a paper that said LFE should either be discarded, or set to 0.80 if you wanted to include it in the downmix but I can't find the source of that now, and this is certainly out of my area of expertise, so there is a good chance I am mistaken.
Well, I had a heated discussion (http://forum.doom9.org/showthread.php?p=1584854#post1584854) with nevcairiel about that 3 months ago. Technically, the specifications from ITU and Dolby indicate that LFE should be played back 10 dB louder than any other channel. So if you downmix LFE into both L and R channels, that would be +10dB - 3dB = +7dB = 2.24 (assuming L and R are 1.00).
To be fair, nevcairiel rightfully pointed out that the specifications also say that the LFE channel can be removed or played back at a lower level when downmixing if it is deemed appropriate (for example to avoid clipping or overloading speakers). My point is, if you want an official number, then that would be it. The exact words from the Dolby spec (http://www.atsc.org/cms/standards/a_52-2010.pdf) are (emphasis mine):
Downmixing of the lfe channel is optional. An ideal downmix would have the lfe channel reproduce at an acoustic level of +10 dB with respect to the left and right channels. Since the inclusion of this channel is optional, any downmix coefficient may be used in practice.
6233638
27th October 2012, 11:33
Well, I had a heated discussion (http://forum.doom9.org/showthread.php?p=1584854#post1584854) with nevcairiel about that 3 months ago. Technically, the specifications from ITU and Dolby indicate that LFE should be played back 10 dB louder than any other channel. So if you downmix LFE into both L and R channels, that would be +10dB - 3dB = +7dB = 2.24 (assuming L and R are 1.00).I assumed the 10dB boost was part of the decoding step - all competent receivers boost LFE by 10dB automatically when sent anything other than PCM these days for example.
Is LAV not doing that when decoding audio?
So if I am using:0.7071 for center
1.0000 for surround
2.2400 is correct for LFE with the 10dB boost?
I am starting to think that the crackling I am hearing with Blade Runner must be encoded on the disc itself, can anyone else confirm this? It's the US Final Cut disc that I have, though they're probably all the same.
I've just tried a number of bass-heavy Blu-rays at volumes louder than I would normally listen to, and I'm not hearing it with anything else, even when using 2.24 for LFE.
nevcairiel
27th October 2012, 11:36
Note that such a high LFE mixing value will severly reduce the volume of all other audio, and if you use anything but Float, also reduce the dynamic range significantly.
6233638
27th October 2012, 11:42
Note that such a high LFE mixing value will severly reduce the volume of all other audio, and if you use anything but Float, also reduce the dynamic range significantly.The volume is not an issue, but I thought LAV Audio automatically switched to Float when mixing anyway?
nevcairiel
27th October 2012, 11:43
It does, but you may be forcing something else. Also, unless you use a soundcard in your PC as DAC, it'll most likely be converted to integer at some point.
6233638
27th October 2012, 12:01
It does, but you may be forcing something else. Also, unless you use a soundcard in your PC as DAC, it'll most likely be converted to integer at some point.That's true. I don't suppose you have any idea what kind of dynamic range you would be constraining yourself to when doing this? (assume it's being output as 24-bit int, as that seems common)
noee
27th October 2012, 12:10
I am hearing with Blade Runner must be encoded on the disc itself, can anyone else confirm this?
I have that disc, just tried if from the disc and my rip, I don't hear LFE "crackle" at those times.
Dogway
27th October 2012, 13:08
I agree with you, and I'm sorry for having contributed to the off-topic stuff :o , but IMHO you really should have said that 2 pages ago. :)
@Dogway: thanks for the clarification.
No problem, my questions were on topic and off topic on and off, so it wasn't his fault, but now that it seems clear is not a LAV Video or LAV Splitter issue I won't bother more around here.
But for example, there are still questions open without answers:
-Why isn't LAV Audio the default audio decoder?
-Has LAVSplitter ever been able to connect to ffdshow?
My questions still stand true because:
First of all, you should stop messing with external filter settings. (...) My list is totally empty and everything works exactly the way I want.
there's absolutely no reason to mess with the merit settings or external filters in MPC-HC.
there's absolutely no reason to mess with the merit settings or external filters in MPC-HC,
I'll say it again; there's absolutely no reason to mess with the merit settings or external filters in MPC-HC to play any audio or video file.
If I'm using it, it's only to block specific filters for testing purposes.
But LAV Filters don't work as wished without doing one thing or the other because you are totally ignoring ffdshow in the equation, just like clsid:
Things are very simple:
* ffdshow has a very high merit. This means that if a format is enabled in ffdshow settings, ffdshow will get used.
* LAV decoders have a merit that is a little bit higher than most other decoders. So if a format is enabled in LAV (and not in ffdshow), then LAV will be used.
And probably you missed the most likely configuration, ffdshow and lavfilters both installed (because well, you know that I had to use RAW Video in order to decode AVS anyways).
By your logic and reading between lines, LAV Decoders have a merit higher than MOST decoders, but not all because "This means that if a format is enabled in ffdshow settings, ffdshow will get used". So LAV Filters actually is incompatible with ffdshow, you gotta either, disable all the decoders in ffdshow, lower ffdshow merit, raise LAVFilters merit, or block in MPC-HC which is the way I chose. So if nevcairiel recommends a tutorial where the third option is promoted, what way do you think I am going to take? Unless you give a founded reason there is no incovenient to use any of the 4 options.
e-t172
27th October 2012, 15:40
I assumed the 10dB boost was part of the decoding step - all competent receivers boost LFE by 10dB automatically when sent anything other than PCM these days for example.
Is LAV not doing that when decoding audio?
No it doesn't, and for good reason. The 10dB boost is done at the amplification stage (if not downmixing). If it was done earlier in the chain it would be implemented as a -10dB attenuation in all other channels, which reduces dynamic range, thus defeating the purpose of the +10dB boost in the first place.
That means LFE level matching is done at the last possible stage. When using a surround sound system this is normally done by the power amplifier. When downmixing this is done when the LFE channel is removed (mixed).
What nevcairiel is afraid of is that the 7dB LFE boost translates to a -7dB attenuation for other channels when downmixing with a normalized matrix. This means you're losing 7dB of dynamic range, you're raising your signal source noise floor by 7dB, and you might run into maximum gain issues. Whether or not this is an issue depends heavily on the hardware you're using.
You can also try without normalizing, in which case you get the correct LFE level and no dynamic range reduction, but you risk clipping. That said, I think that standard stereo downmix of 5.1 content is not allowed to clip per Dolby specifications.
Deim0s
27th October 2012, 16:07
6233638
Still, check to the filter chain, after LAV Audio, were no other audio filters, which can not handle 32 float.
Examples:
Mixing AC3 5.1 in stereo (not normalized matrix):
LAVSplitter -> LAVAudio - Dump
no clipping (http://i.imgur.com/g7ITi.png)
LAVSplitter -> LAVAudio -> ffdshow Audio Processor (enabled: Volume -> Master volume: 99%) - Dump
clipping (http://i.imgur.com/qRTar.png)
clsid
27th October 2012, 16:21
Microsoft's AC-3 has a special laptop mode that applies a 11dB gain. I don't know if that applies to just Center or all channels.
http://support.microsoft.com/kb/944436
I would be interesting to see a comparison of stereo output of MS/LAV/ffdshow.
Currently the Center level allows a maximum gain of 3dB compared to normal value. Would it make sense to allow higher values like was done for LFE?
clsid
27th October 2012, 16:30
So LAV Filters actually is incompatible with ffdshow, you gotta either, disable all the decoders in ffdshow, lower ffdshow merit, raise LAVFilters merit, or block in MPC-HC which is the way I chose. So if nevcairiel recommends a tutorial where the third option is promoted, what way do you think I am going to take? Unless you give a founded reason there is no incovenient to use any of the 4 options.You can quickly disable formats in ffdshow if you do it in its installer. It has a tree structure, so 4 clicks is enough to disable everything if you click on the roots of the tree ("Decode the following formats with..." entries).
But if your prefer LAV decoders, then you don't actually need ffdshow at all. There is no point in installing it if you block it later on.
Dogway
27th October 2012, 16:49
You can quickly disable formats in ffdshow if you do it in its installer. It has a tree structure, so 4 clicks is enough to disable everything if you click on the roots of the tree ("Decode the following formats with..." entries).
But if your prefer LAV decoders, then you don't actually need ffdshow at all. There is no point in installing it if you block it later on.
I intalled from the time I needed to mix down audio, play strange video/audio codecs, post-process video with avs, or as you know preview avs files, etc. I thought it was a good fallback to have there because it's very powerful with its filter system (although a bit old and messy).
But still I don't understand why you are so against raising LAVFilters merit (or lowering other decoders'). It's much easier, unless there's any drawback you haven't told me until now.
Reino
27th October 2012, 20:54
-Why isn't LAV Audio the default audio decoder?Simply because FFDShow's Audio Decoder by default has a higher merit than the LAV Audio Decoder. Either uninstall FFDShow (do you really still need it?), disable specific formats in the "Codecs"-section, or lower FFDShow's merit settings, for LAV Filters to take over.
-Has LAVSplitter ever been able to connect to ffdshow?
...
By your logic and reading between lines, LAV Decoders have a merit higher than MOST decoders, but not all because "This means that if a format is enabled in ffdshow settings, ffdshow will get used". So LAV Filters actually is incompatible with ffdshow...You do realize FFDShow lags the splitter LAV Filters does have? For FFDShow you'd always need a splitter filter to play anything. Unless FFDShow functions as a post-processor, the LAV- and FFDShow's Video Decoder will of course never connect with eachother.
I don't know about you, but I can perfectly play videos where LAV Filters does the splitting and FFDShow the decoding of the video and audio stream.
Although there's still a few exotic formats for which LAV Splitter prefers to connect to LAV Video/Audio Decoder, LAV Splitter and FFDShow can get along just fine.
Dogway
27th October 2012, 23:19
Simply because FFDShow's Audio Decoder by default has a higher merit than the LAV Audio Decoder
That's what had to be expected, but in order to know that you need to "have messed" with (the forbidden) merit settings.
Either uninstall FFDShow (do you really still need it?), disable specific formats in the "Codecs"-section, or lower FFDShow's merit settings, for LAV Filters to take over.
What's so bad in FFDShow that you encourage me to uninstall it? I mean it's the same question I'm trying to get an answer for since 2 pages back. What's so bad in rasing or lowering merit settings? Can't I raise LAV Filter merits? (you didn't name it as an option)
but I can perfectly play videos where LAV Filters does the splitting and FFDShow the decoding
Yes sorry I had some confussion for when I couldn't split AVS with LAV but had to decode with ffdshow.
ddjmagic
27th October 2012, 23:54
Don't know if any of you guys have seen or not but the latest version of AnyDVD HD seems to have implemented a cool feature -
It adds a "disc.inf" file to the root of the Blu-ray disc that contains some basic information about the disc, this could be most useful on Blu-ray's that contain fake playlist protection (Which causes LAV to pick the wrong playlist)
The correct playlist is listed in the "disc.inf" file, it looks like this -
[disc]
type=BD-ROM
totalsectors=24382848
label=WARRIOR
region=1
playlists=789, 790
Is this something that software like LAV/XBMC etc could read from to help choose the correct main movie playlist?
Thanks for the latest update Nev!
SamuriHL
28th October 2012, 00:16
It's the player's responsibility to use that, not LAV. I've requested it for MC18.
Reino
28th October 2012, 00:19
LOL! I quit this pointless discussion. Never met anyone like you before.
ddjmagic
28th October 2012, 01:28
It's the player's responsibility to use that, not LAV. I've requested it for MC18.
I'm using MPC-HC, anyway I can get that to work with the disc.inf file?
SamuriHL
28th October 2012, 01:31
No. That's what I'm saying, the player itself needs to support it. Nev said he looked at it but he doesn't have a screen pass disc so didn't see the playlist info. So maybe now that you posted one he might consider looking at it. At least for exposing just the valid playlists that the player can then pick from. It would make the non-commercial players infinitely more useful. Especially now where the commercial ones all have Cinavia.
6233638
28th October 2012, 03:26
No it doesn't, and for good reason. The 10dB boost is done at the amplification stage (if not downmixing). If it was done earlier in the chain it would be implemented as a -10dB attenuation in all other channels, which reduces dynamic range, thus defeating the purpose of the +10dB boost in the first place.That makes sense, I simply assumed it was done at the decoding stage due to it being applied automatically in the receiver when it was sent anything other than PCM. Of course boosting it at the amplification stage avoids the reduction of dynamic range.
What nevcairiel is afraid of is that the 7dB LFE boost translates to a -7dB attenuation for other channels when downmixing with a normalized matrix. This means you're losing 7dB of dynamic range, you're raising your signal source noise floor by 7dB, and you might run into maximum gain issues. Whether or not this is an issue depends heavily on the hardware you're using.What is the reason for using 7dB and not 10dB?
You can also try without normalizing, in which case you get the correct LFE level and no dynamic range reduction, but you risk clipping. That said, I think that standard stereo downmix of 5.1 content is not allowed to clip per Dolby specifications.You say it is "not allowed to clip" do you mean that normalization should not be necessary to avoid clipping, or that you should be normalizing because clipping is not allowed? (of course I want to avoid clipping)
6233638
Still, check to the filter chain, after LAV Audio, were no other audio filters, which can not handle 32 float.
Examples:
Mixing AC3 5.1 in stereo (not normalized matrix):
LAVSplitter -> LAVAudio - Dump
no clipping (http://i.imgur.com/g7ITi.png)
LAVSplitter -> LAVAudio -> ffdshow Audio Processor (enabled: Volume -> Master volume: 99%) - Dump
clipping (http://i.imgur.com/qRTar.png)Thank you. I am currently either using:
LAV Audio (Float) → ReClock (Float) → Windows 8 Mixer (24-bit HDMI)
LAV Audio (Float) → ReClock (24-bit Int Padded to 32) → WASAPI Exclusive (HDMI)
Either scenario has this "crackling" problem when LFE is above 0.04 in the stereo mix.
How are you dumping the audio for these images? (and what software is that?)
Deim0s
28th October 2012, 05:23
6233638
LAV Audio (Float) → ReClock (Float) → Windows 8 Mixer (24-bit HDMI)
LAV Audio (Float) → ReClock (24-bit Int Padded to 32) → WASAPI Exclusive (HDMI)
I do not use ReClock, do not know how it handles 32 float.
In conjuction: LAV Audio (32 float) -> Win 7 Mixer (24 bit, 48000 Hz) -> Creative X-Fi (48000 Hz, Bit-Matched), even when playing the file with the overflow > 0dB (an example from the post above), I do not get clipping:
Image 1 (http://i.imgur.com/T7c2a.png) Image 2 (http://i.imgur.com/GVjeD.png)
If after LAV Audio (and before mixer Win) is going audio filter not capable of processing 32 float, then there will be clipping:
Image 1 (http://i.imgur.com/jsL49.png) Image 2 (http://i.imgur.com/CmP2k.png)
I have got so.
How are you dumping the audio for these images? (and what software is that?)
I use a Dump Filter (http://i.imgur.com/WzHiA.png) from GraphStudioNext (http://code.google.com/p/graph-studio-next/). Further open the raw-file in Adobe Audition (Import -> Raw Data).
bugmen0t
28th October 2012, 08:07
If you set LAV Audio to output 32bit Integer directly will it prevent overflow/clipping in such situations? Is this overflow/clipping stuff a rounding problem?
nevcairiel
28th October 2012, 08:09
Integer will always clip because you can't go over 100%. Which integer mode you use does not matter. Float on the other hand has no limitation on its value range, so you can go above 100% (which in float is 1.0), so a value of 1.1 is perfectly valid. The question just is how other components deal with this, and since DACs are typically integer, it needs to be converted at some point.
6233638
28th October 2012, 08:22
I use a Dump Filter (http://i.imgur.com/WzHiA.png) from GraphStudioNext (http://code.google.com/p/graph-studio-next/). Further open the raw-file in Adobe Audition (Import -> Raw Data).Thank you, I have now exported this to a raw file (32-bit Float, 48kHz) and also converted that to a 24-bit, 48kHz FLAC using Audacity (http://audacity.sourceforge.net/) for easier playback.
http://www.filedropper.com/thunder
There does not appear to be any clipping (this is at 2.24 LFE) but I am still hearing that crackling noise when including any significant amount of LFE in the downmix.
Can anyone confirm that they hear it in these files? I suppose there's always the possibility that it's my audio setup.
I'm also hearing it when I set the LAV mix to:
Center: 0.0000
Surround: 0.0000
LFE: 1.0000
Which makes me think that either something in my audio setup is causing that crackling with LFE, or it's part of the encoded audio.
bugmen0t
28th October 2012, 08:34
So normalization scales floats to (0.0, 1.0) to prevent clipping/overflow, right? Shouldn't this always be performed if integer output is explicitly requested, then?
EDIT: Yes, 6233638, i can definitely hear the crackling, but it seems to affect mainly the high frequencies here. No overflow/clipping. Don't think is has something to do with the LFE.
EDIT 2: Yes, LFE channel is still crackling. Peak meter still shows no overflow (or it is to fast for me to see). Crackling still seems to be mainly in the high frequencies. How can that be?
6233638
28th October 2012, 08:41
So of course immediately after that last post, it occurred to me to disable mixing in LAV and just dump a raw 5.1 file instead.
This is the LFE channel on its own: http://www.filedropper.com/lfe
Can anyone confirm the crackling in it, or is something going wrong in my audio setup?
So normalization scales floats to (0.0, 1.0) to prevent clipping/overflow, right? Shouldn't this always be performed if integer output is explicitly requested, then?I would assume that's what Normalization does.
nevcairiel
28th October 2012, 08:49
LAV does not perform normalization. Don't confuse "Matrix normalization" with actual Normalization. Matrix normalization only normalizes the matrix coefficients, so that the sum of the coefficients for one channel never exceeds 1.0. If the audio is spiking over 1.0 before mixing, it will still do that after mixing.
ddjmagic
28th October 2012, 10:08
No. That's what I'm saying, the player itself needs to support it. Nev said he looked at it but he doesn't have a screen pass disc so didn't see the playlist info. So maybe now that you posted one he might consider looking at it. At least for exposing just the valid playlists that the player can then pick from. It would make the non-commercial players infinitely more useful. Especially now where the commercial ones all have Cinavia.
Thanks for the info, it definitely would be useful IMO, after studying some of these screen pass titles it seems there is no logical way to determine the correct playlist from the fake ones, making it impossible for non commercial players to play these discs correctly.
Hopefully some players can implement it in the future.
e-t172
28th October 2012, 11:22
What is the reason for using 7dB and not 10dB?
LFE needs to be played 10dB louder than any other channel. If you just boost LFE by 10dB and mix it into L and R, you end up with +13dB because both L and R are playing LFE at the same time (two acoustic sources = +3dB). So if you want the result to be correct, you need to use +7dB in both channels, which sums up to +10dB at your ears.
You say it is "not allowed to clip" do you mean that normalization should not be necessary to avoid clipping, or that you should be normalizing because clipping is not allowed? (of course I want to avoid clipping)
I mean the former. But I'm really not sure about that part, I'd have to check the specs.
Dogway
28th October 2012, 12:09
Simply because FFDShow's Audio Decoder by default has a higher merit than the LAV Audio Decoder
That's what had to be expected, but in order to know that you need to "have messed" with (the forbidden) merit settings.
Either uninstall FFDShow (do you really still need it?), disable specific formats in the "Codecs"-section, or lower FFDShow's merit settings, for LAV Filters to take over.
What's so bad in FFDShow that you encourage me to uninstall it? I mean it's the same question I'm trying to get an answer for since 2 pages back. What's so bad in rasing or lowering merit settings? Can't I raise LAV Filter merits? (you didn't name it as an option)
but I can perfectly play videos where LAV Filters does the splitting and FFDShow the decoding
Yes sorry I had some confussion for when I couldn't split AVS with LAV but had to decode with ffdshow.
LOL! I quit this pointless discussion. Never met anyone like you before.
That's very offensive, I don't consider my questions pointless and what's that "like you", like what?, my questions are very straight forward, unlike your answers (http://forum.doom9.org/showthread.php?p=1597923#post1597923). :S I'm shocked by people intransigence.
But don't worry, I'll make a new thread (http://forum.doom9.org/showthread.php?t=166305) so nevcairiel or you don't feel annoyed by questions probably way over your head.
Pepp
29th October 2012, 00:52
How to Use
Here are some guides that include LAV Filters (but are usually not limited to them):
Advanced MPC-HC Setup Guide
Someone said this guide needs to be updated , Is this true?
mindbomb
29th October 2012, 01:07
it should be fine
blexley
29th October 2012, 08:55
Someone said this guide needs to be updated , Is this true?
If nevcairiel gave his settings for MPC to the community then their wouldn't be this problem and people could submit better bugs reports.
But he prefers to piddle everyone about with a guessing game of the settings just so he can say " well it works on my setup "
ryrynz
29th October 2012, 09:40
But he prefers to piddle everyone about
I'm save anyone else replying to this and say that you're 100% incorrect on this assumption.
"His setup" is a clean working as intended installation, where other people's systems can have other software or builds not released by him installed which may cause issues, he does not.
End of discussion.
Dodgexander
29th October 2012, 11:37
Sorry to bring this up again but I think amongst other things my post (http://forum.doom9.org/showthread.php?p=1596723#post1596723) was overlooked.
I do not get this "flickering" sound if I use different audio filters from Lav. I wonder why this only happens with lav and not others.
nevcairiel
29th October 2012, 12:07
Sorry to bring this up again but I think amongst other things my post (http://forum.doom9.org/showthread.php?p=1596723#post1596723) was overlooked.
I do not get this "flickering" sound if I use different audio filters from Lav. I wonder why this only happens with lav and not others.
If this can be clearly reproduced on some files, you need to provide a sample that allows us to reproduce the issue. A description of "flickering" sound doesn't really give me much to work with.
If you have some old recordings around from before you first noticed the problem, you should also try them to check if anything in the stream changed. If you think it only started with some version of LAV, you can also try an older version to check this, and try to determine when it started. Many of the old versions are available on google code: http://code.google.com/p/lavfilters/downloads/list
Pepp
29th October 2012, 14:00
I'm save anyone else replying to this and say that you're 100% incorrect on this assumption.
"His setup" is a clean working as intended installation, where other people's systems can have other software or builds not released by him installed which may cause issues, he does not.
End of discussion.
So you install MPC then Lav filters and you don't alter any of the settings and this is the developers recommend way?
the_weirdo
29th October 2012, 14:19
So you install MPC then Lav filters and you don't alter any of the settings and this is the developers recommend way?
Yes, unless you know what you're doing.
Pepp
29th October 2012, 14:23
Yes, unless you know what you're doing.
So the MPC guide on the first page doesn't need updating it needs removing?
As that says to change the MPC settings to use lav filters.
nevcairiel
29th October 2012, 14:24
LAV runs fine in its default settings. The only setting you might want to change is to enable hardware acceleration.
How you configure your player of choice is beyond LAVs scope, i can't offer settings for every player on this planet. There are several guides available that set up for example MPC-HC to use LAV, i linked two guides in the first post of this thread which i briefly looked over and deemed acceptable. Personally, i don't even use MPC-HC for actual movie watching, so i have no settings to share. I only use it for testing during development, and those development settings are not what i would recommend anyone to use for normal playback.
For MPC-HC, in short, just disable all internal filters, and LAV should take over. If you have a long list of other filters installed, this might not be the case, i personally just add LAV to the external filter list as preferred, but some people think thats not a good solution, but what can you do. Works for me. :p (remember, development settings, often have to switch between different decoders for comparison).
As an alternative there are several tools that can control which filter is the preferred decoder for certain formats, which you can use to control this in a global system scope - or just uninstall the filters you don't want. :)
Pepp
29th October 2012, 14:35
Thank you for explaining. :)
What do you use to watch movies instead of MPC as i would like to give it a go?
SamuriHL
29th October 2012, 14:45
A lot of us use MC18.
nevcairiel
29th October 2012, 14:54
Yes, i use JRiver MC18, but its not free, and more then a simple player.
Pepp
29th October 2012, 15:09
Thanks :)
Dodgexander
29th October 2012, 16:36
If this can be clearly reproduced on some files, you need to provide a sample that allows us to reproduce the issue. A description of "flickering" sound doesn't really give me much to work with.
If you have some old recordings around from before you first noticed the problem, you should also try them to check if anything in the stream changed. If you think it only started with some version of LAV, you can also try an older version to check this, and try to determine when it started. Many of the old versions are available on google code: http://code.google.com/p/lavfilters/downloads/list
The problem isn't repeatable. e.g it doesn't happen at a certain time in each file. If i hear it, i can run the time back and play the same part again and there won't be any flickering. The flickering is not heard on other systems I have tried using Lav so it seems its related between my hardware, these files and lav itself. Interestingly when listening through my headphones through the same sound card, although analogue rather than digital out the problem does not exist. Likewise when viewing the .wtv files with different filters/players the problem does not exist.So its only related to spdif, only happens with .wtv files or those files converted to .ts. I have tried connecting to my amp via coaxial rather than optical the the same happens.
I could upload a sample, but I am pretty sure it will repeatable. Such an annoying problem:(
cruse
29th October 2012, 17:01
Dodgexander are you using CUVID as hardware accelerator? Then the problem might be related to this issue:
code.google.com/p/lavfilters/issues/detail?id=135 (http://code.google.com/p/lavfilters/issues/detail?id=135)
Give other accelerators in LAV Video a try and see if the problem persists.
Dodgexander
29th October 2012, 18:05
I am using Copy Back but i tried no hardware acceleration also and the same problem applies.
Pat357
29th October 2012, 21:47
I am using Copy Back but i tried no hardware acceleration also and the same problem applies.
Probably the easiest way, but could as well be the only way to be sure is trying on a different OS (if multi-boot) or just on a different system.
kitame
30th October 2012, 04:19
is it possible to run LAVs in linux-wine yet? or linux natively. just curious.
nhakobian
30th October 2012, 06:44
Well, since libavcodec is part of ffmpeg / libav, then yes, the underlying library is available under linux.
As far as under wine, this doesnt make much sense. The major benefit would be for hardware acceleration, but since DXVA is a windows interface, that nix's that. Also since there is no hardware interface for DirectShow under wine (only emulated devices that link into SDL for certain devices with limitations), I'm not sure it would be useful.
Linux has its own interface for hardware video decoding. There is libvdpau for NVIDIA devices (is there one for ATI/AMD Radeons?). Does the linux CUDA library have a CUVID interface? Or does libvdpau essentially do the same thing?
While I'd love to see a set of linux decoders work as seamlessly as the LAV filters do under Windows, nothing quite like it exists. But I must say VLC does a pretty good job.
I think nevcairiel has done an amazing job with adding many features, working on fixing as many bugs as possible, and everything else he does. I personally use it everyday on an old pc I threw together as a media computer hooked up to my tv. I tried various linux programs and while they were good, there were always little annoyances on this old hardware.
I digress. Perhaps there is a special use case you have in mind for wanting this under Linux? Maybe someone can help you get it working if we know what the usage is?
Joniii
30th October 2012, 07:37
Nev, in case of Radeon GPU and EVR, do you think it's better to let LAV Video to convert to RGB32 or just use NV12 and let EVR do it?
Joniii
30th October 2012, 12:33
Here is a small comparison from Avatar BD, if anyone is interested. For comparison there is also one shot with madVR.
MPC-HC / LAV Video (NV12) + EVR
http://sdrv.ms/PEquFn
MPC-HC / LAV Video (RGB32) + EVR
http://sdrv.ms/PEqFRj
MPC-HC / LAV Video (NV12) + madVR
http://sdrv.ms/SuhwZT
There is not much difference between EVR RGB32 and madVR NV12. EVR NV12 is slightly brighter in colours. I guess RGB32 for EVR produces the correct colours.
kitame
30th October 2012, 14:08
Well, since libavcodec is part of ffmpeg / libav, then yes, the underlying library is available under linux.
As far as under wine, this doesnt make much sense. The major benefit would be for hardware acceleration, but since DXVA is a windows interface, that nix's that. Also since there is no hardware interface for DirectShow under wine (only emulated devices that link into SDL for certain devices with limitations), I'm not sure it would be useful.
Linux has its own interface for hardware video decoding. There is libvdpau for NVIDIA devices (is there one for ATI/AMD Radeons?). Does the linux CUDA library have a CUVID interface? Or does libvdpau essentially do the same thing?
While I'd love to see a set of linux decoders work as seamlessly as the LAV filters do under Windows, nothing quite like it exists. But I must say VLC does a pretty good job.
I think nevcairiel has done an amazing job with adding many features, working on fixing as many bugs as possible, and everything else he does. I personally use it everyday on an old pc I threw together as a media computer hooked up to my tv. I tried various linux programs and while they were good, there were always little annoyances on this old hardware.
I digress. Perhaps there is a special use case you have in mind for wanting this under Linux? Maybe someone can help you get it working if we know what the usage is?
not at the moment, but when the quadcore atom silvermont(hell yes it might be great stuff) i might run a linux distro with an android gui on it (ease of use rather than punching commands into a terminal).
im also interested in longene, a project of merging window's kernel into linux's. if the project goes well even windows drivers should run on linux.
well hey the reason is opting out of the hideously expensive windows os while staying legal. :)
other than that i'd either wait for a 10bit 1080p capable phone to become affordable(im guessing 2014...), or wait for a cheap haswell line.
hey, docking your portable unit unto a friend's awesome TV isn't a bad idea right?
thomaz909
30th October 2012, 16:00
hi,
i need a vga card with 512mb ram max.
is gt 240 fast enough for everything what lavfilters does ?
Chirico
30th October 2012, 16:03
other than that i'd either wait for a 10bit 1080p capable phone to become affordable(im guessing 2014...)
2014? More like never going to happen. No phone is ever going to have an ASIC capable of 10-bit H.264 decoding.
wanezhiling
30th October 2012, 16:05
hi,
i need a vga card with 512mb ram max.
is gt 240 fast enough for everything what lavfilters does ?
GT240 is shit....:o
The best choice is GTX650
nevcairiel
30th October 2012, 17:13
2014? More like never going to happen. No phone is ever going to have an ASIC capable of 10-bit H.264 decoding.
Not an ASIC, but a CPU to do it.... :p
LoopinFool
30th October 2012, 17:50
Here's a minor issue I just noticed -- using the 0.52 release.
If the source file is interlaced, but YADIF is enabled, the video decode filter still sets dwInterlaceFlags in VIDEOINFOHEADER2 during format negotiation.
I believe it should always clear the interlaced flags when YADIF is actually enabled since it will be delivering de-interlaced frames to the downstream filter.
- LoopinFool
nevcairiel
30th October 2012, 17:53
If the source file is interlaced, but YADIF is enabled, the video decode filter still sets dwInterlaceFlags in VIDEOINFOHEADER2 during format negotiation.
I believe it should always clear the interlaced flags when YADIF is actually enabled since it will be delivering de-interlaced frames to the downstream filter.
Fixed, now go test the version i send you to see if your crash is gone, so i can commit those changes if they help. :p
kitame
30th October 2012, 18:32
2014? More like never going to happen. No phone is ever going to have an ASIC capable of 10-bit H.264 decoding.
what? havent you guys been looking up android MXplayer? they could manage 720p smoothly on an S3 quadcore, choppy with 1080p.
but in a sense theres a rumor going around that intel would start stepping into phones and tablets with their 2014 atoms.
so it would be possible to see a decent x86 processor rolling around.
it makes me wonder how those underpowered arm processors could manage to decode 10bit videos, is there something in their codecs thats making it run so smoothly?
---------------------
ok i've stumbled upon an issue, while i was playing a video it suffered a major hiccup that lead to the audio having multiple reverbs(like a mountain echo).
pausing it and continuing seem to fix the issue, i cant reproduce it though, coincidence?
LoopinFool
30th October 2012, 18:47
Fixed, now go test the version i send you to see if your crash is gone, so i can commit those changes if they help. :p
Been testing...PM on its way.
- LoopinFool
hoborg
30th October 2012, 18:49
Well, Tegra3 devices can play 1080P60fps (at last Nev. sample) by using MXplayer HW+ decoder just fine.
But it is not compatible with 10bit of course. You can play it, but it is slow.
Chirico
30th October 2012, 19:04
Well, Tegra3 devices can play 1080P60fps (at last Nev. sample) by using MXplayer HW+ decoder just fine.
Well, yes, because that's using the ASIC to decode in hardware.
And, yes, nev you can use the CPU but then battery life will be terrible. And if you have to plug in the phone while playing so that the battery won't die that sort of defeats the point of the device being mobile.
kitame
30th October 2012, 19:10
Well, yes, because that's using the ASIC to decode in hardware.
And, yes, nev you can use the CPU but then battery life will be terrible. And if you have to plug in the phone while playing so that the battery won't die that sort of defeats the point of the device being mobile.
hey, docking your portable unit unto a friend's awesome TV isn't a bad idea right?
there are already reports of 10bit 720p being decoded smoothly without problems, but no hint of it happening with 1080p yet, we'll see in a few months.
roytam1
31st October 2012, 00:56
@nev:
missing revision again ;-)
fatal: reference is not a tree: f43d0060ca04ecbed8cd5a87b9feb33220192064
Unable to checkout 'f43d0060ca04ecbed8cd5a87b9feb33220192064' in submodule path 'libbluray'
Keiyakusha
31st October 2012, 02:12
I have problems with 0.52 stable. I even reinstalled windows before I figured out what is the problem...
So after installing LAV 0.52 both x86 and x64 on Win7 Sp1 fully updated and registering its splitter for avi extension - some players play .avi fine, but some able to display only 1st frame of the stream.
Player I'm talking about written in mixture or C and С# .NET but I can't share it.
Then by unchecking avi in LAV splitter I'm losing ability to play avi files at all! If only player doesn't have something to fallback internally to... graphstudio for example returns "can't render file", mentioned above player crashes with exception CLR20r3
Only complete LAV uninstall returns ability to play avi... Is that intended behavior? As I already said, windows is new, nothing media-related but LAV and madvr was ever installed.
Edit: actually 0.51.3 is no different. Maybe this is problem with installer, just tried manually registering filters (as I always did before, only x86 version) and unchecking avi in splitter settings works correctly. I'm still unable to go beyond 1st frame with mentioned player though and so far this happens only with LAV as decoder... but probably I should live with that.
nevcairiel
31st October 2012, 06:11
If you use the installer, it will setup LAV to be the source filter for avi, and because these settings are in protected areas of the registry, the LAV Splitter properties page cannot change that (can only have on source filter per extension, and if it fails, windows assumes the file just won't work). If you want to remove one format, you need to re-install it and uncheck avi in the installer.
Didn't i add a note about that on the properties page?
Only getting one frame sounds a lot like it fails at a dynamic format change.
Keiyakusha
31st October 2012, 10:08
If you want to remove one format, you need to re-install it and uncheck avi in the installer. Didn't i add a note about that on the properties page?
Nope :P I see note that primary formats should be configured through installer. To me it means "hey, you know that there is an installer, right? it is easier to do some stuff there, that's what usually installers are for" and my 1st thought is "meh, why would i need that?"
Maybe this is partially because I don't know what is primary formats... for years my primary formats are .mkv and .mov ^__^
Also this is not really intuitive to have checkboxes that in some cases can only break stuff if unchecked. If there can be only one source filter, and changes can't be rolled back by property page, maybe it is better do not allow to change them at all if installer used?
Only getting one frame sounds a lot like it fails at a dynamic format change.
This is probably the case. Not that I can accept format changes as decoded frames go directly into real 3d environment that won't be happy about that. I remember you was explaining something about this behavior, so not a problem then, I'll try to use something like ffms2/vapoursynth input anyway.
Joniii
31st October 2012, 11:50
This BD doesn't work with LAV filters. It plays fine with LAV on MPC-HC but fails to play on WMP or WMC, it also reports playtime as 1200 minutes or so. It works fine with ffdshow and WMP/WMC. Dunno if it's a LAV problem or LAV+VSfilter, it has PGS subtitles. Out of my 100+ remuxes i've ripped to my HTPC, this is the only one that doesn't work on LAV.
Dark Shadows sample (50Mb) (http://sdrv.ms/Q61lmZ)
nevcairiel
31st October 2012, 16:05
This BD doesn't work with LAV filters. It plays fine with LAV on MPC-HC but fails to play on WMP or WMC, it also reports playtime as 1200 minutes or so. It works fine with ffdshow and WMP/WMC. Dunno if it's a LAV problem or LAV+VSfilter, it has PGS subtitles. Out of my 100+ remuxes i've ripped to my HTPC, this is the only one that doesn't work on LAV.
Dark Shadows sample (50Mb) (http://sdrv.ms/Q61lmZ)
Your sample plays just fine in WMP for me. Says 19 seconds runtime, and plays perfectly, but i don't have VSFilter setup.
I'm not even sure how to setup VSFilter to get loaded in WMP, i don't really care for that player at all =p
Overall, i usually tell people that with WMP they are on their own. One would think that Microsoft would implement their own DirectShow properly, but they don't.
Edit:
Managed to make it load VSFilter, and it still plays just fine.
clsid
31st October 2012, 16:59
Any tips on how I can checkout a specific old revision of the FFmpeg submodule? For example:
http://code.google.com/p/lavfilters/source/detail?r=32584bb0aa0eb89bea9cdd13bc3cc224a3df2c18
This did not work:
git checkout 6f1788a98096036ed7b458489393f7fb33320a2c
I can of course select a specific commit in the log, but that doesn't give me the desired combo of upstream FFmpeg + your custom patches.
nevcairiel
31st October 2012, 17:04
You can only checkout old ffmpeg versions which are tagged, so for this case it means you can only get the ffmpeg versions present in the release versions of LAV, because thats when i tagged ffmpeg as well. All other revisions get removed from the repository when i move to the next.
cyberbeing
31st October 2012, 20:26
LAV Video appears to be using "MPEG-1 centered chroma placement" instead of "MPEG-2 left chroma placement" for DVD subtitles.
nevcairiel
31st October 2012, 20:32
LAV Video appears to be using "MPEG-1 centered chroma placement" instead of "MPEG-2 left chroma placement" for DVD subtitles.
If it does, then thats a bug in swscale, and nothing i care about. Blending subtitles in YUV 4:2:0 will always have a high chance of color bleeding.
cyberbeing
31st October 2012, 20:42
Use of centered chroma placement is a swscale issue when performing RGB->YCbCr conversion.
Left chroma placement does eliminate at least 90% of 4:2:0 color bleeding, when used with madVR. We saw a rather significant improvement when we fixed the chroma placement code in xy-VSFilter.
nevcairiel
31st October 2012, 20:51
I sure don't feel like fixing swscale, the code is so terribly messy. I wonder if swscale does the right thing when i convert it to yuv444 first and then downscale chroma to 420, but probably not..
SamuriHL
31st October 2012, 20:51
Hey Nev...is this me?
6>c:\dev\projects\lavfilters\ffmpeg\libavutil\x86/timer.h(33): error C2065: '__a
sm__' : undeclared identifier
6>c:\dev\projects\lavfilters\ffmpeg\libavutil\x86/timer.h(33): error C2143: synt
ax error : missing ';' before 'volatile'
6>c:\dev\projects\lavfilters\ffmpeg\libavutil\x86/timer.h(33): error C2143: synt
ax error : missing ';' before 'volatile'
6>c:\dev\projects\lavfilters\ffmpeg\libavutil/internal.h(174): error C2065: '__a
sm__' : undeclared identifier
6>c:\dev\projects\lavfilters\ffmpeg\libavutil/internal.h(174): error C2143: synt
ax error : missing ';' before 'volatile'
6>c:\dev\projects\lavfilters\ffmpeg\libavutil/internal.h(174): error C2143: synt
ax error : missing ';' before 'volatile'
6>c:\dev\projects\lavfilters\ffmpeg\libavutil/internal.h(174): error C2589: ':'
: illegal token on right side of '::'
Xaurus
31st October 2012, 21:09
nev,
I am having some issues sorting out the subtitle selection syntax. Right now I am using your example from the readme file.
I am currently trying to load english subtitles from a german bluray. When I check the m2ts with Mediainfo, there is no mentioning of language for audio (nor for the subs). Where can I see what language they are in?
I checked a few american blurays and it's the same thing there, really. :confused:
nevcairiel
31st October 2012, 21:13
The m2ts on a Blu-ray don't contain language information, its all contained in the metadata files on the Blu-rays. If you play the discs and look at the stream selector in MPC-HC, it will show the languages if it can figure them out, or well, not if it can't. :p
Xaurus
31st October 2012, 21:22
The m2ts on a Blu-ray don't contain language information, its all contained in the metadata files on the Blu-rays. If you play the discs and look at the stream selector in MPC-HC, it will show the languages if it can figure them out, or well, not if it can't. :p
Alright, that explains a lot. Do you know if any program can add a language tag to such a file, or is it simply not possible for that container format?
I thought about storing some blurays "untouched" by just copying the m2ts files to a hdd. But I see that this can cause some language trouble.
cyberbeing
31st October 2012, 21:26
I sure don't feel like fixing swscale, the code is so terribly messy. I wonder if swscale does the right thing when i convert it to yuv444 first and then downscale chroma to 420, but probably not..
If swscale yuv444->yuv420 doesn't work, would it possible to use swscale conversion to yuv444 and then make use xy-VSFilter's optimized hleft_vmid 4:2:0 chroma sub-sampling functions (http://repo.or.cz/w/xy_vsfilter.git/blob/refs/heads/pgs_n_bug_fix:/src/subpic/xy_intrinsics.h)?
nevcairiel
31st October 2012, 21:36
The optimized versions can most likely not be used because subtitles rarely are mod16, they have all sorts of odd sizes, and for these small bitmaps trying to pad them to the proper size will most likely be more effort then its worth in the end.
I can probably take the subsampling algorithm and use it, if all else fails.
Joniii
31st October 2012, 21:54
Your sample plays just fine in WMP for me. Says 19 seconds runtime, and plays perfectly, but i don't have VSFilter setup.
I'm not even sure how to setup VSFilter to get loaded in WMP, i don't really care for that player at all =p
Overall, i usually tell people that with WMP they are on their own. One would think that Microsoft would implement their own DirectShow properly, but they don't.
Edit:
Managed to make it load VSFilter, and it still plays just fine.
Weird. I have clean install of W8, just LAV filters and VSfilter, no codec packs or anything. I checked the grapgedit and all looks good.
I found out that the files I splitted only the first one doesn't play, part 2 and others work fine, dunno if there is some header problem. Also if I remux that sample with mkvtoolnix without the DTS Master Audio track, it plays fine.
I've set LAV audio to only bitsream AC3 and DTS as my receiver doesn't support DTS-HD. For some reason in Windows 8 WMP/WMC, LAV audio can't decode DTS core from that mkv. Most of my remuxes have DTS-MA and core from those work fine on LAV Audio. Dunno if there is something unusual on this audio track, i've also tried to rip the BD again with eac3to but with the same results.
edit:
I tried to extract the core with eac3to and adding that into the mkv instead of DTS-MA and it worked. Dunno why DTS-MA doesn't.
Could it be that LAV audio can't get the core from that DTS-MA track?
nevcairiel
31st October 2012, 22:15
I tried bitstreaming the core only and it works just fine, both in WMC and MPC-HC. But i only use Win7, no idea whats different in Windows 8, you're on your own there.
I suggest to use decoding anyway, especially if your receiver cannot do HD formats.
SamuriHL
31st October 2012, 22:23
I bitstream on W8 just fine.
iSunrise
31st October 2012, 23:24
Guys, can someone enlighten me, why my Conan the Barbarian NTSC DVD looks a lot sharper, crisper and stable when I manually have "Treat as progressive" enabled in LAV Video instead of just keeping everything at their defaults. I get some weird "line flickering" that kinda looks like LAV Video/CUVID has a hard time of figuring out the right deinterlacing method. What is even more strange is that I don´t see any combing artefacts with "Treat as progressive" checked, even with fast movements.
Isn´t that something LAV Video/CUVID should do automatically? Or did I find such a rare case that actually needs me to manually alter the settings?
Joniii
1st November 2012, 07:52
I tried bitstreaming the core only and it works just fine, both in WMC and MPC-HC. But i only use Win7, no idea whats different in Windows 8, you're on your own there.
I suggest to use decoding anyway, especially if your receiver cannot do HD formats.
I bitstream on W8 just fine.
Weird. It also fails with just LAV splitter and video and MS audio decoder. Haali, and LAV Video + Audio works.
SamuriHL, did you try to bitstream just the core, disabled DTS-HD from LAV audio?
cyberbeing
1st November 2012, 08:38
After the revised pixel format changes, when NV12/P010/P016 are unavailable and YV12 is supported, LAV Video seems to be negotiating YUY2 with xy-VSFilter over YV12 for 4:2:0 video.
nevcairiel
1st November 2012, 09:12
How can i reproduce that properly? What doesn't support NV12 but supports YV12?
I grouped pixel formats into groups, and the 420 8-bit group always includes NV12 and YV12, in that order.
Edit:
I managed to reproduce the problem using ffdshow raw after VSFilter, however i see nothing that i can influence.
LAV exposes a long list of subtypes, starting with NV12 and YV12, then P010/P016, and only rather late in the list is YUY2.
When VSFilter connects its output pin, it tries to re-connect its input pin to LAV, and VSFilter influences which type it uses for this reconnection. All i get are calls to GetMediaType (iterating over all the types LAV exposes), and then VSFilter probes with QueryAccept in this order: P010, P016, YUY2. There it stops, and performs a connection with YUY2.
Don't think anything is going wrong on my end.
Are you sure it started with 0.52? All i did really was add more formats to the mapping, so that every output format is mapped for every input format, but YUY2 was always a possible format for 420 content.
cyberbeing
1st November 2012, 11:24
0.51.3 output pin preference order for 8bit 4:2:0 video (NV12 disabled):
YV12
YUY2
UYVY
RGB32
RGB24
0.52.0 output pin preference order for 8bit 4:2:0 video (NV12 disabled):
YV12
P010
P016
P216
P210
v210
YUY2
UYVY
RGB32
RGB24
Y416
Y410
v410
YV24
AYUV
YV12 <--Duplicate YV12 listing as the least preferred format
I expect that LAV Video listing YV12 as both most preferred and least preferred format is causing this issue. Could you fix that?
Also shouldn't the proper order for 8bit 4:2:0 be something like the following normally:
NV12
YV12
P010
P016
YUY2
UYVY
P210
P216
v210
YV24
Y410
Y416
v410
RGB32
RGB24
AYUV
nevcairiel
1st November 2012, 11:27
I put the high-bitdepth formats before the 8-bit formats because upscaling chroma will result in more then 8 bits, so if whatever comes afterwards supports more then 8, why not give it to them.
Not sure that makes sense, i was thinking about changing the order a bit again. I'll see why the YV12 is duplicated.
madshi
1st November 2012, 11:33
I put the high-bitdepth formats before the 8-bit formats because upscaling chroma will result in more then 8 bits, so if whatever comes afterwards supports more then 8, why not give it to them.
Good thinking, IMHO. Not that it will make a visible difference in 99.99% of all situations, but it shouldn't harm, either (except maybe lowering performance ever so slightly).
nevcairiel
1st November 2012, 11:35
Its a rather rare case anyway. First of all it has to be something that doesn't support YV12/NV12, but DOES support 10-bit 4:2:2 ... how common is that? :p
nevcairiel
1st November 2012, 11:41
I'll see why the YV12 is duplicated.
I found the reason. It happened because i defined a pixel format which i didn't use yet, so the count was wrong, and the array had an extra 0 at the end .. and 0 happens to be YV12. :p
Should be fixed
SamuriHL
1st November 2012, 12:42
Weird. It also fails with just LAV splitter and video and MS audio decoder. Haali, and LAV Video + Audio works.
SamuriHL, did you try to bitstream just the core, disabled DTS-HD from LAV audio?
No I only bit stream the full hd audio streams.
Sent from my Xoom using Tapatalk 2
Joniii
1st November 2012, 14:39
No I only bit stream the full hd audio streams.
Sent from my Xoom using Tapatalk 2
Could you test if it works when LAV outputs only the core, disable DTS-HD from the settings?
I did a full format today and first thing I did was installed latest catalyst then lav, after that tried to play the file again but had the same problem.
I guess this is one of those mysterious things.
cyberbeing
1st November 2012, 23:16
Blending subtitles in YUV 4:2:0 will always have a high chance of color bleeding.
DVD subtitles with AYUV/YV24 4:4:4 video output in LAV Video seem to have massive chroma bleeding as well.
Is direct RGB -> AYUV/YV24 DVD subtitle conversion and alpha-blending not supported by LAV, or is this another swscale issue?
LAV Video 0.52.0 400% Crop (http://imageshack.us/a/img39/6416/lav400crop.png)
(DVDNavigator-> LAV Video AYUV [deinterlacing disabled] -> madVR [deinterlacing disabled])
xy-VSFilter 400% Crop (http://imageshack.us/a/img28/9130/xyvsflt400crop.png)
(MKV DVD Remux -> LAV Video AYUV [deinterlacing disabled] -> xy-VSFilter -> madVR [deinterlacing disabled])
I found the reason. It happened because i defined a pixel format which i didn't use yet, so the count was wrong, and the array had an extra 0 at the end .. and 0 happens to be YV12. :p
Should be fixed
Tested the fix in LAV Video (git 224c816), and the issue preventing YV12 connections to xy-VSFilter was resolved.
mark0077
2nd November 2012, 01:06
Hi nev, are you still interested in DVD samples that cause issues with LAV Video? Apart from the problems I mentioned before with the Star Wars DVD's, theres some others that cause freezes of the player when highlighting menu items. I can prepare a sample if you'd have time to take a look.
nevcairiel
2nd November 2012, 06:46
DVD subtitles with AYUV/YV24 4:4:4 video output in LAV Video seem to have massive chroma bleeding as well.
Is direct RGB -> AYUV/YV24 DVD subtitle conversion and alpha-blending not supported by LAV, or is this another swscale issue?
LAV Video 0.52.0 400% Crop (http://imageshack.us/a/img39/6416/lav400crop.png)
(DVDNavigator-> LAV Video AYUV [deinterlacing disabled] -> madVR [deinterlacing disabled])
xy-VSFilter 400% Crop (http://imageshack.us/a/img28/9130/xyvsflt400crop.png)
(MKV DVD Remux -> LAV Video AYUV [deinterlacing disabled] -> xy-VSFilter -> madVR [deinterlacing disabled])
That looks odd.
I'll check in more detail whats going on.
Edit:
Note that subtitles are blended before LAV does its color conversion, except when that conversion is RGB.
So when your video is 4:2:0, and you output AYUV, it will still blend the subtitles in 4:2:0. If you output RGB, it'll blend in RGB.
I did this because LAV supports quite a lot different output formats, but only a short list of internal pixel formats from the decoders, and supporting them is much easier then supporting every output format.
I only made a special case for RGB because there is only one RGB format, and its the same as the internal RGB format, so the code was already there.
So in short, if you want better looking subs, use LAVs RGB conversion. Especially the 4:2:0->4:4:4 upsampling is of low quality anyway, while 4:2:0->RGB is higher quality. (I know, it seems odd, but forcing 4:4:4 output is rather unusual so i did not implement that path, and only let my "fallback" swscale code handle it)
I will still look into the chroma placement issue, possibly eliminating swscale for subs completely unless i need to actually change the size of the subs.
There is also an issue with subs on odd-line positions.
Say you have a 720x576 image, and the subtitle goes from line 305 to 335. Luma can be positioned accurately, but Chroma is another matter in 4:2:0. Do i start blending chroma at chroma-line 152 or 153? Whichever i choose, it'll bleed either into the image, or into the subtitle.
I considered repositioning them to start on even lines, and be of even height, but that screws with the pixel-exactness of the menu overlays, which looks bad.
nevcairiel
2nd November 2012, 07:10
Apart from the problems I mentioned before with the Star Wars DVD's, theres some others that cause freezes of the player when highlighting menu items. I can prepare a sample if you'd have time to take a look.
I saw some odd freezes myself, but couldn't see LAV do anything at the time.
If you're using madVR, can you double check that the error also occurs with EVR?
If not, maybe you can instead provide a freeze report from madVRs freeze functionality (ideally download the LAV debug symbols from the first post before, put them next to the .ax/.dll files)
Edit:
Managed to reproduce it and get a proper callstack. I think i can fix it.
cyberbeing
2nd November 2012, 11:20
That looks odd.
There is also an issue with subs on odd-line positions.
Say you have a 720x576 image, and the subtitle goes from line 305 to 335. Luma can be positioned accurately, but Chroma is another matter in 4:2:0. Do i start blending chroma at chroma-line 152 or 153? Whichever i choose, it'll bleed either into the image, or into the subtitle.
I considered repositioning them to start on even lines, and be of even height, but that screws with the pixel-exactness of the menu overlays, which looks bad.
Paint the VOBSUB palette in 4:4:4, subpixel position the painted 4:4:4 bitmap, and finally convert the 4:4:4 bitmap to 4:2:0 for alpha blending into the video?
I believe that's how VSFilter does it, but I'm not too familiar with the VOBSUB code.
LAV Video NV12 (misaligned centered chroma) (http://imageshack.us/a/img843/3315/lav400cropnv12.png)
VSFilter YV12 (centered chroma) (http://imageshack.us/a/img716/1603/vsflt400cropyv12.png)
xy-VSFilter NV12 (left chroma) (http://imageshack.us/a/img832/7103/xyvsflt400cropnv12.png)
nevcairiel
2nd November 2012, 11:27
Patches are welcome. :)
I used a straight forward approach. Get subtitle in RGBA, if we need to, convert to an appropriate YUV with swscale, and perform blending.
You really cannot compare those VSFilter images, because there is clearly something else going on that tries to mask the vobsub aliasing by softening them, thats not a result from chroma placement. Most VobSubs don't have that level of anti-aliased edges with transparency, in fact i don't think i ever saw one.
I will most likely instead investigate ways to interface directly with the new subtitle interface, leaving the blending, positioning and conversion to madVR in RGB.
In fact, i already used this internally, although i have to update to the latest version and add all the officially required parameters.
ryrynz
2nd November 2012, 12:18
For anyone using Xhmikosr's builds, I've been having random bluescreen's and audio drop outs with his recent build 0.52-28-g2889377.
nevcairiel
2nd November 2012, 12:19
Sounds more like your system is screwed up. Software in user-mode does not cause bluescreens.
Updated a driver lately? =p
ryrynz
2nd November 2012, 12:21
It's not, I reinstalled 0.52 and haven't had an issue since, it could be his building? I did have similar issues with his ffdshow which I've dropped.
Oh and I'm using Quicksync.
nevcairiel
2nd November 2012, 12:24
Its certainly possible something is screwed up in the build, i'll post a fresh test build when i get back to my dev PC in a few hours, the laptop doesn't have all the toys.
ryrynz
2nd November 2012, 12:27
Choice, I don't expect it's anything you've changed, but a test build will make that certain.
noee
2nd November 2012, 12:28
fwiw, you're "worker thread" fix for the deadlock is working here on two discs that were previously locking (jedi and new hope) when returning from the movie to the menu, then selecting a sub-menu.
cyberbeing
2nd November 2012, 13:35
You really cannot compare those VSFilter images, because there is clearly something else going on that tries to mask the vobsub aliasing by softening them, thats not a result from chroma placement.
It's not a straight chroma placment comparison, but you can still easily compare the chroma bleeding differences.
If I were to take a guess, the softer luma/chroma either a result of VSFilter not snapping the edges of bitmaps to whole pixels, or possibly vectorizing the VOBSUB bitmap outline. I'll try to find out.
I will most likely instead investigate ways to interface directly with the new subtitle interface, leaving the blending, positioning and conversion to madVR in RGB.
That's probably the best solution.
nevcairiel
2nd November 2012, 13:42
If I were to take a guess, the softer luma/chroma either a result of VSFilter not snapping the edges of bitmaps to whole pixels, or possibly vectorizing the VOBSUB bitmap outline. I'll try to find out.
I briefly scrolled through VSFilters VobSub source, and it looks like it indeed tries to vectorize the VobSub outlines, which allows it to re-draw them using a much better resolution.
Not something i have on my plans =p
wanezhiling
2nd November 2012, 15:23
http://www.mediafire.com/?w4b63h295st76np
LAV cant decode the TAK file.
nevcairiel
2nd November 2012, 15:46
http://www.mediafire.com/?w4b63h295st76np
LAV cant decode the TAK file.
The correct expression is "ffmpeg can't decode the TAK file." :P
I suggest to report this as a feature request over at the ffmpeg trac, if you want it to be implemented eventually.
wanezhiling
2nd November 2012, 15:53
Ok I see.
nevcairiel
2nd November 2012, 18:54
Here is a new test build, with all recent improvements to DVD menu rendering.
x86: http://files.1f0.de/lavf/LAVFilters-0.52-39-gf0b33ee.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.52-39-gf0b33ee-x64.zip
Important fixes are:
- A deadlock when navigating the menu on some discs, causing the player to freeze
- Menu Overlays not updating on some discs
- Wrongly positioned subs/menu overlays on some discs
- Some subtitles staying on the screen for ever (actually fixed quite a while ago, just mentioning it again)
I may create a release version after the weekend, still have to figure out what i want to finish for the next version.
I appreciate any feedback on DVD behaviour, and if you have some broken menus on some discs, a sample of that would be great.
You can extract the menu from a DVD by packing up all the ifo/bup files, and the video_ts.vob as well as any VTS_xx_0.VOB. The VTS files ending with zero are for the menu, 1 and above are content.
cyberbeing
2nd November 2012, 22:42
There is a seeking bug with subtitles. Sometimes the old line(s) being displayed before a seek, will still be displayed until the end of their duration after a seek, overlapping any new lines from after the seek. Somewhat hard to reproduce, yet it occurs more often when using the madVR FSE mode seekbar for some reason.
Misaligned chroma on uneven subtitles lines seems to be resolved now:
LAV Video 0.52-39 NV12 (http://imageshack.us/a/img543/3637/lav400cropnv12new.png)
nevcairiel
2nd November 2012, 22:58
There is a seeking bug with subtitles. Sometime the line(s) before a seek will still be displayed until the end of their duration after a seek, overlapping any new lines from after the seek.
Somewhat hard to reproduce, yet it occurs more often when using the madVR FSE mode seekbar for some reason.
In FSE mode its easy to reproduce. madVR must be doing something odd when seeking.
When i seek using MPC-HCs seek bar, the DVD Navigator sends a proper BeginFlush/EndFlush sequence to the decoder. When i seek with madVRs FSE bar, it just starts sending frames from another point in time, it doesnt flush the decoder. This also causes image corruption for a few frames.
I can probably make the old lines disappear if a new one comes up, but it doesn't look like i can make them disappear instantly. This is rather odd behaviour, i'm inclined to blame madVR for weird seeking. :p
Misaligned chroma on uneven subtitles lines seems to be resolved now:
LAV Video 0.52-39 NV12 (http://imageshack.us/a/img543/3637/lav400cropnv12new.png)
Glad my trickery with positioning the subtitles better worked. :)
Shark007
2nd November 2012, 23:30
Here is a new test build, with all recent improvements to DVD menu rendering.
x86: http://files.1f0.de/lavf/LAVFilters-0.52-39-gf0b33ee.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.52-39-gf0b33ee-x64.zip
just to inform,
the 2 files within are still using the old naming convention of ffmpeg
avutil-lav-51.dll ---> should be avutil-lav-52.dll?
avresample-lav-0.dll ---> should be avresample-lav-1.dll?
nevcairiel
2nd November 2012, 23:32
You must be seeing things, those zips contain the correct files. Both avutil-lav-52.dll and avresample-lav-1.dll.
Shark007
2nd November 2012, 23:36
You must be seeing things, those zips contain the correct files. Both avutil-lav-52.dll and avresample-lav-1.dll.
arghh - you are correct - I was looking in an older testfile by mistake
sorry about the incorrect post
Reino
3rd November 2012, 00:26
http://www.mediafire.com/?w4b63h295st76np
LAV cant decode the TAK file.The correct expression is "ffmpeg can't decode the TAK file." :PActually it can (implemented through reverse-engineering):
ffplay version N-45279-g1a104bf Copyright (c) 2003-2012 the FFmpeg developers
built on Oct 10 2012 19:19:16 with gcc 4.7.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-pthreads --enable-runt
ime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass -
-enable-libcelt --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-l
ibfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenj
peg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheo
ra --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
bvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --ena
ble-zlib
libavutil 51. 74.100 / 51. 74.100
libavcodec 54. 65.100 / 54. 65.100
libavformat 54. 31.100 / 54. 31.100
libavdevice 54. 3.100 / 54. 3.100
libavfilter 3. 19.102 / 3. 19.102
libswscale 2. 1.101 / 2. 1.101
libswresample 0. 16.100 / 0. 16.100
libpostproc 52. 1.100 / 52. 1.100
[tak @ 0238ece0] max_analyze_duration 5000000 reached at 5000000
Input #0, tak, from 'D:\Storage\Media\Codecs & Filters\TEST files\Audio\Across t
he River_sample(2ch).tak':
Duration: 00:00:25.50, start: 0.000000, bitrate: 770 kb/s
Stream #0:0: Audio: tak, 44100 Hz, 2 channels, s16p
nevcairiel
3rd November 2012, 00:33
Actually it can (implemented through reverse-engineering):
Yes and i have recently added support in LAV however the point was that it cannot play that particular file. It uses a type of encoding not implemented in the FFmpeg (yet)
06_taro
3rd November 2012, 01:45
Just because FFmpeg is still not backward compatible with some old tak format, and that particular file was compressed by tak 1.0.0:
http://s18.postimage.org/tvzxud4y1/FFmpeg_tak1_0_0.png (http://postimage.org/)
madshi
3rd November 2012, 02:31
In FSE mode its easy to reproduce. madVR must be doing something odd when seeking.
When i seek using MPC-HCs seek bar, the DVD Navigator sends a proper BeginFlush/EndFlush sequence to the decoder. When i seek with madVRs FSE bar, it just starts sending frames from another point in time, it doesnt flush the decoder. This also causes image corruption for a few frames.
I can probably make the old lines disappear if a new one comes up, but it doesn't look like i can make them disappear instantly. This is rather odd behaviour, i'm inclined to blame madVR for weird seeking. :p
FWIW, I'm using the official IMediaSeeking interface (and no, I'm *not* using the "AM_SEEKING_NoFlush" flag). Not sure what I could do differently there?
cyberbeing
3rd November 2012, 03:49
FWIW, I'm using the official IMediaSeeking interface (and no, I'm *not* using the "AM_SEEKING_NoFlush" flag). Not sure what I could do differently there?
Possibly related from MPC-HC MainFrm.cpp?
void CMainFrame::SeekTo(REFERENCE_TIME rtPos, bool fSeekToKeyFrame)
...
else if (GetPlaybackMode() == PM_DVD && m_iDVDDomain == DVD_DOMAIN_Title) {
if (fs != State_Running) {
SendMessage(WM_COMMAND, ID_PLAY_PLAY);
}
DVD_HMSF_TIMECODE tc = RT2HMSF(rtPos);
pDVDC->PlayAtTime(&tc, DVD_CMD_FLAG_Block | DVD_CMD_FLAG_Flush, NULL);
DVD_HMSF_TIMECODE (http://msdn.microsoft.com/en-us/library/windows/desktop/dd388596)
PlayAtTime (http://msdn.microsoft.com/en-us/library/windows/desktop/dd389900)
DVD_CMD_FLAGS (http://msdn.microsoft.com/en-us/library/windows/desktop/dd388583)
nevcairiel
3rd November 2012, 06:37
Thats explains a lot, it uses a special seeking interface on the DVD Navigator. Like, WTF Microsoft, why re-implement the wheel.
Can't really blame madVR for doing something wrong, but i'm sure madshi can fix this anyway? :)
petran79
3rd November 2012, 09:38
it has been mentioned before probably but there is one issue.
it is corrected now for the most part but there are some problems
LAV Video decoder together with MadVR detects P010 encoded videos and displays them correctly.
Before that I had to disable most decoders in the LAV Video decoder, except NV12, YUY and P010. Or else P010 videos would appear as 8-bit or would not show at all
Now I have a video encoded in Y410 4:4:4 format. If I have all decoders enabled, it appears as YUY 8-bit 4:2:0
in order to appear correctly I have to disable all decoder formats except the 4:4:4 ones.
or else it appears even as P010 16-bit.
madshi
3rd November 2012, 09:41
Thanks Cyberlink, that should be quite possible for madVR to do, too.
nevcairiel
3rd November 2012, 09:42
in order to appear correctly I have to disable all decoder formats except the 4:4:4 ones.
http://images.gammatester.com/pics/ff3da85136ab2fd758cac5f6da3ec779.png
Works just fine for me. :P
starkline
3rd November 2012, 11:44
nevcairiel-- I believe that 0.52 introduced a slight regression in the stream aspect ratio detection for asf containers. The X and Y coordinates are reversed for the source aspect ratio. Reverting lav to 51.3 fixes the issue.
I do not notice any problems with mp4 containers.
I posted before my brain engaged. This error was the result of an upstream regression in ffmpeg, which I reported on ffmpeg's bug tracker. It should be fixed in future builds.
nevcairiel
3rd November 2012, 11:45
I posted before my brain engaged. This error was the result of an upstream regression in ffmpeg, which I reported on ffmpeg's bug tracker. It should be fixed in future builds.
I saw the changes from today, and they also added support for aspect ratio which was previously not detected at all, its all good now.
cyberbeing
3rd November 2012, 12:20
Is the "Availability of custom high-quality converters" chart from LAVPixFmtConverter.cpp up-to-date?
nevcairiel
3rd November 2012, 12:38
Is the "Availability of custom high-quality converters" chart from LAVPixFmtConverter.cpp up-to-date?
I cleaned it up a bit for the recent changes of offering every type, so now it is.
noee
3rd November 2012, 15:07
Latest GIT build (11165fd2c17c) is causing a crash in avcodec-lav-54.dll with VC-1 DXVA Copy Back mode. Seems any progressive VC-1 source using WMV9-DMO in LAV. I tried it with MPC-BE and MC18 b68.
AMD HD6570
nevcairiel
3rd November 2012, 15:53
Latest GIT build (11165fd2c17c) is causing a crash in avcodec-lav-54.dll with VC-1 DXVA Copy Back mode. Seems any progressive VC-1 source using WMV9-DMO in LAV. I tried it with MPC-BE and MC18 b68.
Should be fixed, was a rather silly mistake trying to fix something else.
Reino
3rd November 2012, 23:52
Yes and i have recently added support in LAV.When was that? Not in 0.52.0 at least.
ryrynz
3rd November 2012, 23:59
@Corone TAK support was added 2 days ago, you'll find it included in the test build Nev uploaded (http://forum.doom9.org/showthread.php?p=1598822#post1598822) , it'll be included in the next release sometime in the next few days.
Superb
4th November 2012, 05:59
@Nev: I'm sending you (via PM) a sample of a menu which doesn't play w/ LAV Video, yet plays well w/ Microsoft DTV-DVD Decoder...
Tested using MPC-HC 1.6.5.6148 (11dc63f), madVR 0.84.6 (tested also w/ EVR; still doesn't work), LAV Filters 0.52 (git rev. d807ef7324a6; built by XhmikosR)
nevcairiel
4th November 2012, 09:41
@Nev: I'm sending you (via PM) a sample of a menu which doesn't play w/ LAV Video, yet plays well w/ Microsoft DTV-DVD Decoder...
Tested using MPC-HC 1.6.5.6148 (11dc63f), madVR 0.84.6 (tested also w/ EVR; still doesn't work), LAV Filters 0.52 (git rev. d807ef7324a6; built by XhmikosR)
Fixed, thanks for the sample.
Pomegranate
4th November 2012, 18:57
Hi, I'm new here and I had to wait 5 days, but your audio decoder saved me a quite a bit of money (I was going to buy a brand new receiver). So I want to say thanks to you.
One thing I'm not so clear on is what decoder is being used for the lossy DTS formats?
VipZ
4th November 2012, 21:54
Thanks for the WMV and Metadata updates and hope you will find a solution one day to get Metadata on streaming.
With the latest build it seems EVO's no longer work and just crash MPC.
Here's a sample if you need, http://www.mediafire.com/download.php?y14tvaw38t8d18p
nevcairiel
4th November 2012, 22:46
With the latest build it seems EVO's no longer work and just crash MPC.
Here's a sample if you need, http://www.mediafire.com/download.php?y14tvaw38t8d18p
Fixed the crash, not sure why it happened in the first place, going to check out the base problem.
VipZ
4th November 2012, 22:58
Fixed the crash, not sure why it happened in the first place, going to check out the base problem.
Thanks, all good now.
petran79
5th November 2012, 10:38
http://images.gammatester.com/pics/ff3da85136ab2fd758cac5f6da3ec779.png
Works just fine for me. :P
In MPC it works indeed!
that happens in Potplayer only for some strange reason!
also another weird issue, small details really but since I had the chance to spot it why not mention it.
somehow this Xvid video seems to be broken when played with LAV and CUDA on. When I turned it off or use DVXA, it appears normal
This happens on the desktop in both XP and 7. I had a GTS450 and upgraded it to a GTX660 but still the same issue.
On the laptop though with Nvidia GT555M the video displays correctly with CUDA on.
Currently I have only the desktop for screen shots.
on CoreAVC and Madvr there arent any issues.
with CUDA
http://www.abload.de/image.php?img=testebebe.jpg
without CUDA
http://www.abload.de/image.php?img=test297cfu.jpg
nevcairiel
5th November 2012, 10:42
If a video decodes wrong with CUDA, all i can recommend is to try a different driver. If all else fails, you can turn off MPEG-4 CUDA decoding, there is a checkbox for that format ("MPEG-4" checkbox below the hw decoder dropdown). There have been issues in older drivers before with MPEG-4/Xvid.
PS:
CoreAVC does not support Xvid/MPEG-4 ASP decoding, so there wouldn't be any issues. :p
Superb
5th November 2012, 11:52
Or maybe he should try and send the sample to Nvidia, so they'll fix their own crap. :)
Fixed, thanks for the sample.
Best answer I could have hoped for... Thank you!
RBG
5th November 2012, 15:59
petran79
In MPC it works indeed!
that happens in Potplayer only for some strange reason!
Try to disable Potplayer VPP.
CTRL+F->Filter->Condition: Disable
http://i45.tinypic.com/13zwz0m.png
Apparently this will solve the issue.
nevcairiel
5th November 2012, 22:06
LAV Filters 0.53
LAV Splitter
- Added support for reading image files (tiff, png, jpeg, tga, bmp)
- Support for MPEG-4 ASP in MPEG-TS
- Support for reading metadata using the IAMMediaContent interface
- Fixed Aspect Ratio on some wmv/asf files
LAV Video
- Fixed a crash in the WMV9 DMO decoder on Windows 8
- DVD improvements
- Subtitles are properly cleared from the screen, and won't be shown forever on some discs
- Improved subtitle/menu positioning on some PAL discs
- Improved handling of still frame DVD menus
- Fixed a deadlock that caused the player to freeze in some DVD menus
- Improved quality of blending subtitles/menus
- QuickSync improvements
- Support using QuickSync in Fullscreen Exclusive mode (ie. in WMC)
- Improved fallback to software decoding if QuickSync is not available
- Support for DVD decoding
- Added support for Avid DV
- Properly indicate progressive video when YADIF deinterlacing is activated
LAV Audio
- Added proper DirectShow types and config options for AMR-NB, Nellymoser and various (AD)PCM variants
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.53.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.53.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.53-x64.zip)
A quick FYI at the start, as of this version all my official binaries (both installer and all dll/ax files) will be digitally signed, so the validity and integrity of the binaries can be ensured.
Of course everyone can still build their own, or use nightly builds from someone else, but only the official builds will have my signature, and thus can be easily identified as such.
Ok, back to business.
DVD improvements
After a lot of testing, and quite a few samples i got from you guys, DVD support seems to be working much better now.
If you still have a problematic menu, you can extract only the menu from a DVD by simply zip'ing up all the IFO/BUP files, the VIDEO_TS.VOB, and all VTS_xx_0.VOBs (VTS files ending with 0 are for menus, 1 and above are content).
Additionally, QuickSync can now be used for DVD playback.
Speaking of QuickSync, i also worked on making it usable in FSE players, like WMC.
Of course the usual restrictions apply, which means you cannot use any post-processor between LAV Video and EVR, otherwise QuickSync will not be able to get access to the D3D interfaces it needs.
To improve the behaviour overall, QuickSync now also has a much more graceful fallback to software decoding if it cannot obtain the required D3D resources.
I also tested this version on Windows 8, and beside the WMV9 DMO crash i fixed, everything seems to be in perfect working order.
Oh and a quick note about image files. LAV Splitter can now read some image formats (as outlined in the changelog above), and LAV Video can also decode all these formats, including 16-bit PNGs/TIFFs, however LAV Video does not yet have the ability to output untouched 16-bit RGB, so it'll be converted to 8-bit RGB for the time being. I'll add native RGB48/RGB64 support in a future version.
So with all that said, have fun!
SamuriHL
5th November 2012, 22:17
Nice. That should pretty well wrap things up for MC, as well. Awesome.
mark0077
5th November 2012, 22:20
Hi nev, thanks for the new version. I have packaged up the menu files for Star Wars Episode III, its ~700MB though :O They still seem to have the issues moving between the big menus, ie player seeming to freeze up, but it eventually gets out of it and moves on. Let me know and I can try to find somewhere that'll let me upload the menus, might take a month on my broadband connection though :D
Sebastiii
5th November 2012, 22:56
Nice Nev :)
Thanks a lot :)
mindbomb
5th November 2012, 23:27
i have question about dxva native and dvd subtitles:
do the commercial players like arcsoft tmt5 have a way to do it?
nevcairiel
5th November 2012, 23:30
There is plenty ways to do it, the usual way that MS and commercial players use is to use EVR and send the subtitles on a secondary output pin, and EVR paints it on top of the frame. This is not supported by LAV and will not be.
There are other plans to make it work in the future. We'll see.
If people prefer, i can turn native dxva off for DVD decoding, so that it automatically falls back to software, and you don't happen to suffer from missing subtitles.
The menu is otherwise still usable, you just dont see which buttons you highlight, but you can still click them. :)
hoborg
6th November 2012, 00:05
nevcairiel:
Thanks for new release!
Regarding "Added support for reading image files (tiff, png, jpeg, tga, bmp)"
I just tryed *.PNG files and all i can see is black - tested in Graphstudio, Win7 x64, EVR as a renderer and LAVF x86. Trying to open it in MPC-HC will result in Crash in "KERNELBASE.dll" (not every times).
If i try to open *.JPG, it will open and i have a picture, but it will use "Generate Still Video" + "Color Space Converter" + EVR.
Trying to open BMP will result in Graphstudio crash, but MPC-HC is working LAVF splitter+Video decoder + EVR
Did i missing something?
DragonQ
6th November 2012, 00:23
Thanks for the update Nev. It's great that you're continuing to actively develop this great set of filters and engage with the community. :)
dukey
6th November 2012, 00:43
There is plenty ways to do it, the usual way that MS and commercial players use is to use EVR and send the subtitles on a secondary output pin, and EVR paints it on top of the frame. This is not supported by LAV and will not be.
There are other plans to make it work in the future. We'll see.
If people prefer, i can turn native dxva off for DVD decoding, so that it automatically falls back to software, and you don't happen to suffer from missing subtitles.
The menu is otherwise still usable, you just dont see which buttons you highlight, but you can still click them. :)
Blu-ray discs often have multiple streams at different resolutions. You've had to write your own resizer to make them fit properly. Giving this to the renderer on a 2nd pin makes a lot more sense. For DVD no one cares since its so easily decoded anyway. I bet if madvr supported more than 1 pin you would rethink this.
mindbomb
6th November 2012, 02:42
There is plenty ways to do it, the usual way that MS and commercial players use is to use EVR and send the subtitles on a secondary output pin, and EVR paints it on top of the frame. This is not supported by LAV and will not be.
There are other plans to make it work in the future. We'll see.
If people prefer, i can turn native dxva off for DVD decoding, so that it automatically falls back to software, and you don't happen to suffer from missing subtitles.
The menu is otherwise still usable, you just dont see which buttons you highlight, but you can still click them. :)
Thanks for answering my question. I don't think it is a big deal feature to have, since lav video has plenty of alternatives to dxva native, I was just wondering how/if it was possible.
And yea, I think it would be good if dxva could be off for dvd decoding. I can't imagine anyone minding the extra cpu usage that comes with decoding sd mpeg2.
rack04
6th November 2012, 02:43
I just noticed that when I play my retail Blu-ray version of Cars 2 that spanish is loaded at the audio and english subtitles are shown using the following subtitle configuration:
"eng:eng|f;eng:off;*:eng"
http://i11.photobucket.com/albums/a199/rack04/Untitled.jpg
Any idea why this is happening?
sneaker_ger
6th November 2012, 05:38
http://forum.doom9.org/showpost.php?p=1592909&postcount=12229
nevcairiel
6th November 2012, 07:38
Blu-ray discs often have multiple streams at different resolutions. You've had to write your own resizer to make them fit properly. Giving this to the renderer on a 2nd pin makes a lot more sense. For DVD no one cares since its so easily decoded anyway. I bet if madvr supported more than 1 pin you would rethink this.
I would not.
The fact that EVR needs a special custom mixer to actually be usable for anything but DVD subtitles is a clear sign that the solution isn't as perfect as you make it out to be.
Maybe if EVR would support this behaviour properly out of the box, maybe then.
Anyhow, this is a special situation for DVD menus/subtitles, because the DVD navigator strictly requires those to be handled by the decoder, can't really avoid that. Has nothing to do with Blu-rays.
PS:
I already have a resizer.
Any idea why this is happening?
Like sneaker_ger hinted, you have not configured the audio language, and spanish is 7.1 while english is only 5.1, so it prefers that.
Joniii
6th November 2012, 08:04
This BD doesn't work with LAV filters. It plays fine with LAV on MPC-HC but fails to play on WMP or WMC, it also reports playtime as 1200 minutes or so. It works fine with ffdshow and WMP/WMC. Dunno if it's a LAV problem or LAV+VSfilter, it has PGS subtitles. Out of my 100+ remuxes i've ripped to my HTPC, this is the only one that doesn't work on LAV.
Dark Shadows sample (50Mb) (http://sdrv.ms/Q61lmZ)
I gave up on this but encountered another remux with the same problem. I checked all my remuxes and 3 out of 100+ had this problem. I checked those remuxes on eac3to and what's common in those is 16 bits DTS Master Audio. All other remuxes have 24 bits DTS Master Audio and those work fine.
Anyone have any ideas what might cause this?
H:\eac3to>eac3to E:\REMUX\DANCES_WITH_WOLVES_DIRECTORS_CUT\DANCES_WITH_WOLVES_DI
RECTORS_CUT.mkv
MKV, 1 video track, 1 audio track, 3:56:39, 24p /1.001
1: h264/AVC, 1080p24 /1.001
2: DTS Master Audio, 7.1 channels, 16 bits, 48kHz
(core: DTS, 5.1 channels, 16 bits, 1509kbps, 48kHz)
H:\eac3to>eac3to E:\REMUX\DARK_SHADOWS\DARK_SHADOWS.mkv
MKV, 1 video track, 1 audio track, 1 subtitle track, 0:00:19, 24p /1.001
1: h264/AVC, 1080p24 /1.001 (16:9)
2: DTS Master Audio, 5.1 channels, 16 bits, 48kHz
(core: DTS, 5.1 channels, 16 bits, 1509kbps, 48kHz)
3: Subtitle (PGS), Finnish
MPC-HC
LAV Splitter (mkv) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF | OK
WMP/WMC
LAV Splitter (mkv) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF | PLAYBACK FAIL
LAV Splitter (m2ts) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF |OK
LAV Splitter (mkv) -> LAV Audio (DTS MA 24bits, outputting core 24bits) -> SPDIF | OK
LAV Splitter (mkv) -> LAV Audio (DTS 16bits) -> SPDIF | OK
RealSnoopyDog
6th November 2012, 08:46
Hi nevcairiel! Thank you for new new build, works fine here (tested yesterday evening).
One question to the COM interface: how can i obtain the instance of (e.g.) LAVAudioSettings? When i call
AudioFilter.QueryInterface(IID_ILAVFSettings,LAVAudioSettings);
it returns nothing. The filter graph is just built but not running when i call this.
Edit: sorry, forget it, it works, had a simple typo: Should use IID_ILAVAudioSettings for that :rolleyes:
mindbomb
6th November 2012, 10:46
I'm experiencing a bit of lag interacting with dvd menus when playing a dvd over the network.
Local playback is fine.
anyone else have this problem?
Blight
6th November 2012, 11:05
nev:
Great release!
How are you signing the installer? Did you buy a certificate or generate one yourself?
I'm interested in the procedure, I want to sign ZP's EXEs as well and would like to understand the options.
nevcairiel
6th November 2012, 11:15
How are you signing the installer? Did you buy a certificate or generate one yourself?
I'm interested in the procedure, I want to sign ZP's EXEs as well and would like to understand the options.
I bought a certificate. You could of course use a self-signed certificate, but that doesn't get windows to trust your executable anymore then without one.
JEEB
6th November 2012, 11:20
How are you signing the installer? Did you buy a certificate or generate one yourself?
I'm interested in the procedure, I want to sign ZP's EXEs as well and would like to understand the options.
As nev said, generally it's all about buying a certificate from an issuer that is trusted by Microsoft. Seems like the SumatraPDF developer lately bought himself one as well, you can read how he handled it here (http://blog.kowalczyk.info/article/lh6f/Buying-a-certificate-for-signing-windows-applica.html).
madshi
6th November 2012, 11:23
I'm using GlobalSign. Relatively affordable and allows driver signing, too. Most other certificate providers don't support driver signing.
nevcairiel
6th November 2012, 11:24
I used K Software as well (like the SumatraPDF guy), who resell for Comodo. Was affordable, and i don't need driver signing (they offer a separate driver certificate if one wants that)
Their root certificate is present in Windows since Windows 2000 or something, so i'm fine with that.
The weirdest part was calling their call center in the US to verify my phone number. That guy on the other end had the weirdest accent.
Blight
6th November 2012, 11:28
nev:
I have some issues with the new image loading code:
1. I'm aware that DirectShow can't show full-resolution 4000x3000 images, at least not on most hardware, but you seem to be scaling it under 2000 pixels (4000x3000 image to 1440x1080) and I believe directshow can handle 2000x2000 on all hardware.
2. You're not respecting EXIF orientation flags for image rotation, here's more info:
http://sylvana.net/jpegcrop/exif_orientation.html
nevcairiel
6th November 2012, 11:30
1. I'm aware that DirectShow can't show full-resolution 4000x3000 images, at least not on most hardware, but you seem to be scaling it under 2000 pixels (4000x3000 image to 1440x1080) and I believe directshow can handle 2000x2000 on all hardware.
I do not change the size of the images at all.
2. You're not respecting EXIF orientation flags for image rotation, here's more info:
http://sylvana.net/jpegcrop/exif_orientation.html
You're holding it wrong. :)
For that matter, a decoder is a decoder, not a image rotator.
DirectShow is not the right platform to use for primary image decoding tasks, i mostly only added it to be easily able to use it to run test patterns. Its also not complete yet, like i mentioned in the release notes it lacks 16-bit RGB output, and i also want to make it repeat the frames, instead of just sending it once.
Blight
6th November 2012, 11:53
nev:
Directshow is reporting this size.
When I was working with DCoder to help create his image source filter, we encountered problems in directshow with images larger than 2000x2000, this is why I brought this up.
I'm guessing the difference here is that the DCoder filter outputs RGB RAW 32bit while LAV outputs motion jpeg.
The image is being reported at a lower resolution by directshow, not sure where in the graph the extra resolution is reduced.
As far as rotation, it's part of the JPEG specification, people take pictures on the side and their camera's sensors (usually a phone) detects when they shoot side-ways and puts an orientation flag into the jpeg header.
If you'd like I can post my (not very optimized) code that handles the rotations. It's in Delphi, but if it helps, I'll be happy to post the source.
owlsroost
6th November 2012, 16:27
If people prefer, i can turn native dxva off for DVD decoding, so that it automatically falls back to software, and you don't happen to suffer from missing subtitles.
That would be nice to have as an option :)
Tony
Pat357
6th November 2012, 17:23
PS:
I already have a resizer.
You aren't talking about "swscale", are you ? :p
spanish is 7.1 while english is only 5.1, so it prefers that.
Wouldn't the LAV-spitter menu show 7.1 DTS-HD MA also as 5.1 ?
It seems that currently DTS-HD HRA will be chosen over DTS-HD MA if both are 7.1 and in the same language...
petran79
6th November 2012, 19:16
petran79
Try to disable Potplayer VPP.
CTRL+F->Filter->Condition: Disable
http://i45.tinypic.com/13zwz0m.png
Apparently this will solve the issue.
it already is disabled or LAV decoder would not appear at all
problem lies that it detects the video correctly and LAV is launched to decode it, just the color format appears incorrectly, specifically for this 4:4:4 video. Not so in MPC
wanezhiling
7th November 2012, 02:54
it already is disabled or LAV decoder would not appear at all
problem lies that it detects the video correctly and LAV is launched to decode it, just the color format appears incorrectly, specifically for this 4:4:4 video. Not so in MPC
http://i.imgur.com/79w0W.png
No problem.
Initialize your PotPlayer, and just disable PotPlayer VPP, dont change others, should work.
kasper93
7th November 2012, 14:47
@nevcairiel:
Please add ability to register LAV as source filter for newly added images formats and maybe http :) It can be disabled by default in instaler, but if someone want then he should be able to enable it.
Right now it's impossible to use LAV for .jpg's without register changes. It will use Generate Still Video filter, at least on XP, can't test on other right now.
nevcairiel
7th November 2012, 14:52
Like i explained earlier, its not meant for mainstream usage, but only as a tool for testing.
dukey
7th November 2012, 18:08
nev:
Directshow is reporting this size.
When I was working with DCoder to help create his image source filter, we encountered problems in directshow with images larger than 2000x2000, this is why I brought this up.
I've seen similar problems. The issue is probably to do with the renderer. You are probably trying to send images larger than it's maximum supported texture size. For older hardware that would be 2048x2048.
egur
7th November 2012, 18:20
Great release!
How did you tackle the menu issues with QS in dvd playback?
nevcairiel
7th November 2012, 18:22
Great release!
How did you tackle the menu issues with QS in dvd playback?
There were no real menu issues, i just had to EndOfStream the decoder on still-frames, but i have to do that on basically all decoders.
Had to do some fixings though:
http://git.1f0.de/gitweb?p=qsdecoder.git;a=commitdiff;h=3541fe0b83a1fb707e5e7d975eda8325d49c9a72
nevcairiel
7th November 2012, 18:34
Hi nev, thanks for the new version. I have packaged up the menu files for Star Wars Episode III, its ~700MB though :O They still seem to have the issues moving between the big menus, ie player seeming to freeze up, but it eventually gets out of it and moves on. Let me know and I can try to find somewhere that'll let me upload the menus, might take a month on my broadband connection though :D
Try this version, it should solve it, or so i hope!
x86: http://files.1f0.de/lavf/LAVFilters-0.53-2-g9362184.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.53-2-g9362184-x64.zip
Pat357
7th November 2012, 19:19
@nevcairiel:
Right now it's impossible to use LAV for .jpg's without register changes. It will use Generate Still Video filter, at least on XP, can't test on other right now.
It works just fine for me without any registering : just drop the .jpg ..png, .bmp on the MPC-HC window !
egur
7th November 2012, 19:42
There were no real menu issues, i just had to EndOfStream the decoder on still-frames, but i have to do that on basically all decoders.
Had to do some fixings though:
http://git.1f0.de/gitweb?p=qsdecoder.git;a=commitdiff;h=3541fe0b83a1fb707e5e7d975eda8325d49c9a72
Committed the change along with many others (removed MT code to quickly enable future features). See R72.
mark0077
7th November 2012, 20:15
Try this version, it should solve it, or so i hope!
x86: http://files.1f0.de/lavf/LAVFilters-0.53-2-g9362184.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.53-2-g9362184-x64.zip
Yeah that makes a HUGE difference. Thanks!! Theres still some parts of the menu navigation that it stutters compared to other mpeg2 decoders. Heres details incase its an easy fix for those areas too.
In SW Episode III again, following this sequence.
Open Main Menu
Click Language Selection
Language Selection animation starts
(I think theres 3 or 4 different language selection screens, this is most noticible on the one where Obi-Wan Kenobi is on the creature running, being fought by the guy on a bike)
2 seconds later, the Subtitles / Highlightable menus begin to fade in
-> In LAV Video -> The ongoing animation stutters for maybe 0.5 seconds as the highlightable menus fade in
-> In ffdshow Video -> No noticible slowdown in animation when menus fade in
-> On hardware player -> No noticible slowdown in animation when menus fade in
Other than the slight menu glitches like above, below are the only other slight issues I have noticed when trying this particular DVD.
LAV Mpeg2 Software Decoder
- 23 minutes 18 seconds into PAL version of SW Episode III - Blockyness / Image corruption seen around obi-wans head for about 0.5 seconds
- Maybe NVidia hardware decoder does something to mask them or should software decoder do this also?
LAV Mpeg2 CUVID Decoder
- Video jumping on regular intervals, maybe twice per second, only when using avisynth in ffdshow though (reported before)
ffdshow Mpeg2 Decoder
- None of the above
AndreaMG
7th November 2012, 21:19
@mark0077
LAV Mpeg2 CUVID Decoder
- Video jumping on regular intervals, maybe twice per second, only when using avisynth in ffdshow though (reported before)
I encountered this issue as well: Lavvideo+SVP it's no no:( The problem (at least for me) is partially solved if threads in SVP are set from auto to 8, but during chapter changes the video begins to constantly jump for A LOT of seconds. Using Cyberlink video decoder everything seems fine during chapter changes
AndreaMG
7th November 2012, 21:31
EDIT: Actually got it working perfectly by changing the ffdshow avisynth buffer sizes. I have always used 0/15 and its never caused problems, Changing to 0/9 somehow works perfectly now. Any idea whats specific to LAV that makes 0/15, even 0/10 go crazy :D
In my case the problem is related to the thread number (video jumps evrey second or so) and is not solved by manually changing buffer back/ahead:angry:
petran79
7th November 2012, 21:58
Initialize your PotPlayer, and just disable PotPlayer VPP, dont change others, should work.
filters are alreadyndisabled.
that sort of problem occured in previous versions of LAV too, eg 10-bit videos would appear as 8-bit videos with all decoders selected, not only in Potplayer. I had to select only the 10-bit decoders for it to appear correctly.
I hadnt enabled any ffdshow raw filter.
this seems to have been solved for the most part. except this video.
dont know if it has also to do with Haali Media Splitter or MadVR. should I use LAV splitter?
aufkrawall
7th November 2012, 22:33
Thanks for your DVD fixings, nev.
Really much appreciated.
Hmm, I wanted to ask something once..
Can't recall it yet, will come back on it later. :D
nevcairiel
7th November 2012, 22:59
heres still some parts of the menu navigation that it stutters compared to other mpeg2 decoders. Heres details incase its an easy fix for those areas too.
Other than the slight menu glitches like above, below are the only other slight issues I have noticed when trying this particular DVD.
Try this:
http://files.1f0.de/lavf/LAVFilters-0.53-4-gc98dd17.zip
In a perfect world, it should fix the menu stutters as well as the occasional image corruption.
Note that this build will most likely not work flawlessly with QuickSync in DVD menus, i need to change some things there to make it work again. But any avcodec based decoders (Software, DXVA) or cuvid should work fine.
Regarding AviSynth, its possible that the high decode delay of the CUVID decoder is just too much for DVD playback plus AviSynth. CUVID has to buffer quite a few frames to be efficient at decoding, and the DVD Navigator is known to not deliver too much data in advance, so if you need a bunch of frames in the decoder for buffering, and AviSynth needs more frames buffered, they might just not arrive at the renderer in time for display. Can't really change how the CUVID decoder works, but since mpeg2 is so cheap, might as well stick to software.
Skibicki
7th November 2012, 23:16
Without A Paddle DVD is getting stuck on the title menu.
- go to title menu
- hit scene selection
The title screen image will be frozen but when the mouse is moved a finger pointer appears when hovering over the spots where scene numbers would be.
sample - http://www.mediafire.com/download.php?7t38szk15s6oub8
mark0077
8th November 2012, 01:55
Try this:
http://files.1f0.de/lavf/LAVFilters-0.53-4-gc98dd17.zip
In a perfect world, it should fix the menu stutters as well as the occasional image corruption.
Note that this build will most likely not work flawlessly with QuickSync in DVD menus, i need to change some things there to make it work again. But any avcodec based decoders (Software, DXVA) or cuvid should work fine.
Regarding AviSynth, its possible that the high decode delay of the CUVID decoder is just too much for DVD playback plus AviSynth. CUVID has to buffer quite a few frames to be efficient at decoding, and the DVD Navigator is known to not deliver too much data in advance, so if you need a bunch of frames in the decoder for buffering, and AviSynth needs more frames buffered, they might just not arrive at the renderer in time for display. Can't really change how the CUVID decoder works, but since mpeg2 is so cheap, might as well stick to software.
Excellent! That build fixes the menu stutters.
AND
Software mpeg2 in LAV now doesn't show corruption at the point I mentioned. (curious, was that an ffmpeg issue?)
AND
Software mpeg2 in LAV and avisynth work perfectly together.
Thanks very much, DVD's are beginning to become pretty much perfect now. My only issues with DVD's and LAV/madVR are probably madVR related (positioning of mouse doesn't match exactly to menu items for some aspect ratios, and edges of highlights on some menu items looks sort of white / aliased)
EDIT: I think the only time I get stutters / madVR frame drops in DVD menus is when a for example, main animated menu is left running, and after the animation ends, it restarts. madVR drops a bunch of frames at this point so the restart of the animation can jerk for half a second maybe. I have madVR's (delay playback) options enabled so usually don't see any frame drops even at the start of movies, or after seeking. I'm not sure if the restart of these animation sequences is supposed to send something to retrigger things like madVR's delay playback logic? These are such small things, I'm just pointing them out as you seem on a roll of improvements today and its great to see it getting so close to perfection :D
JarrettH
8th November 2012, 05:11
Are there any pluses or minuses between using avcodec or cuvid strictly for MPEG2 decoding in LAV Video? Exact same thing quality wise?
dansrfe
8th November 2012, 07:37
Out of curiosity, what would would be required of the decoder to facilitate 3D video playback? Reconstruction of the right eye stream? Also what would the renderer need to do?
nevcairiel
8th November 2012, 08:03
Are there any pluses or minuses between using avcodec or cuvid strictly for MPEG2 decoding in LAV Video? Exact same thing quality wise?
The quality is the same on all decoders. The only difference is where the decoding is done, in the CPU or the GPU.
Personally i would question the usefulness of hardware decoding SD MPEG-2, my PC can probably decode it at the same CPU usage that you would get from using CUVID. :p
Out of curiosity, what would would be required of the decoder to facilitate 3D video playback? Reconstruction of the right eye stream? Also what would the renderer need to do?
That depends on what kind of 3D content you're referring to. Blu-rays, you need a decoder for H.264 MVC, and you need some kind of standard how to communicate those two images to the renderer.
The renderer then needs to figure out how to send the two images to the screen. HDMI 1.4 3D is the best choice, but since AMD, NVIDIA and Intel each have their own APIs to handle 3D, one would have to write special code for all of them. - Or just send it as (Half-)SBS, Checkerboard, or some other way that hurts image resolution, hoping the TV can figure it out.
Joniii
8th November 2012, 08:38
This BD doesn't work with LAV filters. It plays fine with LAV on MPC-HC but fails to play on WMP or WMC, it also reports playtime as 1200 minutes or so. It works fine with ffdshow and WMP/WMC. Dunno if it's a LAV problem or LAV+VSfilter, it has PGS subtitles. Out of my 100+ remuxes i've ripped to my HTPC, this is the only one that doesn't work on LAV.
Dark Shadows sample (50Mb) (http://sdrv.ms/Q61lmZ)
I gave up on this but encountered another remux with the same problem. I checked all my remuxes and 3 out of 100+ had this problem. I checked those remuxes on eac3to and what's common in those is 16 bits DTS Master Audio. All other remuxes have 24 bits DTS Master Audio and those work fine.
Anyone have any ideas what might cause this?
H:\eac3to>eac3to E:\REMUX\DANCES_WITH_WOLVES_DIRECTORS_CUT\DANCES_WITH_WOLVES_DI
RECTORS_CUT.mkv
MKV, 1 video track, 1 audio track, 3:56:39, 24p /1.001
1: h264/AVC, 1080p24 /1.001
2: DTS Master Audio, 7.1 channels, 16 bits, 48kHz
(core: DTS, 5.1 channels, 16 bits, 1509kbps, 48kHz)
H:\eac3to>eac3to E:\REMUX\DARK_SHADOWS\DARK_SHADOWS.mkv
MKV, 1 video track, 1 audio track, 1 subtitle track, 0:00:19, 24p /1.001
1: h264/AVC, 1080p24 /1.001 (16:9)
2: DTS Master Audio, 5.1 channels, 16 bits, 48kHz
(core: DTS, 5.1 channels, 16 bits, 1509kbps, 48kHz)
3: Subtitle (PGS), Finnish
MPC-HC
LAV Splitter (mkv) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF | OK
WMP/WMC
LAV Splitter (mkv) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF | PLAYBACK FAIL
LAV Splitter (m2ts) -> LAV Audio (DTS MA 16bits, outputting core 16bits) -> SPDIF |OK
LAV Splitter (mkv) -> LAV Audio (DTS MA 24bits, outputting core 24bits) -> SPDIF | OK
LAV Splitter (mkv) -> LAV Audio (DTS 16bits) -> SPDIF | OK
I tested with 16-bit 5.1 DTS-MA and it plays fine so the problem is only with 16-bit 7.1 DTS-MA files with 16-bit 5.1 DTS core. Also I don't know if it's the splitter that causes the video to hang, because if I add a AC3 file in that sample and set it default it still hangs if there is 16-bit 7.1 DTS-MA in container present.
Dunno maybe this happens only with systems on SPDIF and receiver that doesn't support Blu-ray audio formats, but only when using LAV + WMP/WMC. Other splitters and codecs + WMP/WMC plays these files fine.
nevcairiel
8th November 2012, 09:41
Without A Paddle DVD is getting stuck on the title menu.
- go to title menu
- hit scene selection
The title screen image will be frozen but when the mouse is moved a finger pointer appears when hovering over the spots where scene numbers would be.
sample - http://www.mediafire.com/download.php?7t38szk15s6oub8
Your sample seems to still be encrypted, please decrypt it before uploading.
Please always test that your sample works and shows the problem before uploading it, it helps to cut down on my time trying to figure things out.
Prinz
8th November 2012, 10:57
HDMI 1.4 3D is the best choice, but since AMD, NVIDIA and Intel each have their own APIs to handle 3D, one would have to write special code for all of them.
I hoped that this problem would be gone since the new DirectX 11.1 has an API for stereoscopic displays.
madshi
8th November 2012, 12:16
But DirectX 11.1 only supports win8, as far as I know? It's not reasonable to skip win7 support.
Prinz
8th November 2012, 12:33
At the moment yes. It's still not clear if and when it comes to Win7.
But I fear that Microsoft wants to force people to buy there Win8.
madshi
8th November 2012, 13:04
http://social.msdn.microsoft.com/Forums/en/parallelcppnative/thread/774a19a5-4bf4-42dd-bee7-4cf2a74bfdb6
at this point there is no plan for DirectX 11.1 to be made available on Windows 7
Prinz
8th November 2012, 13:17
Yes, but at the release of Win8 in Okt. many publications asked Microsoft for a statement, but MS refused a statement, if and when DirectX 11.1 is released for Win 7. Why would these do that, if it's not planned? So there is still hope.
nevcairiel
8th November 2012, 14:24
Here is another DVD build:
http://files.1f0.de/lavf/LAVFilters-0.53-14-g04051b3.zip
I fixed QuickSync again, and it should now work similar to Software/DXVA or CUVID.
Additionally, i also found a potential reason for the small glitch on a looping menu, so maybe it helps.
And last but not least, i tried to slightly reduce the decode latency of CUVID and DXVA2-CB when decoding DVDs, it may help with jerky playback using those modes. But i couldn't reproduce such problems.
Blight
8th November 2012, 16:05
nev:
Does ffmpeg supports decoding H.264 MVC?
If yes, why not support SBS 3D until Madshi gets around to support full-res 3D over HDMI?
I wonder if it's possible to write an abstraction layer that will support all 3 popular 3D graphic adapter hardware.
One dev that was looking into it said the nvidia solution is rather straight-forward, not sure about AMD or Intel.
nevcairiel
8th November 2012, 16:06
Does ffmpeg supports decoding H.264 MVC?
It does not.
ddjmagic
8th November 2012, 18:15
Thanks for the new release :)
mark0077
8th November 2012, 19:54
Here is another DVD build:
http://files.1f0.de/lavf/LAVFilters-0.53-14-g04051b3.zip
I fixed QuickSync again, and it should now work similar to Software/DXVA or CUVID.
Additionally, i also found a potential reason for the small glitch on a looping menu, so maybe it helps.
And last but not least, i tried to slightly reduce the decode latency of CUVID and DXVA2-CB when decoding DVDs, it may help with jerky playback using those modes. But i couldn't reproduce such problems.
Thanks Nev. Those changes sort of helped get CUVID + stop jerking when using avisynth on my system anyways, but it still jerks from time to time. Software mpeg2 mode works that little bit better still with avisynth so I'll personally stick with that.
Regarding looping menus, it seems better definitely, I still often see the madVR queues give a blip when the menu begins a loop. Sometimes this results in a frame drop of 2 - 8 frames usually. Not the end of the world. I see the git commit that helped this say "Avoid a full-blown decoder reset on Flush when playing a DVD". I'm just wondering is there anything else like this thats happening other than the decoder reset, that can cause the blip / madVR queue drop.
petran79
8th November 2012, 20:30
see for yourselves regarding the output problem
All filters enabled
http://www.abload.de/img/rgb0bk5l.jpg (http://www.abload.de/image.php?img=rgb0bk5l.jpg)
I disable RGB
http://www.abload.de/img/norgb2ukp7.jpg (http://www.abload.de/image.php?img=norgb2ukp7.jpg)
I disable 8-bit
http://www.abload.de/img/noyuvqrjd4.jpg (http://www.abload.de/image.php?img=noyuvqrjd4.jpg)
I disable 16-bit
http://www.abload.de/img/no16bitxujce.jpg (http://www.abload.de/image.php?img=no16bitxujce.jpg)
and finally, image appears correctly!
http://www.abload.de/img/correctq0kax.jpg (http://www.abload.de/image.php?img=correctq0kax.jpg)
cyberbeing
8th November 2012, 21:03
@petran79
Judging by your screenshots, you probably have both xy-VSFilter (DirectVobSub) as well as PotPlayer's Internal Subtitle Renderer enabled at the same time. You should uncheck "Show Subtitles" in Pot Player's settings to disable the ISR if you are using xy-VSFilter. xy-VSFilter doesn't support 10-bit 4:4:4, so LAV Video will output dithered RGB32 (or AYUV in the next xy-VSFilter stable release) by default on such videos.
zqever
9th November 2012, 02:54
How can I see the bitrate when I use LAV with MPC-HC?https://lh4.googleusercontent.com/-JIsuXWjT6uw/UJxhkI6QyeI/AAAAAAAAAB0/hVA3Ftr4hqQ/s243/1.png
nevcairiel
9th November 2012, 08:04
How can I see the bitrate when I use LAV with MPC-HC?https://lh4.googleusercontent.com/-JIsuXWjT6uw/UJxhkI6QyeI/AAAAAAAAAB0/hVA3Ftr4hqQ/s243/1.png
You cannot, its not supported.
nevcairiel
9th November 2012, 12:20
I'm just wondering is there anything else like this thats happening other than the decoder reset, that can cause the blip / madVR queue drop.
Well the decoder is flushed when the DVD Navigator tells us to flush. This means that a frame or two might be dropped inside the decoder which had not been delivered yet. I can't avoid this flush, because if its not done on eg. a seek, it will result in image corruption. And i don't know why the flush is triggered .. a seek, a looping menu..
I can briefly look over the events at the loop again, but not sure i can improve it much.
Skibicki
9th November 2012, 12:25
Your sample seems to still be encrypted, please decrypt it before uploading.
Please always test that your sample works and shows the problem before uploading it, it helps to cut down on my time trying to figure things out. I apologize for the file trouble. What do i need to check encryption on menu samples?
testing
MPC-HC
- open folder of menu files > paramount videos plays and stops > navigate menu is greyed out
- play again>pick 'title menu' from navigate menu>title is displayed
-click 'scene selection' > title screen image is frozen>move mouse around> cursor changes to hand in some spots>click and scenes will play
http://i.imgur.com/HLYHC.jpg
nevcairiel
9th November 2012, 12:27
If you copied those menu files to some other place, off the disc, they should stop working, because its still encrypted. At least they don't work for me.
I tried manually decryption the VOB files, it worked for the paramount trailer, but not for the smaller files, so the menu still wouldn't work properly
Skibicki
9th November 2012, 12:30
If you copied those menu files to some other place, off the disc, they should stop working, because its still encrypted. At least they don't work for me. I have a new set copied with DVDFab Decrypter, now I need to check for encryption.
edit: The menu files all work except scene selection.
Skibicki
9th November 2012, 12:58
I tried manually decryption the VOB files, it worked for the paramount trailer, but not for the smaller files, so the menu still wouldn't work properly ...also tested in VLC. Navigation worked. Remember you need to navigate to the title menu (alt+t) before the paramount trailer ends or it will just stop.
http://www.mediafire.com/download.php?xal1wd95k5va4dr
petran79
9th November 2012, 16:11
@petran79
Judging by your screenshots, you probably have both xy-VSFilter (DirectVobSub) as well as PotPlayer's Internal Subtitle Renderer enabled at the same time. You should uncheck "Show Subtitles" in Pot Player's settings to disable the ISR if you are using xy-VSFilter. xy-VSFilter doesn't support 10-bit 4:4:4, so LAV Video will output dithered RGB32 (or AYUV in the next xy-VSFilter stable release) by default on such videos.
Only the opposite seems to work, namely disabling xy-vobsub filter.
thanks! at least I know the reason now.
nevcairiel
9th November 2012, 16:26
...also tested in VLC. Navigation worked. Remember you need to navigate to the title menu (alt+t) before the paramount trailer ends or it will just stop.
http://www.mediafire.com/download.php?xal1wd95k5va4dr
Thanks for the sample, it works fine now.
Should be fixed in the next version. Was more annoying of a bug then i expected...
aufkrawall
9th November 2012, 18:19
Hmm, I wanted to ask something once..
Can't recall it yet, will come back on it later. :D
Got it now. :)
Do frames still have to be copied back with CUVID & madVR instead of DXVA2 CB?
Because with the latter one RAM consumption is significantly higher, also CPU usage is a little.
nevcairiel
9th November 2012, 18:33
Both CUVID and DXVA-CB need copying to the system memory from the GPU. CB might use a bit more memory because different handling of the processing flow.
aufkrawall
9th November 2012, 19:33
Thanks.
Guess I'll stick to CUVID now with a 670 since madVR Jinc makes it enter P0 state anway. :D
6233638
9th November 2012, 19:49
Guess I'll stick to CUVID now with a 670 since madVR Jinc makes it enter P0 state anway. :DI don't think that should be happening. I just recently switched from CUVID to DXVA2 copy-back for some additional power savings now that CPU power saving is also working well in Windows 8. (in Windows 7, my system had a tendency to only switch between minimum and maximum clockspeeds, and not always clock up when required, so I just disabled all power saving options)
Using Jinc 3 with the anti-ringing filter enabled for both Chroma and Luma upscaling, my 570 stays in P8 with DXVA2 copy-back, whether I'm upscaling 360p, 480i, 576i, 720p, or 1080i content. Even upscaling 1080i content above 1080p resolution stays in P8. (though I would normally display 1080i/p at 100%)
Edit: to be clear, it starts in P0 but drops to P8 after about 10 seconds of playback. (I guess after it fills the queues?) Happens when switching to/from fullscreen exclusive mode too.
aufkrawall
9th November 2012, 22:53
I tested with Jinc4 AR for chroma upscaling and Lanczos8 AR for luma downscaling with 1080p30 downscaled to 720p.
GPU usage is very high, around 45% (thanks to Kepler boost still not full clock).
I can't play 4k video with that config, GPU is at 99%. :D
With Jinc3 and Lanczos3 everything's fine with 1080p30, stays in a low power state.
cyberbeing
9th November 2012, 23:41
Only the opposite seems to work, namely disabling xy-vobsub filter.
thanks! at least I know the reason now.
Yes, if you wanted to have 10bit/16bit 4:2:2 or 4:4:4 output dithered to 8-bit by madVR instead of dithered by the video decoder, you would need to disable xy-VSFilter. Either way, dithering methods should be the only visual difference you'd potentially notice. The eventual plan is to support high bitdeph 4:2:2 & 4:4:4 colorspaces in xy-VSFilter, but other things have higher priority at the moment. Since you use madVR already, the new subtitle interface we've been working on will hopefully become a viable option in the near future, and allow videos of any colorspace to be used with xy-VSFilter.
nevcairiel
10th November 2012, 09:33
LAV Filters 0.53.1
LAV Video
- Fixed initial media type when YADIF is active
- Fixed an image corruption issue with DVD playback
- Improved handling of DVD menus on some discs
- Reduced decode latency with CUVID/DXVA2-CB on DVDs for smoother playback in some situations
- Added an option to toggle HW decoding for DVDs
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.53.1.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.53.1.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.53.1-x64.zip)
Another pass of DVD improvements, i consider DVD playback pretty stable now.
Only known "issue" is a very small glitch that occurs when a menu animation loops, because 1-2 frames are being dropped. The way the DVD playback chain operates, i'm not sure it can be easily fixed.
Please let me know if you still encounter any DVD issues, in the menu or otherwise.
If you still have a problematic menu, you can extract only the menu from a DVD by simply zip'ing up all the IFO/BUP files, the VIDEO_TS.VOB, and all VTS_xx_0.VOBs (VTS files ending with 0 are for menus, 1 and above are content).
Have a good weekend.
Sebastiii
10th November 2012, 10:07
Thanks :)
mark0077
10th November 2012, 12:41
Thanks Nev!
Skibicki
10th November 2012, 13:46
Thanks, this update gave a nice performance boost.
Without A Paddle DVD
Setup
MPC-HC 1.6.5.6174 – audio switcher off – internal filters off + LAV Filters 0.53.1 – mixing on
Working
EVR, avcodec
EVR, dxva2n – no menu highlighting
EVR CP, avcodec
EVR CP, dxva2n – same as EVR
Broken
dxva2cb (all renderers) - play button works but delayed, all others menus behave identical to previous bug reportWithout A Paddle DVD is getting stuck on the title menu.
- go to title menu
- hit scene selection
The title screen image will be frozen but when the mouse is moved a finger pointer appears when hovering over the spots where scene numbers would be.
VMR9 R (all decoders) - blank video/only audio during trailers
nevcairiel
10th November 2012, 14:09
I fixed DXVA2 CB, it wasn't properly flushing the image out of its display queue.
For the other points:
- dxva2n is not supposed to show menu overlays at this time
- VMR9 works fine for me (and since you seem to be on Win7, there is no reason to even try to use it)
CiNcH
11th November 2012, 10:20
LAV Video 0.53.1 falls back to 'avcodec' for H.264 it seems, avoiding the 'QuickSync' decoder, see atached image. LAV Video is used inside the DVBViewer for live streams. Splitter is the DVBViewer's own DVB Source filter.
LAV Video 0.51.3 works fine.
nevcairiel
11th November 2012, 10:50
Will be fixed in the next version.
PS:
For the record, attachments take very long to be approved here, so avoid using them.
nevcairiel
11th November 2012, 13:37
LAV Filters 0.53.2
LAV Video
- Fixed DVD menu still frames with DXVA2 Copy Back
- Fixed Live TV playback with QuickSync
Download: Installer (both x86/x64) (http://files.1f0.de/lavf/LAVFilters-0.53.2.exe) -- Zips: 32-bit (http://files.1f0.de/lavf/LAVFilters-0.53.2.zip) & 64-bit (http://files.1f0.de/lavf/LAVFilters-0.53.2-x64.zip)
Nothing big in this version, two small fixes that should make a good stable version now.
Please let me know if you still encounter any DVD issues, in the menu or otherwise.
If you still have a problematic menu, you can extract only the menu from a DVD by simply zip'ing up all the IFO/BUP files, the VIDEO_TS.VOB, and all VTS_xx_0.VOBs (VTS files ending with 0 are for menus, 1 and above are content).
Take care.
husmoaschta
11th November 2012, 15:46
Hi!
The filters are doing a great job in my system except one thing:
Using LAV-Video in (any) TV-Software sets my Deinterlacing back to BOB in CCC (HD7950).
Any hints on that?
nevcairiel
11th November 2012, 16:26
LAV does not influence any of your drivers settings.
husmoaschta
11th November 2012, 17:15
LAV does not influence any of your drivers settings.
But when I use the PDVD12-Codec, the DeInt stays at VA ...
MarkT
12th November 2012, 00:55
H.264 live video is fixed with QuickSync decoder. Impressive bugfixing skills. ;-) Pretty solid release I'd say. Thanks!
MarkT
12th November 2012, 01:29
75 #define IDC_LBL_FORMATS 1065
76 #define IDC_HWACCEL_MPEG2_DVD 1065
Duplicate ID not a problem?
Skibicki
12th November 2012, 02:39
The Bad News Bears (1976) DVD
Looks like a player problem. The DVD had copy protect errors with internal filters, LAV Filters and Windows defaults codecs. Decrypting fixed it. I may need some advice on getting a video sample.
working
LAV Filters 0.53.2
EVR CP - dxva2cb
EVR CP - avcodec
intenal filters
EVR, audio switcher on
broken
LAV Filters 0.53.2
EVR CP, dxva2n - copy-protect fail
EVR, dxva2cb - MPC - HC hangs after opening
EVR, dxva2n - copy-protect fail
EVR, avcodec - copy-protect fail
internal filters
EVR CP - copy-protect fail
EVR, audio switcher off - copy-protect fail
RealSnoopyDog
12th November 2012, 08:05
Using LAV-Video in (any) TV-Software sets my Deinterlacing back to BOB in CCC (HD7950).
This is a bug in some ATI drivers. Sometimes, the value for deinterlace mode is still correct, but the CCC shows something wrong.
nevcairiel
12th November 2012, 09:34
75 #define IDC_LBL_FORMATS 1065
76 #define IDC_HWACCEL_MPEG2_DVD 1065
Duplicate ID not a problem?
Since those two are not used on the same properties page, its not a problem, but i'll change it anyway, thanks.
ice25
12th November 2012, 11:31
Is there a way to toggle between different subtitles within a file during playback with a keybind?
husmoaschta
12th November 2012, 11:36
This is a bug in some ATI drivers. Sometimes, the value for deinterlace mode is still correct, but the CCC shows something wrong.
Do you know the registry-value, where I can check this?
THX
mastan
12th November 2012, 16:49
Is there a way to toggle between different subtitles within a file during playback with a keybind?
"S"/"Shift-S" in MPC HC.
AndreaMG
12th November 2012, 20:13
Thanks Nev for the new dvd hardware/software decoding option
CiNcH
12th November 2012, 20:16
Got a question concerning DVD's copy protection... I can see that LAV uses DeCSS. How about ARccOS? Is it still used on recent DVD's? Does LAV or DeCSS handle this properly?
nevcairiel
12th November 2012, 20:40
The DeCSS code is never used, the DVD Navigator decrypts the disc already.
Incendia
13th November 2012, 00:57
Not sure if this is the right place to ask, but is there any way to make Sony Vegas and/or Adobe Premiere use these for decoding mp4 files? I'm trying to archive some UTCodec YUV422 (ULY2) files as H264 High 4:2:2 using x264, but Vegas refuses to read the video ( Instead showing a green frame ), while Premiere Pro seems to offset color channels or something ( See : http://imgur.com/a/su1EJ ).
As expect, 10bit support is even worse, so I'm not even considering it.
roytam1
13th November 2012, 00:59
@nev:
is git.1f0.de git protocol closed?
$ git pull
fatal: unable to connect to git.1f0.de:
git.1f0.de[0: 178.63.14.197]: errno=No such file or directory
$ telnet git.1f0.de 9418
Trying 178.63.14.197...
telnet: connect to address 178.63.14.197: Connection refused
6233638
13th November 2012, 01:53
I don’t know if it is a problem specific to LAV or the disc, but the menus for Vanilla Sky are very slow and unresponsive. Most other DVD menus now react immediately when you mouse over them.
I have a few others that have a slightly delayed response, but nothing so bad as this.
How can I extract the menus to send them to you? (I am running AnyDVD if that helps)
I'm currently going through my whole DVD collection to see if there are any other titles like this.
SamuriHL
13th November 2012, 02:08
Nev tells you exactly how to extract the menus...
If you still have a problematic menu, you can extract only the menu from a DVD by simply zip'ing up all the IFO/BUP files, the VIDEO_TS.VOB, and all VTS_xx_0.VOBs (VTS files ending with 0 are for menus, 1 and above are content).
6233638
13th November 2012, 03:36
Nev tells you exactly how to extract the menus...Sorry, I do try to stay current on this topic, but must have missed that.
http://www.datafilehost.com/download-3deb86b9.html
dansrfe
13th November 2012, 06:01
Is there a way to toggle between different subtitles within a file during playback with a keybind?
If you're using MPC-HC there is a keyboard shortcuts page.
Hampton
14th November 2012, 12:37
Works well: DVBViewer + ATi 6450.
Thanks Nev.
sexus
14th November 2012, 20:49
woah what i hear , dvd support ..am i dreaming? could it be true finally!!!! , no more need for ffdshow video decoder then wohoo!!!
nevcairiel
14th November 2012, 21:05
I don’t know if it is a problem specific to LAV or the disc, but the menus for Vanilla Sky are very slow and unresponsive. Most other DVD menus now react immediately when you mouse over them.
It mostly depends on how the menu is setup. This menu for example looks like a static image, but its still encoded as a movie at 25 fps, simply showing the same image over and over.
Because of queueing in the renderer, this can result in higher reaction times, especially if you use madVR - it queues a lot more (also depends on your queue settings in madVR)
A movie with an actual still-frame menu will simply repaint this frame on demand, and because there are no other frames to queue, it shows faster.
sneaker_ger
14th November 2012, 22:36
Is there no way to tell madVR to flush the queue?
Superb
15th November 2012, 00:53
Nev, maybe LAV Video could set madVR to use half (or even less) the buffers when showing the menu? and then revert to the original values when the main title starts...
STDMETHOD_(BOOL, SettingsGetInteger)(LPCWSTR path, int* value) = 0;
STDMETHOD_(BOOL, SettingsSetInteger)(LPCWSTR path, int value) = 0;
(set the following to lower numbers)
// gpuQueueSize, GPU queue size, integer, 4..24
// backbufferCount, no of backbuffers, integer, 1..8
// preRenderFrames, no of pre-presented frames, integer, 1..16
// backbufferCountExcl, no of backbuffers, integer, 1..8
STDMETHOD_(BOOL, SettingsGetBoolean)(LPCWSTR path, BOOL* value) = 0;
STDMETHOD_(BOOL, SettingsSetBoolean)(LPCWSTR path, BOOL value) = 0;
(set the following to false)
// delayPlaybackStart2, delay playback start until render queue is full, boolean
// delaySeek, delay playback start after seeking, too, boolean
madshi
15th November 2012, 10:26
Nev, maybe LAV Video could set madVR to use half (or even less) the buffers when showing the menu? and then revert to the original values when the main title starts...
That's a bit "dangerous" because changing settings this way is a global change that is stored to disk, so if playback crashes for some reason, the "half buffers" would stay the new setting forever. That is until the next playback session, when LAV would half the queue size again, which after the next crash would become the new settings.
Right now madVR cannot detect when LAV changes the DVD menu, if the menu is a video file (and not a still frame). This problem would be solved if LAV used the new subtitle interface. Then madVR would know when the menu changed and could internally flush the queue to make the menu react quicker.
sexus
15th November 2012, 10:39
you should let nevcairiel know about this new subtitle interface
madshi
15th November 2012, 10:44
He knows about it. Actually he already mentioned that he's considering using it for the DVD menus.
nevcairiel
15th November 2012, 12:59
This problem would be solved if LAV used the new subtitle interface. Then madVR would know when the menu changed and could internally flush the queue to make the menu react quicker.
How would it actually solve it?
Doesn't the renderer poll for subtitle frames, or did i miss an API to push changes? Doesn't seem like it really allows better low-delay handling then my current way of doing things.
There is also the problem of still-frame redraws, i'm not sure how the interface really solves that.
Your OSD interface on the other hand could manage all that.
Dion
15th November 2012, 14:02
Seem to be having a problem with LAV Filter reading subtitle flags inside an MKV file. It seems to load them regardless if I set. No Subtitles, Default or Only Forced.
I am using MPC-BE so that could be to blame?
LAVFilters-0.53.2 & MPC-BE.1.0.3.1.1239.x86
nevcairiel
15th November 2012, 14:03
MPC-BE has some "features" that override LAVs stream decision.
sexus
15th November 2012, 14:05
interesting perhaps this could be fixed , am a avid mpchc be user myself
nevcairiel
15th November 2012, 14:06
Nothing that can be fixed by me. If the player chooses a stream after LAV has already done its choice, its out of my hands.
Dion
15th November 2012, 14:32
I can confirm it doesn't affect MPC-HC. So probably not an issue with LAV. Guess I will just keep using HC.
madshi
15th November 2012, 15:46
How would it actually solve it?
Doesn't the renderer poll for subtitle frames, or did i miss an API to push changes? Doesn't seem like it really allows better low-delay handling then my current way of doing things.
There is also the problem of still-frame redraws, i'm not sure how the interface really solves that.
Your OSD interface on the other hand could manage all that.
It seems I didn't really think this fully through. You're right that the new subtitle interface will not automatically solve this by itself. One way to improve the situation would be if madVR limited the decoder queue to a much smaller size as long as a DVD menu is active. However, this could eventually result in some frame drops once in a while in DVD menus. Another option would be for you to use the OSD interface, then I could rerender the frames only when the DVD menu selection changes. Another option would be for you to use the new subtitle interface, but to additionally Disconnect/Reconnect the ISubRenderConsumer every time the DVD menu selection changes. That would also force madVR to rerender all frames in the queue.
Btw, can a DVD menu selection also contain "subtitle animations"?
nevcairiel
15th November 2012, 15:55
Btw, can a DVD menu selection also contain "subtitle animations"?
I don't think DVD subs support animation at all.
Menus in particular are usually a big image with all pixels fully transparent, and only when the selection is active it defines a rect in which the colors should become visible (it defines new colors for the indexed palette values of those pixels within the specified rect).
I haven't seen any menu behave any differently. So while i guess a DVD could send a new subtitle rect for every frame to get some animation going, i don't think its valid.
6233638
15th November 2012, 17:39
It mostly depends on how the menu is setup. This menu for example looks like a static image, but its still encoded as a movie at 25 fps, simply showing the same image over and over.
Because of queueing in the renderer, this can result in higher reaction times, especially if you use madVR - it queues a lot more (also depends on your queue settings in madVR)
A movie with an actual still-frame menu will simply repaint this frame on demand, and because there are no other frames to queue, it shows faster.Thanks, that makes sense as the most unresponsive discs I tried all had animated backgrounds. Interestingly, there seemed to be two levels of responsiveness - I guess depending on whether they were using film or video-type content for the background clip.
It would be great if you and Madshi are able to figure out some kind of solution for this.
Personally, I would say that latency matters above all else when in the menus, and that dropping frames would be preferable to delays.
I suppose I could also try dropping the queues for Windowed mode, as I never navigate DVD menus in FSE. (though I do sometimes have a video snapped to one side of my desktop, so that's not an ideal solution...)
Xaurus
15th November 2012, 17:42
People still use DVDs? ;)
6233638
15th November 2012, 17:58
People still use DVDs? ;)Unfortunately, there's still a large number of films that are not available on Blu-ray (especially if you don't import discs, which I just don't have the patience for these days) and streaming services are awful.
sneaker_ger
15th November 2012, 19:09
Could you change "Don't mix stereo sources" to "Don't upmix stereo sources"?
Creating channels that were not present in the original makes sense, but when choosing mono mixing, it usually has a reason.
Moony349
15th November 2012, 21:29
Nev,
Any chance you'll work on a sub filter for madvr's new subtitle interface?
Keiyakusha
15th November 2012, 21:44
Any chance you'll work on a sub filter for madvr's new subtitle interface?
Just curious, xy-vsfilter is not enough?
6233638
15th November 2012, 23:04
Just curious, xy-vsfilter is not enough?Is there anywhere to discuss/report xy-vsfilter problems at all? I've tried the latest version, but certain subtitles are showing up as being green for me.
huhn
15th November 2012, 23:07
http://code.google.com/p/xy-vsfilter/issues/list
shadowdogg
16th November 2012, 01:38
Hi, how do I bitstream PCM? I used to use reclock but it doesn't seem to want to work for me anymore, it says my hardware isn't supported on the particular sample rate and stuff but it clearly is :S 48khz, 24bit.
I would like it to go directly to my amp rather than just windows' rubbish system though without using another program like reclock would be even better.
Duffy Moon
16th November 2012, 01:43
it says my hardware isn't supported on the particular sample rate and stuff but it clearly is :S 48khz, 24bit.
Have you tried changing the sample rate to something else?
shadowdogg
16th November 2012, 01:56
Have you tried changing the sample rate to something else?
Nope, but it did work before just not on Windows 8. I would love a solution with LAV though, is it not possible to bypass windows' system and just go straight to amp now with latest version?
Duffy Moon
16th November 2012, 02:00
Nope, but it did work before just not on Windows 8. I would love a solution with LAV though, is it not possible to bypass windows' system and just go straight to amp now with latest version?
No idea. I won't be using Windows 8 for quite some time I think. Early adopters can sort out all the bugs. :D
shadowdogg
16th November 2012, 02:09
No idea. I won't be using Windows 8 for quite some time I think. Early adopters can sort out all the bugs. :D
Well... I got a new SSD and because I really had to start again I thought I would take the plunge. Bit dissapointed to hear LAV doesn't just bitstream the PCM though :(
mindbomb
16th November 2012, 02:19
what is the channel count in what you are playing?
you might have to use lav audio's mixer.
also, use 24 bit padded to 32.
SamuriHL
16th November 2012, 02:32
PCM bitstreaming has nothing to do with LAV. It's 100% about your audio renderer and whether it supports Exclusive Mode. That's NOT a LAV issue. That's your player's issue. I use MC18 and have zero problems with this issue. Yes, on W8.
shadowdogg
16th November 2012, 03:02
PCM bitstreaming has nothing to do with LAV. It's 100% about your audio renderer and whether it supports Exclusive Mode. That's NOT a LAV issue. That's your player's issue. I use MC18 and have zero problems with this issue. Yes, on W8.
Hmm.. why is PCM bitstreaming got nothing to do with LAV? I assume you mean I still have to use reclock? Don't know if its an 'issue' but putting it to windows means I can't play about with it in music mode or movie mode on my amp since it is outputting whatever windows thinks it should be with blank channels and whilst I know it could do mixing it to 5.1 and have a similar effect, it means I can't really take advantage of my amps features if say I wanted to change back to 'pure sound' on the fly.
SamuriHL
16th November 2012, 03:11
Hmm.. why is PCM bitstreaming got nothing to do with LAV? I assume you mean I still have to use reclock? Don't know if its an 'issue' but putting it to windows means I can't play about with it in music mode or movie mode on my amp since it is outputting whatever windows thinks it should be with blank channels.
It's not a LAV issue because LAV is not an audio renderer. ReClock IS an audio renderer that allows exclusive mode. That's why it "bitstreams" PCM. Other renderers allow that, as well. J River, for example, allows exclusive mode. Exclusive mode is what bypasses the Windows Audio settings. Again, this has nothing at ALL to do with LAV. All it's doing is passing the audio to your renderer of choice.
shadowdogg
16th November 2012, 03:15
It's not a LAV issue because LAV is not an audio renderer. ReClock IS an audio renderer that allows exclusive mode. That's why it "bitstreams" PCM. Other renderers allow that, as well. J River, for example, allows exclusive mode. Exclusive mode is what bypasses the Windows Audio settings. Again, this has nothing at ALL to do with LAV. All it's doing is passing the audio to your renderer of choice.
I still don't really get the difference, like how DTS-HD can be sent to the amp? But thanks for the explaination. I guess I will have to try Reclock again
6233638
16th November 2012, 03:25
Hi, how do I bitstream PCM? I used to use reclock but it doesn't seem to want to work for me anymore, it says my hardware isn't supported on the particular sample rate and stuff but it clearly is :S 48khz, 24bit.Many devices don't like 24-bit, and require 24-bit padded to 32 instead. Depending on the device, this can actually change with the drivers used. (which may explain the change with Windows 8)
I would really advise against bitstreaming though. You make an obvious sacrifice video quality (dropped/delayed frames) for the sake of an inaudible difference in audio quality (if supported, ReClock can actually upsample audio) and LAV Audio does bit-perfect audio decoding.
SamuriHL
16th November 2012, 03:25
PCM is uncompressed audio. DTS-HD MA and TrueHD are compressed audio. They are not the same. At all. You'll have to do some searching if you want a full explanation as to the underlying issue. Just know that your audio renderer is what controls what is bitstreamed and what is not. It's NOT controlled by the splitter or decoder, which is what LAV is.
SamuriHL
16th November 2012, 03:27
LAV Audio does bit-perfect audio decoding.
The caveat to that is for bit perfect DTS-HD MA decoding you need to use the ArcSoft DTS decoder. LAV will detect it and use that if the proper dll is placed in the LAV folder.
shadowdogg
16th November 2012, 03:50
Hi Samurai, hopefully your still around as your extremely helpful. So I looked at the audio render business and found that if I changed to MPC audio render it then does exactly what I want it to do (i.e. show up as the PCM e.g. 44.1khz) on my system, but usually default stuff is rubbish so just want to check whether that is actually terrible or whether the audio render actually makes a difference if LAV is already doing the 'work' but the render is just telling it where to go (which I assume is possibly what reclock does anyway).
Blast... only on 44.1khz does it decide to do what I want, on 48khz it does the usual nonsense. Hmm... please explain wise samurai :D
SamuriHL
16th November 2012, 03:54
I think you're not fully understanding what bitstreaming means. It seems to be what you're after, but, you don't understand the ramifications of it. Bypassing the Windows Audio mixer means that the audio is completely untouched. Bit perfect in every way. So as long as the renderer sends it untouched, and MPC audio renderer will do exclusive mode, then you're good to go. So no need to worry about it "messing" with the audio.
shadowdogg
16th November 2012, 04:13
I think you're not fully understanding what bitstreaming means. It seems to be what you're after, but, you don't understand the ramifications of it. Bypassing the Windows Audio mixer means that the audio is completely untouched. Bit perfect in every way. So as long as the renderer sends it untouched, and MPC audio renderer will do exclusive mode, then you're good to go. So no need to worry about it "messing" with the audio.
Ok, though I seem to be having trouble with a particular type of audio from this anime. Checked other anime and it was fine, so I decided to jot down which worked and which didnt
one that didn't work:
FLAC 48Khz, stereo, S24
ones that did
AAC 48khz, stereo,
FLAC 48khz, Stereo, S12
AC3, 48Khz, stereo, 320kB/s
So.. I assume it is to do with S24, 24-bit? I assume it is the limitation of the MPC audio render?
SamuriHL
16th November 2012, 04:15
You can't bitstream FLAC.
shadowdogg
16th November 2012, 04:29
what is the channel count in what you are playing?
you might have to use lav audio's mixer.
also, use 24 bit padded to 32.
Hi mindbomb, I didn't see your post. I think this was actually the problem all along... ahahah
Many thanks to you and Samurai. I did look on net about MPC audio renderer and it is a bit too glitchy for my taste so... I will keep with reclock :D
Now to play with my audio/video sync which I always have issues with
Aleksoid1978
16th November 2012, 08:03
I can confirm it doesn't affect MPC-HC. So probably not an issue with LAV. Guess I will just keep using HC.
MPC-BE - can disable internal Subtitle/Audio track select logic:
http://s43.radikal.ru/i101/1211/b3/b08e0a57039at.jpg (http://radikal.ru/F/s43.radikal.ru/i101/1211/b3/b08e0a57039a.png.html)
Disable this checkbox.
Xaurus
16th November 2012, 11:19
nev,
Seems that lav splitter has some trouble recognizing this dts-hd ma 7.1 track.
Here's BDinfo and a scan of the cover:
http://www.imagebam.com/image/5c3b11220653747
http://i1138.photobucket.com/albums/n528/mook4533/Arg/Arg2EEAB.jpg
Then here's what lav splitter reports:
http://thumbnails102.imagebam.com/22066/11d69c220653623.jpg (http://www.imagebam.com/image/11d69c220653623)
nevcairiel
16th November 2012, 11:46
This is normal, its just a visual problem, ignore it. :p
Because ffmpeg doesn't support DTS-HD MA, it will just show the info from the core track.
mcn
16th November 2012, 12:31
Are there any pluses or minuses between using avcodec or cuvid strictly for MPEG2 decoding in LAV Video? Exact same thing quality wise?The quality is the same on all decoders. The only difference is where the decoding is done, in the CPU or the GPU.
Does this apply for all the codecs or only for MPEG-2?
Also, is hardware (in particular with cuvid) deinterlacing qualitatively better than software deinterlacing?
I'm asking because I probably will have to stop using hardware decoding altogether since when using ProgDVB (6.90.1, x86) with LAV Video (0.53.2, x86) I get a black picture on H.264 channels.
This happens when cuvid acceleration is enabled.
I tried all the available renderers but it doesn't fix the issue.
Software decoding works fine, as does DXVA2 (native) decoding.
DXVA2 (copy-back) is "slow", it seems to drop frames, meaning that I see a new frame about each second.
MPEG-2 with cuvid works fine on ProgDVB.
With MPC-HC (x86) I have no problems with H.264 and cuvid acceleration.
I'm on Windows 8 x64 with Nvidia drivers 306.97.
If it might be of interest, to help reproduce the issue I uploaded a short H.264 clip recorded with ProgDVB at:
http://bayfiles.com/file/rRSJ/2HNecp/sample.ts
Opening it with ProgDVB and using LAV Video with cuvid acceleration shows a black picture. It plays just fine with MPC-HC.
leeperry
16th November 2012, 12:51
Hi nev, thanks for your ongoing work on this killer package!
BTW, I was wondering how you'd feel about adding post-processing capabilities? I realize that you said you didn't want to make it yet another ffdshow, but as much as I've managed to get stereo 32fp VST plugin support/lossy audio decoding in ffdshow after a lot of whining to several coders, its video side is still done in YV12 which is a major no-go and summons the noise gremlins like you wouldn't believe :(
For the record, here's the diff between 8bit processing on the Sanyo PLV-Z2 and 10bit on the Z3:
http://www.son-video.com/images/static/Rayons/HomeCinema/VideoProj/Sanyo/PLVZ3_PixelWorks_FX_m.jpg
I owned both simultaneously a while ago, and I can assure you that the Z2 was truly as snowy as shown on this picture when rolling them one after the other....300 was unwatchable on the Z2 :eek:
The Z4 went 12bit, just like all major videoprojectors these days.
A friend of mine is forced to process his 5.1 Digital Room Correction using the sloppy AC3 Filter EQ so he would die to get proper 32fp VST plugin support. At this stage, the only way to do that is to buy a pricey pro-audio board such as RME's and do a whole bunch of rerouting in their drivers(but then you can't output audio via lossless HDMI anymore).....a multi-channel VAC is technically possible under XP, but not under W7/W8 anymore so using a rewired VST Host is also a no-go.
All this said, I use a fairly high-end headphones rig so 32fp stereo VST plugin support in ffdshow truly hits the spot for my own use. My real problem is that I would love to be able to process video effects such as flipping/mirroring/levels conversion/framerate interpolation(the artifacts-free "motion flow" of the mid-range Sammy TV's has completely spoiled me :( ) in 16bit, in order to feed mVR without going through several utterly lossy 8bit conversions.
The ability to make automatic profiles based on resolution/frame rate just like in ffdshow would be the icing on the cake and quite frankly I don't think it's really the job of a VR to take care of all this. Also, madshi is already swamped with feature requests :o
Or maybe you could add VaporSynth support? From what I understood it's like Avisynth, just not limited to 8bit output this time.
8bit video processing is really sending us back to the stone age, it would be like processing audio in 16int instead of 64fp :(
And soon or later, it will be possible to output 10bit off mVR so your 16bit video processing software layer would be a strong asset.
:thanks: for even considering it, this would be amazing to finally be able to process video in 16bit on a PC...mVR+Reclock is the unstoppable train, but it'd need air conditioning and genuine leather chairs pretty badly at this point :scared:
leeperry
16th November 2012, 13:23
Oh, and I forgot, this would finally allow me to put some load on the CPU because when feeding vanilla CUVID to mVR, my old GPU has to do all the work while my Q9450 is taking it easy :o
Xaurus
16th November 2012, 14:54
This is normal, its just a visual problem, ignore it. :p
Because ffmpeg doesn't support DTS-HD MA, it will just show the info from the core track.
Shame on ffmpeg then. :)
Moony349
16th November 2012, 15:49
Just curious, xy-vsfilter is not enough?
xy-vs filter is enough... but it's not perfect. The biggest issue is when you upscale a DVD source to 1080p, the subs (sign posts, etc.) look pretty crappy.
Since I'm fairly certain we're all perfectionists here (why else would we be obsessing over upscaling algorithms etc.), and Madshi has shown that he's willing to work on this, wouldn't it be great if subtitles were upscaled by the renderer (MadVR)? This way, we avoid all of the inconsistencies in scaling, timing, colorspace etc. that plague other subtitle filters that don't integrate with madvr. Plus, xy-vs is slow.
Since almost everyone that uses LAV uses MadVR, it makes perfect sense to integrate the two with regard to subtitling.
Keiyakusha
16th November 2012, 15:52
xy-vs filter is enough... but it's not perfect. The biggest issue is when you upscale a DVD source to 1080p, the subs (sign posts, etc.) look pretty crappy.
Since I'm fairly certain we're all perfectionists here (why else would we be obsessing over upscaling algorithms etc.), and Madshi has shown that he's willing to work on this, wouldn't it be great if subtitles were upscaled by the renderer (MadVR)? This way, we avoid all of the inconsistencies in scaling, timing, colorspace etc. that plague other subtitle filters that don't integrate with madvr. Plus, xy-vs is slow.
Since almost everyone that uses LAV uses MadVR, it makes perfect sense to integrate the two with regard to subtitling.
You don't have enough information on the topic. From what you say I can conclude that xy-vsfilter is enough.
Edit: Actually not enough information maybe a too weak description. Your "xy-vs is slow." which is in fact fastest sub renderer out there, tells for itself (or simply trolling).
Moony349
16th November 2012, 15:56
You don't have enough information on the topic. From what you say I can conclude that xy-vsfilter is enough.
Actually not enough information maybe a too weak description. Your "xy-vs is slow." which is in fact fastest sub renderer out there, tells for itself.
Oh, don't get me wrong, I'm definitely no expert. I think xy-vs is great. I was just wondering if, essentially, LAV could kind of include xy-vs; if you will, modified to work with MadVR's new subtitle interface.
When i say slow, I mean, xy-vs upscaling increases rendering time significantly, because xy-vs is upscaling AND madVR is upscaling at the same time. It's probably more efficient if MadVR just upscales everything at once, wouldn't you say?
SamuriHL
16th November 2012, 16:02
Oh, don't get me wrong, I'm definitely no expert. I think xy-vs is great. I was just wondering if, essentially, LAV could kind of include xy-vs; if you will, modified to work with MadVR's new subtitle interface.
When i say slow, I mean, xy-vs upscaling increases rendering time significantly, because xy-vs is upscaling AND madVR is upscaling at the same time. It's probably more efficient if MadVR just upscales everything at once, wouldn't you say?
As he said, you don't appear to have all the info. The developers are already adding the support you're asking for. No need for Nev to do anything about it.
madshi
16th November 2012, 16:02
xy-vsfilter is not supposed to upscale, unless you custom-configure it that way. There's also no reason for nevcairiel to integrate xy-vsfilter into LAV because an xy-vsfilter version with support for the new subtitle interface is already in the works (by the xy-vsfilter developer, not by nevcairiel). nev once hinted he might (or not) do a libAss subtitle renderer. But since then xy-vsfilter has gotten quite a bit faster, so it's a question worth asking if a libAss DirectShow subtitle renderer would be worth the effort now.
Keiyakusha
16th November 2012, 16:03
It's probably more efficient if MadVR just upscales everything at once, wouldn't you say?
Absolutely not. I say that the best way is when upscale is not needed at all. (oops too late)
Moony349
16th November 2012, 16:11
xy-vsfilter is not supposed to upscale, unless you custom-configure it that way. There's also no reason for nevcairiel to integrate xy-vsfilter into LAV because an xy-vsfilter version with support for the new subtitle interface is already in the works (by the xy-vsfilter developer, not by nevcairiel). nev once hinted he might (or not) do a libAss subtitle renderer. But since then xy-vsfilter has gotten quite a bit faster, so it's a question worth asking if a libAss DirectShow subtitle renderer would be worth the effort now.
Thanks Madshi!
I was under the impression that xy-vs had stopped being developed, hence my asking Nev about a different filter.
Good to hear that an integrated xy-vs is already in the works (excited).
Also, Keiyakusha, thanks for correcting me. As I said, I'm no expert. I'm just curious.
Skibicki
16th November 2012, 17:51
Actually not enough information maybe a too weak description. Your "xy-vs is slow." which is in fact fastest sub renderer out thereThe more complex and numerous the holes, gaps, or notches in a font outline, the slower it will render. According to this thread, it depends on the font. http://www.cccp-project.net/forums/index.php?topic=5976.msg42091#msg42091
Keiyakusha
16th November 2012, 18:24
According to this thread, it depends on the font. http://www.cccp-project.net/forums/index.php?topic=5976.msg42091#msg42091
Sure it is possible to make xy show worse results. Which is not even problem in xy itself but in windows' gdi. Still in most cases it is faster.
the_weirdo
16th November 2012, 20:09
When i say slow, I mean, xy-vs upscaling increases rendering time significantly, because xy-vs is upscaling AND madVR is upscaling at the same time. It's probably more efficient if MadVR just upscales everything at once, wouldn't you say?
IIRC, by default, current xy-vsfilter renders subtitles directly onto video images before send them to video renderers. So as madshi pointed out, current xy-vsfilter does not upscale subtitles as you think.
Asmodian
16th November 2012, 20:50
It would be very nice to be able to render the subtitles on the resized-for-display-by-MadVR video instead of needing to resize them along with the rest of the video. Or just render them at the display resolution instead of the video resolution, pass them to MadVR and let it do the overlay. :D
The key, in my opinion, is rendering the text at the display resolution so the subs never get resized at all. Allowing the user to pick the resize algorithm for picture based subtitles (DVD, bluray) would be nice too.
Of course, I am not sure how the new subtitle interface works so I will wait and see. :)
Keiyakusha
16th November 2012, 21:34
Of course, I am not sure how the new subtitle interface works so I will wait and see. :)
This is exactly what new interface is for. At least this was the reason I made this feature request year ago or so. By now amount of use-cases for this interface somehow extended.
Edit: wait. it just occurred to me that this is LAV thread, why we discuss xy-vsfilter here? Lets move somewhere else, I'm sure there was dedicated thread for it.
cyberbeing
16th November 2012, 22:18
According to this thread, it depends on the font. http://www.cccp-project.net/forums/index.php?topic=5976.msg42091#msg42091
Don't let it fool you. When I said worse case in that thread, I really did mean worse case. In nearly all other cases, even with complex font outlines, xy-VSFilter is faster then Libass.
____
Win7 x64 | 4.4Ghz 3570K
LAV Video + Haali Splitter + DirectShowSource + AVS Meter v1.43
MPlayer2 -benchmark -vo null -nosound
____
[Chihiro] Tonari no Kaibutsu-kun ED1
Libass + Mplayer2 = 48fps
xy-VSFilter + LAV Video = 78fps
VSFilter 2.41.6205 + LAV Video = less than 1fps
[Staircase] Hatsuyuki Sakura OP
Libass + Mplayer2 = 123fps
xy-VSFilter + LAV Video = 198fps
VSFilter 2.41.6205 + LAV Video = less than 1fps
[GotWoot] Moyashimon Returns OP1
Libass + Mplayer2 = 353fps
xy-VSFilter + LAV Video = 505fps
VSFilter 2.41.6205 + LAV Video = 15fps
[CoalGirls] Card Captor Sakura OP2
Libass + Mplayer2 = 220fps
xy-VSFilter + LAV Video = 257fps
VSFilter 2.41.6205 + LAV Video = 17fps
[UTWoots] Sword Art Online ED1
Libass + Mplayer2 = 208fps
xy-VSFilter + LAV Video = 334fps
VSFilter 2.41.6205 + LAV Video = 42fps
[SFW-Chihiro] Dance in the Vampire Bund (Heavy Typesetting)
Libass + Mplayer2 = 254fps
xy-VSFilter + LAV Video = 428fps
VSFilter 2.41.6205 + LAV Video = 91fps
[Commie] Steins Gate "CPU Benchmark" OP1 (Complex Font Outline)
Libass + Mplayer2 = 442fps
xy-VSFilter + LAV Video = 455fps
VSFilter 2.41.6205 + LAV Video = 91fps
[UTWoots] Sword Art Online OP2
Libass + Mplayer2 = 170fps
xy-VSFilter + LAV Video = 315fps
VSFilter 2.41.6205 + LAV Video = 111fps
Bakemonogatari (Heavy Typesetting)
Libass + Mplayer2 = 144fps
xy-VSFilter + LAV Video = 350fps
VSFilter 2.41.6205 + LAV Video = 147fps
[rori] Kokoro Connect OP1 (Complex Font Outline)
Libass + Mplayer2 = 360fps
xy-VSFilter + LAV Video = 415fps
VSFilter 2.41.6205 + LAV Video = 250fps
[UTWoots] Sword Art Online OP1
Libass + Mplayer2 = 235fps
xy-VSFilter + LAV Video = 446fps
VSFilter 2.41.6205 = 279fps
[UTW] FATE ZERO OP1
Libass + Mplayer2 = 361fps
xy-VSFilter + LAV Video = 552fps
VSFilter 2.41.6205 + LAV Video = 364fps
Though I still think it would be extremely useful for nevcairiel to create a Libass directshow filter. Text rendering quality has superior anti-aliasing, and there are a couple other things like transforming font spacing which VSFilter currently can't do well. With a bit of optimization and caching like we're doing in xy-VSFilter, I'm sure performance could be improved as well.
I'm sure there was dedicated thread for it.
Not yet. I was only planning on creating a dedicated thread once there was a new subtitle interface build for testing. But yes, please don't hi-jack the LAV Filters thread.
If you need someplace to discuss xy-VSFilter in the meantime, there is the CCCP thread (http://www.cccp-project.net/forums/index.php?topic=5976.0) where the project was first introduced.
Keiyakusha
16th November 2012, 22:48
Not yet. I was only planning on creating a dedicated thread once there was a new subtitle interface build for testing. But yes, please don't hi-jack the LAV Filters thread.
If you need someplace to discuss xy-VSFilter in the meantime, there is the CCCP thread (http://www.cccp-project.net/forums/index.php?topic=5976.0) where the project was first introduced.
Oh, I though there was a thread somewhere here just it is unpopular. I even have vague memory of devs posting in it... I guess I confused it with something else (>_<)
sexus
17th November 2012, 00:05
MPC-BE - can disable internal Subtitle/Audio track select logic:
http://s43.radikal.ru/i101/1211/b3/b08e0a57039at.jpg (http://radikal.ru/F/s43.radikal.ru/i101/1211/b3/b08e0a57039a.png.html)
Disable this checkbox.
oh , thats cool , thanks very good ;)
STaRGaZeR
17th November 2012, 12:11
It would be very nice to be able to render the subtitles on the resized-for-display-by-MadVR video instead of needing to resize them along with the rest of the video. Or just render them at the display resolution instead of the video resolution, pass them to MadVR and let it do the overlay. :D
The key, in my opinion, is rendering the text at the display resolution so the subs never get resized at all. Allowing the user to pick the resize algorithm for picture based subtitles (DVD, bluray) would be nice too.
Of course, I am not sure how the new subtitle interface works so I will wait and see. :)
The problem with all those solutions is that you depend on madVR. And sometimes that's not possible, or it isn't desired. In most cases, to get good quality subs without depending on exotic stuff video has to be upscaled to screen resolution, then subs rendered to that upscaled video, then delivered to the renderer.
BTW good work on LAV, nev. DVD, mixer, nice additions :)
Waiting for full blown mixer and quality text subs :D
Xaurus
18th November 2012, 08:39
nev (or anyone else),
Is banding like this normal with 4:2:0 material?
http://www.imagebam.com/image/8e34df221017965
I notice it sometimes on my TV so I decided to check the same material with my computer monitor as well, and it was the same thing.
Or is my setup wrongly configured?
AndreaMG
18th November 2012, 09:15
@Nev, I have some questions about deinterlacing (I set Lav Video to hardware deinterlace via LAVCUVID):
1) playing dvds wrongly flagged I guess could trigger the deinterlacing even when not needed?
2) Is there a way to know while watching a dvd if Lav is deinterlacing or not?
3) Is there a way (or colud possibly be implemented) to turn deinterlacing on and off of the fly via shortcuts keys like MadVR in the cases I'm 100% sure what I'm playing is progressive without having to go to Lav panel and tick "progressive"?
4) If in a dvd there is mixed material (interlaced and progressive) the interlacer will adapt to the new content or is it dumb?
5) I find Lav deinterlacer less heavy than MadVR one, do you have any idea why? Aren't they both hardware?
Thanks :)
ryrynz
18th November 2012, 11:03
Is banding like this normal with 4:2:0 material?
http://www.imagebam.com/image/8e34df221017965
That's normal, to improve that you'll need a deband filter activated via FFDshow/Avisynth etc.
Xaurus
18th November 2012, 11:07
That's normal, to improve that you'll need a deband filter activated via FFDshow/Avisynth etc.
What is a good deband filter? I don't really want to use ffdshow though, but maybe Avisynth could be an option.
ryrynz
18th November 2012, 12:17
For real time playback on 8-bit banded content via Avisynth I recommend using Flash3kyuu. (http://forum.doom9.org/showthread.php?t=161411)
DragonQ
18th November 2012, 13:37
nev (or anyone else),
Is banding like this normal with 4:2:0 material?
http://www.imagebam.com/image/8e34df221017965
I notice it sometimes on my TV so I decided to check the same material with my computer monitor as well, and it was the same thing.
Or is my setup wrongly configured?
Ha, I see banding much worse than that on my TV. No amount of setting changes helps, and it even happens on my PC with MadVR in some videos, so I'd say at least part of the problem is the source material.
DragonQ
18th November 2012, 14:23
I've recently started playing with LAV Filters for DVD/BD playback in MediaPortal (EVR + DVD Navigator), now that DVD-Video is supported. I've managed to get it working but it has two flaws:
1) For some discs, the very first thing that appears is a language selection screen. However, in MediaPortal I just get a black screen or the MediaPortal main menu continues to show. If I press "enter" on my remote, the language selection screen briefly flashes, then the pre-menu titles play as normal. If I instead move the mouse, then the language selection screen appears.
2) For at least one disc I've tried, if I start playing the main feature from the DVD menu, the total length is detected as 0:00, meaning I can't seek. If I press "next chapter", then the total length gets updated and appears properly, enabling seeking.
I don't know if these are MediaPortal problems or LAV problems but I thought I'd bring it up anyway. I'm using DXVA2 Native.
nevcairiel
18th November 2012, 14:24
Note that DXVA2 Native is a bad choice for DVDs, it doesn't properly work with menus. There is now an option to disable HW accel for DVDs, i would suggest to simply turn DXVA off for DVDs, the SD MPEG-2 material can be decoded by a 10 year old PC without breaking a sweat.
The duration and stuff like that is not handled by the decoders, so it has nothing to do with LAV.
DragonQ
18th November 2012, 14:32
Hmm that's strange because menus and subtitles work fine for me, it's just that initial screen on some discs. I've also tried disabling "DVD" under "Hardware Acceleration" but the problem remains.
nevcairiel
18th November 2012, 14:42
If you get Menus and Subtitles, then you're either not using LAV at all, or at least not with DXVA2 Native.
My bet is on the first.
DragonQ
18th November 2012, 14:48
http://www.aotplaza.com/Files/HTPC/Screengrabs/LAV%20used%20for%20MP%20DVD.png
I also get menus and subtitles using MPC-HC with LAV Filters. Maybe DXVA2 Native isn't being used but it's definitely set to be used.
JaylumX
18th November 2012, 16:46
Nev, any chance of an upscaling option for content less that ones horizontal resolution i.e my monitor in 2560x1440 but i think it would be nice if 1920x1080 or less content was upscaled to my native res by the GPU. Possibility or is it not practical
nevcairiel
18th November 2012, 16:47
The renderer will upscale content using the GPU, a decoder does not upscale.
nevcairiel
18th November 2012, 18:18
BTW, I was wondering how you'd feel about adding post-processing capabilities?
First and foremost I'm developing a decoder, not a post-processor. I only made an exception for YADIF Deinterlacing and certain pixel format conversions because those are essential for working playback.
The same thing essentially applies to the mixer in LAV Audio, in certain configurations its essential to be able to remix your audio, or you may end up hearing only half the channels.
If i ever get really bored (yeah, right), it may be a possibility to either write a separate post-processing filter, and/or maybe add AviSynth or VapourSynth support. At this time, AviSynth is just a mess to work with and the 8-bit limitation is just so outdated, and VapourSynth is still too much in flux to look into it properly.
In any case, don't hold your breath.
PS:
I may be persuaded to expose libavfilter based filters, if someone wants one of those desperately, it could be done without much pain or effort. However, i know that maybe only 2-3 of those are even real-time optimized, many others are just very slow, and i also know that many people prefer different filters then the ones available there.
nevcairiel
18th November 2012, 18:21
1) playing dvds wrongly flagged I guess could trigger the deinterlacing even when not needed?
If its wrongly flagged, how would it know any better? It has to trust these flags. So yes.
2) Is there a way to know while watching a dvd if Lav is deinterlacing or not?
No.
Well technically you can see if the renderer gets 25/30 or 50/60 frames, which might be an indication, but nothing obvious.
3) Is there a way (or colud possibly be implemented) to turn deinterlacing on and off of the fly via shortcuts keys like MadVR in the cases I'm 100% sure what I'm playing is progressive without having to go to Lav panel and tick "progressive"?
There is not. Maybe in the future.
4) If in a dvd there is mixed material (interlaced and progressive) the interlacer will adapt to the new content or is it dumb?
If the content is properly flagged, it will adapt.
5) I find Lav deinterlacer less heavy than MadVR one, do you have any idea why? Aren't they both hardware?
Implementation differences, who knows.
leeperry
18th November 2012, 19:21
First and foremost I'm developing a decoder, not a post-processor. I only made an exception for YADIF Deinterlacing and certain pixel format conversions because those are essential for working playback.
The same thing essentially applies to the mixer in LAV Audio, in certain configurations its essential to be able to remix your audio, or you may end up hearing only half the channels.
[..]
AviSynth is just a mess to work with and the 8-bit limitation is just so outdated
:thanks: for the detailed reply!
Well, yeah, downmixing 5.1 to stereo does require custom coeffs(I personally love the Logic7 matrix, that I'm currently using in ffdshow with fantastic results) together with VST plugins processing in order to turn surround stereo into binaural audio for headphones use http://files.head-fi.org/images/smilies/happy_face1.gif
The same way anyone caring at least a bit about 5.1 audio will have to process each individual channel for bass management/delay and Digital Room EQ if he doesn't want to listen to his walls and furniture("can you move a bit to the left, I can't hear the cymbal properly kthx" :D).
So I realize that you don't want to get into the post-processing dark side, but it really is mandatory for whatever 5.1 or stereo/binaural audio(God bless ffdshow in 32fp!) and I believe that Avisynth can actually output more than 8bit these days, it's just that the Avisynth filter of ffdshow is unable to take advantage of it and the coder who worked on it has gone AWOL :(
And if there's a place to do levels conversion, flipping/mirroring, frames interpolation, audio DRC/VST processing, it's more in the decoder than in the VR/audio drivers(a RME board costs +$500, uses sloppy hardware and is useless for lossless HDMI audio) IMHO.
I realize that at this point, you're in the same position as madshi providing the best software for the job *FOR FREE*. madshi has made clear that at some point he will release a shareware version that will provide more advanced features for a fee....so how about you do that too? Make a $35 version that supports all kinds of audio goodies in 32fp/64fp and 10/16bit video processing?
Paying whiners won't look like spoiled brats anymore and you won't be wasting your precious time providing technical support for free either....anyway, it's just an idea but the decoding/splitting parts of your package both seem fully matured, all it'd need is additional audio/video processing IMHO and I'm sure that your most demanding end-users are well aware that well written code doesn't grow on trees.
All this said, I can do all my 32fp binaural stuff in ffdshow audio and the BenQ W1070 pj I'll be buying very soon provides 12bit mirroring in its OSD, so all I really need at this point is >8bit levels conversion and frames interpolation in order to magically turn 29.97@59.94fps...so I guess that all I would personally need is an Avisynth wrapper that would support P016, and I'm pretty sure that this would make a lot of other OCD'ed videophiles happy to pay for your software as well :cool:
madshi
18th November 2012, 19:54
And if there's a place to do levels conversion, flipping/mirroring, frames interpolation, [...], it's more in the decoder than in the VR [...]
I strongly disagree.
leeperry
18th November 2012, 20:02
Well, doing it all in ffdshow(currently being the only place where it's possible to do levels conversion/mirroring/avisynth scripting) allows the use of automatic rules. I believe this kind of automatic profiles and video-processing has more its place in LAV/ffdshow than in mVR. I'm not talking about one-shot processing, more like automatic profiles based on resolution and frame rate. And done in P016, it won't temper w/ the PQ when feeding mVR.
Anyway you two are the ones in charge, at this point I'm mostly begging for practical solutions to real world issues :thanks:
AndreaMG
18th November 2012, 20:25
Thanks for your answers Nev.
If i ever get really bored (yeah, right), it may be a possibility to either write a separate post-processing filter (...)
Hope you will get bored really soon:D
nevcairiel
18th November 2012, 20:26
Hope you will get bored really soon:D
Doubtful thats going to happen before my retirement in 40 years.
leeperry
18th November 2012, 20:34
Well, all roads lead to Rome so all we end-users really need is madshi and nev looking into solutions for P016 video processing. We have a decoder, a renderer and nothing to put in between..not even levels conversion for sloppy encodes :scared:
FFdshow can process audio in 32fp so this is a non-issue IMHO, and there's always AC3Filter's EQ for 5.1 processing...it sounds pretty bad but technically it works.
Keiyakusha
18th November 2012, 21:09
Well, all roads lead to Rome so all we end-users really need is madshi and nev looking into solutions for P016 video processing. We have a decoder, a renderer and nothing to put in between..not even levels conversion for sloppy encodes :scared:
Yeah, so lets bring some more folks and try to convince nev that we need vapoursynth wrapper.
Alternatively someone may try to hack ffdshow and remove from it everything that is not related to raw processing filter and avisynth scripts... (but I doubt we'll have P016 with this solution)
nevcairiel
18th November 2012, 22:36
Here is another option:
Actually write something yourself. :P
leeperry
18th November 2012, 22:57
oh yah sure, you can learn to code like a god overnight, piece of cake! It's not like it would take years/decades before you'd make something that would even work :devil:
which sends us back to my original proposition of making a shareware version that would go deeper into the P016 rabbit hole.....some end-users crave advanced processing, let them pay for it. I'll be most happy to pay for mVR and LAV because w/o mVR I still would be stuck w/ HR/EVR and atm there simply isn't any way whatsoever to do P016 video processing :(
Anyway I've made my point, you've made clear that you didn't care too much, madshi disagrees with what I said so that's me hoping that he will soon allow custom levels conversion and provide N-1 frame access in the forthcoming HLSL PS script support of mVR so third party coders will be able to write frame interpolation scripts :)
Too bad the horsepower of my Q9450 will be rendered useless and all the load will be put on the GPU, forcing everyone interested to buy a GTX660/660Ti(or whatever AMD substitute) basically.
nevcairiel
18th November 2012, 23:05
oh yah sure, you can learn to code like a god overnight, piece of cake! It's not like it would take years/decades before you'd make something that would even work :devil:
Still sooner then me being really interested in it. :)
which sends us back to my original proposition of making a shareware version that would go deeper into the P016 rabbit hole.....some end-users crave advanced processing, let them pay for it. I'll be most happy to pay for mVR and LAV because w/o mVR I still would be stuck w/ HR/EVR and atm there simply isn't any way whatsoever to do P016 video processing :(
I have no interest in selling my software. Selling means people have expectations (even more so then the people with entitlement-issues today), and i don't want to deal with that shit. Not to mention that there is the issue of LAV being build based on GPL libraries, which prohibits this anyway.
Anyway, unless someone manages to pay me enough so i can quit my dayjob, no amount of money will give me more time. :p
ryrynz
18th November 2012, 23:33
I would also like to see (pay for) Vapoursynth/Avisynth support with perhaps condition based loading. It would be awesome to see MadVR tapping into these settings as well for a full config based on filename/resolution/bitrate etc.
I think many of us are looking to retire FFDshow and Avisynth from our toolkits now. Clsid asked about a DirectShow filter for Vapoursynth and TheFluff said it would be fairly easy to implement for someone competent with DirectShow, surely someone will do it eventually.
MarkT
19th November 2012, 02:27
Well, keep it free and simple. Cause I hate to break out IDA to figure out the protection. :D I don't see how such a product could pay reliably as much as a regular day job. GPL hin oder her, the market for directshow decoders is tiny. People buy a computer with a BD drive, fire up PowerDVD, which plays about anything and that is that. LAV-what?
As for advanced post-processing, I am missing audio DRC like in VLC (http://forum.videolan.org/viewtopic.php?f=12&t=46020#p256565). Call me nuts, but sometimes after a long night of work I feel like watching a movie I have seen a 1000 times like Die Hard at 03:00am. But dozing off without DRC is asking for trouble. And then the first guy gets shot. ;) The mpc-hc DRC code works, but why settle for less when you can have a nice RMS envelope follower DRC.
Of course I could use the mpc-hc DRC or just VLC but I like the clean concept of LAV.
:thanks:
6233638
19th November 2012, 03:04
All this talk of post-processing filters/scripts aside, I would really appreciate some sort of crossfeed function for headphone use, even if it's not possible to implement something like Dolby Headphone or some other form of HRTF/binaural processing.
As I understand it, crossfeed would mostly be an extension of the mixing and delay functionality that already exists inside LAV Audio. (downmix to stereo, then apply crossfeed)
The only other option is very expensive amplifiers like the SPL Phonitor (http://www.abload.de/img/spl_phonitor_11vsgj.jpg).
I think the crossfeed level is simply the amount of left-channel audio that leaks into the right, and vice-versa.
Speaker angle would be controlled by the amount of delay applied to the crossfeed? (because left-channel audio hits your left ear before your right)
I'm not sure how you would control the "center" mix though. (how this sort of thing works is beyond me really)
Joniii
19th November 2012, 07:28
I wonder if it would be possible to do something about the small BD stutter on codec level when screen refresh rate is set at 60? Switching to 24p mode with madVR is good but not an ideal solution for computers.
nevcairiel
19th November 2012, 08:21
I wonder if it would be possible to do something about the small BD stutter on codec level when screen refresh rate is set at 60? Switching to 24p mode with madVR is good but not an ideal solution for computers.
Thats nothing the decoder influences.
Use ReClock, it can solve such issues.
Joniii
19th November 2012, 08:48
Thats nothing the decoder influences.
Use ReClock, it can solve such issues.
I was thinking if it would be possible to add similar method than what reclock uses in LAV.
nevcairiel
19th November 2012, 09:58
I was thinking if it would be possible to add similar method than what reclock uses in LAV.
Thats not possible. Only the audio renderer has access to the audio reference clock to do what needs to be done.
leeperry
19th November 2012, 11:09
I have no interest in selling my software. Selling means people have expectations (even more so then the people with entitlement-issues today), and i don't want to deal with that shit. Not to mention that there is the issue of LAV being build based on GPL libraries, which prohibits this anyway.
Anyway, unless someone manages to pay me enough so i can quit my dayjob, no amount of money will give me more time. :p
Dayjobs are overrated anyway :D
Fine, make the post-processing filter standalone and ask a fee for it. I'm sure you'd soon find out that quite a number of ppl would be willing to pay for the ability to process their video in P016 http://forum.slysoft.com/images/smilies/agreed.gif
Thats not possible. Only the audio renderer has access to the audio reference clock to do what needs to be done.
How about a frames interpolating algorithm processed in P016 that would automatically make the movie fps match an exact multiple of the refresh rate? Killer combo with Reclock :devil:
I'm not sure how you would control the "center" mix though. (how this sort of thing works is beyond me really)
That's really reinventing the wheel IMHO when all it needs is a 32fp/64fp VST plugin wrapper(currently only possible in ffdshow audio using a lot of undocumented dirty tricks). There are many excellent sounding xfeed plugins out there, the most transparent one to my ears(that I use on a daily basis) being free.
I am missing audio DRC like in VLC
many VST plugings can do that, and with most likely much better sounding results too.
Joniii
19th November 2012, 11:26
Thats not possible. Only the audio renderer has access to the audio reference clock to do what needs to be done.
How about something like this? Judder free 24p->60p would be amazing feature on LAV Filters.
http://en.wikipedia.org/wiki/SmoothVideo_Project_%E2%80%93_SVP
nevcairiel
19th November 2012, 11:44
How about something like this? Judder free 24p->60p would be amazing feature on LAV Filters.
http://en.wikipedia.org/wiki/SmoothVideo_Project_%E2%80%93_SVP
Just use SVP, don't need it inside LAV.
leeperry
19th November 2012, 11:48
Just use SVP, don't need it inside LAV.
but no P016 possible then http://forum-images.hardware.fr/images/perso/2/fegafobobos.gif
nevcairiel
19th November 2012, 11:49
Its an AviSynth plugin, no 16-bit anyway. :P
leeperry
19th November 2012, 11:51
Avisynth 2.6 can do >8bit FWIR, it's only a matter of not using an ancient wrapper that's stuck to YV12(such as the one currently embedded in ffdshow).
nevcairiel
19th November 2012, 12:01
As far as i know, the MVTools plugins (the essential parts behind SVP) only support YV12 or YUY2, and not the hacked 16-bit formats in AviSynth.
Aynway, this is off-topic, LAV will not get support for any of this in any foreseeable future.
Joniii
19th November 2012, 12:10
Just use SVP, don't need it inside LAV.
I just thought if similar method than what SVP uses could be easily added to calculate intermediate frames and get software motion interpolation.
As far as i know, the MVTools plugins (the essential parts behind SVP) only support YV12 or YUY2, and not the hacked 16-bit formats in AviSynth.
Aynway, this is off-topic, LAV will not get support for any of this in any foreseeable future.
Ok, sorry for ot.
RealSnoopyDog
19th November 2012, 19:26
Hi nev, do you think it is a problem to use the ffdshow subtitle filter as a video prostprocessor with LAV? I use it with Intel Quick Sync and nVidia with DXVA2 and there seem to be no problems.
nevcairiel
19th November 2012, 19:34
Hi nev, do you think it is a problem to use the ffdshow subtitle filter as a video prostprocessor with LAV? I use it with Intel Quick Sync and nVidia with DXVA2 and there seem to be no problems.
Its not a problem, but there are is a much better subtitle filter if thats all you want - look at xy-vsfilter.
RealSnoopyDog
19th November 2012, 19:37
Thank you, i'll try that. :) Yes, i only need subtitles. I have a lot of BDs, where it's essential to have subs.
nevcairiel
19th November 2012, 21:30
Apparently i wasn't done with DVDs yet, so here is the final piece:
x86: http://files.1f0.de/lavf/LAVFilters-0.53.2-7-g9c504fd.zip
x64: http://files.1f0.de/lavf/LAVFilters-0.53.2-7-g9c504fd-x64.zip
Whats new, you wonder?
This version adds (experimental) support for dvd subtitles and full dvd menu support in DXVA2 Native mode. I managed to draw the subtitles onto the D3D surface, as well as copy the surface to be able to redraw images for menu interactivity.
In my limited tests, it seemed to work just fine, but as always, please give it a whirl and see if you can break it. ;)
On my NVIDIA it worked just perfectly, however on my Intel it did seem to occasionally cause a small playback glitch, so lets hear your experiences.
6233638
19th November 2012, 21:57
The active decoder is being reported as "avcodec" here when trying to play back anything using DXVA (native) whether it's DVDs, Blu-ray or ripped files.
I think this is software decoding? I don't normally use DXVA though, so it's entirely possible that DXVA is broken in Windows 8. (it does say it's "available" in the configuration)
sneaker_ger
19th November 2012, 22:02
Are you using a DXVA2 compatible renderer? (madVR is not DXVA2 native compatible)
Do you have any filter between LAV Video and the renderer? (vsfilter does not work with DXVA2 native)
Superb
19th November 2012, 22:27
I thought that drawing directly to the surfaces in DXVA native suppose to cause image corruption...?
nevcairiel
19th November 2012, 22:30
It does, but its the most obvious with H.264 because of the extremely high number of reference frames, i figured maybe i get lucky with MPEG2 for DVDs. :P
Anyhow, there are still other things that can be done, like simply copying the frame when it needs to be written to, and modifying that copy. A GPU should be plenty fast copying a SD frame in pure GPU memory.
6233638
19th November 2012, 23:09
Are you using a DXVA2 compatible renderer? (madVR is not DXVA2 native compatible)
Do you have any filter between LAV Video and the renderer? (vsfilter does not work with DXVA2 native)Sorry, it had been so long that I forgot DXVA does not work with madVR and that DXVA copy-back or CUVID are required for it.
It seems to be working correctly in EVR.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.