我是靠谱客的博主 虚拟夕阳,这篇文章主要介绍FFMpeg中的SDL多线程使用,现在分享给大家,希望可以做个参考。

在FFmpeg的player中用到了SDL多线程,去读取音视频文件,解码音频,解码视频,解码字幕,读写队列;来看SDL_Thread,SDL_cond,SDL_mutex关系

SDL是一个c语言写的多媒体库,功能非常强大,并且支持音视频渲染,有的游戏中也有用到;

直接看代码注释:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// sdlthread.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include <iostream> #include "SDL.h" SDL_cond* cond = SDL_CreateCond(); //创建一个条件信号量 SDL_mutex* mutex = SDL_CreateMutex();创建一个互斥锁 int index = 0; //第一个线程函数 static int MyThread(void *data) { while (1) { SDL_LockMutex(mutex);//线程启动后,先加锁 index++; std::cout << "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" << index << "n"; if (index % 2 == 0) {

最后

以上就是虚拟夕阳最近收集整理的关于FFMpeg中的SDL多线程使用的全部内容,更多相关FFMpeg中内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部