Commit 05ff7154 authored by Rafaël Carré's avatar Rafaël Carré

x265: repeat headers on keyframes

parent dd6b4081
...@@ -54,8 +54,6 @@ struct encoder_sys_t ...@@ -54,8 +54,6 @@ struct encoder_sys_t
x265_encoder *h; x265_encoder *h;
x265_param param; x265_param param;
bool write_headers;
mtime_t i_initial_delay; mtime_t i_initial_delay;
mtime_t dts; mtime_t dts;
...@@ -100,16 +98,14 @@ static block_t *Encode(encoder_t *p_enc, picture_t *p_pict) ...@@ -100,16 +98,14 @@ static block_t *Encode(encoder_t *p_enc, picture_t *p_pict)
i_out += nal[i].sizeBytes; i_out += nal[i].sizeBytes;
int i_extra = 0; int i_extra = 0;
if (unlikely(p_sys->write_headers)) { if (IS_X265_TYPE_I(pic.sliceType))
i_extra = p_enc->fmt_out.i_extra; i_extra = p_enc->fmt_out.i_extra;
p_sys->write_headers = false;
}
block_t *p_block = block_Alloc(i_extra + i_out); block_t *p_block = block_Alloc(i_extra + i_out);
if (!p_block) if (!p_block)
return NULL; return NULL;
if (unlikely(i_extra)) if (i_extra)
memcpy(p_block->p_buffer, p_enc->fmt_out.p_extra, i_extra); memcpy(p_block->p_buffer, p_enc->fmt_out.p_extra, i_extra);
/* all payloads are sequentially laid out in memory */ /* all payloads are sequentially laid out in memory */
...@@ -237,7 +233,6 @@ static int Open (vlc_object_t *p_this) ...@@ -237,7 +233,6 @@ static int Open (vlc_object_t *p_this)
p_sys->dts = 0; p_sys->dts = 0;
p_sys->initial_date = 0; p_sys->initial_date = 0;
p_sys->i_initial_delay = 0; p_sys->i_initial_delay = 0;
p_sys->write_headers = true;
p_enc->pf_encode_video = Encode; p_enc->pf_encode_video = Encode;
p_enc->pf_encode_audio = NULL; p_enc->pf_encode_audio = NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment