Lines Matching refs:sei
205 ExtraSEI *sei;
298 static int vtenc_q_pop(VTEncContext *vtctx, bool wait, CMSampleBufferRef *buf, ExtraSEI **sei)
336 if (sei && *buf) {
337 *sei = info->sei;
338 } else if (info->sei) {
339 if (info->sei->data) av_free(info->sei->data);
340 av_free(info->sei);
348 static void vtenc_q_push(VTEncContext *vtctx, CMSampleBufferRef buffer, ExtraSEI *sei)
358 info->sei = sei;
639 ExtraSEI *sei = sourceFrameCtx;
663 vtenc_q_push(vtctx, sample_buffer, sei);
1616 * Finds the sei message start/size of type find_sei_type.
1734 static int write_sei(const ExtraSEI *sei,
1740 size_t remaining_sei_size = sei->size;
1770 if (remaining_dst_size < sei->size)
1776 bytes_written = copy_emulation_prev(sei->data,
1777 sei->size,
1795 * @param sei Optional A53 closed captions SEI data.
1811 ExtraSEI *sei,
1863 if (sei && !wrote_sei && is_post_sei_nal_type(nal_type)) {
1875 wrote_bytes = write_sei(sei,
1921 if (sei && !wrote_sei && nal_type == H264_NAL_SEI) {
1931 wrote_bytes = write_sei(sei,
1961 * Returns a sufficient number of bytes to contain the sei data.
1964 static int get_sei_msg_bytes(const ExtraSEI* sei, int type){
1966 if (sei->size == 0)
1969 copied_size = -copy_emulation_prev(sei->data,
1970 sei->size,
1975 if ((sei->size % 255) == 0) //may result in an extra byte
1978 return copied_size + sei->size / 255 + 1 + type / 255 + 1;
1985 ExtraSEI *sei)
2027 if (sei) {
2028 size_t msg_size = get_sei_msg_bytes(sei,
2053 sei,
2398 ExtraSEI *sei = NULL;
2412 sei = av_mallocz(sizeof(*sei));
2413 if (!sei) {
2416 int ret = ff_alloc_a53_sei(frame, 0, &sei->data, &sei->size);
2419 av_free(sei);
2420 sei = NULL;
2433 sei,
2458 ExtraSEI *sei = NULL;
2495 status = vtenc_q_pop(vtctx, !frame, &buf, &sei);
2499 status = vtenc_cm_to_avpacket(avctx, buf, pkt, sei);
2500 if (sei) {
2501 if (sei->data) av_free(sei->data);
2502 av_free(sei);