Add support for storing global headers in streaming start message
Add streaming_target_deliver2()
This commit is contained in:
parent
5818b975e5
commit
f5c8696ff2
2 changed files with 22 additions and 0 deletions
|
@ -197,10 +197,15 @@ streaming_msg_clone(streaming_message_t *src)
|
|||
void
|
||||
streaming_start_unref(streaming_start_t *ss)
|
||||
{
|
||||
int i;
|
||||
|
||||
if((atomic_add(&ss->ss_refcount, -1)) != 1)
|
||||
return;
|
||||
|
||||
transport_source_info_free(&ss->ss_si);
|
||||
for(i = 0; i < ss->ss_num_components; i++)
|
||||
free(ss->ss_components[i].ssc_global_header);
|
||||
|
||||
free(ss);
|
||||
}
|
||||
|
||||
|
@ -243,6 +248,17 @@ streaming_msg_free(streaming_message_t *sm)
|
|||
free(sm);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
void
|
||||
streaming_target_deliver2(streaming_target_t *st, streaming_message_t *sm)
|
||||
{
|
||||
if(st->st_reject_filter & SMT_TO_MASK(sm->sm_type))
|
||||
streaming_msg_free(sm);
|
||||
else
|
||||
st->st_cb(st->st_opaque, sm);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
|
@ -32,6 +32,10 @@ typedef struct streaming_start_component {
|
|||
uint16_t ssc_ancillary_id;
|
||||
int16_t ssc_width;
|
||||
int16_t ssc_height;
|
||||
|
||||
uint8_t *ssc_global_header;
|
||||
int ssc_global_header_len;
|
||||
|
||||
} streaming_start_component_t;
|
||||
|
||||
|
||||
|
@ -83,6 +87,8 @@ streaming_message_t *streaming_msg_create_pkt(th_pkt_t *pkt);
|
|||
|
||||
#define streaming_target_deliver(st, sm) ((st)->st_cb((st)->st_opaque, (sm)))
|
||||
|
||||
void streaming_target_deliver2(streaming_target_t *st, streaming_message_t *sm);
|
||||
|
||||
void streaming_start_unref(streaming_start_t *ss);
|
||||
|
||||
int streaming_pad_probe_type(streaming_pad_t *sp,
|
||||
|
|
Loading…
Add table
Reference in a new issue