public byte[] paste(InputStream is, int fStart, FrameBuffer frame_buffer ) throws Exception{
        
        if( frame_buffer.get_buffer_len() == 0){
            throw new Exception("Error: buffer is empty!!");
        }
        
        int fEnd = fStart + frame_buffer.get_buffer_len() - 1;
        int cont = 0;
        
        reader = new Manager(is);
        FrameData fd;
        
        final int opt = Constants.HUFFMAN_DOMAIN;
        FrameDataUnpacked fd_u = null;
        do{
            if (cont < fStart || cont >= fEnd ) {
                try{
                    fd = reader.decodeFrame(opt);
                } catch (Exception e){
                    LOGGER.info("End of file");;
                    break;
                }
                reader.storeData(fd, reader.getMainData());
            } else{
                fd_u = frame_buffer.get_entry();
                reader.storeData(fd_u, fd_u.get_data());
            }
            
            cont++;
        } while(true);
        
        mp3_byte_stream = reader.getStream();
        
        return mp3_byte_stream;
    }