Hello,

I am currently writing a combination of programs to do the following:
 - Transmitter: read an MP3 file from disk, send it in separate data
chunks (still encoded, preferably smaller than 5 kB) through the
network to the transformer;
 - Transformer: decode the received data chunk, re-encode it at a
lower bitrate or as mono, send it to the receiver;
 - Receiver: decode & play the received data chunk.

I have a few questions on how to do this best:
 - The transformer operates on a single chunk at a time, not more. I
believe it would be best if the chunks would start and end on frame
borders. How do I locate frame borders in the transmitter without
decoding the MP3 file?
 - I have read on this list that a single frame can reference many (up
to 255?) previous frames. I can send multiple frames per data chunk,
but how many should I include? I'd like the data chunks to be smaller
than 5 kB each, if possible. The transformer program operates on one
data chunk at a time.
 - Is there a way to let LAME do both the decoding and re-encoding of
the received data chunks at once? (Perhaps this is what
lame_set_decode_on_the_fly() does?)

For those interested in the reason: I realize there are more efficient
ways to do this, but the programs are part of a larger framework that
adds information about the client device (e.g. whether it has only 1
speaker) to a proxy (the transformer), which will then decide if the
audio should be re-encoded to reduce client bandwidth and CPU usage
(think mobile devices like PDA's and cell phones).

Kind regards,

Tomas
_______________________________________________
mp3encoder mailing list
mp3encoder@minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/mp3encoder

Reply via email to