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
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd June 2011, 23:00   #1641  |  Link
xv
Registered User
 
Join Date: Mar 2010
Posts: 98
It seems Dark Shikari completed 4:4:4 in x264. Iīve updated and improved my patch for that.
Added:
-Add support for BGRA and RGB (only BGR before)
Fixed:
-Removed some debug lines included in previous patch
-Removed original code instead commenting
-VFLIP bug fixed (was caused by x264_frame_internal_csp) and support for not-flipped RGB colorspaces
-Found code where x264 lowers quality of U/V planes for I444 input, but not for YV24. Changed to I444/YV24, but not RGB.

4:4:4 works great for me, but I wonīt upload a binary, because I donīt know if Dark Shikari likes the idea to have binaries of his development branch here (if he says itīs ok Iīll post a link). Also current ffdshow builds crashes on 4:4:4 files, you can use latest ffmpeg to decode.
Attached Files
File Type: zip x264_rgb-2.zip (3.4 KB, 45 views)

Last edited by xv; 22nd June 2011 at 23:02. Reason: Forget patch...
xv is offline   Reply With Quote
Old 23rd June 2011, 00:11   #1642  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,666
Binaries are okay, but please submit these patches on IRC; my 4:4:4 has lots of bugs and fixes/improvements are welcome.

By the way, G should probably be in the Y plane, for purposes of motion estimation.
Dark Shikari is offline   Reply With Quote
Old 23rd June 2011, 00:41   #1643  |  Link
xv
Registered User
 
Join Date: Mar 2010
Posts: 98
Link to binary: http://www.mediafire.com/?xagqd6o6t026o7y (most likely buggy! Use it for testing only!)
Quote:
Originally Posted by Dark Shikari View Post
By the way, G should probably be in the Y plane, for purposes of motion estimation.
Yes, it is Y=G, Cb=B and Cr=R. Itīs defined in E.2.1 VUI Parameter Semantics (page 379 in 3/2010 standard).

There is also a very interesting system for lossless RGB->YCoCg transform, but it does not work with x264 (yet?), because it needs 1 bit more chroma precision than luma (8 Bit RGB will be converted lossless to 8 Bit Y, 9 Bit Co and 9 Bit Cg). The YCoCg colorspace is similar to normal YCbCr, but designed for better compressibility instead of being based on analog PAL/NTSC transforms, and there is the option of lossless RGB conversion that needs increased chroma precision.
xv is offline   Reply With Quote
Old 23rd June 2011, 00:43   #1644  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,666
Can you come on IRC (x264-devel on Freenode) to discuss and submit your patches?
Dark Shikari is offline   Reply With Quote
Old 27th June 2011, 12:54   #1645  |  Link
Anakunda
Registered User
 
Join Date: Jan 2010
Posts: 330
I have a feature request, called AUTORESUME. I had several long runs (counting tens of hours in total) whose some of them were interrupted by system crash. A facility to periodically save state to some temporary file and enabling to fully resume on broken process would spend much time in such a cases. If the encoder builds encoding on previous frames it wouldnot be problem to go that amount of frames back , still better than start again from scratch.
Anakunda is offline   Reply With Quote
Old 27th June 2011, 13:43   #1646  |  Link
mandarinka
Registered User
 
mandarinka's Avatar
 
Join Date: Jan 2007
Posts: 729
1) Mux the result to mkv.
2) Cut off the part from last keyframe till end. (Use mkvmerge splititng after timecode for this. You can look up the keyframe in f.e. aegisub or guess based on scenechanges).
3) Encode the mising part using crf (use raw .264 as output or demux afterwards).
4) Demux first streams to raw ES.
5)
Code:
copy /B part1_crashed.264+part2.264 combined.264
6) mux...
mandarinka is offline   Reply With Quote
Old 28th June 2011, 08:17   #1647  |  Link
jpsdr
Registered User
 
Join Date: Oct 2002
Location: France
Posts: 2,316
If you have crashes, you may have a problem somewhere else. I often make encodes wich takes days, and never had any trouble, neither less crashes.
jpsdr is offline   Reply With Quote
Old 3rd July 2011, 04:44   #1648  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,783
Quote:
Originally Posted by 3ds View Post
Btw. the --fullhelp about --bluray-compat should list the parameters that would be set (e.g.: http://forum.doom9.org/showthread.ph...13#post1493513 )
I still agree....

http://paste.frubar.net/13902 -- probably not yet valid. Please check.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid

Last edited by LigH; 3rd July 2011 at 06:25.
LigH is offline   Reply With Quote
Old 4th July 2011, 15:41   #1649  |  Link
DVD Logic
Registered User
 
Join Date: Sep 2004
Location: Ukraine
Posts: 77
Hi all!

Can anybody please provide detailed B-pyramid structure description or AVC specification with such description ?

Send please to support@dvd-logic.com

Thanks,
Valery.
DVD Logic is offline   Reply With Quote
Old 4th July 2011, 19:38   #1650  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 707
Quote:
Originally Posted by DVD Logic View Post
Hi all!

Can anybody please provide detailed B-pyramid structure description or AVC specification with such description ?

Send please to support@dvd-logic.com

Thanks,
Valery.
This isn't actually answering your question, but for Blu-Ray you shouldn't care much about that - you should just follow the information in the picture_timing_sei for muxing.
kieranrk is offline   Reply With Quote
Old 4th July 2011, 19:43   #1651  |  Link
DVD Logic
Registered User
 
Join Date: Sep 2004
Location: Ukraine
Posts: 77
Ok. Thanks!

Anyway, just interesting where I can find detailed and accurate description of B-Pyramid for x264?

Regards,
Valery.
DVD Logic is offline   Reply With Quote
Old 4th July 2011, 21:03   #1652  |  Link
burfadel
Registered User
 
Join Date: Aug 2006
Posts: 2,229
Looking at the code for 4:4:4 encoding support, it looks like a fair amount of code for normal encoding has changed too. I'm just curious about effect these changes will have on ordinary YV12 encoding?
Will it be:
- None, as I misinterpreted what I read?
- No differences in speed or output
- Slight speed difference but same output?
- Same speed but slightly different output?
- Slightly different speed and output?

I realise a change in output may somewhat equate to different speed, I was more referring to 'slight' as being slightly noticeable, not 0.1 percent!

Just curious
burfadel is offline   Reply With Quote
Old 4th July 2011, 21:33   #1653  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,666
Quote:
Originally Posted by burfadel View Post
Looking at the code for 4:4:4 encoding support, it looks like a fair amount of code for normal encoding has changed too. I'm just curious about effect these changes will have on ordinary YV12 encoding?
Will it be:
- None, as I misinterpreted what I read?
- No differences in speed or output
- Slight speed difference but same output?
- Same speed but slightly different output?
- Slightly different speed and output?

I realise a change in output may somewhat equate to different speed, I was more referring to 'slight' as being slightly noticeable, not 0.1 percent!

Just curious
Output should not change at all; this is part of my regression-testing.

It will probably be marginally slower. I templated all the parts of the code that had significant slowdowns (CABAC, macroblock_encode) to avoid significant speed loss.
Dark Shikari is offline   Reply With Quote
Old 4th July 2011, 23:35   #1654  |  Link
burfadel
Registered User
 
Join Date: Aug 2006
Posts: 2,229
I guess marginally slower and a slight change in output wouldn't matter as long as its not a drop in quality Its quite an impressive amount of code! If it is a little slower, would probably be a good time to release any speed improvements there might be at the same time to help cancel it out. I'm just thinking on the spot here of course, but I'm thinking if people notice a slowdown this thread might get bombarded! Alternatively, if there are any quality tweaks/improvements, that would also help to cancel peoples opinions

That said, thankyou for the work and effort put into x264, its easy to see its a great quality program (the code, quality and speed of results etc) and I personally don't think there are too many programs that would even come close to x264's all-round level when you consider every factor of the program.
burfadel is offline   Reply With Quote
Old 5th July 2011, 10:52   #1655  |  Link
DVD Logic
Registered User
 
Join Date: Sep 2004
Location: Ukraine
Posts: 77
Quote:
Originally Posted by kieranrk View Post
This isn't actually answering your question, but for Blu-Ray you shouldn't care much about that - you should just follow the information in the picture_timing_sei for muxing.
Not all encoders set correct PTS value to picture_timing_sei field. We calculate DTS and PTS "manually", but with B-pyramids we can't calculate accurate value. Would you please help, dear developers, what algorithm can detect that B-pyramids are present in AVC. As we can't find any info about B-pyramids in H264 specification.

Last edited by DVD Logic; 5th July 2011 at 10:56.
DVD Logic is offline   Reply With Quote
Old 5th July 2011, 10:56   #1656  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 707
Quote:
Originally Posted by DVD Logic View Post
Not all encoders set correct PTS value to picture_timing_sei field. We calculate DTS and PTS "manually", but with B-pyramids we can't calculate accurate value. Would you please help what algorithm can detect that B-pyramids are present in AVC. As we can't find any info about B-pyramids in H264 specification.
Don't do this...If the encoder does not set correct values then you should fail and tell the user to encode using Blu-Ray settings. Silly hacks like this will not work properly as seen by tsmuxer.
kieranrk is offline   Reply With Quote
Old 5th July 2011, 10:59   #1657  |  Link
DVD Logic
Registered User
 
Join Date: Sep 2004
Location: Ukraine
Posts: 77
tsMuxer works fine with B-pyramids.
DVD Logic is offline   Reply With Quote
Old 5th July 2011, 11:40   #1658  |  Link
kieranrk
Registered User
 
Join Date: Jun 2009
Location: London, United Kingdom
Posts: 707
Quote:
Originally Posted by DVD Logic View Post
tsMuxer works fine with B-pyramids.
The hacks it uses fail with pulldown though.
kieranrk is offline   Reply With Quote
Old 8th July 2011, 03:54   #1659  |  Link
dstln
Person
 
dstln's Avatar
 
Join Date: Jul 2009
Posts: 58
I think I've told this to you guys before when I had similar problems, but directly encoding from .avi fraps is again broken in x264. Now it even manages to crash x264 after indexing :O Using avisynth as the intermediary instead of ffms/lavf again works fine. I'm not sure of exactly the point that it's crashing when I try directly.

Using the latest x264 along with fraps 3.40. I'm guessing fraps updates their codec fairly regularly...
dstln is offline   Reply With Quote
Old 8th July 2011, 04:30   #1660  |  Link
Snowknight26
Registered User
 
Join Date: Aug 2007
Posts: 1,430
Works fine here using latest x264 revision/Fraps. Update your Fraps.
Snowknight26 is offline   Reply With Quote
Reply

Tags
coding, development, x264 dev


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 21:04.


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