侧边栏
首页代码
上一页 1 2 3 4 5 6 7 8 9 10 ··· 12 下一页
摘要: 一、简介 我们使用QT+ffmpeg实现一个播放器,这里我们主要是为了学习ffmpege了,而QT只是辅助的,所以播放器的界面搭建我们不在介绍,可以直接看代码(界面搭建代码)。 现在我们直接接入主题,ffmpeg的解封装我们可以直接参考之前介绍的 FFmpeg音视频解封装格式 下面是使用FFmpeg 阅读全文
posted @ 2022-11-08 17:23 咸鱼Jay 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 一、简介 为什么要用多线程?在音视频领域主要是实现音视频同步。实现了音视频同步,我们的播放器就基本上合格了。 多线程的好处主要是能使程序更加充分利用硬件(主要是CPU)的性能。但是也存在相应的隐患,如果多线程管理不好,会出现协调问题。 这里我们将讲解一下SDL的多线程与锁机制。 引进的机制:线程的互 阅读全文
posted @ 2022-11-08 17:17 咸鱼Jay 阅读(246) 评论(0) 推荐(2) 编辑
摘要: 在《Java与CC++交互JNI编程》中有讲过AttachCurrentThread和DetachCurrentThread的使用。 我们知道在jni中我们可以使用pthread或者std::thread创建线程。因为线程并不是从Java环境创建的,所以这时候创建出的线程是没有JNIEnv的。如果需 阅读全文
posted @ 2022-10-17 10:29 咸鱼Jay 阅读(1241) 评论(0) 推荐(0) 编辑
摘要: 一、什么是封装格式 封装格式也称为容器,用于打包音频、视频以及字幕等等,比如常见的容器有MP4、MOV、WMV、FLV、AVI、MKV等等。容器里面装的是音视频的压缩帧,但是不是所有类型的压缩帧都可以装入容器中,不同的容器对于压缩帧的格式是有要求的,有一些容器的兼容性要好一些,有一些容器的兼容性就会 阅读全文
posted @ 2022-10-17 10:29 咸鱼Jay 阅读(366) 评论(0) 推荐(2) 编辑
摘要: 本文的主要内容:对H.264数据进行解码(解压缩)。 使用FFmpeg命令进行H.264解码 如果是命令行的操作,非常简单。 ffmpeg -c:v h264 -i in.h264 out_cmd.yuv # -c:v h264是指定使用h264作为解码器 使用FFmpeg代码进行H.264解码 接 阅读全文
posted @ 2022-10-17 10:28 咸鱼Jay 阅读(579) 评论(0) 推荐(0) 编辑
摘要: 本文的主要内容:使用H.264编码对YUV视频进行压缩。 使用FFmpeg命令进行H.264编码 如果是命令行的操作,非常简单。 ffmpeg -s 640x480 -pix_fmt yuv420p -framerate 30 -i out_640x480.yuv -c:v libx264 out. 阅读全文
posted @ 2022-10-16 20:35 咸鱼Jay 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 本文主要介绍一种非常流行的视频编码:H.264。 计算一下:10秒钟1080p(1920x1080)、30fps的YUV420P原始视频,需要占用多大的存储空间? (10 * 30) * (1920 * 1080) * 1.5 = 933120000字节 ≈ 889.89MB 可以看得出来,原始视频 阅读全文
posted @ 2022-10-16 19:36 咸鱼Jay 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 前面文章FFmpeg像素格式转换中我们使用FFmpeg实现了一个像素格式转换工具类,现在我们就可以在Qt中利用QImage很容易的实现一个简单的YUV播放器了。 播放器功能很简单,只有播放、暂停和停止。我们定义了一个播放器类YuvPlayer,首先在yuvplayer.h文件中定义外部调用的函数,还 阅读全文
posted @ 2022-10-15 20:51 咸鱼Jay 阅读(870) 评论(0) 推荐(0) 编辑
摘要: 简介 前面使用 SDL 显示了一张YUV图片以及YUV视频。接下来使用Qt中的QImage来实现一个简单的 YUV 播放器,查看QImage支持的像素格式,你会发现QImage仅支持显示RGB像素格式数据,并不支持直接显示YUV像素格式数据,但是YUV和RGB之间是可以相互转换的,我们将YUV像素格 阅读全文
posted @ 2022-10-11 17:25 咸鱼Jay 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 简介 使用SDL实现简单的YUV播放器。 这里还需要使用到像素格式和计算图片大小,这两个我们直接使用ffmpeg来实现,因此需要使用ffmpeg的libavutil/avutil.h和libavutil/imgutils.h 初始化Video子系统 main.cpp 这里我们把SDL的初始化和退出都 阅读全文
posted @ 2022-10-11 17:24 咸鱼Jay 阅读(216) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 12 下一页
页脚HTML代码