前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ffmpeg:SDL编译,相关问题解决

ffmpeg:SDL编译,相关问题解决

作者头像
何其不顾四月天
发布2023-03-10 13:32:07
6.8K0
发布2023-03-10 13:32:07
举报
文章被收录于专栏:四月天的专栏

ffmpeg调用SDL相关问题解决

简介

最近在做一些关于视频的工作,ffmpeg编译一些相关的事情,说一下碰到的问题。

编译:

SDL2版本:SDL2.0.8

代码语言:javascript
复制
	(注意:SDL 依赖与X11,Xorg库,检查是否存在,不存在,安装)
		1)./configure –prefix=/usr/local/
		2)chmod 777 configure
		3)make 
		4)make install 

相关问题:

1.Could not initialize SDL - No available video device (Did you set the DISPLAY variable?) SDL初始化,失败不能找到视频驱动。 解决方案: 安装X11,XORG相关库Lib 2.SDL_OpenAudio (2 channels, 44100 Hz): WASAPI can’t initialize audio client SDL打开音频通道,不能初始化音频服务。 解决方案: 安装ALSA音频驱动 3.ALSA:Couldn’t open audio dedvice:Connection refused 不能打开音频驱动,拒绝访问。 解决方案

代码语言:javascript
复制
1.先去打开声音驱动 - system->preferences->Sound
2.如果出现:waiting sound system to respond
3.然后:检测pulseaudio 是否启动:ps -A|grep pulseaudio 如果有打印消息索引出现:例如: 3284 ? 00:00:01 pulseaudio
如果没出现,说明没有打开。
4.运行:sudo usermod -a -G pulse-access root (在终端中将root加到pulse-access组)
或者 pulseaudio --start -D (测试没有问题)
5.解释:root是超级管理员,主要是用来管理的,所以默认没有声音权限

4.ALSA: Couldn’t open audio device: No such device

代码语言:javascript
复制
1.查看环境变量: export ,确认 SDL_AUDIODRIVER没有设置为alsa
2.export SDL_AUDIODRIVER=alsa
3.export AUDIODEV=pulse
4.export SDL_AUDIODRIVER=alsa 设置SDL声音驱动:ALSA export AUDIODEV=pulse 设置audiodev为脉冲

详细说明:

在执行‘“./configure --prefix=/use/local”命令时,最后打印消息如下了两种:

代码语言:javascript
复制
SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   : mmx 3dnow sse sse2 sse3
Audio drivers   : disk dummy oss
Video drivers   : dummy opengl_es2 vulkan
Input drivers   : linuxev linuxkd
Using libsamplerate : NO
Using libudev       : NO
Using dbus          : NO
Using ime           : YES
Using ibus          : NO
Using fcitx         : NO
代码语言:javascript
复制
SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   : mmx 3dnow sse sse2 sse3
Audio drivers   : disk dummy oss alsa(dynamic) (音频库)
Video drivers   : dummy x11(dynamic) opengl opengl_es2 vulkan (视频库)
X11 libraries   : xdbe xrandr xshape xvidmode
Input drivers   : linuxev linuxkd
Using libsamplerate : NO
Using libudev       : NO
Using dbus          : NO
Using ime           : YES
Using ibus          : NO
Using fcitx         : NO

第一个打印消息,为音视频全不能播放,第二个全部都可以。两个打印消息对比:发现有几处不同, Audio drivers ,Video drivers。 alsa(dynamic):alsa驱动,动态音频播放

代码语言:javascript
复制
Audio drivers   : disk dummy oss alsa(dynamic) 
Audio drivers   : disk dummy oss

X11 视频动态播放

代码语言:javascript
复制
Video drivers   : dummy x11(dynamic) opengl opengl_es2 vulkan 
X11 libraries   : xdbe xrandr xshape xvidmode

Video drivers   : dummy opengl_es2 vulkan

相关库获取如下: 我的系统是Centos,为了把相关包保留所以都下载到本地,如果不知道用哪些包,打印相关列表,对比系统版本,自己的所需的库版本,对应下载,或直接安装。 下载SDL依赖包,如果支持在线安装,直接安装就可以,然后在编译自己所需版本,迭代替换就可以。

代码语言:javascript
复制
yum list *SDL* /*SDL相关包列表*/
yum install --downloadonly --downloaddir=/home/SDLpack SDL-devel.x86_64 /*下载SDL依赖包到本地*/
yum install --downloadonly --downloaddir=/home/pack/xorg-x11-pack/ xorg-x11-server-devel /*下载xorg-x11服务驱动依赖包到本地*/

相关网址:

代码语言:javascript
复制
https://www.gog.com/forum/thimbleweed_park/linux_unable_to_init_sdl_mixer_alsa_couldnt_open_audio_device_no_such_device
https://www.baidu.com/link?url=QjevLZqfr7E4-sOrX_1VwCTa1F8P7dOGUteEOQ-gfSUmc5lLxfIjTMPyhQrudjjrkzQYmIT6rnBrLA1-WjJ_q_&wd=&eqid=e31f58750006258e000000025d1dc909
https://segmentfault.com/a/1190000008549666

其他(注意事项)

在做一些开源库编译时,注意配置文件打印消息,查看本地是否缺少一些主要依赖库。在SDL遇到一些问题时,根据提示消息,如果是系统问题,解决系统问题,如果不是SDL自身问题,返回配置编译环境,查看相关打印消息

SDL依赖库包下载地址

SDL依赖库

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ffmpeg调用SDL相关问题解决
    • 简介
      • 编译:
        • 相关问题:
          • 详细说明:
            • 相关网址:
              • 其他(注意事项)
                • SDL依赖库包下载地址
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档