There are 2 posts here: https://wiki.openpli.org/iptvplayer
The first is the old set of instructions by SSS and the comment below covers the new set of instructions, as explained below.
Almost all instructions are by SSS himself, with some minor additions by me, in both of those posts...
==========NEW INSTRUCTIONS: FFMPEG INSTALATION FOR MIPSEL PLATFORMS===========
Preparation
Before installation make sure that you have enough space in your rootfs. You need at least 15MB free space.
To check free space in your rootfs you can use following command:
df -h /
Sample output:
Filesystem Size Used Available Use% Mounted on
ubi0:rootfs 440.3M 183.2M 257.0M 42% /
If you do not have enough flash memory for all of the plugins etc. that you want to install, then
another way of installing it all is to either use:
A) Flash Expander for which you need a USB memory stick, with 2 partitions (best in EXT4 format):
-at least 1/2 GB for /usr folder, i.e. the Flash Expander itself and
-the rest for SWAP, picons, subtitle folder, EPG etc. etc.
I would recommend Mini Tool Partition Wizard 10, under Windows OS, to partition and format the USB stick.
B ) MultiBoot, also on a large USB memory stick (various plugins are available for it, Open MultiBoot, Mini Multi Boot etc.)
Once you prepare the image properly, you can proceed with ffmpeg and the IPTV Player installation...
To choose the correct ffmpeg package for your image you need to find out the following:
1) OpenSSL version
2) glibc version
3) hard/soft float
#################################
1) How to check your OpenSSL version:
#################################
One has to connect with your STB and then give this telnet command, for example, using a programme called PuTTy:
openssl version
One may get something like this:
OpenSSL 1.0.2d 9 Jul 2015
So, in that case we know that we have version 1.0.2
One may also get the following output to this command:
-sh: openssl: not found
In this case, one should check OpenSSL version as follows:
ls -la /usr/lib/libssl*
Example output:
-rwxr-xr-x 1 root root 383624 Aug 19 2015 /usr/lib/libssl.so.0.9.8
So, in this case the OpenSSL version is 0.9.8.
In case one gets:
/usr/lib/libssl.so.1.0.0
one must make an additional check:
grep OPENSSL /usr/lib/libssl.so.1.0.0
Sample output:
OPENSSL_cleanse
OPENSSL_DIR_read
OPENSSL_DIR_end
OPENSSL_1.0.0
OPENSSL_1.0.1
OPENSSL_1.0.1d
OPENSSL_1.0.2
OPENSSL_DIR_read(&ctx, '
OPENSSL_malloc Error
So, in this case one knows one has version 1.0.2.
########################
2) How to check glibc version:
########################
Checking glibc version is very easy:
ls -la /lib/libc-*
Example output:
-rwxr-xr-x 1 root root 1541476 Aug 19 2015 /lib/libc-2.21.so
I.e. this indicates version 2.21.
########################
3) Checking for hard/soft float:
########################
One must give the following telnet commands:
cd /tmp
wget http://iptvplayer.pl.../mipsel/readelf
chmod 777 readelf
./readelf -a /lib/libc-*.so | grep FP:
rm readelf
Sample output:
Tag_GNU_MIPS_ABI_FP: Soft float
or
Tag_GNU_MIPS_ABI_FP: Hard float (double precision)
============================================
When you already know versions of OpenSSL, glibc used in your image and used FPU mode you are ready to choose ffmpeg package.
If you have glibc version lower than 2.20 you need to use package for _old_
All packages are available here: http://iptvplayer.pl/resources/ (one can find SH4 and ARM platforms covered there, as well)
Packages for MIPSEL platforms:
ffmpeg3.2.2_mipsel_fpu_hard_openssl0.9.8_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_fpu_hard_openssl1.0.0_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_fpu_hard_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_hard_openssl0.9.8_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_hard_openssl1.0.0_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_hard_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_fpu_soft_openssl0.9.8_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_fpu_soft_openssl1.0.0_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_fpu_soft_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_soft_openssl0.9.8_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_soft_openssl1.0.0_dash_librtmp_native_rtmp.tar.gz
ffmpeg3.2.2_mipsel_old_fpu_soft_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz
One can see the full name of a package as follows:
=======ffmpeg Installation procedure=======
Give a series of following telnet commands...
example:
cd /tmp
wget http://iptvplayer.pl...ive_rtmp.tar.gz
tar -xvf ffmpeg3.2.2_mipsel_XXX_YYY_YYY_opensslZ.Z.Z_dash_librtmp_native_rtmp.tar.gz -C /
rm ffmpeg3.2.2_mipsel_XXX_YYY_YYY_opensslZ.Z.Z_dash_librtmp_native_rtmp.tar.gz
For ET10K:
cd /tmp
wget http://iptvplayer.pl...ive_rtmp.tar.gz
tar -xvf ffmpeg3.2.2_mipsel_fpu_hard_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz -C /
rm ffmpeg3.2.2_mipsel_fpu_hard_openssl1.0.2_dash_librtmp_native_rtmp.tar.gz
You should always collect output returned by install command, it will be useful when installation failed.
After installation you should check if ffmpeg is working correctly:
ffmpeg -version
Sample output:
ffmpeg version 3.2.2 Copyright © 2000-2016 the FFmpeg developers
built with gcc 4.9.2 (GCC)
configuration: --sysroot=/mnt/new2/xspeedlx1/build-enviroment/builds/openatv/release/et4x00/tmp/sysroots/et4x00 --cross-prefix=mipsel-oe-linux- --prefix=/mnt/new2/_BRCM_/exteplayer3/tmp/ffmpeg/tmp/mipsel/ffmpeg-3.2.2/usr/ --enable-cross-compile --target-os=linux --arch=mipsel --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --enable-pic --enable-shared --disable-static --disable-debug --disable-ffplay --disable-ffprobe --disable-ffserver --disable-outdevs --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-lzma --enable-openssl --enable-zlib --enable-cross-compile --enable-small --disable-sdl --disable-xlib --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --enable-nonfree --disable-muxers --disable-encoders --disable-devices --enable-librtmp --extra-cflags=' -mel -mabi=32 -march=mips32 -I/mnt/new2/xspeedlx1/build-enviroment/builds/openatv/release/et4x00/tmp/sysroots/et4x00/usr/include/libxml2/ -I/mnt/new2/new_openssl_mipsel/openssl-1.0.2g/include/ -L/mnt/new2/new_openssl_mipsel/openssl-1.0.2g/ -L/mnt/new2/new_openssl_mipsel/rtmpdump/librtmp/ ' --extra-ldflags=' -L/mnt/new2/new_openssl_mipsel/openssl-1.0.2g/ -L/mnt/new2/new_openssl_mipsel/rtmpdump/librtmp/ -lssl -lcrypto -lrtmp -lxml2 '
libavutil 55. 34.100 / 55. 34.100
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.100 / 57. 56.100
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
==============IPTV Player installation=============
rm -rf /usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer
cd /tmp
wget http://iptvplayer.vl...ythonX.X.tar.gz
tar -xzf latest.pythonX.X.tar.gz -C /tmp
rm latest.pythonX.X.tar.gz
cp -r iptvplayer-for-e2.git/IPTVPlayer /usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer
rm -rf iptvplayer-for-e2.git/IPTVPlayer
sync
reboot
Edited by gorski, 30 March 2017 - 04:29.