YUV420P和YUV420有什么区别? [问题点数:100分,结帖人ChangeMyHead]

Bbs3
本版专家分:527
结帖率 100%
Bbs6
本版专家分:7868
Bbs5
本版专家分:3491
Bbs5
本版专家分:3981
Bbs3
本版专家分:527
Bbs3
本版专家分:527
色彩模式yuv420p与RGB24转换
最近接手公司的新任务:实现<em>yuv420</em>与RGB24色彩之间的相互转换,网上有很多现成代码,但是不知道怎么验证其准确性,后来从网上找到了yuv格式的播放神器:YUV Player Deluxe,下载地址为&quot;http://www.yuvplayer.com/&quot;, 显示效果如下: yuv播放器找到了,但是怎么制造一张内容为yuv格式的图片呢?答案是使用神器ffmpeg,下载ffmpeg工具,执行:...
图像转换:RGB24转换为YUV420P
RGB24转为YUV420P
从零开始学习音视频编程技术(十五) YUV420P转RGB32
原文地址:http://blog.yundiantech.com/?log=blog&id=19 上一节讲解了YUV420P格式的内容。 我说过,我们不是为了做研究。 平白无故讲了YUV420P的理论知识,要是不做点什么总说不过去吧。 那么,我们就练练刀,写个播放YUV420P的程序吧,将前面保存的YUV420P图像用自己写的播放器播放出来。 这里我们还是一样使用
yuv420p转yuv422
实现yuv之间的转换实现, 可以将<em><em>yuv420</em>p</em>转换成yuv422, 可以将yuv422转换成uyvy, 可以将<em><em>yuv420</em>p</em>转换成uyvy 。
三种方式YUV420转RGB24/BGR24,实测可用
YUV420转换为RGB24/BR24YUV格式具有亮度信息和色彩信息分离的特点,但大多数图像处理操作都是基于RGB格式。因此当要对图像进行后期处理显示时,需要把YUV格式转换成RGB格式。RGB与YUV的变换公式如下: YUV(256 级别) 可以从8位 RGB 直接计算: Y = 0.299 R + 0.587 G + 0.114 B U = - 0.1687 R - 0
详解YUV420数据格式
欢迎Follow我的GitHub, 关注我的CSDN. 其余参考Android目录.技术微信公众号:程序员小乐详解YUV420数据格式原文地址:http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html1. YUV简介YUV定义:分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V” 表示的...
yuv420p
做编解码过程中最常见的视频格式是<em><em>yuv420</em>p</em> 下面对<em><em>yuv420</em>p</em>做一些介绍 420p中的p代表planar,也就是扁平的意思。所以这里引出yuv有两种布局方式,分别是lanar和packed。 对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。 对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。 YUV,分为三个分量...
yuyv(yuv422)转换为yuv420p
我的摄像头采集到的数据是yuyv格式(属于yuv422),而X264在进行编码的时候需要 标准的YUV(4:2:0)。所以有一个yuv422to<em>yuv420</em>的转换。在网上找了半天找到的方法拿过来转换了查看都很花。于是自己看了一下yuv 格式的解释,准备写一个转换代码。以下许多解释都是按我的理解: 一、yuv yuv格式通常有两大类:打包(packed)和平面(planar)格式。前者在码流里是y...
YUV420SP/YUV420P
YUV420SP: sp(semi-Planar二维平面)指的是YUV不是3个平面而是分成2个平面。Y数据一个平面,UV数据合用一个平面。UV平面的数据格式是UVUVUV... YUV420P: 420P是先把U存放完后,再存放V,也就是说UV他们是连续的。 ...
yuv420p基本图像处理
目前数字图像处理技术已经应用生活各个方面,但是大部分教程都是利用第三方库(如opencv)对RGB图像格式进行处理。对于YUV图像格式的图像处理教程较少。搬运总结了多个大牛的文章,总结出来这个YUV图
NV12/NV2与YUV420P相互转换
//image_src is the source image, image_dst is the converted image void NV12_YUV420P(const unsigned char* image_src, unsigned char* image_dst, int image_width, int image_height){ unsigned ch...
YUV420P转换为RGB32格式
从网络摄像机中获取的帧数据是YUV420P格式的,而我们处理图像需要RGB格式,在网上找了一段将YUV420P格式的帧转换为RGB的代码。 // 转换 YV12 到 RGB24 // pYUV 的大小 (3 * iWidth * iHeight / 2) // pRGB 的大小 (3 * iWidth * iHeight) // 如果成功返回 true, 否则 false bool YV12_t
h264编码前必须要转换为yuv420p格式
-
YUV420P、YUV420SP、NV12、NV21和RGB互相转换并存储为JPEG以及PNG图片
YUV420和RGB转换存储为BMP和JPG以及PNG图片
使用ffmpeg保存YUV420p文件
说明 基于 ffmpeg 3.4.2 和 vs2017 开发 YUV420p的存储为先Y,再U,再V。 实现过程 使用ffmpeg获取frame数据。 设置sws_getContext为YUV420。 使用sws_scale转换数据。 存储数据。 示例代码 代码主要部分为获取frame,转换成YUV格式,YUV数据保存。 #include &amp;quot;stdafx.h&amp;quot; ...
YV12,I420,YUV420P的区别
YV12和I420的区别        一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Bit,RGB32的size=width×heigth×4,如果是I420(即YUV标准格式4:2:0)的数据量是 size=width×heigth×1.5 Bit。       在采集到RGB24数据后,需要对这个格式的数据进
YV12,I420,YUV420P的区别与格式转换
FFMPEG中的swscale提供了视频原始数据(YUV420,YUV422,YUV444,RGB24...)之间的转换,分辨率变换等操作,使用起来十分方便,在这里记录一下它的用法。 swscale主要用于在2个AVFrame之间进行转换。 下面来看一个视频解码的简单例子,这个程序完成了对"北京移动开发者大会茶歇视频2.flv"(其实就是优酷上的一个普通视频)的解码工作,并将解码后的数
RGB24转yuv420 高效率 且颜色没有失真
前面使用dshow获取到的屏幕截图是一段rgb24的数据,需要将其转换成<em>yuv420</em>格式才能进行编码等操作。 网上找了很多资料,发现能用的并不多,这里总结一下。 1.雷大神写的 bmp转yuv: http://blog.csdn.net/leixiaohua1020/article/details/13506099 这个是读取bmp文件然后转换成Yuv的,经过简单修改就可以将输入换
【图像】数据格式介绍(yuv420sp、yuv420sp、yv12,nv12等)
  YUV定义:分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V” 表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。   YUV格式:有两大类:planar和packed。 YUV格式通常有两大类:打包(packed)格式和平面(planar)格式。 对于planar的YUV格式,先连续存...
RGB24与YUV420之间的互相转换
[cpp] view plaincopyprint? //////////////////////////////////////////////////////////////////////////   //              rgb转<em>yuv420</em>   //////////////////////////////////////////////////
YUV 420P IOS中的呈现
经过3个工作日(周六下午及加班,周一,今天上午)总算将解码的图像展现出来了,期间经历一些曲折,主要是前述中的"想通过原始YUV数据,重建CVPixelBufferRef类型的数据,进而可   1)转为CIImage,UIImage然后调用performSelectorOnMainThread来呈现:(经验还不足,这个api还是google了很多才找到的) CIImage *ciImage =
软件生成yuv420p视频并将其编码为H264格式
通过前面对ffmpeg中常用的几个api的源码分析,从而对api有了更好的理解。之前已经做过视频的解码了, 今天来尝试视频的编码。ffmpeg已经给我们提供了相应的可供参考的程序:doc/examples/decoding_encoding.c文件就是 解码和编码的例程。仔细阅读它的代码后,我们可以按照自己的理解,写自己的视频编码程序。我们将会把一个<em><em>yuv420</em>p</em>格式的文件,使用h264编码器进 ...
No.5 YUV420 格式图像旋转
分别在 CPU 上使用 C 语言和在 GPU 上使用 OpenCL 对一张 YUV420p 的图像顺时针旋转 90 度,比较两者之间的性能差异。
yuv420 图片与视频
自己测试时用的<em>yuv420</em>格式的图片与视频,包含640x480图片与视频
Android 把YUV420P格式的数据转换为RGB565格式
android YUV420P格式的数据转换为RGB565格式
RGB24与YUV420格式相互转换
具体实现了RGB24与YUV420格式相互转换,达到视频文件压缩目的。
YUV420P格式图像处理分割,复制,合并
首先说明下<em>yuv420</em>的格式 下面选自http://blog.csdn.net/jefry_xdz/article/details/7931018 提示: 读下面的文字时,希望大家结合图片看,这样更易理解        在YUV420中,一个像素点对应一个Y,一个2X2的小方块对应一个U和V。对于所有YUV420图像,它们的Y值排列是完全相同的,因为只有Y的图像就是灰度图像。YUV420sp
【Android】直播必备之YUV使用总结 —— 常用的几种格式:NV21/NV12/YV12/YUV420P的区别
说明  因工作方面接触到图像处理这一块,需要对手机摄像头采集的原始帧做Rotate或者Scale,但无奈对此的了解少之又少,于是网上搜了一顿,完事后将最近所学总结一下,以方便之后的人别踩太多坑。  首先想要了解YUV为何物:请猛戳我    上面的链接中微软已经写的很详细了,国内大部分文章都是翻译这篇文章的,如果还有疑问的同学可以参考下面这些大神的博客: 最简单的基于FFmpeg的libswscale
YUV420P 旋转90度(逆时针)
这几天不忙,写了个逆时针旋转YUV420P的算法,本以为也就是20分钟的事,结果越着急越出错,竟然把旋转V分量的地址变量,手误写成U分量的了,害得我调试了2个多小时,才发现的这个都想扇自己大嘴巴的低级失误。 算法如下: void rotate90YUV420P(char *d_c, const char *s_c, int width, int height) {    
NV12视频格式与YUV420P格式转化
视频raw data格式分为YUV和RGB格式,常见的YUV 格式有YUV420、YUV422、YUV444等,常见的RGB格式有RGB和RGBA等,根据内存存储方式的不同,YUV420又分为YUV420P和YUV420SP,分别是3平面存储和2平面存储; 常见的NV12、NV21、I420、YV12等都属于YUV420;FFMPEG中YUV420P与I420相同,本文从存储方式选取NV12和Y...
Qt 播放Yuv420p视频
环境:    vs2015;Qt5.8;opencv3.4;从文件读取一帧的数据后从yuv转到rgb,用rgb构造一个IplImage,再把IplImage 转成QImage,显示。<em>yuv420</em>转rgb:void YUV420_2_RGB(unsigned char* pYUV, unsigned char* pRGB, int width, int height) { //找到Y、U、V在内存...
YUV422转换YUV420应用实例
    在上一篇文章中JPEG编码学习—JPEG数据转YUV数据应用实例 已经可以将v4l2 采集到的JPEG数据转换为YUV422格式,但是我们有时候需要使用其他格式的数据,比如用YUV420作为H264的输入数据格式。做数据格式转换,首先需要明白各种数据类型的采样分布格式。如下图:我们在上一篇中通过JPEG解码转换过来的是YUYV数据格式(YUV422),他的数据分布是:现在我们需要把YUYV...
YUV拼接
yuv的拼接和切割原理是很简单的,直接上图,这样非常直观。 横向拼接: 纵向拼接: 以上是横向拼接,其他的也类似,切割自然也一样,对y、u、v各个分量做操作。 水印的话就是直接覆盖x,y开始的区域(不透明),透明的水印需要orginal value+=watermarker value*transprent value orginal value为原始值,watermar...
YUV420图像裁剪
前面使用dshow获取到了屏幕的截图,并且转换成了<em>yuv420</em>格式。、 现在需要能获取截图的部分区域。 本来打算在dshow获取截图的时候直接裁剪获得某个区域的rgb图像,但发现这样做,有时候成功不了。 因此只能选择获取完整的屏幕截图,转换成yuv后再进行裁剪: YUV420裁剪代码如下: #include "yuvcut.h" #include YuvCut::Y
ffmpeg 转换其他格式到YUV420P
代码参考了网上的文章 1.申请buffer AVFrame *pFrame,*pFrameYUV; pFrame=avcodec_alloc_frame(); pFrameYUV=avcodec_alloc_frame(); uint8_t *out_buffer; out_buffer=new uint8_t[avpicture_get_size(PIX_FMT_RGB24, pCodec
记录YUV420p/YUV420sp黑框绘制
openCV中有专门的矩形框绘制接口,在此不做赘述。YUV420p与YUV420sp的数据存储一般分为下面几种:   YUV420p:        I420:YYYYYYYY UU VV        YV12:YYYYYYYY VV UU    YUV420sp:        NV12:YYYYYYYY UVUV        NV21:YYYYYYYY VUVU以上格式中Y分量连续存放,则...
YUV420格式视频下载
地址连接: http://trace.eas.asu.edu/yuv/index.html
最简单的视音频播放示例6:OpenGL播放YUV420P(通过Texture,使用Shader)
本文记录OpenGL播放视频的技术。上一篇文章中,介绍了一种简单的使用OpenGL显示视频的方式。但是那还不是OpenGL显示视频技术的精髓。和Direct3D一样,OpenGL更好的显示视频的方式也是通过纹理(Texture)。本文介绍OpenGL通过纹理的方式显示视频的技术。 OpenGL中纹理和Direct3D纹理的不同OpenGL中的纹理的坐标和Direct3D中的坐标是不一样的。在Dir
H264 YUV420视频翻转
h264解码后视频翻转,基于SDL overlay. 翻转YUV420:   void TurnPlanar(const unsigned char *srcp_y, unsigned char *dstp_y, const unsigned char *srcp_u, unsigned char *dstp_u, const unsigned char *srcp_
Qt播放YUV420P文件
零开始学习音视频编程技术(十五) YUV420P转RGB32 在转换的基础加上了Qt显示的界面。实现了Qt播放YUV420P文件 这是Qt的工程,建议使用Qt Creator 打开 Qt的版本是4.8.4,当然是用Qt5也是没有影响的,不过编译器记得使用Mingw。 FFMPEG的版本是2.5.2 记得将ffmpeg/bin目录下的dll文件拷贝到编译生成的exe所在的目录下,否则会无法运行。 关于代码的解释 请参考: http://blog.yundiantech.com/?log=blog&id=19
YUV420P转RGB32以及旋转处理
对初学视频图像处理,旋转,了解YUV420p图像存储格式有帮助。
【图象处理】图文详解YUV420数据格式
转载自: http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html YUV格式有两大类:planar和packed。 对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。 对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。   YU
yuv422与yuv420互转
yuv422包括打包和分片两种格式 yuv422与<em>yuv420</em>互转
nv12转yuv420
实现从GPU的存储空间直接取NV12数据,并将其转换成YUV420,然后返回给内存。
Android常用的几种格式:NV21/NV12/YV12/YUV420P的转换
Android常用的几种格式:NV21/NV12/YV12/YUV420P相互转换 java代码, YV12 To NV21, I420 To NV21,YV12Resize, flipYUV420, NV21ToBitmap
YUV格式学习:YUV420P、YV12、NV12、NV21格式转换成RGB24
对于YUV420的格式,网上有一大堆资料,这里就不说了。直奔主题,给出如何转换的函数,一如既往,只用代码说事。
YUV420转RGB565的转换函数
[code=&quot;java&quot;] static public void decodeYUV420SP(int[] rgb, byte[] <em>yuv420</em>sp, int width, int height) { final int frameSize = width * height; for (int j = 0, yp = 0; j &lt; height; j++...
解析yuv420图片并转换成RGB显示
简介   本篇为学习yuv图片格式转化笔记。 原理讲解 参考资料   YUV格式哟很多种,本篇记录的格式为YUV420。 有关YUV420的详细介绍,可以参考资料:1、图文详解YUV420数据格式 http://blog.csdn.net/jefry_xdz/article/details/7931018 大致讲解   首先<em>yuv420</em>的存储大小为:width * he
论YUV422(YUYV)与YUV420相互转换
相信大部分接触V4L2视频采集开发的朋友一定都听说过YUV.YUV是什么这里就不介绍,本文着重讲述的是YUV422如何转换到YUV420(反之亦然). 大部分初学者一定对YUV色彩转换很困惑.因为初学者缺少对YUV色彩空间的理解.这里一定要对YUV色彩空间作一点讲述. Example 2.13. V4L2_PIX_FMT_YUYV 4 × 4 pixelimage start
yuv420P数据对AVFrame的赋值
http://blog.csdn.net/chinabinlang/article/details/7804808 版权声明:本文为博主原创文章,未经博主允许不得转载。   AVFrame *pict = new AVFrame;      FILE * fyuv = fopen("G:\\352x288.yuv","rb");   int nfilel
yuv420 rgb32等各个不同数据帧大小的计算方式
http://blog.csdn.net/mydear_11000/article/details/50404084 还可以参考 https://www.cnblogs.com/samaritan/p/YUV.html YUV图解 (YUV444, YUV422, YUV420, YV12, NV12, NV21) 转载 2015年12月25日 16:43:52
最简单的FFmpeg YUV420P图像拼接实例
在项目中需要将解码出来的l两个YUV420P格式的图像合并在一起,然后重新编码为H264,最后封装为mp4文件。主要说明一下两个YUV420P使用FFmpeg合并的过程,需要提前理解YUV420P格式图像的存储结构,然后依次将Y、U、V数据分别写进去就可以了。 举例:将两张相同大小的图片合并为一张大图片 640*320 640*320 合并为1280*320 假设YUV420P的宽度为FR...
C++下纯代码NV12转换YUV420和YUV444内附实例,可以直接运行
使用C++对NV12序列进行转换,快速转换成YUV420和YUV444,不依赖第三方库。 内附实例,可以直接运行。
javacpp-FFmpeg系列之1:视频拉流解码成YUVJ420P,并保存为jpg图片
javacpp-ffmpeg系列: javacpp-FFmpeg系列之1:视频拉流解码成YUVJ420P,并保存为jpg图片 javacpp-FFmpeg系列之2:通用拉流解码器,支持视频拉流解码并转换为YUV、BGR24或RGB24等图像像素数据 javacpp-FFmpeg系列之3: 图像数据转换(BGR与BufferdImage互转,RGB与BufferdImage互转) 补充: ...
【Codecs】YUV主要格式YV12,I420,YUV420P的区别
###Date: 2018.5.14====================================================================详细的YUV格式讲解:http://www.fourcc.org/yuv.php参考自:https://blog.csdn.net/leixiaohua1020/article/details/12234821YV12和I420...
ffmpeg获取摄像头数据保存成YUV420P格式
编译之前得下载好ffmpeg库文件pro文件SOURCES += \ ffmpeg_libavdevice.cppINCLUDEPATH += $$PWD/ffmpeg/includeLIBS += $$PWD/ffmpeg/lib/avcodec.lib \ $$PWD/ffmpeg/lib/avdevice.lib \ $$PWD/ffmpeg/lib/av...
RGB与YUV420P互转
代码从工程抽出,不能直接运行,但有相应注释 ╮(╯▽╰)╭
YV12,I420,YUV420P 像素数据格式
YV12和I420的区别 一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Byte,RGB32的size=width×heigth×4,如果是I420(即YUV标准格式4:2:0)的数据量是 size=width×heigth×1.5 Byte。在采集到RGB24数据后,需要对这个格式的数据进行第一次压缩。即将图像的颜色空间由
将jpg图像转换成yuv420p格式
python实现的将图片从jpg转为<em><em>yuv420</em>p</em>的代码
DirectX--yuv420p上实现的字符叠加
unsigned char *pTemp; BYTE OsdY = 0;BYTE OsdU = 0;BYTE OsdV = 0;void OSDSetTextColor(BYTE OsdR, BYTE OsdG, BYTE OsdB){ OsdY = 0.25*OsdR+0.504*OsdG+0.098*OsdB+16; OsdU = -0.148*OsdR-0.291*OsdG+0.439*O
图片格式转换--从bmp到yuv420p
制作<em><em>yuv420</em>p</em>图片
ffmpeg学习八:软件生成yuv420p视频并将其编码为H264格式
通过前面对ffmpeg中常用的几个api的源码分析,从而对api有了更好的理解。之前已经做过视频的解码了,今天来尝试视频的编码。ffmpeg已经给我们提供了相应的可供参考的程序:doc/examples/decoding_encoding.c文件就是解码和编码的例程。仔细阅读它的代码后,我们可以按照自己的理解,写自己的视频编码程序。我们将会把一个<em><em>yuv420</em>p</em>格式的文件,使用h264编码器进行编码。
Android YUV使用总结之Android常用的几种格式:NV21/NV12/YV12/YUV420P的区别
工作问题接触到图像这一块,需要对手机摄像头采集的原始帧做Rotate或者scale,但无奈对此的了解少之又少,于是网上搜了一顿,完事后将最近所学总结一下,以方便之后的人别踩太多坑。         首先想要了解YUV为何物,请猛戳:https://msdn.microsoft.com/en-us/library/aa904813(VS.80).aspx     上面的链接中,微
SDL2 渲染YUV420P
使用SDL2.0.4 渲染YUV420P到屏幕上.支持窗口大小调整. 直接显示到Native窗口中. 效率比较高.渲染720P基本不耗费CPU 支持等比缩放
OpenCV读取YUV420p文件并转换为Mat类型
参考文章: http://blog.csdn.net/gxiaob/article/details/9718071 这里直接封装成了 Mat类型: void conv_<em>yuv420</em>_to_mat(Mat &dst, unsigned char* pYUV420, int width, int height) { if (!pYUV420) { return
对YUV420内容的一些理解
最近在做一个视频播放器,里面涉及到转码成YUV的内容,对这个YUV里面的内容非常不理解,百度又找不到自己需要的,所以特地做了下了解。 YUV是一种颜色编码方法,其中"Y"代表明亮度,,"U"和"V"代表其色度,最大的优点是只需要极少的频宽来进行视频信号传输。(摘自百度百科) YUV420是YUV里的一种,其格式的Y:U:V的比例为4:2:0,即每4个Y用一组UV(这个还不是很理
YUV420图像旋转90算法的优化
在做android摄像头捕获时,发现从android摄像头出来的原始视是逆时针旋转了90度的,所以需要把它顺时针旋转90。android视频支持的是NV21格式,它是一种YUV420的格式。 我本想用开源的图像处理库(opencv)做旋转,但是opencv只能处理bmp的图像。这样的话,需要先把NV21转换成BMP32。然后再做旋转。所以要操作两次,效率肯定低。最后也没找到好的方法(如果你知道一
android视频采集YUV420旋转角度算法
常用的YUV420旋转角度算法,选择90度的算法已经优化过了。网上也很多,不过有一些不能用,这些是本人亲测过的。有一点需要注意。如果你需要旋转90度或者270度,那么需要把宽和高对调。否则会花屏。因为比如你320 X 240,图像旋转90°之后宽高变成了240 X 320。 //顺时针旋转270度 private void YUV420spRotate270(byte[] d
ffmpeg编程读取摄像头信息,保存为裸yuv420p、yuyv422视频流
ffmpeg编程:读取摄像头信息,保存为裸<em><em>yuv420</em>p</em>、yuyv422视频流,参见文档:https://blog.csdn.net/dijkstar/article/details/85881709
( YUV420(YV12)与YUY2(YUV422,YUYV)格式互转
做美颜要进行格式转换,就做了两种格式的互转,( YUV420(YV12)与YUY2(YUV422,YUYV)格式互转
Android直播必备之YUV使用总结 —— Android常用的几种格式:NV21/NV12/YV12/YUV420P的区别
说明   因工作方面接触到图像处理这一块,需要对手机摄像头采集的原始帧做Rotate或者Scale,但无奈对此的了解少之又少,于是网上搜了一顿,完事后将最近所学总结一下,以方便之后的人别踩太多坑。   首先想要了解YUV为何物:请猛戳我     上面的链接中微软已经写的很详细了,国内大部分文章都是翻译这篇文章的,如果还有疑问的同学可以参考下面这些大神的博客: 最简单的基于FFmpeg的libsw
Unity_利用Shader使YUV420p转为RGB,以此渲染出视频
  由于项目需求,讨论如何做个播放器,能够实现流畅播放高码率高分辨率的视频。。。    &amp;gt;&amp;gt;&amp;gt;因此决定从共享内存里入手,C++获取本地视频文件写到windows的共享内存     &amp;gt;&amp;gt;&amp;gt;unity则从共享内存里读取YUV420p数据贴图到画面 本文只涉及到获取YUV420P数据后实现播放,至于这数据怎么来的以及相关C++的DLL不进行详细讨论,俺也不清楚 ...
毕设系列之Libx264实时视频流(YUV 420P转H264视频编码篇)
#PS:要转载请注明出处,本人版权所有 #PS:这个只是 《 我自己 》理解,如果和你的 #原则相冲突,请谅解,勿喷 开发环境:Ubuntu 16.04 LTS 本文的技术实现部分参考雷博士的这篇文章。http://blog.csdn.net/leixiaohua1020/article/details/42078645 1、现在网上关于H264的文章有很多,但是我个人认为...
从YUV420p数据构造AVFrame
YUV420p AVFrame
使用ffmpeg将yuv420p数据保存成jpeg图片
ffmpeg使用4.0版本 注释做的比较全,直接看源码,已经简化到不能省略任何一条api了。 int EncodeYUVToJPEG(const char* InputFileName, const char* OutputFileName, int in_w, int in_h) { AVFormatContext *pFormatCtx; AVStream *video_...
D3D11显示ffmpeg解码出的YUV420P数据
最近在做D3D11的播放器,用来显示ffmpeg解码出来的AVFrame,这里记录下踩过的坑。 坑1:创建纹理缓存时要设置 MipLevels=1 坑2:创建纹理缓存时指定的DXGI_FORMAT_R8_UNORM 和 shader 内 PS 函数获取采样色彩后分量要一致
ffmpeg YUV420P视频帧旋转
//逆时针旋转90 度 -(void)frame_rotate_90WithSorrce:(AVFrame *)src des:(AVFrame*)des { int n = 0; int hw = src->width>>1; int hh = src->height>>1; int size = src->width * src->height; int
YUV420 或 YV12 图像缩放
author: CarlsonLee(carlsonlee.freec@hotmail.com), 本代码是freecamera的一部分,freecamera源代码存在:http://gitorious.org/freecamera ///scale typedef struct _VSImage {     guchar *pixels;     int width;   
nv12 yuv420p的相互转换
//初始化输入,输出的类型 -(void)initCapureSession{ //创建AVCaptureDevice的视频设备对象 AVCaptureDevice* videoDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; N...
[免费]FFmpeg实现YUV420P视频序列转RGB24视频序列(VC2010).rar
FFmpeg实现YUV420P视频序列转RGB24视频序列(VC2010),参考这方面的大牛代码,基本没修改什么,只是在主要地方添加了注释,另外在包里面放了相关文件的播放器工具.
把 yuyv422 格式的图片转换为 yuv420 格式
平台:linux 理论基础: 在一帧yuyv422图像中,y的个数为像素个数,u和v的个数为像素个数的一半;在yuyv420中,y的个数不变,u,v 个数再减半,为像素个数的1/4 ;<em><em>yuv420</em>p</em>中的p表示<em>yuv420</em>中的数据 y u v 三种数据分开存放,先存放y数据,在存放u数据,最后存放v数据。 /***********************************...
YUV420P Y分量的存储小结
最近在学习雷神的《视音频数据处理入门》, 虽然已经知道420P的YUV图片(planar格式)的存储方式为: 在像素的采样位数为8bit的情况下且宽w高h (1).图片总字节数为w*h*3/2 Byte == w*h(Y) + w*h/4(U) + w*h/4(V) (2).planar格式下的存储方式是YYYYYYYYYYYYYYYYUUUUVVVV 且每一个YUV分量占一个Byte, ...
YU420P格式和H264裸码流的理解
最近两天在忙项目,偶尔学习了YUV420P的格式以及H264裸码流的相关知识。这两个之前也了解过,尤其H264的裸码流,在HI3518E的源码中专门研究过。但是不是太彻底,这几天看雷神(默哀)的博客,系统的学习了这两点支持。 YUV420P我的理解是: 假如使用它表示四个点,每个点都需要一个Y分量,每四个Y分量需要一个UV分量。假设宽度为W=2,高度为H=2,那么四个点需要的空间便是:(W*H
YUV420帧转Bitmap
用海康采集卡做个项目 需要连续抓拍及缓冲图片 用SDK本身提供的图像抓拍太费时 调用间隔较小时导致画面卡顿现象;改用原始图像数据流回调函数RegisterImageStreamCallback进行抓图 但回调函数帧为YUV420格式 需要转成Bitmap才用用于显示及本地查看 在网上找了好多都是基于R Y+1 4075 V 128 G Y 0 3455 U 128 – 0 7169 V 128 B Y+1 779 U 128 公式运算且大多是C语言 改成C#后效率一直不高(尝试过消除浮点运算 查表法等) 后看到MSDN上的转换公式 http: msdn microsoft com en us library aa917087 aspx 后编写了此转换类库 转换一个D1帧 704 576 大约只需60ms左右 压缩包为Vs2010项目带使用示例 ">用海康采集卡做个项目 需要连续抓拍及缓冲图片 用SDK本身提供的图像抓拍太费时 调用间隔较小时导致画面卡顿现象;改用原始图像数据流回调函数RegisterImageStreamCallback进行抓图 但回调函数帧为YUV420格式 需要转成Bitmap才 [更多]
bgr24转yuv420提取自ffmpeg代码,不依赖ffmpeg
bgr转yuv网上方法很多,有很多帖子都说到利用ffmpeg比较高效,此代码提取自ffmpeg2.8源码,不再依赖ffmpeg,能够高效地完成bgr到<em>yuv420</em>的转换
x264编码yuv为h264代码
代码简洁,演示了x264编码yuv为h264的过程,可以直接拷贝使用,便于学习。
YUV420p的数据想要在IOS中显示,转CIImage总是返回nil 问题未解决,这里记录下
H264编码的数据,想显示,应该都要转为CVPixelBufferRef(使用CVPixelBufferCreateWithPlanarBytes),这一个是成功的,但是有由CVPixelBufferRef转CIImage总是返回nil,查相关帖子http://stackoverflow.com/questions/15316534/cvpixelbuffer-to-ciimage-always-
bitmap转yuv420p数据以及数据灰度化
/** * bitmap获取argb数据 * @param bitmap * @return */ private int[] getArgbFromBitmap(Bitmap bitmap){ int[] argbs = new int[bitmap.getWidth()*bitmap.getHeight()]; bitmap.getPixels(argbs,0,bit...
使用ffmpeg3.x进行YUV420P->H.264的简单转码
本文代码是基于雷霄骅的《最简单的基于FFMPEG的视频编码器(YUV编码为H.264)》一文修改得来的。由于雷霄骅原文中采用的API在新版本ffmpeg中,关健的编码API发生了变化,我在此基础上,参考了ffmpeg3.x的sample和header修改后得到。主要的变化是在编码API上,原来是通过avcodec_encode_video2()来完成编码的,现在编码API变为avcodec_send
yuv420 转换成RGB565函数
做ADNROID CAMERA时.发现很多朋友都在找YUV RGB 转换的函数..在这里给大家共享一个.可以实际工作的代码.YUV420P ---- >> RGB565 Java代码   static void ccvt_420p_rgb565(int width, int height, const unsigned char *src, __u16 *dst)  {
opencv实现yuv420与bgr24互转,待验证
void bgr2yuv(  ) { cv::Mat bgrImg(bgrH, bgrW, CV_8UC3, bgrBuffer); cv::Mat yuvImg(yuvH * 3 / 2, yuvW, CV_8UC1, yuvBuffer); cv::cvtColor(bgrImg, yuvImg, CV_BGR2YUV_I420); } void yuv2bgr(  )
C#写的视频RGB24转YUV420p格式
C#写的视频RGB24格式转为YUV420p格式代码
symbian下将一个zip文件解压到指定目录下载
http://www.newlc.com/en/Reading-ZIP-File-in-Symbian-OS.html NewLc上有个zip例子能够遍历和从一个包里面解压一个文件出来。 我稍微整理了一下实现一个带有目录的zip文件解压到指定目录。 相关下载链接:[url=//download.csdn.net/download/windcao/2116277?utm_source=bbsseo]//download.csdn.net/download/windcao/2116277?utm_source=bbsseo[/url]
CDMA2000_1X_EV-DO网络技术中文版下载
CDMA2000_1X_EV-DO网络技术中文版 CDMA2000_1X_EV-DO网络技术中文版 CDMA2000_1X_EV-DO网络技术中文版 相关下载链接:[url=//download.csdn.net/download/lingyangg/2288093?utm_source=bbsseo]//download.csdn.net/download/lingyangg/2288093?utm_source=bbsseo[/url]
数学建模-贝叶斯估计-算法-统计学下载
形象的刻画了,贝叶斯方法 在明确后验分布或后验分布函数、分布密度函数()1,,nXXξθ…后,开始构造未知参数0θ的估计ˆθ。最常用的估计方法是取后验分布的均值。 相关下载链接:[url=//download.csdn.net/download/luiyedao/2553391?utm_source=bbsseo]//download.csdn.net/download/luiyedao/2553391?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 西班牙的人工智能有什么区别 产品经理培训都要什么区别
我们是很有底线的