Files

75 lines
2.3 KiB
Python
Raw Permalink Normal View History

#! /usr/bin/env python3
import time
import sys
import os
import subprocess
from subprocess import call
def callWithShell(cmd):
process = subprocess.Popen(cmd, shell=True)
process.wait()
#call(cmd,shell=True)
#os.uname is specific to linux?
arch = os.uname()
flag = 0
if (arch == "i686" or arch == "i386" or arch == "i486" or arch == "i586"):
flag = 1
print("Installing the dependencies for FFMPEG")
sys.stdout.flush()
callWithShell("apt-get update")
callWithShell("apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev")
print("Create folder to house the sources")
sys.stdout.flush()
callWithShell("mkdir ~/ffmpeg_sources")
callWithShell("mkdir ~/ffmpeg_build")
callWithShell("mkdir ~/bin")
print("Download and compile dependencies")
sys.stdout.flush()
#Yasm
callWithShell("apt-get -y install yasm")
#libx264
callWithShell("apt-get -y install libx264-dev")
#libmp3lame
callWithShell("apt-get -y install libmp3lame-dev")
#libopus
callWithShell("apt-get -y install libopus-dev")
print("Installing FFMPEG")
sys.stdout.flush()
os.chdir("~/ffmpeg_sources")
callWithShell("wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2")
callWithShell("tar xjvf ffmpeg-snapshot.tar.bz2")
os.chdir("ffmpeg")
#PATH="/usr/bin:$PATH" PKG_CONFIG_PATH="/usr/lib/pkgconfig" ./configure \
# --prefix="/usr/lib" \
# --enable-shared \
# --extra-cflags="-I/usr/include/arm-linux-gnueabihf" \
# --extra-ldflags="-L/usr/lib/arm-linux-gnueabihf" \
# --bindir="/usr/bin" \
PATH = "$HOME/bin:$PATH"
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"
callWithShell('./configure --prefix="$HOME/ffmpeg_build" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libx264 \
--enable-nonfree')
callWithShell('PATH="/usr/bin:$PATH" make')
callWithShell("make install")
callWithShell("make distclean")
callWithShell("hash -r")