Thread
:
tablet-encode 2.20
View Single Post
Frank Banul
2008-12-31 , 20:28
Posts: 398 | Thanked: 301 times | Joined on Sep 2007 @ Texas
#
1
Hi,
I was using tablet-encode for the first time today on a Mac and wanted to share some things that will hopefully help others save time.
I found that I had to build mencoder from source as I couldn't find an up to date binary. No big deal, default options are fine.
Perl is present by default so I didn't have to install that.
From here I tried to convert a DVD I had ripped to my hard drive. It wasn't obvious to me that I didn't need to tell mencoder to use the -dvd-device option as tablet-encode will detect this case based on the prescence of the VIDEO_TS folder. Nice touch but I missed this in the documentation.
Having figured that out, I then tried a best preset conversion and got a zero length file. There were some cryptic errors on the console but nothing too helpful. I finally tried running the same command line outside of tablet-encode and found that the lavc audio encoder wouldn't handle mp3.
It would be nicer if tablet-encode and mencoder gave the same output as it seems tablet-encode suppresses some useful information. In this case I found that I needed to install lame.
Back to google, compile from source, install lame.
Now tablet-encode finds that mencoder supports mp3lame and tries to use it. This resulted in another silent failure of mencoder for me. But I found that if I instead used lavc and told it to use libmp3lame that it then worked.
if ($options{'copy-audio'} or (($info->{aformat} || '') eq '85') && (($info->{abitrate} || 0) <= $preset->{abitrate})) {
push @params, '-oac', 'copy';
$af = '';
#} elsif (&mencoderSupports('oac')->{'mp3lame'}) {
# push @params, '-oac', 'mp3lame',
# '-lameopts', 'vbr=0:br='.$preset->{abitrate}.
# ($preset->{abitrate} < 64 ? ':mode=3' : '');
} else {
push @params, '-oac', 'lavc', '-lavcopts', 'acodec=libmp3lame:abitrate='.$preset->{abitrate};
}
Finally I had an avi and I tried several of the presets.
But not being satisfied with less than perfect, I tried 2 pass encoding and again found a silent failure. Running from the command line I found that mencoder didn't like a non zero minimum bit rate.
[mpeg4 @ 0x1023800]Warning min_rate > 0 but min_rate != max_rate isn't recommended!
[mpeg4 @ 0x1023800][lavc rc] Error: bitrate too low for this video with these parameters.
Could not open codec.
So I made the minimum rate zero.
':vrc_buf_size=450'.
#':vrc_minrate='.int($ovbitrate / 2).
':vrc_minrate='.int(0).
':vrc_maxrate='.max($ovbitrate * 1.25, 1000);
And now I can do a two pass encode.
I'm not sure why the player would require a minimum bit rate but I suppose it's possible.
Frank
Quote & Reply
|
Frank Banul
View Public Profile
Send a private message to Frank Banul
Find all posts by Frank Banul