GStreamer jpegenc出厂错误:JPEG库版本错误:库为62,调用者预期为80

时间:2015-02-24 18:30:41

标签: cross-platform gstreamer ld libjpeg raspberry-pi2

我正在从我的PC(Ubuntu 14.04)开发一个应用程序到Raspberry pi 2.我尝试使用GStreamer-1.0,因为它为Raspberry Pi提供硬件加速支持。关于申请的简短介绍;从IP摄像机获取帧并将其以1 FPS保存到文件系统的某个位置。我可以使用;

从命令行保存图像
gst-launcg-1.0 rtspsrc location="" ! rtph264depay ! h264parse ! omxh264dec ! videorate ! video/x-raw,framerate=1/ ! jpegenc ! multifilesink location=/somewhere/to/save/images/and/save/type

但是我想用C ++代码做这件事,我会用这些图像做一些处理。我已经安装了gstreamer,gst-plugins-base,gst-plugins-good,gst-plugins-ugly,gst-plugins-bad,gst-libav,gst-omx到Raspberry Pi和Installed gstreamer(以及要求,zlib) ,glib和libffi)到Ubuntu进行交叉开发。我想为这个过程创建一个管道,但是当我想创建"jpegenc"元素时,它给出的错误与gstreamer无关;

Wrong JPEG library version: library is 62, caller expects 80

但是我没有理解任何事情,因为我的应用程序ldd输出没有依赖于libjpeg.so.62;

libjpeg.so.8 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.8 (0x74b51000)

我的两个系统都没有libjpeg62。但是我已经安装了libjpeg62(我想要libjpeg62-dev但sudo apt-get install libjpeg62-dev想要删除一些对我来说必要的软件包然后拒绝它)并将libjpeg.so与(RPi)链接在一起;

sudo rm /usr/lib/arm-linux-gnueabihf/libjpeg.so
sudo ln -s /usr/lib/arm-linux-gnueabihf/libjpeg.so.62 /usr/lib/arm-linux-gnueabihf/libjpeg.so

但没有改变。我看过this question,但我没有从R-Pi编译它并没有影响任何事情,

1 个答案:

答案 0 :(得分:0)

卸载所有jpeg版本(62和80),并使用

重新安装jpeg8
sudo apt-get install libjpeg8