So I gather SFront is currently deterministic in a given environment, and has
good chances to be deterministic across environments too when the system
rand() will be dumped.
Thanks John, this is _great_. I like SFront more and more every day :-)
John Lazzaro wrote:
>
> > Is SFront deterministic ?
>
> If you look in each Makefile in the examples, you'll
> see the "mp4test" option, which
>
> [1] generates audio from the ASCII/MIDI files
> [2] creates an MP4 bitstream
> [3] uncompressed the bitstream and creates another audio file
> [4] diffs the two audio files
>
> For all the examples, the results are byte-by-byte identical when
> compiled on the same machine, as tested on Solaris/cc and egcs/Linux/glibc.
>
> However if audio created in step 1 is compared when the same sa.c is
> compiled on two different compiler/OS/library variants, the comparison
> may not be exact -- because the "rand"
> implementations may be totally different, and so the same seed will
> not result in the same stream of random numbers (machines here meaning
> OS/compiler/library combinations). For example, RAND_MAX is the
> largest 16-bit number on Solaris/cc, but the largest 32-but number
> under ecgs/glibc/Linux ...
>
> Since the MP4-SA spec stops way short of specifying computation down
> to a bit-accurate level of the final outputs in the general case,
> however, its unclear that replacing the system rand() function with
> a custom one helps determinism very much -- however, there are other
> really good reasons to dump the system rand() in sfront, though, so
> it will happen eventually ...
>
> --jl
-- Greetings, Michel ......................................................................... Michel Jullian Directeur General email mj@exbang.com Exbang Industries S.A. Mas Chauvain route de Villeneuve tel +33(0) 499 529 878 Maurin 34970 Lattes France fax +33(0) 499 529 879 .........................................................................
This archive was generated by hypermail 2b29 : Wed May 10 2000 - 12:15:29 EDT