issues
search
SmallChi
/
JT1078
JT1078协议、GB1078协议、道路运输车辆卫星定位系统-视频通讯协议
MIT License
198
stars
136
forks
source link
建议将JT1078.Protocol项目中的音/视频编解码部分抽象为接口,为上层应用项目提供扩展的可能性
#18
Closed
china-live
closed
5 months ago
china-live
commented
5 months ago
变更内容
JT1078.Protocol项目中新建Video目录,将现有的H264目录移动到Video下。
JT1078.Protocol项目音/视频解码/编码抽象定义为接口,为上层项目提供扩展的可能性。
变更理由
终端上来的视频不一定是H264、也有可能是其它格式。同时Video与Audio相对应,更能体现代码结构的条理性,提升代码的可读性。 2.当前项目音视频解码和编码为强依赖实现,目前实际项目时就遇到,我需要在在自己的项目中引用 JT1078.Flv ,但要自己增加音频部分,原本直接引用NuGet包就可以了,但现在我需要将 JT1078.Protocol和JT1078.Flv源码拷贝过去自行编译修改。 3.音视频编解码本身就是一项相当专业且复杂的工作,我们不可能在这个协议库里把所有音视频编解码方法都实现或集成进来。 4.本质上,协议库和音视频编解码没有直接关系,将音视频编解码相关功能内置到协议库中,会导致协议库臃肿且丧失可扩展性。 将音视频编解码相关功能抽象为接口,让上层应用根据需要自行选择或实现,内置最常用,最基本的默认实现就可以了。
相关影响
变更后,JT1078.Protocol 项目中原 JT1078.Protocol.H264 命名空间 将同步变更为 JT1078.Protocol.Video.H264
从现有的H264Decoder提取接口IH264Decoder,原直接使用H264编码的地方,如 H264Decoder h264Decoder = new H264Decoder();变更为 IH264Decoder h264Decoder = new H264Decoder();services.AddSingleton
(); 变更为 services.AddSingleton<IH264Decoder,H264Decoder>();
3.音频相关的和上面第2条类似...
SmallChi
commented
5 months ago
感谢建议,新版会合并。
变更内容
变更理由
相关影响
3.音频相关的和上面第2条类似...