Closed llatecomers closed 4 years ago
没有,MAX_WAIT_MS_READY这个宏是控制忽略track的超时时间, 也就是视频如果在这个时间内未获取到sps pps,就会被忽略,音频同理。 你强行减少这个时间,只会导致track被忽略
但是摄像头帧率30帧,GOP间隔就50。 在收到摄像头流后,打印第一帧是PPS和SPS。我这边就是没有输入音频就是,不知道跟这个有没有关系。 rtsp_client->RtspUrl = rtsp://172.20.122.20:8554/live/stream 111111****rg_rtsp_client_start 1592452606061 on_mk_media_not_found client info, local: 172.20.122.20:8554, peer: 172.20.122.20:45381 rtsp/defaultVhost/live/stream, url params: rtsp_meida_not_found 22222SERVER_STREAME_SUBSCRIBE = 1592452606160 mk_media_create success 13416010 rtsp_client->RtspUrl = rtsp://admin:123456@192.168.23.245/live/av0 333333SERVER_STREAME_SUBSCRIBE 1592452606162 mk_play_event err_code = 0 err_msg = rtsp play success rg_rtsp_event_cb 1592452606259 CLIENT_STATUS_SUCCESS = 0 4444444**test_mk_play_data 1592452606330 0 0 0 1 67 (摄像头第一帧数据为sps pps) on_mk_media_changed 1 rtsp/defaultVhost/live/stream 1592452611166 on_mk_media_changed 1 rtmp/defaultVhost/live/stream 1592452611169 mk_play_event err_code = 0 err_msg = rtsp play success rg_rtsp_event_cb 1592452611186 CLIENT_STATUS_SUCCESS = 0 5555555**test_mk_play_data 1592452611191
如果我不调用这个mk_media_init_audio(rtsp_client->Media, 2, sample_rate, channel, sample_bit);那么流发布很快。
在on_mk_play_event(播放成功事件)回调中再根据mk_player_video_codecId和mk_player_audio_codecId判断有没有音频 有没有视频,有音频就mk_media_init_audio,有视频就mk_media_init_video
项目中需要按需拉流秒内播放,在二次开发的时候遇到一个问题。 收到有人观看的时候,流发布调用以下接口
同时拉取摄像头的流作为发布流的数据。
按需拉流测试demo代码运行时间线:
后面查询代码发现MediaSink.cpp中,
发布时间与 MAX_WAIT_MS_READY 定义的时间一致。修改为2秒即2秒发布,修改成5秒即5秒发布。请问这块是否有bug?