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

Reply
 
Thread Tools Search this Thread Display Modes
Old 18th February 2003, 15:34   #1  |  Link
RMCF
Registered User
 
Join Date: Feb 2003
Location: Chamartin
Posts: 39
Which resolution would you choose here...

Which option would you think will give superior quality for TV playback.

100% quality at 640xwhatever with b-frames.
or
100% quality at 572xwhatever without b-frames.

Regards
RMCF is offline   Reply With Quote
Old 18th February 2003, 15:56   #2  |  Link
hakko504
Remember Rule One
 
hakko504's Avatar
 
Join Date: Oct 2001
Location: SWEDEN
Posts: 1,611
640xyyy with b-frames.

Always enable b-frames. You won't notice the slightly lower quality of the b-frames when you playback the video. In fact, the p-frames will be of slightly higher quality if you enable b-frames. (strange but true)
__________________
/hakko

http://www.boardgamegeek.com
hakko504 is offline   Reply With Quote
Old 18th February 2003, 23:05   #3  |  Link
RMCF
Registered User
 
Join Date: Feb 2003
Location: Chamartin
Posts: 39
Thanks.

I forgot to mention to use 5.0.2 since 0.3 bframes are messed up badly for me.
RMCF is offline   Reply With Quote
Old 25th February 2003, 01:21   #4  |  Link
RMCF
Registered User
 
Join Date: Feb 2003
Location: Chamartin
Posts: 39
Quote:
Originally posted by hakko504
640xyyy with b-frames.

Always enable b-frames. You won't notice the slightly lower quality of the b-frames when you playback the video. In fact, the p-frames will be of slightly higher quality if you enable b-frames. (strange but true)
Are you sure that P-frames will be higher quality even if I use 100% quality already?

Regards
RMCF is offline   Reply With Quote
Old 25th February 2003, 07:52   #5  |  Link
hakko504
Remember Rule One
 
hakko504's Avatar
 
Join Date: Oct 2001
Location: SWEDEN
Posts: 1,611
Quote:
Originally posted by RMCF
Are you sure that P-frames will be higher quality even if I use 100% quality already?
Yes, but at that high % it will probably not be noticable. There is a mathematical theorem behind my last statement, which basically means that the more P-frames in sucession without a keyframe, the larger the staistical error will be. Since there is twice as many keyframes in sucession if you don't use b-frames the error will be higher if you don't enable b-frames. I can recommend a course in statistical processes (or similar, don't know hat it is called in english) if you want the details.
__________________
/hakko

http://www.boardgamegeek.com
hakko504 is offline   Reply With Quote
Old 25th February 2003, 14:51   #6  |  Link
RMCF
Registered User
 
Join Date: Feb 2003
Location: Chamartin
Posts: 39
D***, complicated.

I thought that b-frames were 4quant while the rest were 2quant.

Interesting to read your answers.

Regards

Last edited by hakko504; 25th February 2003 at 15:07.
RMCF is offline   Reply With Quote
Old 25th February 2003, 15:06   #7  |  Link
hakko504
Remember Rule One
 
hakko504's Avatar
 
Join Date: Oct 2001
Location: SWEDEN
Posts: 1,611
Quote:
Originally posted by RMCF
I thought that b-frames were 4quant while the rest were 2quant.
They are, but quantizers aren't the only thing affecting quality.

Conclusion: turning b-frames on will increase the quality of half the frames (the p-frames) but lower the quality of the rest (the ones who become b-frames). I-frames remain unchanged.


Oh, and keep your language down.
__________________
/hakko

http://www.boardgamegeek.com
hakko504 is offline   Reply With Quote
Old 25th February 2003, 16:28   #8  |  Link
Manao
Registered User
 
Join Date: Jan 2002
Location: France
Posts: 2,856
@hakko504 : your assertion is kind of surprising. Let's say f is derivable at least one time ( we are between two keyframes ), and that we want to code the serie f(0), f(a), f(2a) ... f(na) with the serie f(0), f(a)-(0), ... f(na)-f(na-a), and that we make an error En on each difference f(na)-f(na-a). This error is a fraction of f(na)-f(na-a), which we can max with max(f')*e, where e doesn't depend of n ( but of the way the error is produced and of a )

At the nth frame, the maximal error is n*e*max(f'), so your assertion is true, if e does not depend of a, or at most linearly. But it has to, and if I don't know how, I'm however almost convinced that it's more than linear.

Since you are pretty confident with your assertion, I'm must have done something wrong or forgotten something. But I don't see what. Could you enlighten me ?
Manao is offline   Reply With Quote
Old 25th February 2003, 16:54   #9  |  Link
hakko504
Remember Rule One
 
hakko504's Avatar
 
Join Date: Oct 2001
Location: SWEDEN
Posts: 1,611
Let's say that we are going to code one second of NTSC video, i.e. 29 frames. The first one is an I-frame, leaving 28 other frames.
disabling b-frames would give us 28 p-frames, and the following series to encode: f(a)-f(0),f(2a)-f(a),...,f(28a)-f(27a)
enabling b-frames would give us 14 p-frames, and the following series to encode: f(2a)-f(0),f(4a)-f(2a),...,f(28a)-f(26a)

When Q=2 we can make the assumption you make, i.e. the error is e*(f') per frame and the maximal error at final frame is n*e*max(f'). In the first case, b-frames disabled, n=28 thus max error = 28*e*max(f'), but when you enable b-frames, n becomes 14(!) and thus max error = 14*e*max(f').

And the b-frames can be assumed to be encoded as f(2a-1)-0.5(f(2a)+f(2a-2)), and with Q=4 they can be thought of as having a max error of (4/2)*(4a-2)*e*max(f') (I think this is correct, I'm doing this from memory)

The main point anyway is that the error will slightly depend on the number of frames encoded as p-frames, and if you enable b-frames, there will be less p-frames to encode, so if you compare the frames frame by frame, for those frames that are p-frames in both sequences, the ones in the b-frame enabled sequence will be of a little better quality.
__________________
/hakko

http://www.boardgamegeek.com
hakko504 is offline   Reply With Quote
Old 25th February 2003, 21:32   #10  |  Link
Manao
Registered User
 
Join Date: Jan 2002
Location: France
Posts: 2,856
I disagree with your calculations : let be a little more precise on e. In the first case ( f(0), f(a) ... ), we can write the error for the nth frame like this : En = e(f,a)*|f(na) - f(na-a)| <= e(f,a)*max(|f'|)*a, which give for the last frame an error of

n*e(f,a)*max(f')*a

In the second case, En = e(f,2a)*max(f')*2a, thus the final error is

n/2 * e(f,2a)*max(f')*2a = n*e(f,2a)*max(f')*a

In first approximation, we can take e(f,a) = e(f), since we don't know to what kind of error we will be faced. In this case, the amount of error in the last frame of the two series is the same. But I didn't look to hard on the dependency in a of e(f,a), because it would complicate the problem a lot ( we have to introduce the fact that f(t) is a picture, not a single value, and I don't like fourier's series ).
Manao is offline   Reply With Quote
Old 25th February 2003, 22:04   #11  |  Link
DJ Bobo
Encoding Dinosaur!
 
DJ Bobo's Avatar
 
Join Date: Oct 2001
Location: Europe
Posts: 1,668
Choose the resolution WITHOUT b-frames!
Because bidiretional encoding lowers quality visually for high bitrate encodings: walls will be more blocky.

So stick with 576x... without b-frames!
DJ Bobo is offline   Reply With Quote
Old 27th February 2003, 15:46   #12  |  Link
RMCF
Registered User
 
Join Date: Feb 2003
Location: Chamartin
Posts: 39
After some testing I agree with DJ Bobo. B-Frames give nightmare wall texture which dance and artifact galore.

I guess I am switching to 5.0.3 Pro for n-pass business.

EDIT: On second thought I will stick with 502

Regards

Last edited by RMCF; 27th February 2003 at 16:49.
RMCF is offline   Reply With Quote
Reply


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 00:44.


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