AVS › AVS Forum › Video Components › Home Theater Computers › x264 Encoding Options for Hardware Compatibility & DXVA
New Posts  All Forums:Forum Nav:

x264 Encoding Options for Hardware Compatibility & DXVA - Page 4

post #91 of 269
Quote:
Originally Posted by embolism View Post

How do I get hardware decoding?
NVidia 8600GT card, using latest version
Cyberlink PowerDVD 7.3
Using MPC-HC with EVR
Thanks for any help

I was successful in getting hardware acceleration after removing all registry entries (MPC-HC) and using the version 403 (from doom9.org). Not all 720p files undergo hardware acceleration. Thanks for the IDC Changer, without which this wouldnt have been possible. I agree that hardware acceleration produces better 'quality' (just by perception). I did download the lastest NVIDIA drivers (mentioned in another thread) and it has option for 1080p24 output to my tv (52inch samsung LCD).
Have a doubt- should I expect all 720p material to undergo hardware acceleration? I can probably get 50% of them to get HA, I understand the newer files are better than the older ones.
post #92 of 269
Thread Starter 
Quote:
Originally Posted by ExDeus View Post

@DJBlu, I imagine there is more info you might need, but I have an MKV that won't work with IDC Changer. I get an "H264 Info not found" dialog box.

Quote:
Originally Posted by DJBlu View Post

Attachment 102808

Should recognise more mkv's, i.e. earlier versions.

Thanks, worked perfectly on my problem file.
post #93 of 269
DJBlu, could you bundle IDC Changerv0.3.zip with the .NET files it requires to run?
I want to avoid installing .NET at all costs and need to be able to use your program, arg!
post #94 of 269
Is an Nvidia 7300GT useful for DXVA?
post #95 of 269
I doubt it would help @ gorman42. Has to be 8000 series.
post #96 of 269
Quote:
Originally Posted by gorman42 View Post

Is an Nvidia 7300GT useful for DXVA?

its useful, but not for hd decoding, probably just for mpeg2 decoding at sd resolution. The 8500/8600 series came out with has a NEW version of purevideo (pv2.0?) decoding onboard (though i've heared some of the 8800s have it now too)
post #97 of 269
Quote:
Originally Posted by TheShadowRunner View Post

DJBlu, could you bundle IDC Changerv0.3.zip with the .NET files it requires to run?
I want to avoid installing .NET at all costs and need to be able to use your program, arg!

I posted them before

http://www.avsforum.com/avs-vb/showt...6#post12945196
post #98 of 269
I will hopefully be writing a command line version for all those that asked. If not then I will add a facility to add multiple files to the current IDC Changer.
post #99 of 269
Quote:
Originally Posted by DJBlu View Post

I will hopefully be writing a command line version for all those that asked. If not then I will add a facility to add multiple files to the current IDC Changer.

Either way would be great, I personally think it would be a waste of time to make a second completely separate program (depending on how it was coded), when command line arguments could be added with just a few lines.

Also, it would be great if you included OLE drag-n-drop functionality (drag a mkv to window, it prefills the path). I have not done this before, but I imagine its only a couple lines as well

Regardless of how it gets coded, thanks again for a very useful tool. Heres hoping we dont need it anymore ... very soon
post #100 of 269
Quote:
Originally Posted by themolester View Post

Either way would be great, I personally think it would be a waste of time to make a second completely separate program (depending on how it was coded), when command line arguments could be added with just a few lines.

Also, it would be great if you included OLE drag-n-drop functionality (drag a mkv to window, it prefills the path). I have not done this before, but I imagine its only a couple lines as well

Regardless of how it gets coded, thanks again for a very useful tool. Heres hoping we dont need it anymore ... very soon

Console Apps are written differently as they are sequencial. I can add Ole drag n drop, will be in a few days time.
post #101 of 269
Attachment 103176

Added Ole drag and drop

Just drag the files you want to change into the window.

 

IDC Multi Changer.zip 11.619140625k . file
post #102 of 269
Quote:
Originally Posted by DJBlu View Post

Attachment 103176

Added Ole drag and drop

Just drag the files you want to change into the window.

Thank you very much, ole makes things much easier. I appriciate all the hard work.

But I must disagree with your other comment, some parts may be different, and depending on how you coded it (since you weren't planning on dual-use) it may or may not be easier just to copy and paste some code to make a second application...but you certianly CAN have a console + gui program

Many, many gui applications have command line arguments you may pass. vlc and zoomplayer are shining examples. You would be shocked at how much you can control from the command line through zoomplayer

You grab the arguments, set a variable (if you want, so you can check for it later, to autoclose, or whatever) then using code you prefill the location, change the IDC and "click" the change button.

I would not consider this a "console" application, but it would be relatively automated. If you needed to do a large quantity, the multichanger would probobly work better. For automated scripts it may be easier to have a true console application that you were planning on making.

PS. I'm getting kinda off the dxva topic, and I don't want to sound ungrateful, cause I really do appriciate the program especially with drag/drop. So, I'll stop here; you can code it whichever way you want, and we all will appriciate it either way.
post #103 of 269
Quote:
Originally Posted by themolester View Post

Thank you very much, ole makes things much easier. I appriciate all the hard work.

But I must disagree with your other comment, some parts may be different, and depending on how you coded it (since you weren't planning on dual-use) it may or may not be easier just to copy and paste some code to make a second application...but you certianly CAN have a console + gui program

Many, many gui applications have command line arguments you may pass. vlc and zoomplayer are shining examples. You would be shocked at how much you can control from the command line through zoomplayer

You grab the arguments, set a variable (if you want, so you can check for it later, to autoclose, or whatever) then using code you prefill the location, change the IDC and "click" the change button.

I would not consider this a "console" application, but it would be relatively automated. If you needed to do a large quantity, the multichanger would probobly work better. For automated scripts it may be easier to have a true console application that you were planning on making.

PS. I'm getting kinda off the dxva topic, and I don't want to sound ungrateful, cause I really do appriciate the program especially with drag/drop. So, I'll stop here; you can code it whichever way you want, and we all will appriciate it either way.

The only thing stopping the Console app is lazy programming on my part as I haven't coded the change to the mkv's in a function its just under the button. I will tho in time write the console app.
post #104 of 269
Quote:
Originally Posted by themolester View Post

its useful, but not for hd decoding, probably just for mpeg2 decoding at sd resolution. The 8500/8600 series came out with has a NEW version of purevideo (pv2.0?) decoding onboard (though i've heared some of the 8800s have it now too)

I think you got it wrong. http://www.nvidia.com/object/IO_43029.html shows clearly that some form of acceleration is available. I'm just wondering if it is in any way worth it.

I have an E2160 overclocked to 2.6 GHz, if using DXVA could bring CPU utilization from 85% to 55% I'd do it, as an example. If it's just a few percentage points, then it wouldn't be worth the hassle.
post #105 of 269
Quote:
Originally Posted by DJBlu View Post
The only thing stopping the Console app is lazy programming on my part as I haven't coded the change to the mkv's in a function its just under the button. I will tho in time write the console app.
Had sod all to do at work today so here you go

Console Version

Attachment 103261

 

IDCChange.zip 5.80078125k . file
post #106 of 269
Quote:
Originally Posted by gorman42 View Post

I think you got it wrong. http://www.nvidia.com/object/IO_43029.html shows clearly that some form of acceleration is available. I'm just wondering if it is in any way worth it.

I have an E2160 overclocked to 2.6 GHz, if using DXVA could bring CPU utilization from 85% to 55% I'd do it, as an example. If it's just a few percentage points, then it wouldn't be worth the hassle.

hrmm... you seem to be right, some accelleration of h264 IS in fact available in the vast majority of the geforce line. I guess what I was referring to, is the lack of IDCT and CAVLC/CABAC as that was only available on the 8500/8600 series. How much of a difference this makes, I'm not sure...

I have not tried to get a non-8500/8600 to decode h264 before, so I'm not even sure what the process would be (if it is even different). All I can say, is try it out, and see if it works. I looked up the definition, and somone else may be able to give a more scientific explination... but IDCT stands for inverse discrete cosine transform.... maybe its just me, but that sounds like some complex calculations, and a good thing to offload from cpu.

Also important to mention however, if you check on newegg, you'll find some VERY cheap 8500s available; they start at just over 50 dollars. You will no doubt notice more power in games, and you will have the fullest hw acceleration possible. I just recently upgraded myself to get the 8600gts for a little over 100. Was a very nice purchase, and I'd do it again. No doubt this is far cheaper than upgrading 200 bucks on a new core2 chip or an equivelant to do full software decoding (which... admitedly, will decode a wider variety of things with fewer compatability problems).

Anyway, I tentatively retract my previous statement; could some one please clarify how much processing is required for hd h264 decoding of idct and cavlc/cabac compared to the rest of the h264 decoding? Is it a good chunk of the processing, or just 1-2 % on top of the rest.
post #107 of 269
I had a 7300GT a while back - although it would accelerate h264 (near halving CPU), it would skip at times on more complicated scenes. Not enough memory bandwidth, someone suggested.
post #108 of 269
Quote:
Originally Posted by DJBlu View Post

Had sod all to do at work today so here you go

Console Version

Attachment 103261

Whats the console version supposed to do? On vista, nothing happens after I unzip and execute the file. Im not a tech guy..
post #109 of 269
Thread Starter 
Quote:
Originally Posted by DJBlu View Post

Attachment 103176

Added Ole drag and drop

Just drag the files you want to change into the window.

So, one additional request... adding the ability to pre-populate the list of files in this GUI version from a command-line argument. That would be the best of both worlds: The ability to add a context-menu item for .mkv and .avi files to edit them in the IDC Multi Changer, and the ability to drag 'n' drop in new files. The console app could be used instead, but I'm not into batch processing, just ease of access to the program.

Also, when I click the Add Files button, I get the following exception:

Quote:


Unhandled exception

Method not found: 'System.String[]
System.Windows.Forms.OpenFileDialog.get_SafeFileNames()'.

Code:
See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.MissingMethodException: Method not found: 'System.String[] System.Windows.Forms.OpenFileDialog.get_SafeFileNames()'.
   at WindowsApplication1.F.Button1_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
IDC Changer
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Program%20Files/IDC%20Changer/IDC%20Multi%20Changer.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 8.0.0.0
    Win32 Version: 8.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Data
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.832 (QFE.050727-8300)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:


    


When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
post #110 of 269
Quote:
Originally Posted by embolism View Post

Whats the console version supposed to do? On vista, nothing happens after I unzip and execute the file. Im not a tech guy..

I wouldn't use this version if you don't know what the console is.

Try the one further up the page
post #111 of 269
Hi guys; thanks for all.

I'm not familiar with X264 and mkv.
Anyway i've made some encoding trials with meGui (X264 v.736) with L 4.1.
OS Vista32, Rendering graph: Haali Splitter > Cyberlink h264 decoder(latest Ultra patched) > EVR.
(HW: E6750, 2GB RAM 800Mhz, nVidia 8600GTS)
CPU usage is %13 with Cyberlink while ffdshow consumpts %44.
So hardware decoding is working but on the other hand, hardware deinterlacing never works.
(the source file was European HDTV h264 mpegTS 1920*1088i)

Here is a SS: (here, source file was 1440*1088i)




Any help from you experienced users will be appreciated.
post #112 of 269
Quote:
Originally Posted by ricabullah View Post

Hi guys; thanks for all.

I'm not familiar with X264 and mkv.
Anyway i've made some encoding trials with meGui (X264 v.736) with L 4.1.
OS Vista32, Rendering graph: Haali Splitter > Cyberlink h264 decoder(latest Ultra patched) > EVR.
(HW: E6750, 2GB RAM 800Mhz, nVidia 8600GTS)
CPU usage is %13 with Cyberlink while ffdshow consumpts %44.
So hardware decoding is working but on the other hand, hardware deinterlacing never works.
(the source file was European HDTV h264 mpegTS 1920*1088i)

Here is a SS: (here, source file was 1440*1088i)


Any help from you experienced users will be appreciated.

What does your avs file look like, did you run Avisynth creator in megui? If not, let it analyse the source and make an avs script for you My first guess would be you need to deinterlace the source, probably with tfm() .. the Avisynth creator will let you see what the output will look like.
post #113 of 269
Quote:
Originally Posted by rebkell View Post

What does your avs file look like, did you run Avisynth creator in megui? If not, let it analyse the source and make an avs script for you My first guess would be you need to deinterlace the source, probably with tfm() .. the Avisynth creator will let you see what the output will look like.

Hi rebkell, thanks for respond.

I was just investigating hardware deinterlacing capability of x264 L4.1 as well.
Normally, i prefer to re-encode h264 source files to h264 again and leave them interlaced.
So finally i can watch them on HA mode.
After i understood x264 just gives hardware decoding, i've found this method for converting to x264.
This method is for interlaced source files.

First, i demux the source ts file and dump original ac3.
After re-encoding to x264, i remux encoded video with original audio into mkv using Haali muxer.

I prepare this graph: (you don't need to resize of course)



And i save this text as avs:



Here is my megui config:



Here are the sample files:

(Decoding graph:
For Vista: Haali Splitter > Cyberlink h264 decoder (of Ultra) > EVR
For XP: Haali Splitter > Cyberlink h264 decoder (of Ultra) > Overlay (or WMR9) )

Source file:

http://rapidshare.com/files/95449126/tenis.ts.html


Encoded file without deinterlacing and resizing: (HA)
http://rapidshare.com/files/95480185/tenis.mkv.html

Encoded file with deinterlacing and resizing: (HA)
http://rapidshare.com/files/96213704..._rica.mkv.html
post #114 of 269
The console version works without a hitch. Thanks!
post #115 of 269
Rica I have no suggestions, you're in territory I've never been around. doom9.org is where the pros hang out.
post #116 of 269
Quote:
Originally Posted by rebkell View Post

Rica I have no suggestions, you're in territory I've never been around. doom9.org is where the pros hang out.

Thanks rebkell; i hang out here since i'm not a pro
BTW, there are lots of pros here.
This, i think, explains why i'm here.
post #117 of 269
I decided to give HA another try today and I actually got it working (x264), even at 1024x576 (projector native resolution). I am thrilled! BUT (there it is) HA doesn't seem to kick in when the auto-loading version of DirectVobSub is loaded. I am using AC3Filter, DirectSound, VMR9 renderless (only one working with HA) and the Cyberlink H264 decoder. What can I do to be able to display subtitles?

[edit]
Ow boy, I have been cheering too soon. When using HA there is some kind of macroblocking/dithering on a large scale. It also flickers in those areas where the picture is distorted. It's not watchable though since it's not a smooth picture. Does any of you know what this is and how I can fix it?
[/edit]
post #118 of 269
Regarding HA for 1080p, I heard doing this might help:
Change the Level to 4.1 and use 5 Ref Frames for 1080p

DJ - with your application, we change profile to 4.1
How does one use 5 ref frames?
Has anybody achieved acceleration for 1080p on any graphic card?
post #119 of 269
Quote:
Originally Posted by Moondust View Post

I decided to give HA another try today and I actually got it working (x264), even at 1024x576 (projector native resolution). I am thrilled! BUT (there it is) HA doesn't seem to kick in when the auto-loading version of DirectVobSub is loaded. I am using AC3Filter, DirectSound, VMR9 renderless (only one working with HA) and the Cyberlink H264 decoder. What can I do to be able to display subtitles?

[edit]
Ow boy, I have been cheering too soon. When using HA there is some kind of macroblocking/dithering on a large scale. It also flickers in those areas where the picture is distorted. It's not watchable though since it's not a smooth picture. Does any of you know what this is and how I can fix it?
[/edit]

you need to disable directvobsub and enable the built in subtitle decoder of MediaPlayerClassic
post #120 of 269
Quote:
Originally Posted by tetsuo55 View Post

you need to disable directvobsub and enable the built in subtitle decoder of powerdvd

Thanks for replying. I use MPC-HC with the Powerdvd H264 decoder. I haven't been able to load an x264 mkv file in Powerdvd (version 7.3319a). Is there a subtitle possibility other than directvobsub in MPC-HC?
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Home Theater Computers
AVS › AVS Forum › Video Components › Home Theater Computers › x264 Encoding Options for Hardware Compatibility & DXVA