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 16th January 2010, 18:58   #1  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
NAL HRD has been committed!

Patch has now been committed.

Features
  • Writing of pic_timing and buffering_period SEI units as required by Blu-Ray etc.
  • libx264 returns hrd timing information. This means muxers don't have to parse the bitstream to utilise this information (new)
  • CBR (filler rbsp) and VBR HRD
  • Valid support for pulldown
  • VFR VBV and VFR ratecontrol

Last edited by kieranrk; 30th March 2010 at 20:52.
kieranrk is offline   Reply With Quote
Old 16th January 2010, 19:09   #2  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 4,946
"pthreadGC2.dll not found" on start even with standard settings. Windows XP SP3.
sneaker_ger is offline   Reply With Quote
Old 16th January 2010, 19:31   #3  |  Link
bnshrdr
Registered User
 
Join Date: Jun 2009
Location: Indianapolis, IN
Posts: 103
Quote:
Originally Posted by sneaker_ger View Post
"pthreadGC2.dll not found" on start even with standard settings. Windows XP SP3.
You will need to either obtain the specified pthread dll or use the patch to compile your own static x264 build. The OP hast just provided a x264 build with that dependency.

@kieranrk: Also what else is in your binary, just vanilla + your patch?
bnshrdr is offline   Reply With Quote
Old 16th January 2010, 19:47   #4  |  Link
moviefan
Registered User
 
Join Date: Jul 2005
Posts: 438
What is the difference of this patch to the x264_hrd_interlace_xxxx.diff?
moviefan is offline   Reply With Quote
Old 16th January 2010, 19:49   #5  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 4,946
Thx, works now. (Get pthreadGC2.dll here, if anyone else needs it)
sneaker_ger is offline   Reply With Quote
Old 16th January 2010, 20:02   #6  |  Link
shon3i
BluRay Maniac
 
shon3i's Avatar
 
Join Date: Dec 2005
Posts: 2,426
Quote:
Originally Posted by moviefan View Post
What is the difference of this patch to the x264_hrd_interlace_xxxx.diff?
and

1. Who is author
2. Did this patch are completly different to Alex or Trahald
3. Did you work for x264 team? i mean did this after some testing get finaly into git. I won't give my feedback if this is another try. I want to know if this is for merging into git.
4. please somebody do a normal compile
shon3i is offline   Reply With Quote
Old 16th January 2010, 20:18   #7  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
Quote:
Originally Posted by moviefan View Post
What is the difference of this patch to the x264_hrd_interlace_xxxx.diff?
Cleaned up and minor things fixed up.

Quote:
1. Who is author
2. Did this patch are completly different to Alex or Trahald
3. Did you work for x264 team? i mean did this after some testing get finaly into git. I won't give my feedback if this is another try. I want to know if this is for merging into git.
4. please somebody do a normal compile
1/2 - Zmgorynych == Alex Giladi. I added the hrd timing parts.
3. Yes. Yes this is for merging into git. Alex isn't going to be around much so I'm going to push to get this patch merged.
4. Sorry about that. EDIT: new one should be static.

Quote:
@kieranrk: Also what else is in your binary, just vanilla + your patch?
Yes. Just vanilla and the patch.

Last edited by kieranrk; 16th January 2010 at 20:44.
kieranrk is offline   Reply With Quote
Old 16th January 2010, 21:03   #8  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 4,946
New build works fine without the dll. Two typos in the help:
Quote:
--nal-hrd, Signal HRD information (needed e.g. for blu-ray compliance
requires vbv-maxrate and vbv-bufsize
1. ","
2. missing ")"
sneaker_ger is offline   Reply With Quote
Old 17th January 2010, 09:35   #9  |  Link
VFR maniac
Spinner of yarns
 
VFR maniac's Avatar
 
Join Date: May 2009
Posts: 164
Hi Kieranrk, your patch doesn't write Buffering Period SEI unless the muxer is raw.
__________________
僕と契約して、L-SMASH developerになってよ!
L-SMASH | L-SMASH Works | Opus-in-ISOBMFF specification and reference software

Last edited by VFR maniac; 17th January 2010 at 09:43.
VFR maniac is offline   Reply With Quote
Old 19th January 2010, 01:06   #10  |  Link
shon3i
BluRay Maniac
 
shon3i's Avatar
 
Join Date: Dec 2005
Posts: 2,426
Ok, patch working corectly, muxing passes, BD verification passes. What we need to test more?
shon3i is offline   Reply With Quote
Old 19th January 2010, 01:31   #11  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
Quote:
Originally Posted by shon3i View Post
Ok, patch working corectly, muxing passes, BD verification passes. What we need to test more?
I've changed it a bit now, fixed some bugs and am adding CBR HRD. Possibly this might have introduced a bug so I'll upload a new patch either tonight or tomorrow.

Last edited by kieranrk; 19th January 2010 at 01:34.
kieranrk is offline   Reply With Quote
Old 21st January 2010, 16:13   #12  |  Link
komisar
Registered User
 
komisar's Avatar
 
Join Date: Aug 2008
Location: Minsk, Belarus
Posts: 235
kieranrk, build 1400 version of x264 with you patch get failure...
checkasm report:
Code:
x264: SSSE3
 - pixel ssd :           [OK]
 - pixel satd :          [OK]
 - pixel sa8d :          [OK]
 - pixel var2 :          [OK]
 - pixel hadamard_ac :   [OK]
 - intra satd_x3 :       [OK]
 - intra sad_x3 :        [OK]
 - esa ads:              [OK]
 - sub_dct4 :            [OK]
 - sub_dct8 :            [OK]
 - add_idct4 :           [OK]
 - zigzag_frame :        [OK]
 - zigzag_field :        [OK]
 - mc chroma :           [OK]
 - mc wpredb :           [OK]
 - hpel filter :         [OK]
 - lowres init :         [OK]
predict_16x16[3] :  [FAILED]
30 69 9d 71 4d 5d 71 a0 c4 b1 8d 86 a0 af 9e ae cf
4e 51 57 5d 62 68 6e 74 7a 80 86 8c 92 98 9e a3 a9
8f 58 5e 64 6a 70 76 7c 81 87 8d 93 99 9f a5 ab b1
85 5f 65 6b 71 77 7d 83 89 8f 95 9b a0 a6 ac b2 b8
37 67 6d 73 79 7e 84 8a 90 96 9c a2 a8 ae b4 b9 bf
2d 6e 74 7a 80 86 8c 92 97 9d a3 a9 af b5 bb c1 c7
70 75 7b 81 87 8d 93 99 9f a5 ab b1 b6 bc c2 c8 ce
87 7d 83 89 8f 94 9a a0 a6 ac b2 b8 be c4 ca d0 d5
5d 84 8a 90 96 9c a2 a8 ae b3 b9 bf c5 cb d1 d7 dd
 0 8c 91 97 9d a3 a9 af b5 bb c1 c7 cc d2 d8 de e4
 0 93 99 9f a5 aa b0 b6 bc c2 c8 ce d4 da e0 e6 eb
 1 9a a0 a6 ac b2 b8 be c4 c9 cf d5 db e1 e7 ed f3
 0 a2 a7 ad b3 b9 bf c5 cb d1 d7 dd e3 e8 ee f4 fa
 0 a9 af b5 bb c1 c6 cc d2 d8 de e4 ea f0 f6 fc ff
 0 b0 b6 bc c2 c8 ce d4 da df e5 eb f1 f7 fd ff ff
 0 b8 bd c3 c9 cf d5 db e1 e7 ed f3 f9 fe ff ff ff
 0 bf c5 cb d1 d7 dc e2 e8 ee f4 fa ff ff ff ff ff

   4b 52 59 5f 66 6d 73 7a 81 88 8e 95 9c a2 a9 b0
   52 59 60 67 6d 74 7b 81 88 8f 96 9c a3 aa b0 b7
   5a 60 67 6e 75 7b 82 89 90 96 9d a4 aa b1 b8 bf
   61 68 6f 75 7c 83 89 90 97 9e a4 ab b2 b8 bf c6
   68 6f 76 7d 83 8a 91 97 9e a5 ac b2 b9 c0 c7 cd
   70 77 7d 84 8b 91 98 9f a6 ac b3 ba c0 c7 ce d5
   77 7e 85 8b 92 99 9f a6 ad b4 ba c1 c8 ce d5 dc
   7e 85 8c 93 99 a0 a7 ae b4 bb c2 c8 cf d6 dd e3
   86 8d 93 9a a1 a7 ae b5 bc c2 c9 d0 d6 dd e4 eb
   8d 94 9b a1 a8 af b5 bc c3 ca d0 d7 de e5 eb f2
   95 9b a2 a9 af b6 bd c4 ca d1 d8 de e5 ec f3 f9
   9c a3 a9 b0 b7 bd c4 cb d2 d8 df e6 ec f3 fa ff
   a3 aa b1 b7 be c5 cc d2 d9 e0 e6 ed f4 fb ff ff
   ab b1 b8 bf c5 cc d3 da e0 e7 ee f4 fb ff ff ff
   b2 b9 bf c6 cd d3 da e1 e8 ee f5 fc ff ff ff ff
   b9 c0 c7 cd d4 db e2 e8 ef f6 fc ff ff ff ff ff
 - intra pred :          [FAILED]
 - quant :               [OK]
 - denoise dct :         [OK]
 - decimate_score :      [OK]
P.S. huh, maybe this is not nal-hrd-patch... investigation continues...
P.P.S. apparently I broke intel-support patch... sorry...
__________________
..::[I am live here]..::..[My x264 CLI/VFW builds and tools]::..

Last edited by komisar; 21st January 2010 at 17:08.
komisar is offline   Reply With Quote
Old 26th January 2010, 03:23   #13  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
Please test this new revision to make sure I haven't broke anything.

There are a few things left and it should be ready for final review.
kieranrk is offline   Reply With Quote
Old 27th January 2010, 00:06   #14  |  Link
shon3i
BluRay Maniac
 
shon3i's Avatar
 
Join Date: Dec 2005
Posts: 2,426
I just successfully produced two Blu-ray movies . Tell me about CBR-HRD what is recommendation for ratecontrol? With CRF i can't specify bitrate, is it only for ABR and 2pass, and what is advantage of CBR instead VBR HRD
shon3i is offline   Reply With Quote
Old 27th January 2010, 00:30   #15  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,690
Quote:
Originally Posted by shon3i View Post
I just successfully produced two Blu-ray movies . Tell me about CBR-HRD what is recommendation for ratecontrol? With CRF i can't specify bitrate, is it only for ABR and 2pass, and what is advantage of CBR instead VBR HRD
CBR HRD implies filler bytes; it is not necessary or recommended for Blu-ray.
Dark Shikari is offline   Reply With Quote
Old 29th January 2010, 17:50   #16  |  Link
mopurist
Registered User
 
Join Date: Sep 2007
Posts: 12
patch not found at pastebin

When I try http://pastebin.com/d51413f02 pastebin says "Unknown post id, it may have expired or been deleted."

Is there a new version about? Merged into git? Anyone care to share?

Thanks.
mopurist is offline   Reply With Quote
Old 29th January 2010, 23:59   #17  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
Quote:
Originally Posted by mopurist View Post
When I try http://pastebin.com/d51413f02 pastebin says "Unknown post id, it may have expired or been deleted."

Is there a new version about? Merged into git? Anyone care to share?

Thanks.
I probably set the expiration date too soon.

See: http://pastebin.com/m44061f19

(some minor changes)
kieranrk is offline   Reply With Quote
Old 30th January 2010, 00:23   #18  |  Link
VFR maniac
Spinner of yarns
 
VFR maniac's Avatar
 
Join Date: May 2009
Posts: 164
Quote:
Originally Posted by kieranrk View Post
bs_realign is missing...
__________________
僕と契約して、L-SMASH developerになってよ!
L-SMASH | L-SMASH Works | Opus-in-ISOBMFF specification and reference software
VFR maniac is offline   Reply With Quote
Old 30th January 2010, 01:09   #19  |  Link
mp3dom
Registered User
 
Join Date: Jul 2003
Location: Italy
Posts: 994
I don't know which BD verifier were used by shon3i, anyway I've made an encode with x264+1.1 NAL-HRD (the version at the 1st post) on the Elephant's Dream video. Using the Interra BDQuest Verifier it gave me 3 fatal errors. I must say that Scenarist MUI Generator (and Scenarist itself) accepts and mux without problems.
I've activated the --nal-hrd, --slices 4 and --aud, fps were 24p and resolution were 1920x1080 (obviously)
The error output of BDQuest says:
- 'pict_struct_present_flag', expected (1), found (0)
- Compression Ratio (CR) is less than MinCR (4). Number of bytes in NAL unit (1096693) is more than the maximum limit (983040)
- 'slice_type' in 'I Type' picture must be (7), found (2)

Regarding the first error (pict_struct_present_flag) I've see that in this x264 version there's a specific flag (--pict-struct) that is enabled by default for interlaced footage... Could be that it is mandatory for bluray?
I've got 8 errors regarding the "Compression Ratio (CR) is less than etc. etc. etc.". In every error the NAL unit value change and it's value is always bigger than the maximum limit of 983040.
About the third error, I want to say that this error appear even on encodes made by CineVision or the Scenarist Still Image Encoder. I think that this error could be ignored...

Hope this helps!
Thanks!

Last edited by mp3dom; 30th January 2010 at 01:27.
mp3dom is offline   Reply With Quote
Old 30th January 2010, 01:29   #20  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 713
Quote:
Originally Posted by VFR maniac View Post
bs_realign is missing...
Forgot about that. Will post a corrected one.

Quote:
Regarding the first error (pict_struct_present_flag) I've see that in this x264 version there's a specific flag (--pict-struct) that is enabled by default for interlaced footage... Could be that it is mandatory for bluray?
Presumably so. (See the spec )

Quote:
I've got 8 errors regarding the "Compression Ratio (CR) is less than etc. etc. etc.". In every error the NAL unit value change and it's value is always bigger than the maximum limit of 983040.
Not sure about this one; I'm double checking the H.264 spec about this. Try with the new patch and build I will post in a second to double check it isn't related to the bitstream issues.

Last edited by kieranrk; 30th January 2010 at 01:40.
kieranrk is offline   Reply With Quote
Reply

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 13:48.


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