PMS 1.74.0 for VIERA
・UMSのソースコードを借用(Thanks SubJunk)
・avcmodのコードを一部お借りしてます。
・ts2ptsコマンドをお借りしてます。
・rplsinfoコマンドをお借りしています。
・VT2にて動作確認
・m2ts,ts,mpeg2は基本的にトラスコなし再生可能。
・インストール方法
Javaがインストールされていない場合、 下記サイトから最新版のJavaを
インストールすること
http://www.java.com/ja/download/manual.jsp
Javaインストール後、PMSのダウンロードパッケージを実行する。
・Vista以降へのインストールの注意
Vista以降ではデフォルトのインストールフォルダである C:\Program Files
に対してアクセス制限が掛けられている為、正常に動作しない。
対策として、書き込み権のあるフォルダにインストールするか、
C:\Program Files\PS3 Media Serverフォルダに対してプロパティ画面の
「セキュリティ」タブを開いて「Users」にフルコントロールのアクセス許可を与える。
・メディアライブラリについて
PMSはファイルの情報をメディアライブラリとしてキャッシュ化している
その為、始めてフォルダを開く際、処理時間が掛かる。
快適に使用する為、予め共有フォルダのスキャン(共有設定の虫眼鏡アイコン)
を実施する事を推奨する。
・YouTubeのチャンネルやプレイリストを見る方法
WEB.confに下記書式で登録してください (フォルダの階層は","区切り)
チャンネル
videofeed.[フォルダ]=https://www.youtube.com/feeds/videos.xml?user=[ユーザー名]
videofeed.[フォルダ]=https://www.youtube.com/feeds/videos.xml?channel_id=[チャンネルのID]
プレイリスト
videofeed.[フォルダ]=https://www.youtube.com/feeds/videos.xml?playlist_id=[プレイリストのID]
ストリーム
videostream.[フォルダ]=[表示タイトル名],[アドレス]
「再生できません」になっても何度かリトライすればバッファが溜まって再生されます
受信が間に合わない場合は一時停止等でバッファが溜まるのを待ってください
・DVDタイトルのリスト表示にて言語表示が長すぎて尻切れになる場合
PMS.confに short_lang = true を定義することでLang表示を略称に変更可能
また、タイトル表示を任意のルールで置換したい場合PMS.confまたはにrenderers/*.confに
replace_pattern1 = <正規表現>、replace_result1 = <置換パタン>
を追加する事で任意のルールに基づいてタイトル表示を変更可能
replace_pattern2/replace_result2、replace_pattern3/replace_result3まで有効
全角文字はUnicodeエスケープシーケンス形式で記述してください(例:全角スペース \u3000)
renderers/*.conf側にreplace_pattern1を定義することでrenderers/*.conf側の設定が有効になる
例)
タイトルが20120324 2345 関西テレビ 天気予報.tsを0324 天気予報.tsに置換する場合
replace_pattern1 = ^\\d\\d\\d\\d(\\d\\d\\d\\d)\\s+\\d\\d\\d\\d\\s+\\S+\\s(.*)$
replace_result1 = $1 $2
・変換設定にてFFMpegAVCEncoder(Batch)を有効にする事でm2tsへのエンコード処理を
バッチ処理する### FFMpegAVCEncoder(Batch) ###を追加
変換されたファイルは### BACKUP ###ディレクトリに出力
変換中でも追っかけ再生機能により再生可能
また、変換中はクライアントとの接続を切ってもエンコードは続行
ffmpegに渡す引数はPMS.conf又はrenderers/*.confに ffmpeg_avcenc_batch_args
を定義することでカスタマイズ可能(定義フォーマットはPMS.conf.txtを参照)
バッチ処理実行前にFFMpegAVCEncoderにて予め変換結果をトラスコ再生により
確認する事を推奨する
・変換設定にてTs2PtsEncoderを有効にする事でTSファイルをパーシャルTS
に変換するTs2PtsEncoderを追加
変換されたファイルは### BACKUP ###ディレクトリに出力
変換中でも追っかけ再生機能により再生可能
また、変換中はクライアントとの接続を切ってもエンコードは続行
VIERA側で字幕・副音声の切り替えが可能である事を確認済み
・トラスコフォルダにてファイルの削除が可能
### REMOVE ###を実行すると### BACKUP ###ディレクトリにファイルを移動
更に### BACKUP ###ディレクトリにて### DELETE ###を実行すると
ファイルを削除し、### RECOVER ###にてファイルを戻す
・VT2等クライアント側にレジューム機能が無い場合でもレジューム動作する様に
PMS側にレジューム機能を追加
有効にするにはrenderers/*.confにてresume=trueを追加する
また、バーチャルフォルダの"Resume"にてON/OFFの切り替えが可能
頭から再生したい場合、再生時刻7秒くらいの位置から逆再生(最低速)する
オートチャプタのフォルダから再生するとレジューム時刻を設定可能
レジューム情報を消去したい場合、バーチャルフォルダの"Resume Clear"
を実行(トラスコフォルダの"Resume Clear"にて対象フォルダ内のレジューム
情報のみ消去可能)
(制限)
PMSはクライアントから指示があった時の時刻しか把握出来ない為、一時中断
する時は一時停止→再生と再生イベントを起してから終了すること
この機能は再生時間にオフセットを与えてクライアントを騙しているので
レジュームポイント以前の時刻にはシークできません
・変換設定にてiPodEncoderを有効にする事でiPhone/iPod向けにMP4のファイルに
エンコードするiPodEncoderを追加
MP4コンテナの性質上、完全にエンコードが完了するまでファイル再生できない
エンコードされたファイルは### BACKUP ###ディレクトリに出力
エンコード中はクライアントとの接続を切ってもエンコードは続行
PMS.confにiPodEncSize=***x***にて出力ファイルの解像度を設定可能
DVDISOを再生したい場合、### DVD VOB EXTRACT ###にてVOBを抽出した後
iPodEncoderにてMP4へのエンコードを行う
・TVTest等で録画したTSファイルの追っかけ再生に対応
・TVTestリアルタイム再生方法
1)オリジナルのTVTest環境を任意の場所にコピーする
2)PMS.confにtvtest_path = <TVTest.exeのパス>を定義する
例)
tvtest_path = G:\\TVTest\\TVTest.exe
3)再生したいチャンネルを*.tvtestとして作成する
(\win32\TvTestSampleにサンプルを置いてます)
4)作成した*.tvtestを共有ディレクトリに置き再生する
再生に失敗する時は時間を空けて再実行を繰り返してください
視聴終了後同じチャンネルを続けて視聴したい場合は一度他のチャンネルを
再生してください。
補足)
・REGZA等クライアントによってはMIMEとDLNA Profileをデフォルトから
変更する必要があります。その場合はPMS.conf又はrenderers/*.confに
tvtest_mime 及び tvtest_profileを設定すること
REGZA R1の場合:tvtest_profile = DLNA.ORG_PN=MPEG_PS_NTSC
・トラスコ無し再生が正常動作しない場合PMS.conf又はrenderers/*.confに
tvtest_rec_delay = <秒> を設定してTVTestが起動して録画が開始するまでの
時間を調整してください(1~5秒程度)
・トラスコ再生(TVEncoder)にてffmpegに渡す引数はFFMpegAVCEncoderと共通です
・ビットレートが低い場合、再生開始に必要なファイルサイズに到達するまでに
時間が掛かります
・再生開始前にTVTestが終了する場合はPMS.confに
tvtest_kill_interval = <秒> (デフォルト15)
を指定してTVTestを終了する時間を延ばしてください
・tvtest_kill_intervalでTVTest終了時間を伸ばした場合や、TVTestのプロセス
制御に異常が生じた場合はトラスコフォルダ内の #-ビデオ設定-# にて
KILL TV Processを実行し強制的にプロセスを終了させる
・RecTask等のTSストリームをUDP経由で受け取る方法
(TVTestリアルタイム再生の応用)
TVTestのUDP受信機能を応用して
/d BonDriver_UDP.dll /port 1234
のような*.tvtestファイルを作成して再生する
(WEB.confを使用する方法)
WEB.confに下記を追加
videostream.Web,UDP=<任意の名前>,udp://@:<ポート名>
ビデオストリーム配信エンジンにVLC VideoStreamを選択し
DVDISO Force Remuxをtrueにして再生
*注意
VLCはチャンネル変更等でTSストリームに異常が生じると落ちます
チャンネル変更の際は再生を終了してください
・クライアントがVT3等MP4に対応している場合、MP4のトラスコなし
再生可能。但しrenderers/*.confのTranscodeExtensions
の項目からmp4を削除する必要あり
・部分削除したファイル等、タイムスタンプが異常なファイルは
SeekByTimeでは正しくシークできません。その場合バーチャルフォルダの
#-ビデオ設定-# にてSeekByTimeをfalseにして再生してください
・DVDISO再生にて字幕が不要な場合、バーチャルフォルダの #-ビデオ設定-#
にてDVDISO Force Remux を有効にする事で再エンコードを回避可能
また、PMS.confにdvd_force_remux=trueを設定することでDvdForceRemux
のデフォルト設定を指定可能
・予めスキャンをする必要はありませんが、ファイル名が変わらない場合
データベースは更新されません。強制的にデータベースを更新したい場合
メディアライブラリの初期化を行なってください(バーチャルフォルダの
#-ビデオ設定-# にて、Reset Databaseを実行する事でも初期化可能)
また、一部のフォルダのみデータベースを初期化したい場合はトラスコ
フォルダ内の #-ビデオ設定-# にてReset Current Folderを実行してください
・再生ファイルと同名で拡張子の異なるファイルが同じディレクトリ内に
存在した場合、字幕ファイルと誤認識され強制トラスコ再生となります
字幕の設定にてstr,subの自動読み込みをfalseにする事で回避できます
(但しReset Current Folder等でデータベースの再構築が必要)
・メディアライブラリの自動スキャン機能を有効にする場合
実行したい時刻をPMS.confのauto_scan_timeにHH:mmのフォーマットで
指定してください
・mkv,mp4(H264)はtsMuxeRを推奨するが予めtsMuxerGUI
でm2tsに変換した方がトラスコ無しで快適
・ISOはvobに展開するとトラスコ無しで快適
・VIERA等音楽再生に未対応のクライアントの場合、renderers/*.confにて
audio_to_video = true を設定することでmp3 wav wma aac oggを動画として
偽装化(AviSynth必須)
負荷が重い場合、renderers/*.confにaudio_to_video_Lv = 1 を追加することで
低負荷モードで再生
また、プレイリスト作成コマンドにてプレイリストのAviSynthスクリプトを
自動生成可能
(プレイリスト作成コマンド使用方法)
win32/avs/PlayListD&D.bat
アイコンに複数の音楽ファイルを
ドラッグ&ドロップする事でプレイリスト.avsを自動生成
(制限:指定できるファイル数はDOSの引数制限に依存します)
win32/avs/PlayListDir.bat
アイコンに音楽ファイル(*.mp3)のrootディレクトリを
ドラッグ&ドロップする事でディレクトリ以下の*.mp3
に対してプレイリストの.avsを自動生成
win32/avs/m3u2avs.bat
アイコンにプレイリスト(*.m3u)をドラッグ&ドロップ
する事でプレイリストの.avsに変換
(AviSynthが適用できない場合)
Linux等AviSynthが適用できない場合でも、FFMpegVideoAsAudioによりFFMpegを用いた
音楽ファイルの動画偽装再生か可能 renderers\images\FFMpegVideoAsAudio.jpg
を変更する事で偽装に用いる画像を変更可能
・avcmodの下記パラメータも使えます
MpegTS_HD_Only
MpegTS_HD_ISO
MpegTS_MimeType
MpegTTS_MimeType
MEncoderHDResizeX
MEncoderHDResizeY
・バーチャルファイル作成ノウハウ
バーチャルファイルの作成に必要なmencoderの引数は元のファイルを再生することで
debug.logに出力されています
DVDISOの場合
1)PMSを起動し、作成したいタイトルを再生する
2)PMSを終了し、debug.logをテキストエディタで開
3)キーワード"mencoder.exe-"で検索し、該当箇所を探す
Starting "C:\Program Files\PS3 Media Server\win32\mencoder.exe" -ss 0 -dvd-device "XXX.iso" dvd://1
-msglevel statusline=2 -oac copy
-of mpeg -mpegopts format=mpeg2:muxrate=500000:vbuf_size=1194:abuf_size=64:vaspect=16/9
-ovc lavc -channels 6 -lavdopts debug=0:threads=1 -lavcopts
autoaspect=1:vcodec=mpeg2video:acodec=ac3:abitrate=448:threads=8:keyint=5:vqscale=1:vqmin=1:vrc_maxrate=54000:vrc_buf_size=1835
-font C:\WINDOWS\Fonts\Arial.ttf -subfont-text-scale 3 -subfont-outline 1 -subfont-blur 1 -subpos 98 -fontconfig
-aid 129 -sid 1 -mc 0.005 -ofps 25 -vf scale=720:480 -o \\.\pipe\mencoder1373763760718
4)出力定義等不要な部分を削除し、XXX.pmsvfのmencoderオプションに貼り付ける
mencoder=-dvd-device "XXX.iso" dvd://1
-msglevel statusline=2 -oac copy
-of mpeg -mpegopts format=mpeg2:muxrate=500000:vbuf_size=1194:abuf_size=64:vaspect=16/9
-ovc lavc -channels 6 -lavdopts debug=0:threads=1 -lavcopts
autoaspect=1:vcodec=mpeg2video:acodec=ac3:abitrate=448:threads=8:keyint=5:vqscale=1:vqmin=1:vrc_maxrate=54000:vrc_buf_size=1835
-font C:\WINDOWS\Fonts\Arial.ttf -subfont-text-scale 3 -subfont-outline 1 -subfont-blur 1 -subpos 98 -fontconfig
-aid 129 -sid 1 -mc 0.005 -ofps 25
5)チャプタ情報が必要な場合、キーワード"chapter"で検索し該当箇所を探す
DEBUG 2013-07-14 10:02:17.468 [pool-14-thread-1] chapter[1]=00:00:00.000
DEBUG 2013-07-14 10:02:17.468 [pool-14-thread-1] chapter[1]=00:05:24.033
DEBUG 2013-07-14 10:02:17.468 [pool-14-thread-1] chapter[1]=00:09:17.500
:
6)不要な部分を削除し、XXX.pmsvfのchapterオプションに貼り付ける
chapter=00:00:00.000
chapter=00:05:24.033
chapter=00:09:17.500
:
最終更新:2015年11月09日 20:16