bogdanrada
4/1/2013 - 7:41 PM

vendor-ffmpeg-heroku.sh

## Get FFMpeg working on heroku by building binaries using vulcan

gem install vulcan

vulcan create foo

git clone --depth 1 git://source.ffmpeg.org/ffmpeg

cd ffmpeg

vulcan build -v -s . -c "./configure --enable-shared --disable-asm --prefix=/app/vendor/ffmpeg && make && make install"

## once done, you'll see something along the lines of:
# >> Downloading build artifacts to: /tmp/ffmpeg.tgz
#   (available at http://foo.herokuapp.com/output/d21f6bb8-6db6-4397-b02e-347806945881)
#
# Download the .tgz via the link or cd to /tmp then:

tar xvf ffmpeg.tgz

mkdir /path/to/app/vendor/ffmpeg
mv ffmpeg/* /path/to/app/vendor/ffmpeg/

# cd to your app then:

heroku config:set PATH=bin:vendor/ffmpeg/bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin -a yourapp

#in the above, make sure you are simply appending 'vendor/ffmpeg/bin' to whatever is already set when you run 'heroku config' and look at the currently set value for PATH. overwriting it will break your app.

heroku config:set LD_LIBRARY_PATH=vendor/ffmpeg/lib:/usr/local/lib -a yourapp

git add .

git commit -m "vendor ffmpeg"

git push heroku master

# enjoy!