[MPlayer-dev-eng] 3 pass encoding syntax poll

Danny guru at digitalfantasy.it
Wed Feb 9 16:11:48 CET 2005


D Richard Felker III ha scritto:

>On Wed, Feb 09, 2005 at 10:43:39AM +0100, Danny wrote:
>  
>
>>Loren Merritt ha scritto:
>>
>>    
>>
>>>On Sat, 5 Feb 2005, Loren Merritt wrote:
>>>
>>>      
>>>
>>>>When I came up with the current syntax for N-pass encoding with lavc 
>>>>or x264 (pass=1 on the first pass, pass=3 on all subsequent), I 
>>>>though it was the most logic method: N-pass simply enables both 1st 
>>>>pass stats file and 2nd pass ratecontrol, so I used 3 == 1|2.
>>>>However, I have seen many confused users, so apparently this isn't so 
>>>>intuitive, and nobody reads the section in the manpage describing its 
>>>>usage.
>>>>So I have decided to change the syntax and/or behavior of multipass 
>>>>encoding. But since I was wrong the first time, I will now ask 
>>>>opinions before choosing a replacement.
>>>>
>>>>* Always perform N-pass encoding. (It is, after all, identical to 2-pass
>>>>if you run only one Nth pass.)
>>>>
>>>>Additionally (especially in the last option), I think it would be 
>>>>beneficial to use separate statsfiles for each pass, so that 
>>>>cancelling an encode doesn't erase the results of previous passes. 
>>>>This would require changing the -passlogfile option somehow, since 
>>>>there would be multiple files to specify. How best to go about this?
>>>>        
>>>>
>>>OK, unless there are arguments to the contrary, I will now implement:
>>>Always use N-pass encoding instead of 2-pass.
>>>The statsfilenames will be derived from the value of -passlogfile as:
>>>If the filename contains "%i", replace it with the pass number, else 
>>>append the pass number.
>>>
>>>This allows 2-pass encoding with no changes from the current syntax, 
>>>and allows N-pass encoding by simply incrementing vpass.
>>>
>>>
>>>      
>>>
>>   What about use a temporary file to store the current log and copy it 
>>on the real logfile only at the end of the encoding ?
>>
>>   In this way if you stop an encode session you have the (complete) 
>>previous log and you can start another encode, maybe with differents 
>>parameters.
>>
>>   This let you usa as many passes as you want without use a lot of log 
>>file.
>>
>>    Maybe another solution is to keep the log file in memory (if you 
>>have already a log file you know how many frames you encode). 
>>    
>>
>
>No, these are all bad! I like to read the log file with tail -f or
>less while it's encoding to watch the quantizers and make sure they
>look ok. This would be possible with a temp file, but it's a pain and
>temp files always lead to annoying misfeatures.
>
>  
>
    Also I, so keep the log stat in memory is wrong.

    We can derive the temp filename from the -passlogfile name 
(appending a '.temp') ONLY if 3-pass is selected.

>Please, can we just leave this how it is? Encoding is a complicated
>process inherently, and if people can't be bothered to learn a little
>bit before doing it, they're GUARANTEED to make crappy encodes.
>
>  
>
    I agree on (most) of this but leave complete (and correct) stat file 
is a nice (and easy) feature that can be always useful, even if only 
2-pass encoding is selected.

    We can always leave the temp file (that will be deleted at the nect 
encoding) so we got the best of both world ;-)

       Daniele Forghieri


>Rich
>
>_______________________________________________
>MPlayer-dev-eng mailing list
>MPlayer-dev-eng at mplayerhq.hu
>http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng
>
>  
>




More information about the MPlayer-dev-eng mailing list