I need to implement a feature that could transmit parts of a large mp3 file over the TCP/IP in a way that would allow user to listen each part without having the entire file (using libmpg123). I would like to allow users to transmit parts as small as possible without re-encoding the stream. I would like to forget about re-encoding, because i don't want sound quality to degrade with each transmission. Each time i want to cut mp3 i do have the splitting coordinates in samples: "from what sample to what sample", so each time i should translate this to an IDs of an mp3-frames. So my question is:
You can just cut binary file! The only problem of this solution... problem with Tags
Or try this: http://www.codeproject.com/Articles/8295/MPEG-Audio-Frame-Header