I tried to install the av package on centos7 server with R 3.5.3 but am receiving an error. I installed ffmpeg and ffmpeg-devel on centos 7 as below and then followed the instructions of specifying LIB_DIR and INCLUDE_DIR for installing av. any help would be appreciated. Thanks ```> install.packages('av', configure.vars = c("LIB_DIR=/usr/lib64","INCLUDE_DIR=/usr/include/ffmpeg"))Installing package into '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5' (as 'lib' is unspecified) % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 100 720k 100 720k 0 0 987k 0 --:--:-- --:--:-- --:--:-- 987k No protocol specified * installing *source* package 'av' ... ** package 'av' successfully unpacked and MD5 sums checked Found INCLUDE_DIR and/or LIB_DIR! Using PKG_CFLAGS=-I/usr/include/ffmpeg Using PKG_LIBS=-L/usr/lib64 -lavfilter ** libs rm -f av.so formats.o info.o init.o util.o video.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c formats.c -o formats.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c info.c -o info.o info.c: In function 'get_video_info': info.c:33:14: error: 'AVStream' has no member named 'codecpar' if(stream->codecpar->codec_type != AVMEDIA_TYPE_VIDEO) ^ info.c:35:49: error: 'AVStream' has no member named 'codecpar' AVCodec *codec = avcodec_find_decoder(stream->codecpar->codec_id); ^ info.c:40:55: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 0, Rf_ScalarReal(stream->codecpar->width)); ^ info.c:41:55: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 1, Rf_ScalarReal(stream->codecpar->height)); ^ info.c:45:94: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 5, safe_string(av_get_pix_fmt_name((enum AVPixelFormat) stream->codecpar->format))); ^ info.c: In function 'get_audio_info': info.c:64:14: error: 'AVStream' has no member named 'codecpar' if(stream->codecpar->codec_type != AVMEDIA_TYPE_AUDIO) ^ info.c:66:49: error: 'AVStream' has no member named 'codecpar' AVCodec *codec = avcodec_find_decoder(stream->codecpar->codec_id); ^ info.c:70:55: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 0, Rf_ScalarReal(stream->codecpar->channels)); ^ info.c:71:55: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 1, Rf_ScalarReal(stream->codecpar->sample_rate)); ^ info.c:74:55: error: 'AVStream' has no member named 'codecpar' SET_VECTOR_ELT(streamdata, 4, Rf_ScalarReal(stream->codecpar->bit_rate)); ^ info.c:77:54: error: 'AVStream' has no member named 'codecpar' av_get_channel_layout_string(layout, 1024, stream->codecpar->channels, stream->codecpar->channel_layout); ^ info.c:77:82: error: 'AVStream' has no member named 'codecpar' av_get_channel_layout_string(layout, 1024, stream->codecpar->channels, stream->codecpar->channel_layout); ^ make: *** [info.o] Error 1 ERROR: compilation failed for package 'av' * removing '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av' Warning in install.packages : installation of package 'av' had non-zero exit status The downloaded source packages are in '/tmp/RtmpMDafXK/downloaded_packages' ``` ffmpeg was installed successfully: ``` sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm Retrieving http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm Preparing... ################################# [100%] Updating / installing... 1:nux-dextop-release-0-5.el7.nux ################################# [100%] sudo yum install ffmpeg ffmpeg-devel -y ``` Result: ``` (base) [dominik at cppc-server ffmpeg]$ ffmpeg ffmpeg version 2.8.15 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36) configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' --extra-ldflags='-Wl,-z,relro ' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-gnutls --enable-ladspa --enable-libass --enable-libcdio --enable-libdc1394 --enable-libfdk-aac --enable-nonfree --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libx264 --enable-libx265 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect libavutil 54. 31.100 / 54. 31.100 libavcodec 56. 60.100 / 56. 60.100 libavformat 56. 40.101 / 56. 40.101 libavdevice 56. 4.100 / 56. 4.100 libavfilter 5. 40.101 / 5. 40.101 libavresample 2. 1. 0 / 2. 1. 0 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 2.101 / 1. 2.101 libpostproc 53. 3.100 / 53. 3.100 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... Use -h to get full help or, even better, run 'man ffmpeg' (base) [dominik at cppc-server ffmpeg]$ ``` [[alternative HTML version deleted]]
On Mon, 9 Dec 2019 18:03:17 +0000 "Schneider, Dominik" <dominik.schneider at wsu.edu> wrote:> (base) [dominik at cppc-server ffmpeg]$ ffmpeg > ffmpeg version 2.8.15 Copyright (c) 2000-2018 the FFmpeg developersAccording to SystemRequirements of av [*], it needs ffmpeg >= 3.2. There is FFmpeg 3.4.7 for RHEL 7 in the RPM Fusion repo [**], which should be possible on CentOS 7. Try this version instead of 2.8.15 from Nux Dextop. -- Best regards, Ivan [*] https://cran.r-project.org/package=av [**] https://download1.rpmfusion.org/free/el/updates/7/x86_64/repoview/ffmpeg.html
Hi Ivan - Thank you for the suggestion. Unfortunately after updating both ffmpeg and ffmpeg-devel from https://centos.pkgs.org/7/okey-x86_64/ffmpeg-3.2.4-1.el7.centos.x86_64.rpm.html it still will not install av in R. any further suggestions? (base) [dominik at cppc-server GoldStandard2]$ ffmpeg ffmpeg version 3.2.4 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11) configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --extra-cflags='-fPIC -I/usr/include/samba-4.0' --extra-ldflags='-lstdc++ -lsmbclient' --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-avresample --enable-videotoolbox --enable-bzlib --enable-fontconfig --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libdc1394 --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenh264 --enable-libopenjpeg --enable-librtmp --enable-libvorbis --enable-libx264 --enable-libxvid --enable-memalign-hack --extra-ldflags=-fPIC --extra-cflags=-fPIC --enable-pthreads --enable-postproc --enable-avfilter --enable-x11grab --enable-libopencv --enable-libcdio --enable-libfreetype --enable-libvo-amrwbenc --enable-libfdk-aac --enable-libfribidi --enable-libtheora --enable-libass --enable-libbluray --enable-libv4l2 --enable-openal --enable-libschroedinger --enable-libpulse --enable-gnutls --enable-openssl --enable-libspeex --enable-libgme --enable-libzmq --enable-libshine --enable-libsmbclient --enable-libgsm --enable-libtwolame --enable-libopus --enable-ladspa --enable-libcaca --enable-libiec61883 --enable-libssh --enable-libvidstab --enable-libwavpack --enable-libzvbi --enable-pic --enable-thumb --enable-libbs2b --enable-libx265 --enable-opengl --enable-libsnappy libavutil 55. 34.101 / 55. 34.101 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.101 / 57. 56.101 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libavresample 3. 1. 0 / 3. 1. 0 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100 libpostproc 54. 1.100 / 54. 1.100 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... Use -h to get full help or, even better, run 'man ffmpeg'> install.packages('av', configure.vars = c("LIB_DIR=/usr/lib64","INCLUDE_DIR=/usr/include/"))Installing package into '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5' (as 'lib' is unspecified) % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 720k 100 720k 0 0 1028k 0 --:--:-- --:--:-- --:--:-- 1028k * installing *source* package 'av' ... ** package 'av' successfully unpacked and MD5 sums checked Found INCLUDE_DIR and/or LIB_DIR! Using PKG_CFLAGS=-I/usr/include/ Using PKG_LIBS=-L/usr/lib64 -lavfilter ** libs rm -f av.so formats.o info.o init.o util.o video.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c formats.c -o formats.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c info.c -o info.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c init.c -o init.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c util.c -o util.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c video.c -o video.o g++ -std=gnu++11 -shared -L/opt/microsoft/ropen/3.5.3/lib64/R/lib -o av.so formats.o info.o init.o util.o video.o -L/usr/lib64 -lavfilter -L/opt/microsoft/ropen/3.5.3/lib64/R/lib -lR installing to /home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av/libs ** R ** inst ** byte-compile and prepare package for lazy loading ** help *** installing help indices ** building package indices ** testing if installed package can be loaded Error: package or namespace load failed for 'av' in dyn.load(file, DLLpath = DLLpath, ...): unable to load shared object '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av/libs/av.so': /lib64/libavcodec.so.57: undefined symbol: opus_multistream_surround_encoder_create Error: loading failed Execution halted ERROR: loading failed * removing '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av' The downloaded source packages are in '/tmp/RtmpVS3V8E/downloaded_packages' Warning message: In install.packages("av", configure.vars = c("LIB_DIR=/usr/lib64", : installation of package 'av' had non-zero exit status> install.packages('av', configure.vars = c("LIB_DIR=/usr/lib64","INCLUDE_DIR=/usr/include/ffmpeg"))Installing package into '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5' (as 'lib' is unspecified) % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 720k 100 720k 0 0 399k 0 0:00:01 0:00:01 --:--:-- 400k * installing *source* package 'av' ... ** package 'av' successfully unpacked and MD5 sums checked Found INCLUDE_DIR and/or LIB_DIR! Using PKG_CFLAGS=-I/usr/include/ffmpeg Using PKG_LIBS=-L/usr/lib64 -lavfilter ** libs rm -f av.so formats.o info.o init.o util.o video.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c formats.c -o formats.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c info.c -o info.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c init.c -o init.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c util.c -o util.o gcc -std=gnu99 -I/opt/microsoft/ropen/3.5.3/lib64/R/include -DNDEBUG -I/usr/include/ffmpeg -DU_STATIC_IMPLEMENTATION -fvisibility=hidden -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c video.c -o video.o g++ -std=gnu++11 -shared -L/opt/microsoft/ropen/3.5.3/lib64/R/lib -o av.so formats.o info.o init.o util.o video.o -L/usr/lib64 -lavfilter -L/opt/microsoft/ropen/3.5.3/lib64/R/lib -lR installing to /home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av/libs ** R ** inst ** byte-compile and prepare package for lazy loading ** help *** installing help indices ** building package indices ** testing if installed package can be loaded Error: package or namespace load failed for 'av' in dyn.load(file, DLLpath = DLLpath, ...): unable to load shared object '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av/libs/av.so': /lib64/libavcodec.so.57: undefined symbol: opus_multistream_surround_encoder_create Error: loading failed Execution halted ERROR: loading failed * removing '/home/dominik/R/x86_64-pc-linux-gnu-library/3.5/av' The downloaded source packages are in '/tmp/RtmpVS3V8E/downloaded_packages' Warning message: In install.packages("av", configure.vars = c("LIB_DIR=/usr/lib64", : installation of package 'av' had non-zero exit status>-----Original Message----- From: Ivan Krylov <krylov.r00t at gmail.com> Sent: Friday, December 13, 2019 02:06 To: Schneider, Dominik <dominik.schneider at wsu.edu> Cc: r-help at r-project.org Subject: Re: [R] install package av on centos 7 On Mon, 9 Dec 2019 18:03:17 +0000 "Schneider, Dominik" <dominik.schneider at wsu.edu> wrote:> (base) [dominik at cppc-server ffmpeg]$ ffmpeg ffmpeg version 2.8.15 > Copyright (c) 2000-2018 the FFmpeg developersAccording to SystemRequirements of av [*], it needs ffmpeg >= 3.2. There is FFmpeg 3.4.7 for RHEL 7 in the RPM Fusion repo [**], which should be possible on CentOS 7. Try this version instead of 2.8.15 from Nux Dextop. -- Best regards, Ivan [*] https://urldefense.proofpoint.com/v2/url?u=https-3A__cran.r-2Dproject.org_package-3Dav&d=DwICAg&c=C3yme8gMkxg_ihJNXS06ZyWk4EJm8LdrrvxQb-Je7sw&r=mfF42lNlc_eXjwWhfTYoU_T7y-aauTyI1-BCcVTO9VI&m=BeHA4IOom-6-VTtfrGh08ztY42Wiy_Qrielm4l3YfdU&s=3yeHj1gLh2dp8tEsItyw9QqsrecnlTSg9FEpe94dKcQ&e[**] https://urldefense.proofpoint.com/v2/url?u=https-3A__download1.rpmfusion.org_free_el_updates_7_x86-5F64_repoview_ffmpeg.html&d=DwICAg&c=C3yme8gMkxg_ihJNXS06ZyWk4EJm8LdrrvxQb-Je7sw&r=mfF42lNlc_eXjwWhfTYoU_T7y-aauTyI1-BCcVTO9VI&m=BeHA4IOom-6-VTtfrGh08ztY42Wiy_Qrielm4l3YfdU&s=Vtsrx5Rbu2uyWS6EMBJtLx5-czVCxRPOkrUNXRDdEIw&e=