09 2021 档案
摘要:webrtc是一个比较成熟的实时音视频处理开源项目,一上来老大就扔给我一本webrtc native实践,虽然狠下心“翻”完了一遍,但是还是云里雾里的,在经过几个月的摸索之后,我大概知道原因了,归根到底,是基础不在一个层次,理解不了的,所以我决定,尝试写一个接近我这种零基础入门实时音视频的记录系列,
阅读全文
摘要:答案是:有预编译的就很重要;有同名函数与宏定义的时候就很重要; include的本质是把所有头文件按照你写的顺序连接起来,如果同名的宏定义在函数定义前面,就有可能导致函数定义出现莫名其妙的错误;核心原因是预编译的时候,宏定义会展开代码
阅读全文
摘要:最近弄了一个读取y4m文件转成yuv的流的事情,记录一些yuv相关的细节 为什么会有yuv 因为我们目前的显示器显示的原理都是三原色,几乎所有的视频数据最后都要转为rgb格式才能渲染到显示屏上,而原始的rgb格式存储太耗费空间 rgb存储空间是每个像素点需要 rbg三个属性,每个属性八个bit来存储
阅读全文
摘要:private static byte[] I420ToNv21(byte[] i420bytes, int width, int height) { byte[] nv21bytes = new byte[i420bytes.length]; int y_len = width * height;
阅读全文
摘要:y4m是yuv的一种存储格式 $ ffmpeg -i ~/Downloads/01.mp4 ~/Downloads/test.yuv $ ffmpeg -i ~/Downloads/01.mp4 ~/Downloads/test.y4m $ ffmpeg -i test.y4m -vsync 0 t
阅读全文

浙公网安备 33010602011771号