A method for embedding a stream of compressed audio frames (d1, d2, d3) into data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) of a data stream, comprising: embedding, by an encoder, the stream of compressed audio frames (d1, d2, d3) into a series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) of the data stream, wherein each data segment in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) comprises compressed audio payload data (Xo... X m) and an information block (302, 304, 306, 600), wherein at least one data segment (Seg#-1, Seg#3) in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) is embedded with portions of two compressed audio frames (d1, d2, d3) in the stream of compressed audio frames (d1, d2, d3), wherein the information block (302, 304, 306, 600) comprises audio frame boundary information (transport_header(), audio_frame_start, 610)), wherein the audio frame boundary information (transport _header(), audio_frame_start, 610) identifies frame boundaries of a plurality of compressed audio frames (d1, d2, d3), wherein a plurality of data segments in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) contains the plurality of compressed audio frames (d1, d2, d3); and transmitting, by the encoder, the data stream comprising the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) to a decoding device, wherein the audio frame boundary information (transport_header() audio _frame _start, 610) is stored in the information blocks (302, 304, 306, 600) of the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520), and wherein the audio frame boundary information (transport_header(), audio_frame_start, 610) is used by the decoding device to perform re-synchronization with time alignment at the decoding device in case of transmission errors. embedding, by an encoder, the stream of compressed audio frames (d1, d2, d3) into a series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) of the data stream, wherein each data segment in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) comprises compressed audio payload data (Xo... X m) and an information block (302, 304, 306, 600), wherein at least one data segment (Seg#-1, Seg#3) in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) is embedded with portions of two compressed audio frames (d1, d2, d3) in the stream of compressed audio frames (d1, d2, d3), wherein the information block (302, 304, 306, 600) comprises audio frame boundary information (transport_header(), audio_frame_start, 610)), wherein the audio frame boundary information (transport _header(), audio_frame_start, 610) identifies frame boundaries of a plurality of compressed audio frames (d1, d2, d3), wherein a plurality of data segments in the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) contains the plurality of compressed audio frames (d1, d2, d3); and transmitting, by the encoder, the data stream comprising the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520) to a decoding device, wherein the audio frame boundary information (transport_header() audio _frame _start, 610) is stored in the information blocks (302, 304, 306, 600) of the series of fixed length data segments (Seg#-1, Seg#0, Seg#1, Seg#2, Seg#3, 510, 520), and wherein the audio frame boundary information (transport_header(), audio_frame_start, 610) is used by the decoding device to perform re-synchronization with time alignment at the decoding device in case of transmission errors.