Xuggleをインストールしてみる。

Xuggleというライブラリを利用すると、Javaからffmpegを使うことができます。
Red5のストリームデータをエンコードして、別の画質で流したり、鏡面対称にしたり等
いろいろできます。

そのXuggleのインストールをしてみます。(Linuxでね)

さて、Linuxでのインストールですが
xuggle-xuggler-i386-linux.sh
を実行するだけではインストールできない環境もあります。
っていうか、僕のCentOS4.8ではうまくインストールできません。
そこでソースコードからインストールしてみます。

xuggle.comからxuggle-xuggler.3.4.1012-src.tar.gzをダウンロードします。
そして、Linuxの適当な場所にコピー
このアーカイブはディレクトリをつくってくれないので、適当なディレクトリをつくって
その中で解凍します。

そして、
$ ant
# ant install
でインストールは完了します。
ただ、CentOS4.8の場合はulong問題でコンパイルエラーになるので
antでエラーがでたら、該当ファイルのulong部をunsigned longに書き直して、
コンパイルに再挑戦してください。
/usr/include/linux/videodev.hの56行目あたりですね。

このコンパイルではffmpegやh264などのファイルも生成します。
よってコンパイルには結構時間がかかります。

また、ffmpegのlibavcodecの問題でGCC4.2以降を使わないとffmpegの実行時に警告がでます。
が、実行に特に問題はないと思っています。
同様の現象はffmpeg、mencoder、xuggleで発生を確認しています。

antが
dist-native:

dist-java:
    [mkdir] Created dir: /home/videofc2/tools/xuggle/dist/repo
      [tar] Building tar: /home/videofc2/tools/xuggle/dist/repo/xuggle-xuggler.3.4.1012-repo.tar.gz

dist:

BUILD SUCCESSFUL
Total time: 29 minutes 59 seconds
をレポート、やっとおわったよ。

作成したファイルは
dist/stage/usr/local/以下にできている。
ant installするとこの/usr以下の部分が、/にコピーされます。

Xuggleの環境変数とかが変にはいっていなければ、
/usr/local/bin等にffmpeg等がインストールされているはずなので
ffmpegとコマンドをいれてみる。
# ffmpeg
するとリンカーエラーになる。
シンボリックリンクで/usr/lib/に/usr/local/libのファイルのリンクをつくってもいいが
面倒なので、環境変数で対応することにする。
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"

結果はこの通り
[root@homeserver xuggle]# ffmpeg
FFmpeg version SVN-r21566-xuggle-3.4.revision.sh, Copyright (c) 2000-2010 Fabrice Bellard, et al.
  built on Feb  9 2010 23:31:17 with gcc 3.4.6 20060404 (Red Hat 3.4.6-11)
  configuration: --prefix=/usr/local --extra-version=xuggle-3.4.revision.sh
--extra-cflags=-I/home/videofc2/tools/xuggle/build/native/i686-pc-linux-gnu/captive/usr/local/include
--extra-ldflags=-L/home/videofc2/tools/xuggle/build/native/i686-pc-linux-gnu/captive/usr/local/lib
--enable-shared --enable-gpl --enable-nonfree --enable-version3 --enable-libx264 --enable-libmp3lame
--enable-libvorbis --enable-libtheora --enable-libspeex --enable-libfaac
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-pthreads
  libavutil     50. 8. 0 / 50. 8. 0
  libavcodec    52.49. 0 / 52.49. 0
  libavformat   52.48. 0 / 52.48. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0. 9. 0 /  0. 9. 0
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'
次回はxuggle-red5のコンパイルいってみようと思います。

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2010年02月09日 23:41
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。