mediatomb 0.12.1 で ffmpeg を使ってトランスコード
最後にトランスコードしてみる。
config.xml ファイルには既にトランスコードする為の記述があるけど、これは vlc を使ってる。自分のシステムには vlc 入ってないし入れるのも面倒。なので、先日インストールした ffmpeg を使ってトランスコードするように変更をした。やってることは Debian のシステムで前にやったことと同じ。
まずは config.xml の修正。最後のトランスコードの部分(vlcmpeg のプロファイルの部分)を変更。
<transcoding enabled="yes"> <mimetype-profile-mappings> <transcode mimetype="video/x-flv" using="vlcmpeg"/> <transcode mimetype="application/ogg" using="vlcmpeg"/> <transcode mimetype="application/ogg" using="oggflac2raw"/> <transcode mimetype="audio/x-flac" using="oggflac2raw"/> </mimetype-profile-mappings> <profiles> <profile name="oggflac2raw" enabled="no" type="external"> <mimetype>audio/L16</mimetype> <accept-url>no</accept-url> <first-resource>yes</first-resource> <accept-ogg-theora>no</accept-ogg-theora> <agent command="ogg123" arguments="-d raw -o byteorder:big -f %out %in"/> <buffer size="1048576" chunk-size="131072" fill-size="262144"/> </profile> <profile name="vlcmpeg" enabled="yes" type="external"> <mimetype>video/mpeg</mimetype> <accept-url>yes</accept-url> <first-resource>yes</first-resource> <accept-ogg-theora>yes</accept-ogg-theora> <agent command="/usr/local/bin/mediatomb-transcode-video" arguments="%in %out"/> <buffer size="14400000" chunk-size="512000" fill-size="120000"/> </profile> </profiles> </transcoding>
で、トランスコードで使うスクリプトを /usr/local/bin に作る。
[paraches@localhost mediatomb-0.12.1]$ sudo vi /usr/local/bin/mediatomb-transcode-video [paraches@localhost mediatomb-0.12.1]$ sudo chmod +x /usr/local/bin/mediatomb-transcode-video [paraches@localhost bin]$ cat mediatomb-transcode-video #!/bin/bash FFMPEG_PATH="/usr/local/bin/ffmpeg" INPUT="$1" OUTPUT="$2" VIDEO_CODEC="mpeg2video" VIDEO_BITRATE="1024k" VIDEO_FRAMERATE="25" AUDIO_CODEC="mp2" AUDIO_BITRATE="128k" AUDIO_SAMPLERATE="44100" AUDIO_CHANNELS="2" FORMAT="dvd" exec "${FFMPEG_PATH}" -i "${INPUT}" -vcodec ${VIDEO_CODEC} -b ${VIDEO_BITRATE} \ -r ${VIDEO_FRAMERATE} -acodec ${AUDIO_CODEC} -ab ${AUDIO_BITRATE} -ar ${AUDIO_SAMPLERATE} \ -ac ${AUDIO_CHANNELS} -f ${FORMAT} - > "${OUTPUT}" [paraches@localhost bin]$
これで mediatomb を再起動すれば PS3 で flv も見られるようになる。
後は同じ要領で他のフォーマットも増やしていけば良い。
ただ、トランスコードだと早送りや巻き戻し、□ボタンのシーンサーチ?が使えないのがちょっと残念。
とりあえず、これでメディアサーバー関係は全部インストール終わったかな?
2012/12/1 Updated : CenOS 6.3 で久しぶりに ffmpeg と Mediatomb で環境を作ってみようとしたら色々と面倒が増えてたので、動くようになるまでの簡単なメモを残しておきました。