PCをサーバーにして動画をHTTP経由でストリーミング再生する
約一年ぶりな気もしますが、ブログにまとめておいたほうが後の人たちの為かなと思い、適当にまとめていきます。
※最新の記事でないので、Apaxyなどは仕様が変わっている可能性があります。予めご了承ください。
説明
タイトルだけでは作業する内容が全くと言っていいほど掴めないと思うので、まずはさらっと説明します。
今回は以下の事を主にしていきます。
・ApacheでHTTP鯖を立てる
・Basic認証で基本的には自分しか見れないようにする
・ApaxyでディレクトリUIを見やすくする
・Basic認証を回避できるようにする
↑このようなUIでファイル選択が出来ます。
準備
・Apache (2.4推奨)
www.apachehaus.com
・Apaxy
github.com
・FileZilla(リネーム時にのみ使用)
filezilla-project.org
・テキストエディタ(NotePad++推奨)
notepad-plus-plus.org
・動画ファイル(ブラウザでストリーミングする場合、H.264のmp4が推奨)
・やる気(何も知らない私はこれに8時間は費やした)
手順
1.何も考えずに、Apacheにて鯖を立ててください。
(参考サイト)
www.adminweb.jp
2.Alias設定にて録画フォルダのパスを入れて、Webから確認できるようにする(この時設定した値を[name]として今回は扱います。)
3.ApaxyのThemeとhtaccess.txtを録画フォルダに解凍(展開)
4.FileZillaにて録画フォルダとThemeフォルダ内にある『htaccess.txt』を『.htaccess』にどちらもリネーム
5.録画フォルダ内にある.htaccessをテキストエディタで開き、『theme/...』(全ての行)を『/[name]/theme/...』に変更。*1
6.Basic認証を通すため、ユーザーIDとパスワードの作成をする。
7.Basic認証を有効にする。
8.プレイヤーで視聴する際は、Basic認証がされているディレクトリにある動画ファイルを視聴するには、Basic認証を回避させなければロード出来ないので、Basic認証を回避するため、以下の文をコピーし、録画フォルダの.htaccessをテキストエディタで開き、最後部分に以下を記入する。
# # Basic Auth Path # <Files ~ "\.(ts|mp4|avi)$"> Satisfy any Allow from all </Files>
9.ブラウザにて、http://[PCのIPアドレス]:[ポート番号]/[name]/ を入れて、Basic認証を済ませて問題ないかチェックする。
お疲れ様でした。
準備で書きましたが、ブラウザで見る場合は各ブラウザでストリーミングに対応した形式でなければ視聴出来ないので注意してください。
外部ソフトウェア(Classic Media Player、VLC、MX Player等)を使用すればHEVCなど幅広いコンテナ、コーデックに対応することが出来ます。
非常に面倒くさい作業が多いので、大変ではありますが、できたらとても快適に視聴できるようになりますし、Apaxyの恩恵によりファイルを選びもわかりやすいのでおすすめです。
*1:語彙力が無くとてもわかりづらくて申し訳ない