信必诺
但愿绝望和无奈远走高飞..
展开
-
树莓派 —— 编译FFmpeg(硬编解加速)
树莓派4b下编译FFmpeg原创 2022-06-01 10:04:14 · 901 阅读 · 1 评论 -
FFmpeg —— Linux下使用ffmpeg硬件cuda解码mp4文件,并加入简单cv处理,sdl渲染窗口(附源码)
效果 准备工作 安装nvidia驱动、安装cuda、编译ffmpeg(硬件编解码)、编译sdl2、编译opencv。 上述需要读者自行完成,本人已编写上述部分过程,仅供参考。 FFmpeg —— Linux下进行配置(硬件加速编解码) SDL2 —— Ubuntu下编译sdl2 代码 基于Qt Creator原创 2022-04-20 18:18:57 · 1383 阅读 · 0 评论 -
SDL2 —— Ubuntu下编译sdl2
SDL2原创 2022-03-29 16:08:26 · 1254 阅读 · 0 评论 -
SDL —— 常用函数总结(持续更新)
说明 这里总结了SDL、SDL_image、SDL_mixer、SDL_ttf的常用函数。可能不是很完整,但作者会持续更新的。 正文SDL: /* 描述: 初始化SDL库。 参数: 'flags'是以下任意一个或组合。 返回: 成功时返回0,失败时返回负错误码;调用SDL_GetError()获取更多信息。 举例: if (SDL_Init(SDL_INIT_EVERYTHING) != 0) { return false; } */ e原创 2021-12-03 18:23:32 · 1760 阅读 · 0 评论 -
SDL —— SDL窗口嵌入QWidget中,显示FFmpeg解码后OpenCv处理的视频(附源码)
说明 在Vs2017中创建Qt项目,在项目中加入FFmpeg、SDL、OpenCv等相关开发库。实现了由FFmpeg打开、解码mp4文件,OpenCv在解码视频帧左上角绘制红色矩形框,将SDL的窗口嵌入到QWidget中。并将OpcnCv处理的帧放到SDL中进行GPU加速渲染显示视频。 具体效果如下: 效果图 可选择视频进行打开、关闭,拖拽QWidget尺寸 视频尺寸同样进行改变。效果如下: 源码 Global.h#ifndef Global_原创 2021-12-03 14:35:52 · 2802 阅读 · 0 评论 -
SDL —— SDL窗口嵌入QWidget中,显示FFmpeg解码视频(附源码)
在Vs2017中创建Qt项目,在项目中加入FFmpeg、SDL等相关开发库。实现了由FFmpeg打开、解码mp4文件,将SDL的窗口嵌入到QWidget中。并将FFmpeg解码帧放到SDL中进行GPU加速渲染显示视频。原创 2021-12-02 18:21:33 · 787 阅读 · 0 评论 -
SDL —— FFmpeg解码本地视频在SDL渲染显示(附源码)
说明 在Vs2017中创建C++的空项目,在项目中加入FFmpeg、SDL等相关开发库。实现了由FFmpeg打开、解码mp4文件,将解码帧放到SDL中进行GPU加速渲染显示视频。 具体效果如下: 效果图 由于CSDN上传gif大小限制,故将解码线程没有加入睡眠所以视频播放很快,以满足上传效果gif。 源码// FFmpegextern "C"{#include "libavformat/avformat.h"#include "libswscal原创 2021-12-02 16:21:43 · 934 阅读 · 0 评论 -
SDL —— 加载SDL_ttf,显示一段文字(附源码)
简介 该源码实现了使用SDL_ttf加载本地文字,进行写入文字到渲染窗口的工作。 What SDL_ttf ? 效果图 源码#include <iostream>/*因SDL2是C语言开发,所以这里需要加入C语言声明*/extern "C"{#include "SDL.h"#include "SDL_ttf.h"}/*因为SDL2内部存在main函数,则需要将其去掉。否则编译失败!*/#undef mainconst int SCREE原创 2021-12-03 17:57:15 · 905 阅读 · 0 评论 -
SDL —— 事件监控与过滤
说明 这里用两个SDL的回调函数来说明问题。 extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter,void *userdata); extern DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter,void *userdata); 具体说明如下:/* SDL原创 2021-12-02 12:27:59 · 479 阅读 · 0 评论 -
SDL —— 窗口嵌入到Qt(附源码)
坑 1、在创建C++空工程时加入SDL,引入头文件时需要声明如下代码才可正常运行。#include <iostream>extern "C"{#include "SDL.h"#include "SDL_image.h"}#undef main // 关键int main(){ ...} 2、在创建Qt空工程时加入SDL,引入头文件时需要声明如下代码才可正常运行。#include <QtWidgets/QApplicatio原创 2021-12-01 19:36:31 · 1494 阅读 · 0 评论 -
SDL —— 图片缩放、拖拽、移动(附源码)
简介 该源码实现了使用硬件加速进行加载png图片,对图片可以进行键盘上下左右案件移动操作、鼠标点击拖拽操作、鼠标滚轮实现图片缩放操作、按下Esc退出操作等。 使用SDL_image加载png图片。 效果图 源码#include <iostream>extern "C"{#include "SDL.h"#include "SDL_image.h"}#undef mainint main(){ // 初始化SDL if (SDL_Init(SD原创 2021-12-01 15:19:25 · 1769 阅读 · 1 评论 -
SDL —— 示例集(二)
示例说明 使用Vs2015+SDL2.0.14环境进行测试。 示例名称 * 使用SDL_image显示png或jpg sdl2代码注意 1、SDL2代码在编写时,切记首先需要进行初始化,初始化可以初始不同的子模块,也可以初始所有模块。// sdl初始化if (SDL_Init(SDL_INIT_EVERYTHING) == -1) { return false; } 2、SDL2编写了创建窗口等一些创建型函数,则需要进行销毁操作。原创 2021-11-22 23:48:44 · 807 阅读 · 0 评论 -
SDL —— 示例集(一)
示例说明 使用Vs2015+SDL2.0.14环境进行测试。 * 绘制矩形 示例代码#include <iostream>/*因SDL2是C语言开发,所以这里需要加入C语言声明*/extern "C"{#include "SDL.h"}/*因为SDL2内部存在main函数,则需要将其去掉。否则编译失败!*/#undef main// 绘制矩形bool drawRect(){ // sdl初始化 if (SDL_Init(SDL原创 2021-11-21 16:17:33 · 925 阅读 · 0 评论 -
SDL —— SDL_ttf
简介 SDL_ttf是一个 TrueType 字体渲染库,它与 SDL 库一起使用,几乎可以移植。它依赖于 freetype2 来处理 TrueType 字体数据。它允许程序员使用多种 TrueType 字体,而无需自己编写字体呈现例程。借助轮廓字体和抗锯齿的强大功能,可以毫不费力地获得高质量的文本输出。 下载 在官网进行下载SDL_ttf,选择开发包进行下载开发。 文档与配置 查看配置工程方法。 查看SDL_mixer官方文档。 关注笔者 - jx原创 2021-12-03 17:05:24 · 1738 阅读 · 0 评论 -
SDL —— SDL_mixer
简介 SDL_mixer(混音库)是一个多声道混音器库示例。 它支持任意数量的16位立体声音频同时播放的通道,以及由流行的FLAC,MikMod MOD,Timidity MIDI,Ogg Vorbis和SMPEG MP3库混合的音乐通道。 与 SDL 库一起使用,几乎所有系统都可以移植。它允许程序员使用多个样本和音乐,而无需自己编写混音算法。它还简化了从各种文件格式加载和播放样本和音乐的处理。 下载 在官网进行下载SDL_mixer,选择开发包进行下载开发。原创 2021-11-23 20:54:49 · 1262 阅读 · 0 评论 -
SDL —— SDL_image
简介 SDL_image是一个图像加载库,与 SDL 库一起使用,几乎可以移植。它允许程序员使用多种图像格式,而无需自己编写所有加载和转换算法。SDL_image可在www.libsdl.org或更具体地说在SDL_image主页上找到。 它将图像作为 SDL 表面和纹理加载,并支持以下格式:BMP、GIF、JPEG、LBM、PCX、PNG、PNM、SVG、TGA、TIFF、WEBP、XCF、XPM、XV。从 1.2.5 SDL_image,JPEG、PNG、TIFF 和 WEBP 图像原创 2021-11-22 22:54:25 · 1385 阅读 · 0 评论 -
SDL —— SDL2及API简介
简介 SDL2框架 1、SDL 视频渲染主要涉及到四个对象 (引用雷神部分文章) SDL_Window SDL_Window结构体定义了一个SDL2窗口。若直接使用编译好的SDK,那么是看不到其内部结构。 SDL_Surface 在SDL中,所有绘制在视频输出都是通过SDL_Sur对face对象来输出。一个图像,一段文字,一个视频都需要转换成SDL_Surface对象来操作,它们可以平铺,原创 2021-11-21 14:22:30 · 13525 阅读 · 0 评论 -
SDL —— win10下环境搭建
SDL2简介 SDL(Simple DirectMedia Layer)是一个跨平台开发库,旨在通过 OpenGL/Direct3D/Metal/Vulkan 提供对音频、键盘、鼠标、操纵杆和图形硬件的低级访问。它被视频播放软件,模拟器和流行的游戏使用,包括Valve的获奖目录和许多Humble Bundle游戏。 SDL 正式支持 Windows、macOS、Linux、iOS 和 Android。对其他平台的支持可以在源代码中找到。 SDL 是用 C 语言编写的,可与C++原创 2021-11-21 12:45:32 · 4426 阅读 · 0 评论