glaciall / jtt1078-video-server

基于JT/T 1078标准实现的视频转播服务器
Other
291 stars 137 forks source link

請教一下 #23

Open humanjeff opened 2 years ago

humanjeff commented 2 years ago

請問一定有要httpserver才能進行rtmp server的傳送嗎? 我看ffmpeg的命令是抓推送到httpserver的URL 有可能可以直接收到串流就傳送到 rtmp server?

glaciall commented 2 years ago

不是,推送到rtmp server的实现是我偷了个懒,借用ffmpeg就可以很方便简单的实现rtmp推流而已。 如果想直接串流推送到rtmp服务器,可以看一下https://github.com/faucamp/SimpleRtmp这个项目。

humanjeff commented 2 years ago

我有發現seq+1的地方好像早了,應該要在publishVideo以後 long timestamp = packet.seek(16).nextLong(); PublishManager.getInstance().publishVideo(tag, sequence, timestamp, pt, data); // 碰到结束标记时,序号+1 if (pkType == 0 || pkType == 2) { sequence += 1; SessionManager.set(nettyChannel, "video-sequence", sequence); } 這樣在裡面抓Seq變化才可以抓到完整的一禎

glaciall commented 2 years ago

我的那一帧h.264的nalu不是通过消息头来分的,是通过内容的00 00 00 01的标志头进行分的,具体你刚说的那个ffmpeg api怎么用,你得看手册,我没有用过。