HEXA娱乐开发日志调研000——机器人直接推流可行

HEXA开发日志目录

上一篇 HEXA机器人练手项目


今天身体抱恙,趁着输液无聊做了些调研

HEXA知多少

我能够对它做这些事:

1.用交叉编译器制作C/C++库,供go语言调用

2.读官方例子代码(官方sdk)知道它使用摄像头的基本套路,它一句代码就能把摄像头数据取出来,字面看上去是YCbCr格式的raw data,能拿到raw data就好办了,这奠定了对视频内容为所欲为的基础。它后面如何三句代码就完成了jpeg编码、编码内容向字符串的转换,字符串的发送我就不是很关心了。而client这端(即电脑或手机)运行的就是一个网页,可以用javascript写与机器人的交互逻辑。

关于推流的可行性

我已经找到了开源的rtmp推流库叫RTMPDUMP(官网),网上的例子代码也不少,也有一些在嵌入式平台上使用的,所以可行性基本是确定的。

然而,有件小事花了我一些时间。我们可以想象,推流应该有个地址,我们向那个地址推视频流,但是用过OBS或其他RTMP推流或直播工具的人应该知道,直播平台还会提供一个串流码(有的平台叫直播码,OSB界面上英文叫Stream Key),不把这个码填到直播软件里,就不能把视频推送到直播平台。我一开始不知道这个东西叫啥,去搜索了OBS相关图片,看到叫Stream Key,再看到有的平台叫直播码,然而再用这两个关键字仍然没找到有用信息,网上例子也都没提这个事情。后来实在没办法,就去OBS源码(github源码)里搜“stream key”,这样才顺藤摸瓜找到了这东西是啥,最后可以看到它在RTMPDUMP里面的样子。

插一段题外话,解释一下为什么在OBS里搜,而且还找到了RTMPDUMP里面去了。因为这里面有这么个关系,OBS主要使用的是ffmpeg,ffmpeg关于rtmp部分使用的就是RTMPDUMP,我是知道它们是这种调用关系,所以就去OBS代码里直接搜了。

有2个发现:

1.这个东西在代码里叫playpath,再一搜,也叫串流码

2.OBS内使用的RTMPDUMP有自己的客制化,当然这不重要。。。

至此,推流部分的可行性和技术细节的基本实现方向确定了。只要我能把RTMPDUMP做成库,能在机器人身上顺利使用的话,就可以推送到任意直播平台了。


下一篇 HEXA娱乐开发日志调研001——弹幕操控机器人

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转发自 2016-10-27李智文腾讯Bugly 概要 分享内容: 互联网内容载体变迁历程,文字——图片/声音——...
    树懒啊树懒阅读 14,195评论 3 122
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,270评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,131评论 25 709
  • 昨天晚上一个难搞的客人把件取了,结果产品本来是烤瓷做错了成了相框,今天一来就是清理各种东西,然后一直自己看东西,中...
    万缕千丝阅读 1,090评论 0 0
  • 端年(粽叶)情 文/天地人 两千多年来 五月五,赛龙舟,气宇轩 包粽子,揣怀念,在心间 你为百姓,鼓与呼 一泄万里...
    天地人_e351阅读 1,598评论 0 0

友情链接更多精彩内容