Skip to content

作者是不维护了吗,项目还存在一些问题需要解决的,问题如下: #15

@BreakingY

Description

@BreakingY

我看到的问题如下:
1、TaskScheduler::HandleTriggerEvent()应该加锁,多线程下有内存泄漏风险。
2、EpollTaskScheduler::~EpollTaskScheduler()也没有关闭epoll描述符,RtspServer项目中是关闭了的,作者没有同步好。
3、rtmp/src/xop/RtmpChunk.cpp RtmpChunk::ParseChunkHeader函数,rtmp_msg.stream_id = ReadUint24LE((char*)header.stream_id);这里不对stream_id是四个字节,应该使用ReadUint32LE解析,但是这里并不影响运行,因为RtmpConnection中并没有使用RtmpChunk中解析的,不过这也确实是一个bug。
4、RtmpConnection::HandleAudio(RtmpMessage& rtmp_msg)中play_cb_参数没传递正确,应该用uint8_t sound_format = (payload[0] >> 4) & 0x0f;,表示FLV中AAC定义的类型,FLV中H264是7 AAC是10
5、TimerQueue::HandleTimerEvent():如果超时,定时器队列中的数据没有被删除,导致内存泄露
6、测试程序也有问题,RTMP使用FLV的tag data格式传输视频,NALU不应该包含起始码,不过我重新写了H264和AAC的推拉流测试程序,项目的推拉流功能是没问题的

总体来说这是一个很好的rtmp项目,如果作者能维护下去,把存在的问题解决了,项目就完美了,作者还是牛逼的,写出了这么好的项目。

关于作者的RtspServer也同样存在一些问题,我也提出来了,PHZ76/RtspServer#92

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions