fatal error: sdl.h: No such file or directory
(1)问题:缺少SDL依赖库。
下载了SDL1.2.15,编译安装后,问题仍然没有解决

之后查了一下,ffmpeg-3.3.9源码包依赖SDL2.0,于是乎删除了SDL1.2.15:
cd ./SDL-1.2.15
sudo make uninstall
sudo make distclean
(2)之后网上下载SDL2-2.0.12.tar.gz

编译安装,可获得动态链接库。再运行ffplay,已经不会报找不到SDL.h的问题了。

4、继续使用ffplayj进行视频文件播放,发现仍然有问题:播放器打开后闪退,报错信息:
SDL_OpenAudio (2 channels, 44100 Hz): No such audio device
SDL_OpenAudio (1 channels, 44100 Hz): No such audio device
No more combinations to try, audio open failed
问题:SDL库有问题,查了一下,原来编译后的SDL2.0库也缺乏依赖。
解决:
apt-get install libasound2-dev
apt-get install libpulse-dev
另外使用ffplay可能会出现这个错误:
Could not initialize SDL - No available video device
(Did you set the DISPLAY variable?)
所以,再安装两个依赖包,
apt-get install libx11-dev
apt-get install xorg-dev
安装完上面四个包之后,重新编译SDL2.0的库:
cd ./SDL2-2.0.16
sudo make uninstall
sudo make distclean
./configure
sudo make
sudo make install
5、再运行ffplay,可正常播放视频,音视频都没有问题
在本地编译ffmpeg的时候编译没有ffplay,是因为缺少sdl库
只需要安装对应的库就行了
两个库之间差别还是很大的,至于怎样选择就看个人需要了,最好是两个都安装让编译的时候脚本自动判断选择吧
sudo apt-get install libsdl1.2-dev
sudo apt-get install libsdl2-dev
另外执行configure的时候可能会提示缺少yasm用下面的语句安装下yasm
sudo apt-get install yasm
1、确认Makefile中指定的config.mak(在ffmpeg根目录下)中:CONFIG_FFPLAY=yes,如果不是需要重新./configure
2、编译时需要安装libsdl1.2-dev,命令为sudo apt-get install libsdl1.2-dev,如果安装失败,之前如果安装过sdl-devel包最好将其卸载。根据错误原因来解决。
3、make,结束后发现ffpl
SDL_OpenAudio (2 channels, 44100 Hz): No such audio device
SDL_OpenAudio (1 channels, 44100 Hz): No such audio device
No more combinations to try, audio open failed
该问题产生的原因是pulseaudio-libspulseaudio 等依赖库不健全
需要注意的是pulsea...
最近参考一博客测试使用ffmpeg将rtsp流分片成ts文件,附上大神博客链接,很有用!!!https://blog.csdn.net/kunzai6/article/details/76975600本次测试使用到了nginx,目的是将经过ffmpeg分片的m3u8文件和ts文件输出到nginx的一个目录下,万事具备~~然而ffmpeg命令行开始执行后就报错了,如下图所示:上面红色字体的描述就是报...
之前按照网上的步骤编译过好多次ffmpeg都没有发现有问题,但是最近机器重装后,装了了ubuntu系统,再按照自己的方法去编译ffmpeg发现没有生成ffplay文件(可执行),原因就在于电脑上没有安装sdl库。应为ffplay是依赖于sdl来进行图像渲染的。
下面告诉大家安装sdl库的方法。
sudo apt-get install libsdl1.2-dev
希望对遇到这个问题的...