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.

 

Go Back   Doom9's Forum > Video Encoding > MPEG-4 AVC / H.264

Reply
 
Thread Tools Search this Thread Display Modes
Old 15th October 2009, 00:03   #81  |  Link
Keiyakusha
契約者
 
Keiyakusha's Avatar
 
Join Date: Jun 2008
Posts: 1,576
Quote:
Originally Posted by schweinsz View Post
btw: I can not get to the picture and the video you post.
Sorry, I don't understand. You can't download it?
EDIT: if so - try this...

By the way, with Haali renderer this is not really a problem. At first I just not realized that DiAVC outputs only YV12. Haali accepts only YUY2, so I just need additional transform filter.

Last edited by Keiyakusha; 15th October 2009 at 00:35.
Keiyakusha is offline   Reply With Quote
Old 15th October 2009, 01:18   #82  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Keiyakusha View Post
Sorry, I don't understand. You can't download it?
EDIT: if so - try this...

By the way, with Haali renderer this is not really a problem. At first I just not realized that DiAVC outputs only YV12. Haali accepts only YUY2, so I just need additional transform filter.
Yes, I can't download it. I get it now from your new address. Thank you very much.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 06:25   #83  |  Link
Astrophizz
Registered User
 
Join Date: Jul 2008
Posts: 184
Good news, I did some test on longer clips (I had been using ~30 second ones before) and DiAVC is the fastest for me! This is really impressive.

I get the blinking too and videos start out green (Haali renderer). Seeking causes the image to freeze also.

Last edited by Astrophizz; 15th October 2009 at 06:30.
Astrophizz is offline   Reply With Quote
Old 15th October 2009, 08:11   #84  |  Link
Avish
Registered User
 
Avish's Avatar
 
Join Date: Jan 2006
Posts: 147
64-bit XP is not supported yet, right?? Coz MPC-HC just hangs when I try to play anything with DiAVC.
__________________
i7-2600 | GA-B75-D3V | Tempest EVO | VX450 & XMS3 16GB | SanDisk Extreme 120GB | U2311H | MK520 | MSI GTX750 Ti Gaming | CM Hyper 212+ | APC 1KVA | Xonar DG | SoundSticks III | Win 7 x64
Avish is offline   Reply With Quote
Old 15th October 2009, 09:15   #85  |  Link
Kurtnoise
Swallowed in the Sea
 
Kurtnoise's Avatar
 
Join Date: Oct 2002
Location: Aix-en-Provence, France
Posts: 5,183
Quote:
Originally Posted by Keiyakusha View Post
Can't get it work under win7. Every app that trying to use it just hangs so I even can't construct any graph...
works for me only w/ the madVR or VMR9 as renderer...
Kurtnoise is offline   Reply With Quote
Old 15th October 2009, 09:16   #86  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Avish View Post
64-bit XP is not supported yet, right?? Coz MPC-HC just hangs when I try to play anything with DiAVC.
Yes, there is only 32-bit version now. I must re-code all assembly code for 64-bit version in future.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 09:32   #87  |  Link
Kurtnoise
Swallowed in the Sea
 
Kurtnoise's Avatar
 
Join Date: Oct 2002
Location: Aix-en-Provence, France
Posts: 5,183
@schweinsz : any chance to add lossless contents support in diAVC ?
Kurtnoise is offline   Reply With Quote
Old 15th October 2009, 10:17   #88  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Kurtnoise View Post
@schweinsz : any chance to add lossless contents support in diAVC ?
Adding lossless contents support is not a complex task. But I'll start work on it after all other more important tasks are finished, such as improving the speed, filter bug fix, compatibility, 64-bit version, etc.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 10:22   #89  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,689
Quote:
Originally Posted by schweinsz View Post
Adding lossless contents support is not a complex task. But I'll start work on it after all other more important tasks are finished, such as improving the speed, filter bug fix, compatibility, 64-bit version, etc.
Adding 64-bit assembly is a huge task, especially if you don't intend to do what x264 does and use a 32-bit/64-bit abstraction system. Lossless is a couple hours at most by comparison.

Also, note there are two lossless modes: the old one (profile_idc=144) and the new one (profile_idc=244). Old one is just replacing dct with a direct subtraction, while the new one involves some pixel prediction and thus is slightly trickier.
Dark Shikari is offline   Reply With Quote
Old 15th October 2009, 10:32   #90  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Dark Shikari View Post
Adding 64-bit assembly is a huge task, especially if you don't intend to do what x264 does and use a 32-bit/64-bit abstraction system. Lossless is a couple hours at most by comparison.
After I finish the DiAVC, I'll do some works to improve the x264.

Quote:
Originally Posted by Dark Shikari View Post
Also, note there are two lossless modes: the old one (profile_idc=144) and the new one (profile_idc=244). Old one is just replacing dct with a direct subtraction, while the new one involves some pixel prediction and thus is slightly trickier.
I know this, but that only add some intra-prediction function, and replace some function pointer of intra-prediction.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 10:43   #91  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,689
Quote:
Originally Posted by schweinsz View Post
After I finish the DiAVC, I'll do some works to improve the x264.
I was referring to the system for having both types of assembly; if you have to copy/paste all the assembly to get 32-bit and 64-bit versions it gets quite messy.
Quote:
Originally Posted by schweinsz View Post
I know this, but that only add some intra-prediction function, and replace some function pointer of intra-prediction.
Yup, it's not too complicated.
Dark Shikari is offline   Reply With Quote
Old 15th October 2009, 11:10   #92  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Dark Shikari View Post
I was referring to the system for having both types of assembly; if you have to copy/paste all the assembly to get 32-bit and 64-bit versions it gets quite messy.
Yes, I have understanded you. I will code all 64-bit assembly code to get fastest speed. Actually the 64-bit have more things to do because we can take a full use of the 64-bit general register.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 11:15   #93  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,689
Quote:
Originally Posted by schweinsz View Post
Yes, I have understanded you. I will code all 64-bit assembly code to get fastest speed. Actually the 64-bit have more things to do because we can take a full use of the 64-bit general register.
But on WIN64 you have the atrocious API that requires callee-save xmm6-xmm15, which seriously limits what you can do (since if you can get a 10 cycle speedup by using 8 more registers, you've probably lost performance because of the loads/stores...).

Last edited by Dark Shikari; 15th October 2009 at 11:35.
Dark Shikari is offline   Reply With Quote
Old 15th October 2009, 11:26   #94  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by Dark Shikari View Post
But on WIN64 you have the atrocious API that requires callee-save xmm5-xmm15, which seriously limits what you can do (since if you can get a 10 cycle speedup by using 8 more registers, you've probably lost performance because of the loads/stores...).
Oh, VERY bad news for me. Thank you very much. I don't know this limitation ever.
schweinsz is offline   Reply With Quote
Old 15th October 2009, 11:35   #95  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,689
Quote:
Originally Posted by schweinsz View Post
Oh, VERY bad news for me. Thank you very much. I don't know this limitation ever.
The Windows 64-bit API is very weird and you should do some research on it before you start writing assembly code.

You should look at common/x86/x86inc.asm in x264; it contains macros for handling of the three calling conventions (32-bit, 64-bit, win64). Win64 is extremely weird and is completely incompatible with all other 64-bit calling conventions (which use the standard one).

In addition to the callee-save XMM registers, it also has a different general-purpose register calling convention, probably just to annoy people.

And the above is a typo, it's xmm6-xmm15 that are callee-save.
Dark Shikari is offline   Reply With Quote
Old 17th October 2009, 18:30   #96  |  Link
squid_80
Registered User
 
Join Date: Dec 2004
Location: Melbourne, AU
Posts: 1,963
The most annoying thing is the exception handling restrictions - if you touch the stack pointer you are supposed to set up a frame pointer, have properly formed epilogs/prologs and make sure the special exception handling data is included in the binary. (I say "supposed to" because it will still run without it but if an exception/crash happens the app will be immediately terminated, even if an exception handler is meant to catch it.)

MS gets the middle finger for keeping rsi/rdi non-volatile as well.
squid_80 is offline   Reply With Quote
Old 18th October 2009, 18:22   #97  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Quote:
Originally Posted by squid_80 View Post
The most annoying thing is the exception handling restrictions - if you touch the stack pointer you are supposed to set up a frame pointer, have properly formed epilogs/prologs and make sure the special exception handling data is included in the binary. (I say "supposed to" because it will still run without it but if an exception/crash happens the app will be immediately terminated, even if an exception handler is meant to catch it.)

MS gets the middle finger for keeping rsi/rdi non-volatile as well.
The DiAVC is designed to prevent from debugging by the use of "exception handle".
schweinsz is offline   Reply With Quote
Old 29th October 2009, 08:32   #98  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Which splitter can split the dmb contents in http://samples.mplayerhq.hu/V-codecs/h264/dmb/? I found that those bitstreams crash the haali media splitter.
schweinsz is offline   Reply With Quote
Old 29th October 2009, 23:07   #99  |  Link
slavickas
I'm Shpongled
 
slavickas's Avatar
 
Join Date: Nov 2001
Location: Lithuania
Posts: 303
you may try MPC-HC splitter, though havent tested those files myself
slavickas is offline   Reply With Quote
Old 3rd November 2009, 08:14   #100  |  Link
schweinsz
Registered User
 
Join Date: Nov 2005
Posts: 497
Where can I get some H.264 bitstreams with mbaff and weighted prediction? The jm can't produce the bitstreams.
schweinsz is offline   Reply With Quote
Reply

Tags
avc, diavc, fastest decoder, h.264, software

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 23:32.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.