MCPcopy Create free account
hub / github.com/HandBrake/HandBrake / encsvtWork

Function encsvtWork

libhb/encsvtav1.c:648–673  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

646}
647
648int encsvtWork(hb_work_object_t *w, hb_buffer_t **buf_in,
649 hb_buffer_t **buf_out)
650{
651 hb_buffer_t *in = *buf_in;
652 hb_buffer_list_t list;
653
654 *buf_out = NULL;
655 hb_buffer_list_clear(&list);
656
657 if (in->s.flags & HB_BUF_FLAG_EOF)
658 {
659 // EOF on input. Flush any frames still in the decoder then
660 // send the EOF downstream to tell the muxer we're done.
661 flush(w, in, &list);
662 hb_buffer_list_append(&list, hb_buffer_eof_init());
663
664 *buf_out = hb_buffer_list_clear(&list);
665 return HB_WORK_DONE;
666 }
667
668 // Not EOF - encode the packet
669 encode(w, in, &list);
670 *buf_out = hb_buffer_list_clear(&list);
671
672 return HB_WORK_OK;
673}

Callers

nothing calls this directly

Calls 5

hb_buffer_list_clearFunction · 0.85
flushFunction · 0.85
hb_buffer_list_appendFunction · 0.85
hb_buffer_eof_initFunction · 0.85
encodeFunction · 0.85

Tested by

no test coverage detected