I wrote:
>
> > Can anyone point me at a source of information on calculating bitrates
>...
You replied:
> SVCD is a VBR (Varaible Bitrate) you cannot tell how much will fit on a
> single disk. With the mpeg2enc -S -B options you can mark the stream, in
> a way, that mplex can split it int parts.
>
Sorry I did not make a good job of explaning my needs. Yes I'm familiar with
splitting over multiple discs. What I sometimes have is say 96 minutes of
video I want on two discs or say 23 minutes on one or whatever. So I adjust
the bit rate to produce the maximum file that will just fit. Seems silly to
encode at a rate that throws away quality and uses only half the cdr or uses
two and a bit.
This is the nub. I said SVCD but truthfully since I mess with the bit rate
it's not is it? Sorry :-)
> For mor info about SVCD encoding take a look at the mjpeg-howto Section:
> Creating SVCD
Will revisit it, found it and other sources helpful in the past but creating
working 'SVCD's' and VCD's I can do. What I should have made clear is I want
to optimise the trade off between the highest bit rate ('quality', yes I know
it's much more complex) I can use against making fullest use of cdr capacity.
>...
> There is no formula, expet that the maximal allowed bitrate is 2788800
> Bit/sec. Where you can decide how much Bits you want to spend for Audio
> and Video.
I understand that with a vbr stream it's not possible to predict the exact
length of the mpegII without doing it.
However some programs seem to estimate it sufficiently well. e.g. dvd::rip
can be told the target size, media size, number of disks and estimate a
bitrate accordingly.
>...
> The BUZ still produces very high quality :)
>
> auf hoffentlich bald,
>
> Berni the Chaos of Woodquarter
Agreed :)
Michael
--------------------------------------------------------------------------------------------
P.S. The basic script I use (shamelessly adapted from scripts posted on this
group and the smilutils page), sorry about the word-wrap, is:-
#!/usr/bin/perl -w
use strict;
my $smilfile;
while($smilfile = shift()) {
if($smilfile !~ m/\.smil$/) {
print "This is not a .smil file! [$smilfile]\n";
next;
}
my $audiofile = $smilfile;
$audiofile =~ s/\.smil$/.mp2/g;
my $videofile = $smilfile;
$videofile =~ s/\.smil$/.m2v/g;
my $mpegfile = $smilfile;
$mpegfile =~ s/\.smil$//g;
print "Video transcoding : [$videofile]\n";
system("smil2yuv -i raw \"$smilfile\" | yuvdenoise -F -f | yuvscaler -v O
-O SVCD -n p | mpeg2enc -v 0 -a 2 -f 5 -b 1750 -q 3 -4 2 -2 1 -S 785 -N -V
230 -o \"$videofile\"");
print "Audio transcoding [$audiofile]\n";
system("smil2wav \"$smilfile\" | mp2enc -v 0 -b 224 -r 44100 -o
\"$audiofile\"");
print "Multiplexing [$mpegfile]\n";
system("mplex -v 0 -f 5 -m 2 -b 230 \"$audiofile\" \"$videofile\" -o
\"$mpegfile%02d\".mpg");
print "Done\n";
}
I adjust the -b between around 1600 and 3500 accordingly (my Dansai DVD player
accepts these probably wider ranges too).
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
Mjpeg-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users