余温|SEI那些事儿,FFmpeg从入门到精通——进阶篇( 四 )
x264libx264支持多种SEI类型数据写入 , 常用的仍然是SEI_USER_DATA_UNREGISTERED , 具体的写入函数x264_sei_version_write()位于libx264/encoder/set.c中 。
读取或者解码数据时 , 会调用下面函数进行码流的解码 , 其中buf包含具体的二进制流 , buf_size是当前码流长度 。 函数内部会解析码流并实例出具体的NAL对象:
ffplayffplay是一个简单、常用的FFmpeg接口示例工具 , 常用于测试解码、播放效果 。 如果在ffplay中示例跑通SEI提取功能 , 可以很方便的移植到其他平台 。
在ffplay中通过函数av_read_frame(ic,pkt)返回后 , 读取pkt->data可以快速拿到当前读到的NALunit 。 从data数据中取出NALunittype , 如果是SEI且是用户未注册数据类型(payloadtype值为5) , 则可以参考SEI语法继续读取UUID和其后传递的字符串 。
本文主要对H.264码流中涉及用户未注册数据的SEI进行了分析 。 总体而言 , SEI只是视频标准里面很小的一部分 , 但在应用过程中 , 比如直播问答项目中SEI承载的信息 , 就极大提升了直播观看和答题操作的整体用户体验 。 所以说 , 从SEI的例子中 , 我们就会发现 , 视频标准里面还有很多金矿等待着大家的挖掘 , 这就是多媒体技术的魅力 , 也是金山视频云努力的方向 。
最后文末附上这些年收录整理的资料 , 内容包含:Android学习PDF+架构视频+面试文档+源码笔记 , 高级架构技术进阶脑图、Android开发面试专题资料 , 高级进阶架构资料这几块的内容
分享给大家 , 非常适合近期有面试和想在技术道路上继续精进的朋友 。 也是希望可以帮助到大家提升进阶
【余温|SEI那些事儿,FFmpeg从入门到精通——进阶篇】如果你有需要的话 , 可以私信我【进阶】我发给你
推荐阅读
- 佳德智诚|佳德智诚:在拼多多平台开店需要注意那些问题?
- 佳德智诚|德智诚:店铺运营的引流、转化和变现技巧有那些?
- 娱乐那些事儿|蓝牙耳机挂脖式好还是无线好?挂脖式性价比蓝牙耳机排名
- 马云|那些在一家公司待10年的人,后来都怎么样了?马云说出了现实
- IT那些事儿|哪款iPhone 12更值得入手?,苹果官网开启预售
- 娱乐那些事儿|颈挂式蓝牙耳机哪个牌子好?性价比颈挂式蓝牙耳机排名
- 娱乐那些事儿|挂脖式运动耳机哪个牌子好?2020十大挂脖式运动耳机
- 那些年向前冲|40外观设计,数码博主大型翻车现场,华为官宣Mate
- 科技圈里那些事Y|新款iPhone要来了!你心动了吗?
- 余温|这4款机型才是“高配低价”,华为手机别瞎买!从千元到旗舰