Skip to content

Commit c544e53

Browse files
committed
refine
1 parent 765d51e commit c544e53

File tree

3 files changed

+19
-23
lines changed

3 files changed

+19
-23
lines changed

include/moq/xqc_moq.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ typedef struct {
2121
uint64_t timestamp_us;
2222
uint8_t *video_data;
2323
uint64_t video_len;
24-
/* Optional: Reversed for extension data */
2524
const uint8_t *ext_headers;
2625
uint64_t ext_headers_len;
2726
} xqc_moq_video_frame_t;
@@ -31,7 +30,6 @@ typedef struct {
3130
uint64_t timestamp_us;
3231
uint8_t *audio_data;
3332
uint64_t audio_len;
34-
/* Optional: Reversed for extension data */
3533
const uint8_t *ext_headers;
3634
uint64_t ext_headers_len;
3735
} xqc_moq_audio_frame_t;

moq/demo/xqc_moq_demo_client.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -636,9 +636,10 @@ xqc_app_send_callback(int fd, short what, void* arg)
636636
audio_frame.audio_len = 1024;
637637
audio_frame.audio_data = payload_audio;
638638

639-
static uint8_t ext_data1[] = "test_ext_data";
640-
audio_frame.ext_headers = ext_data1;
641-
audio_frame.ext_headers_len = sizeof(ext_data1) - 1;
639+
static uint8_t test_ext_data[] = "X test_ext_data";
640+
test_ext_data[0] = '0' + (uint8_t) (user_conn->countdown & 0xFF);
641+
audio_frame.ext_headers = test_ext_data;
642+
audio_frame.ext_headers_len = sizeof(test_ext_data) - 1;
642643
ret = xqc_moq_write_audio_frame(user_conn->moq_session, user_conn->audio_subscribe_id, user_conn->audio_track, &audio_frame);
643644
if (ret < 0) {
644645
printf("xqc_moq_write_audio_frame error\n");

moq/moq_media/xqc_moq_media_track.c

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,19 @@ static void xqc_moq_media_cancel_write(xqc_moq_session_t *session, xqc_moq_track
3737
static xqc_bool_t xqc_moq_media_maybe_cancel_write(xqc_moq_session_t *session, uint64_t subscribe_id,
3838
xqc_moq_track_t *track, xqc_moq_video_frame_t *video_frame);
3939

40+
static void xqc_init_moq_object_ext_with_object(xqc_moq_object_stream_msg_ext_t *obj_ext,
41+
xqc_moq_object_stream_msg_t *object) {
42+
xqc_memset(obj_ext, 0, sizeof(*obj_ext));
43+
obj_ext->subscribe_id = object->subscribe_id;
44+
obj_ext->track_alias = object->track_alias;
45+
obj_ext->group_id = object->group_id;
46+
obj_ext->object_id = object->object_id;
47+
obj_ext->send_order = object->send_order;
48+
obj_ext->status = object->status;
49+
obj_ext->payload = object->payload;
50+
obj_ext->payload_len = object->payload_len;
51+
}
52+
4053
xqc_int_t
4154
xqc_moq_write_video_frame(xqc_moq_session_t *session, uint64_t subscribe_id,
4255
xqc_moq_track_t *track, xqc_moq_video_frame_t *video_frame)
@@ -92,15 +105,7 @@ xqc_moq_write_video_frame(xqc_moq_session_t *session, uint64_t subscribe_id,
92105

93106
if (video_frame->ext_headers != NULL && video_frame->ext_headers_len > 0) {
94107
xqc_moq_object_stream_msg_ext_t obj_ext;
95-
xqc_memset(&obj_ext, 0, sizeof(obj_ext));
96-
obj_ext.subscribe_id = object.subscribe_id;
97-
obj_ext.track_alias = object.track_alias;
98-
obj_ext.group_id = object.group_id;
99-
obj_ext.object_id = object.object_id;
100-
obj_ext.send_order = object.send_order;
101-
obj_ext.status = object.status;
102-
obj_ext.payload = object.payload;
103-
obj_ext.payload_len = object.payload_len;
108+
xqc_init_moq_object_ext_with_object(&obj_ext, &object);
104109
obj_ext.extension_header_len = video_frame->ext_headers_len;
105110
obj_ext.extension_header = (uint8_t *)video_frame->ext_headers;
106111
ret = xqc_moq_write_object_stream_msg_ext(session, stream, &obj_ext);
@@ -175,15 +180,7 @@ xqc_moq_write_audio_frame(xqc_moq_session_t *session, uint64_t subscribe_id,
175180

176181
if (audio_frame->ext_headers != NULL && audio_frame->ext_headers_len > 0) {
177182
xqc_moq_object_stream_msg_ext_t obj_ext;
178-
xqc_memset(&obj_ext, 0, sizeof(obj_ext));
179-
obj_ext.subscribe_id = object.subscribe_id;
180-
obj_ext.track_alias = object.track_alias;
181-
obj_ext.group_id = object.group_id;
182-
obj_ext.object_id = object.object_id;
183-
obj_ext.send_order = object.send_order;
184-
obj_ext.status = object.status;
185-
obj_ext.payload = object.payload;
186-
obj_ext.payload_len = object.payload_len;
183+
xqc_init_moq_object_ext_with_object(&obj_ext, &object);
187184
obj_ext.extension_header_len = audio_frame->ext_headers_len;
188185
obj_ext.extension_header = (uint8_t *)audio_frame->ext_headers;
189186
ret = xqc_moq_write_object_stream_msg_ext(session, stream, &obj_ext);

0 commit comments

Comments
 (0)