func (this *CodecCtx) CopyExtra(ist *Stream) *CodecCtx { codec := this.avCodecCtx icodec := ist.CodecCtx().avCodecCtx codec.bits_per_raw_sample = icodec.bits_per_raw_sample codec.chroma_sample_location = icodec.chroma_sample_location codec.codec_id = icodec.codec_id codec.codec_type = icodec.codec_type // codec.codec_tag = icodec.codec_tag codec.rc_max_rate = icodec.rc_max_rate codec.rc_buffer_size = icodec.rc_buffer_size codec.field_order = icodec.field_order codec.extradata = (*_Ctype_uint8_t)(C.av_mallocz((_Ctype_size_t)((C.uint64_t)(icodec.extradata_size) + C.FF_INPUT_BUFFER_PADDING_SIZE))) C.memcpy(unsafe.Pointer(codec.extradata), unsafe.Pointer(icodec.extradata), (_Ctype_size_t)(icodec.extradata_size)) codec.extradata_size = icodec.extradata_size codec.bits_per_coded_sample = icodec.bits_per_coded_sample codec.has_b_frames = icodec.has_b_frames return this }
//Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if available on the CPU) and zero all the bytes of the block. func AvMallocz(s uintptr) unsafe.Pointer { return C.av_mallocz(C.size_t(s)) }