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

Reply via email to