ssk’s posterous

ssk’s posterous

Nov 24 / 10:45pm
by ssk

$ ldd /usr/bin/ffmpeg
        linux-gate.so.1 =>  (0xb7f22000)
        libavformat.so.1d => /usr/lib/libavformat.so.1d (0xb7e93000)
        libavcodec.so.1d => /usr/lib/libavcodec.so.1d (0xb7a36000)
        libavutil.so.1d => /usr/lib/libavutil.so.1d (0xb7a2b000)
        libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7a06000)
        libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb79ee000)
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb789f000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb788a000)
        libogg.so.0 => /usr/lib/libogg.so.0 (0xb7885000)
        libdc1394_control.so.13 => /usr/lib/libdc1394_control.so.13 (0xb7875000)
        libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7871000)
        libgsm.so.1 => /usr/lib/libgsm.so.1 (0xb7864000)
        libtheora.so.0 => /usr/lib/libtheora.so.0 (0xb781b000)
        libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0xb77f3000)
        libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0xb76f7000)
        /lib/ld-linux.so.2 (0xb7f23000)
        libraw1394.so.8 => /usr/lib/libraw1394.so.8 (0xb76f1000)

Ubuntu 8.04 lts の ffmpeg も libx264 へのリンクはない。libx264-57 というパッケージはあるのにね

Filed under  //  ffmpeg   ubuntu  

Comments (0)

Nov 24 / 7:06pm

blog of NiG:Using ffmpeg with libx264 on Ubuntu Jaunty(9.04) - livedoor Blog(ブログ)

by ssk

なんでかなと思ったのだが、強調したlibavcodec.so.52 => /usr/lib/i686/cmov/libavcodec.so.52が問題。
libavcodecっていうのは、ffmpegにおける各コーデックを抽象化(?)しているライブラリらしく、libx264やらlameやらはこいつ経由で呼び出される。
libavcodec自体はffmpegと一緒にコンパイルされて/usr/local/libにインストールされるのだが、/usr/lib/~にlibavcodecがあるとそっちにリンクされてしまう。

邪魔だから消せばいいじゃんと思うところなのだが、/usr/lib/i686/cmov/libavcodec.so.52っていうのは要はlibavcodecというパッケージであり、これにはgstreamer0.10-ffmpegが依存していて、Totem動画プレーヤなんかをまともに使いたかったら入れざるを得ないようになっている。

なんかリンカのオプションでライブラリを探すパスを指定できる。。。らしいんだけど、よく分からなかったので環境変数LD_LIBRARY_PATHを使うことにして、以下のようなラッパスクリプトで回避することにした。

#!/bin/sh
env LD_LIBRARY_PATH=/usr/local/lib ffmpeg "$@"

totem とか使わないのでパッケージの libavcodec は remove した。

Filed under  //  ffmpeg   ubuntu  

Comments (0)

Jul 23 / 12:30am

AWS 雑多なメモ - 雑多なメモ Wiki版

by ssk
  • EC2 での /etc/hosts と hostname
debian, ubuntu 方面で厳密化している localhost と hostname の扱いを考えると、EC2 の プライベート IP アドレス空間での /etc/hosts は Canonical 版 ubuntu ami の /usr/sbin/ec2-set-hostname で設定しているやりかたが妥当な所かな
127.0.0.1 localhost
127.0.1.1 AMIのlocal-hostname(AMI instance Metadata から取得)

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
また、hostname は hostname --fqdn で取得したホスト名を DNS を引けば、現在の ローカル IP アドレス を引けるものを設定する事。つまり、AMIのlocal-hostname(AMI instance Metadata から取得)を hostname とする。

Filed under  //  debian   ubuntu  

Comments (0)