まぽろぐ

まぽらんのブログ、略してまぽろぐです!ひとりごとを中心に、クリックゲーレビューやネトゲ、サーバー関係等の内容を書いていきます。たまにまじめな記事も書いたりするかもしれません。

PT系統で録画したTSをいろんなデバイスでストリーミング再生してみる

   

多分今年最後の記事です。

さてつい昨日新サーバーのパーツを全て決め、(Amazonの別垢で自演)購入したので年明け千葉に帰った際にほくほくニヤニヤしながら組み立てることになりそうです。
結局CPUはi5に、SSDはIntelでもよかったんですがsamsungの最新SSD840の押しがネット上でやけに強いのでそちらを選ぶことに、TLCが不安ですが・・・例によって大して書き込みを行わない(録画用HDDは別ですが)のでまぁいいかなーと思います。
ネット上で耐久実験してる人が100TB書き込んでも特に異常起こしてないらしいですしね、100TBとか多分録画用HDDですら数年かけてもそこまで書き込むことはないですよ。

さて本題に行きましょうー今回はその録画したTSファイルをそのまま再生するお話です。
普通にローカルで再生する分にはいくらでも手段はあるわけですが・・・ちなみに自分は基本MPC-HCで再生しています。

さてネット越しのストリーミング再生はどうしましょう
と言うことで今回ご紹介するのはWindws→Windowsでの視聴とWindows→iOS、Win→Androidでの視聴です。

 

パソコンでストリーミング再生

パソコンでストリーミング再生するソフトの定番?としてtsfile2uがあります。
というかストリーミングサーバーを立てるしか方法が・・・自分の知る限りではないですねぇ・・・
でもiOSアプリだとストリーミングサーバーがいらないんですよね・・・自分はそういうの全然詳しくないんですけど(´・_・`)

tsfile2u最新版?Ver.0.2.22.1はわっちの管理中アップローダーから落としてください でーてーぶいあぷろだぁ
※以下は必要なのかよく分かりません。とりあえず今回の方法ではいりません。
あとTSファイルをローカル上でTvTestへ転送するために必要なSendTSTCP.dllと言うファイルがあります。こちらはEpgDataCap_Bonに同梱されているのでこちらも上記ロダから落としてください。

さてこのソフトはtsファイルをストリーミングできる超簡単なツールとなっております。
中身はサーバーソフトと視聴用ソフトのたった2種類、他に必要な物はTVTestとTVTestに最初から入ってるBonDriver(UDP)です。

 

まずはサーバー用PC(録画TSファイルが保存されているPC)にて作業を行います。

まずはサーバー側でtsfile2u_server.exeを起動します。

とりあえず設定すべき項目は2つだけです。

まずは参照ディレクトリです、どこのフォルダにTSファイルが入っているかを指定します。
次に接続ポート、初期値は2029となっていますが一応適当に選んだポート番号に変えておきましょう。
もしこれでもセキュリティ的に不安がある方はアクセスキーを設定してください、これを設定することで例えポート番号がバレてもキーがバレなければ盗み見られることはありません。

※地上波/BSCSのTSファイルを不特定多数が視聴できる環境を構築することは著作権法違反です。必ず他人には見られることのないよう細心の注意を払ってください。 

完了しましたらサーバー側の設定は完了です、開始ボタンを押し、ファイアーウォールのブロック表示が出たら許可を押してください。
またルーターで先ほど指定したポート番号のTCPポートを開けてください。

 

ではクライアント側の設定です。

そのままtsfile2u.exeを起動するとsendtstcpねーぞなめてんのか?っていわれますがとりあえず今回紹介する方法では無くても見れますので気にしなくてもいいかもしれません。嫌な方は上記方法でダウンロードして同じディレクトリに入れてください。

まずは設定ボタンを押します。簡易設定画面が現れますのでとりあえず簡易設定を行います。
参照を押してtvtest.exeを選択します。

設定しましたらいったん設定保存を押し設定を保存しておきます。

その後再度設定を開き今度は詳細設定モードを押し、読み込み設定項目を選択します。

リモートサーバーにチェックを入れ、接続先にサーバー機の入っているLANのWANアドレス(mapopi.comを入れても見れませんよ)を記入。
先ほど設定したのと同じポート番号を記入し、アクセスキーを設定した場合はそちらも記入します。
転送方法をクライアント経由にチェックを入れ、設定保存を押します。

以上でクライアント側の設定は終わりです。

 

ではいよいよ視聴してみたいと思います。
tsfile2u.exeを起動し[開く]を選びますとサーバー側で設定したディレクトリにあるファイルがずらーっと表示されます。

ちなみに上記IPアドレスはmapopi.comのサーバーipアドレスなので入力しても何も見れませんよ

そしてtsファイルを選択することでtvtestが起動し無事視聴が出来ると言うことになります。

 

と言うことでtsfile2uでのtsファイルストリーミング視聴はこれで終わりです。

 

 

iPhone/iPadで視聴する

とりあえず知りうる限りmpeg2をストリーミング再生出来るアプリはGoodPlayerAcePlayer(有料版も有り)です。
ですがGoodPlayerはやや視聴に難有りです、デコード速度が遅くカックンカックンしまくりですね。その点AcePlayerはかなり使い勝手がいいイメージです。
ですがAcePlayerではBS/CSなどのCMとは別の音声が混合している映像で音声が流れない現象があります。

 

ここではAcePlayerを使ってみたいと思います。
何が素晴らしいかと言えばサーバーにUPNP/DLNAサーバーを設置する必要が無いことです。
これはすごい画期的じゃないですかね・・・このシステムを使ったPC用ソフトはないんでしょうか・・・

当mapopi.comを設置しているへっぽこさーばー1号ではhttpとftpサーバーをiisにて構築しています。
DLNAサーバーでの上記アプリ視聴法は多分他サイトでもあると思うので今回はiisのhttpサーバーを使用してみます。(と言う名のDLNAサーバー説明面倒逃げです)

※iisをインストールすることでHTTPサーバーが公開されてしまいます。注意してください。
※初期設定は結構面倒かもしれません、1度最後まで目を通してから作業をするかどうか判断してください。 

 

HTTPサーバーの利点としてとにかく起動しててもサーバーが軽い、iisの場合サービスとしてwindowsに付属しているため安心できる、ftpなどの紛らわしい認証をスルーできるのでダウンロード速度が安定すると言うことがあげられます。

またiisを利用することで余計なソフトを一切インストールしなくてよくなります(iisはWindowsに最初から付いている機能です。)
まずプログラムの追加と削除(プログラムの機能)のwindowsの機能の有効化または無効化からiis(インターネットインフォメーションサービス)をインストールします。

※画像にチェック忘れがありました。[静的なコンテンツ]にもチェックをしてください。 

とりあえず上記と同じチェック設定にすれば余計な物を一切インストールしなくてすみます。
またiisが不要になった際はインターネットインフォメーションサービスのチェックを外せばHTTPサーバーはクローズされます。

 

iisをインストールしましたら全てのプログラム、win8でしたらスタートから起動します。
初回起動で以下の画面が出ますが表示しないにチェックし、いいえを選択してください。

左の接続欄を開いていくとDfault Web siteと言う項目が存在します。
こちらを右クリックし[仮想ディレクトリの追加]を選択します。

とりあえず自分はエイリアスをRecTVとしてみました、正直なんでもいいですが以下ではRecTVとして進めます。
設定しますとDefault Web Siteの下にRecTVが表示されます。

もう1度Default Web Siteを左クリックし右のメニューからディレクトリの参照を選択します。

右側の有効にする、を選択し左のチェックボックスがアクティブになったら拡張子以外のチェックを全部外します。
その後右上の適用ボタンを押します。

再度Dafault Web Siteを選択します。
右のメニューのバインドを押し、http 80となっている欄を選び編集ボタンを押します。

ポートの欄の80を好きな数字に変えます。
80のままですとセキュリティ上あまりよろしくないので取り合えず適当な4,5桁の数字にしておくのがオススメです。
ここでは適当に12345としてみました。

最後に右のメニューのwebサイトの管理の欄の下にある開始ボタンを押します。

 

以上の作業でhttpサーバーの構築が完了しました。
成功しているかのチェックとしてブラウザで[127.0.0.1:12345](12345は先ほど設定したポート番号)と入力してみてください。

上のように表示されていればとりあえずはOKです。
また今回はRecTVというフォルダを下にくっつけているので[127.0.0.1:12345/RecTV]と入力すると

先ほど設定したtsの保存フォルダの中身がずらっと表示されているはずです。

さてこのtsをクリックしてもしダウンロードが開始されない場合はもう一手間必要です(多分Windos8以降のiis8ですと設定しなくてもダウンロードできると思います)
ダウンロードが開始された場合はそのままキャンセルを押してください。されない場合以下の作業が必要です。

先ほどのiisの画面に戻りDefault Web SiteからMIMEの種類を選びます。
右上の追加を押し以下のように入力します。

ダウンロードが開始されるようになればOKです。

 

最後にパソコン自体のポート(ここでは12345)を空け、外から閲覧できるようにます。

コントロールパネルからファイアウォールを開き詳細設定を選びます。
受信の規則の上で右クリックをし新しい規則の追加を選びます。

次の手順で進んでください

  1. ポートにチェック→次へ
  2. TCPにチェックが入っていることを確認し特定のローカルポートの右の欄にここでは12345を入力します→次へ
  3. 次へ
  4. 次へ
  5. 名前に適当な名前(TS再生とか)を入力し完了を押す

これで完了です!お疲れ様でした。

他のパソコンから見られたく無い場合は今新しく追加された(ここではTS再生)を右クリックして削除することでPC外からは見れないようになります。

 

また、LAN外から視聴したい場合は例によってルーターのポートを空けてください。

※ここで設定したアドレス、ポートを公開し不特定多数の人間が視聴できる状況を作り出すことは犯罪です。設定内容は絶対に他人には教えず1人で楽しんでください。

 

それではいよいよAcePlayerから見てみたいと思います。
驚くほど快適に見れますのでびっくりですよ・・・本当にこれに慣れるとmp4にエンコードとかアホらしくなりますね。
もちろん回線が悪いとカクカクになります、ですが今売ってるようなルーターを使う限りは全く問題ないかと。4年前ぐらいの無線LANルーターだとちょっと厳しいかもです。

とりあえずAcePlayerを起動します(これは有料版ですが操作は無料と一緒です)

MediaExplorerを選択

Web Browserを選択。

アドレス欄にhttp://[先ほど設定したパソコンのIPアドレス]:[先ほど設定したポート番号]/rectv/
と入力してエンターを押すと先ほどPCで表示されたのと同じ画面が表示されます。

後はこのリンクをクリックするだけで動画がストリーミング再生されちゃいます!

さらにワンテンポ挟んでセキュリティを強化する方法は→コチラ

 

どんだけ快適なのかiPad3で動画を撮影してみたので1度ご覧になってください。
撮影した環境はこんな感じです

回線契約は両回線とも光です。
サーバー—100BASE-T—ルーター—100BASE-T—WAN[インターネット]—100BASE-T—ルーター—無線LAN(54Mbps)—iPad3
実測ではサーバーの上りが15MB/s程度、iPad3の下りが5MB/s程度です。理論上実測2M/s(16Mbps)下りがあれば動画と同じようにスムーズな再生が出来ます。

 

Androidで視聴する

Androidではやはり鉄板アプリ?であろうMX動画プレイヤーを使用します。
サーバーはiOSでの説明と同じhttpサーバーを使用します。
そのため上を参照してhttpサーバーを構築しておいてください。

MX動画プレイヤーのダウンロードは→コチラ

MX動画プレイヤーは直リンク指定での視聴は可能ですが流石に毎度毎度リンクを打ち込むのは骨が折れるためブラウザとの連携で行います。
ブラウザ自体は何でもかまわないのでアドレス欄に http://[先ほど設定したパソコンのIPアドレス]:[先ほど設定したポート番号]/rectv/ と入力します。
2013-09-10 14.22.01

視聴したいTSファイルをタッチします。

2013-09-10 14.22.06

MX動画プレイヤーを選択します。

2013-09-10 14.22.58

問題なく視聴することが出来ました!

使ってみた感触としては・・・Nexus7(2013)ではパソコン捨ててもいいぐらい支障が無いです。
複数音声が切り替わる番組でも問題なく見れます。

ただAndroidは端末毎にスペックが大違いなので一概にヌルヌル見れるかは分かりません。
おMX動画プレイヤーのハードウェアアクセラレーションはどうやらmpeg2では使えなさそうですのでガチで端末CPUの力に左右されそうです。いつの間にか使えるようになっていました。

 

Tips:基本認証でちょっとセキュリティアップ

HTTPサーバーを構築する上記の方法では1つ問題点があります、それはポート番号がバレてしまっただけで全部の動画が見らてしまうという点です。
LAN内でみている分にはいいですがポートを開けて出先から見る場合などは常にこの不安がつきまといます。
ではどうやって対策をしましょうか・・・と考えるとやはり何かしらの認証をかけてID/PASSの保護をかけるのが一番です。
基本(BASIC)認証はあまりセキュリティ的に好ましくはありませんが何もしないよりは数千倍マシなので是非チャレンジしてみてください。

 

まずうえのほうで説明したWindowsの機能の有効化で「基本認証」を有効化します。
tsplay4

続いてiisに戻り先ほど使用したサイトのメニューから認証を選びます
tsplay1

「基本認証」を選んで右のメニューで有効化し、「匿名認証」を無効化します
tsplay2

前のページの戻り今度は「承認規則」を選びます
1つ項目が表示されていると思うのでダブルクリックで編集画面を開きます
tsplay3

すべてのユーザー→そのパソコンにあるユーザーなら誰でもログインできる
すべての匿名ユーザー→よーわからないので使わないほうが良さげ
役割または・・・→ユーザーグループで指定できます(AdministratorsとかUsersとか)
指定されたユーザー→ユーザー名を個別に指定できます

お好きなモノをどうぞ。

 

これで設定完了です、以降はページを開こうとするとIDとパスワードを聞かれます。
と思いきやiOSで使用してるAcePlayerは認証を入力するポップアップが表示されないので一工夫が必要だったりします。

実は基本認証というのは http://[ユーザー名]:[パスワード]@[URL]/ という表記をすることで接続することができます。
AcePlayerのように内蔵ブラウザでポップアップが表示できないような場合はこの表記を使うことでログインできます。

例えば上で指定されたユーザーの欄にmaporanと入れ、そのアカウントのパスワードがhogehogeでサイトのアドレスがmapopi.comの場合は http://maporan:[email protected]/ と入れると基本認証を勝手にやってログインできます。
これをAcePlayerのURL欄に入れればAcePlayerでも基本認証を使って動画を見ることができます。

 - DTV , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です