Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
13th January 2010, 19:00 | #10281 | Link | |
Registered User
Join Date: Sep 2008
Posts: 496
|
Quote:
anyway, those options have nothing to do with DXVA and should not have any effect. |
|
13th January 2010, 21:37 | #10283 | Link |
Registered User
Join Date: Sep 2008
Posts: 496
|
I was able to modify DXVA 1.0 decoded image using the code below (under Windows XP):
however, there's still a lot to figure, for instance, I still need to understand how exacly the raw image is stored, but the fact is that I can read it, modify it, and have the renderer show it... Code:
HRESULT hr = E_INVALIDARG; BYTE* pDXVABuffer; DWORD dwTypeIndex = 0xffffffff; switch (m_nEngine) { case ENGINE_DXVA1 : LONG lStride; hr = m_pAMVideoAccelerator->GetBuffer(dwTypeIndex, bufferIndex, FALSE, (void**)&pDXVABuffer, &lStride); ASSERT (SUCCEEDED (hr)); // modify buffer here hr = m_pAMVideoAccelerator->ReleaseBuffer(dwTypeIndex, bufferIndex); ASSERT (SUCCEEDED (hr)); according to specs, this should run after Execute and before EndFrame, however, according to practive, this should run immediately after EndFrame() Last edited by tal.aloni; 15th January 2010 at 21:26. |
14th January 2010, 06:07 | #10286 | Link |
契約者
Join Date: Jun 2008
Posts: 1,576
|
Does anyone tried to compare speed of ffdshow's DXVA to the original one in MPC-HC? So far I saw only one benchmark and it shows that for some reason FFDShow is twice slower. I don't want to believe in that... Its not like I know a good way of testing DXVA decoding speed, but still I'm curious.
|
14th January 2010, 07:51 | #10288 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 4,926
|
yes it doesn't work @ all :P
whatever i do i land @ MPC-HC Video Decoder decoding H.264 streams via the VP2 and ffdshow doesn't trigger any DXVA @ all even if forced like disable H.264 enable H.264 DXVA
__________________
all my compares are riddles so please try to decipher them yourselves :) It is about Time Join the Revolution NOW before it is to Late ! http://forum.doom9.org/showthread.php?t=168004 Last edited by CruNcher; 14th January 2010 at 07:55. |
14th January 2010, 08:11 | #10289 | Link |
Registered User
Join Date: Nov 2008
Posts: 454
|
Hi.
I tested DXVA decoder (rev.3200) - h.264 seems to be OK, but i have problems with VC-1 - looks like bad frame order. Tested on ATI 4770 (cat. 9.12 + Win7 x64). No problem with MPC decoder.
__________________
Working machine: Win10x64 + Intel Skull Canyon My HTPC. How to start with Bitcoin |
14th January 2010, 08:23 | #10290 | Link | |
Registered User
Join Date: Sep 2008
Posts: 496
|
Quote:
also, please try 3198 and tell me if the order is correct. |
|
14th January 2010, 09:12 | #10291 | Link | |
MPC-HC Project Manager
Join Date: Mar 2007
Posts: 2,317
|
Quote:
Contact casimir for more information, so this can be fixed once and for all.
__________________
MPC-HC, an open source project everyone can improve. Want to help? Test Nightly Builds, submit patches or bugs and chat on IRC |
|
14th January 2010, 09:17 | #10292 | Link | |
Registered User
Join Date: Nov 2008
Posts: 454
|
Quote:
Can you compile 3198 for me? On http://xvidvideo.ru there are only 3195 then 3200... BTW, i tested it with Haali (1.9.355.21) as splitter - So combination of: Haali + MPC decoder - OK Haali + FFDshow DXVA - not OK.
__________________
Working machine: Win10x64 + Intel Skull Canyon My HTPC. How to start with Bitcoin Last edited by hoborg; 14th January 2010 at 09:20. |
|
14th January 2010, 09:40 | #10293 | Link | |
Media Control author
Join Date: Dec 2006
Location: Paris
Posts: 1,014
|
Quote:
I have not done like you : I am in the TDXVADecoder:isplayNextFrame method and instead of displaying it I come back to TvideoCodecLibavcodecDxva and call a new method to copy the frame back from the GPU into the system memory, then process it through FFDShow filters. In that way we should be able to apply all the filters including resize, crop... (I hope) The tough part is to reproduce the TvideoCodecLibavcodec::decompress method (just after decoding) to create a TPict and get back into the nominal code path. |
|
14th January 2010, 10:46 | #10294 | Link | ||
Registered User
Join Date: Sep 2008
Posts: 496
|
Quote:
Quote:
Code:
// Decode bitstream CHECK_HR (Execute()); if (any post processing is active) { //TDXVADecoder::ProcessDecodedFrame CHECK_HR (ProcessDecodedFrame()); // copy, apply post processing and copy back } CHECK_HR (EndFrame(nSurfaceIndex)); http://msdn.microsoft.com/en-us/libr...03(VS.85).aspx Last edited by tal.aloni; 14th January 2010 at 10:58. |
||
14th January 2010, 15:24 | #10295 | Link | |
Registered User
Join Date: Oct 2009
Posts: 47
|
Hello. I don't know if anyone cares about this, but some of the internal AVISynth functions doesn't work the way they are supposed to do.
I'm trying to make something simple for ITU/NON-ITU detection on DVDs as a part of a bigger script, however it doesn't work as expected, so I guess there might be something wrong with ffdshow_setsar Quote:
Also I would love to know if there are any other variables/functions, that I could use to interact between ffdshow and it's AVISynth filter. I have never found those listed anywhere (besides being used in the script on the wiki). It'd be cool if there are a few showing the results from the auto detections ffdshow performs - PC/TV Levels; Interlaced/Progressive flags etc. |
|
14th January 2010, 16:13 | #10296 | Link |
Media Control author
Join Date: Dec 2006
Location: Paris
Posts: 1,014
|
Question about DXVA & colorspaces
I have a problem and I kinda lack of knowledge on that part
Maybe Tal or someone else can help me out on this The frames that are in the GPU are in a flat buffer Whereas FFDShow works with color planes : for example with a YCbCr colorspace you have 3 planes so 3 buffers. I know the colorspace, I have a flat buffer. How can I convert it into n buffers ? This is an example but it applies to all colorspaces. Are there built functions inside FFDShow to do that ? This is a necessary step to build the TPict and to feed the processing filters Thanks EDIT : okay, I think that this is like in TvideoCodecUncompressed. Another problem : the CopyBack method used to copy from the DXVA buffer to system memory uses SSE4 instructions which are not templatized : I mean that you don't call SSE 1,2,... instructions dirrectly but call methods that would call the instructions if the CPU support them or call a coded method that can do it instead. Last edited by albain; 14th January 2010 at 17:49. |
14th January 2010, 17:28 | #10297 | Link | |
Registered User
Join Date: Nov 2008
Posts: 454
|
Quote:
The sample i posted to you works just fine in 3198 like others VC-1 samples i have. In 3200 sample i sended to you are broken, but rest of VC-1 videos i have seems to be OK.
__________________
Working machine: Win10x64 + Intel Skull Canyon My HTPC. How to start with Bitcoin |
|
14th January 2010, 19:50 | #10299 | Link |
Registered User
Join Date: Jan 2004
Location: Canada
Posts: 210
|
Two things:
1) Could someone please tell me if the "profiles and presets" function works with the DXVA settings - IE, can I set a profile to enable DXVA for H264 when W=1920, and be off when W<1920 (that way I can still use the Lanczos resizer for my 720p encodes)? and... 2) DXVA is also the terminology used by most filters for hardware decoding of DVD/MPEG2 - can we add that as an additional option to the DXVA options screen (beside the tickboxes for H246 and VC1) , and remove the less intuitive "set interlace flag in output media type" from the regular decoder's "output" tab (the latter setting is what triggers DXVA to be initiated for DVD/MPEG2 decoding).
__________________
Cheers, The REAL Joe Last edited by therealjoeblow; 14th January 2010 at 20:04. |
14th January 2010, 19:56 | #10300 | Link |
*****
Join Date: Feb 2005
Posts: 5,647
|
1) yes, you can make presets
2) ffdshow does not have DXVA capabilities for MPEG-2, I think you are confusing DXVA with hardware deinterlacing
__________________
MPC-HC 2.2.1 |
Tags |
ffdshow, ffdshow tryouts, ffdshow-mt, ffplay, icl |
Thread Tools | Search this Thread |
Display Modes | |
|
|