public int header_out(Packet op) { csBuffer opb = new csBuffer(); opb.writeinit(); if (pack(opb) != 0) { return(VorbisFile.OV_EIMPL); } op.packet_base = new byte[opb.bytes()]; op.packet = 0; op.bytes = opb.bytes(); Array.Copy(opb.GetBuffer(), 0, op.packet_base, 0, op.bytes); op.b_o_s = 0; op.e_o_s = 0; op.granulepos = 0; return(0); }