Tvmaidについて語るスレ_7_ ©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
Tvmaidについて語るスレです。DTV板にスレ立てると落ちやすいのでソフト板にお引越し。 Tvmaidは、Windows用録画予約プログラムです。 TVTestを使用して、番組表の取得、録画を行います。 ttp://nana2.sarashi.com/ Tvmaid MAYA(開発中) Tvmaid RIOは、タッチデバイス用のUIとストリーミング対応(公開終了) Tvmaid EXおよびTvmaid YUIは、Tvmaidの改良・進化バージョン(公開終了) 1.Tvmaid YUIの派生「mark10als」版 "Tvmaid YUI 1.7a mod by mark10als at 2016/05/02" ttp://www1.axfc.net/u/3660193 前スレ http://mevius.2ch.net/test/read.cgi/avi/1485820044/ 👀 Rock54: Caution(BBR-MD5:e0bffe56a78b676895fac41f57f0ed6b) モチロン、躾がいがある所やけど…ぉ? 週間番組表とか無い機能を… ”調教(実装)”、”調教(実装)””調教(実装)”! お好みmaidに仕立て上げる… (ぐへへ?ぇ違うん? ただ、やりすぎると、”M”ayaが反転、”S”aya化するぽい?(嘘 どのチューナーが何処を選局しているか分かるようになった? TVmaidと同時にMaidbarを起動するにはどうやるの? 両方スタートアップに登録って方法しかわからない yuiの時は同時起動してたのにな TvRemoteViewer_VBの番組表取得用に入れたけど こっちのほうが番組表も録画リストも見やすいし設定もシンプルで素晴らしい あっちは現在放送中の番組のみ表示でTSファイルから番組内容取得もできない QSVにも対応してておまけに録画もできるからライブ再生と録画視聴は乗り換えた TVTest64bitに非対応 TSファイルが読み取り専用になっていると登録に失敗する の2点は改善してもらえたらありがたい それとセグメントファイルの保存先のオプションや EDCBみたいにEPG取得時に放送波時間でPC時計を同期できるとうれしい あとは録画を整理したいのでこんな感じで 録画フォルダ A;B TSフォルダ C;D;E サブフォルダも含める X 録画先Aが使用不可ならBを使う 「TSファイルを登録」するとA,B,C,D,EのTSを登録 みたいに録画先と保管先に複数フォルダを指定できて サブフォルダも見に行ってくれるオプションがあると最高 録画先複数は条件付けが大変そうだからシンプルに 録画フォルダ A;B;C みたいにして録画はAでTS登録はA,B,Cみたいなのでもいいかも 『中の人』… じゃなけど 『TVTest64bitに非対応』 バイナリは配布されていませんが,自ビルドすれば動かす事は出来ます。 (先ほど,やってみた。 TVTest0.9.0(x64)+Tvmaid Rel30 mod14.6(x64)) ただ,使用に耐えるかは不明。 Hint: lib\System.Data.SQLite.dllが32bitです… 『TSファイルが読み取り専用になっていると登録に失敗する』 TsFileInfo.cs内 TsFileInfo()の Title = Path.GetFileNameWithoutExtension(path); で 例外がスローされました: 'System.UnauthorizedAccessException' (mscorlib.dll の中)が発生 なぜ,この関数がダメなのかは調べてないので不明。 『放送波時間でPC時計を同期』 私もそう思った時期がありましたが,TOTから取ってくると最大+/-500mSの誤差が有るようです。 『録画を整理したい』 Tvmaidに多くを求めるのは酷かと… ただ,予め保管先満杯時の予備保管先を指定できると安心できるかと思いますが… # 予備とかサブフォルダとかは,自前で載せちゃいました… # ついでに『Mediaindex』的な機能とかも… うちはMaid(YUI)とTvTest0.9.0.x64の組み合わせでたまに録画に失敗する 0.8.2x64たと問題なし >>235 MAYAとの組み合わせで,0.8.2は未検証ですが… TVTest0.9.0は,0.7.2fixと比較して起動時の初期化プロセスが若干変わっています。 この為,『うまく動いている』様に見えるだけで,実は,正しく動作していませんでした。 MAYAは,Rel 28.1で,TVTestプラグインに修正が入っています。 また,(mark10alsさんの)YUIのソースを覗いてみましたが,修正前のMAYAと同様の問題が発生しそうです。 # "Tvmaid 0.9.0 トラブル"でググると,ネタが出て来ます。 # ”part2”のページで,答え合わせ(?)してます。 EPG取得時に視聴中だと取得も視聴も失敗するからリトライするか空きチューナー使うか待つかして >233 録画フォルダのサブフォルダも検索する機能は確かにあるといいかも 時計は放送波のずれ>TOTのずれだろうから録画鯖にはPC時計より放送波時計って気持ちはわかる >>238 MAYAのソース見てみましたが,録画予約実行と番組表取得は,折り合いをつけて動作する様になっていますが… Live視聴は,蚊帳の外の様です。 普段,視聴機能は使ってないので気にしてませんでしたが,録画予約とバッティングすると,非常にマズそう… # もしかして,Web UIで選べない? Tvmaidを二重起動して,視聴専用を用意するとか… (チューナーの無駄遣い?) ソース修正して自ビルドするとか… Tvmaidは現状で糞安定してて、余計な機能増やして欲しくない 失敗せずに録画出来るって事が一番重要 安定するソフトの組み合わせバージョンなんて固定で良い 読取り専用とか、録画先が利用出来ない場合の処理とか、まったく不要 (本当に利用出来ないのか、遅いだけなのかチェックしに行くだけでも録画失敗に繋がる) 新しいのを使わないといけないって決まりはないから変えたくないならそのまま使い続ければいい サブフォルダ読みにいくには以下4か所を変更 WebApi.cs 1. 325行目を変更してサブフォルダのTSファイルも削除可能にする var file = Directory.GetFiles(AppDefine.Main.Data["record.folder"], record.File, SearchOption.AllDirectories)[0]; 2. 336行目を変更してサブフォルダのTSファイルもファイルチェック可能にする var files = Directory.GetFiles(recFolder, "*.ts", SearchOption.AllDirectories); 3. 404行目を変更してサブフォルダのTSファイルも登録する var files = Directory.GetFiles(AppDefine.Main.Data["record.folder"], "*.ts", SearchOption.AllDirectories); VideoStreamReader.cs 4. 106行目を変更してサブフォルダのTSファイルも再生可能にする var path = Directory.GetFiles(AppDefine.Main.Data["record.folder"], rec.File, SearchOption.AllDirectories)[0]; 意図的に1を変えないことでTvmaidからは録画フォルダ直下のTSのみ消せるようにできる サブフォルダのTSを削除しようとしても一覧から消えず削除もされない 自分の場合フォルダ分けした=消したくないファイルなのでそうした PCでサブフォルダの整理をしてからTSファイルを登録すればいい あとこの変更には必要ないけど.csprojの"<HintPath>H:\project\TvmaidMAYA\lib\"を"<HintPath>..\lib\"にすればライブラリを相対パスで参照できる スリープ関連はもっとシンプルにすべき 今のだと自動復帰でなければWindowsに問答無用でスリープされてしまうし、Tvmaidのスリープメニューと自動スリープはOSの機能とかぶるからいらない 手動でスリープ移行とアイドルでスリープする設定はWindowsに任せて、Tvmaidは自動復帰かどうかに関係なく録画中、番組表取得中、視聴中、予約が近い時にスリープを抑止するだけでよい >>241 単純にサブフォルダも対象にすると,同一ファイル名が存在した場合,面倒が起きませんか? # ファイルをサブフォルダへ移動後,リネームしなければ問題ないけど… >>242 私のところは,ヘッドレスの録画専用機,電源入れっぱなし運用なのですが WebApi.csに以下を追加,WebUIからもSleep移行を可能にしてます。 # 合わせて,WebUIも加工しています。 public void GoSleep() // WebUIからSleep発行 { SleepMan sleepMan = new SleepMan(); sleepMan.SetSleep(); Log.Info("WebUI経由で,スリープへ移行します。"); } TVリモコンからcurlやら出来るデバイスを用意して,WoL/GoSleep出来て便利です。 情報提供。 ffmpeg の最新版(少なくとも 4.2 以上)を使って Tvmaid MAYA をセットアップすると、字幕があるチャンネルを再生できなくなります。ffmpeg 4.1.4 を使うと問題を回避できます。 最新版の出力の一部。 Stream mapping: Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (libx264)) Stream #0:1 -> #0:1 (aac (native) -> aac (native)) Stream #0:2 -> #0:2 (? (?) -> webvtt (native)) Decoder (codec arib_caption) not found for input stream #0:2 4.1.4 を使うとこうなる。 Stream mapping: Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (libx264)) Stream #0:1 -> #0:1 (aac (native) -> aac (native)) >>242 素のTvmaidだと視聴中にスリープ抑止しないから HlsStream.cs 54行目に挿入して視聴開始時にスリープ抑止設定 SleepState.Stop(true); 138行目に挿入して視聴視聴終了時にスリープ抑止解除 SleepState.Stop(false); のような変更が必要 スリープ運用はWindowsでするから抑止のみでいいというのはその通り 自動復帰後素早くスリープさせたいなら自動スリープは残してもいい >>243 同名ファイルの登録は1回しかできないから二重登録にはならない 登録も再生も先に見つけたほうがされる 登録後に録画フォルダ内で移動してもコピー作っても再登録は不要 ファイル名が変わると別物扱いになるから再登録が必要 >>244 ARIB字幕対応の為? #0:2が邪魔っぽいので,*.defの記述に "-map 0:v -map 0:a" を追加すれば行ける? >>245 >登録も再生も先に見つけたほうがされる… 私にとって,これが厄介なのです(泣 以前,予備フォルダ対応も含め"サブフォルダを対象にする"を載せたのですが この事もあって,結局,使わずじまい。 # "Tvmaid セットアップ" で,ON/OFF可能にしてます。 今は,Tvmaidに無理矢理載せたMediaindex機能の方で,運用しています。 スリープ・復帰に関しては "おま環" が多すぎてTvmaid自身が面倒を見る必要は無いと思う。 TvRockと同じ過ちを犯して欲しくない。 Tvmaidはスリープ・復帰を管理する外部プログラムを呼び出す機能だけを持っていて、 スリープ・復帰をするのは各自の環境に合わせたプログラムを差替えてやってもらえば良い。 >>245 なぜかスリープ抑止解除に失敗することが多かったので挿入する場所を変えて void RemoveSegment()の中のFile.Delete(path);の下にしたら失敗しなくなった VCEEncC で配信しようとしたけど、解像度lowでも30分もつことなく、途中で止まって困っています。 3400G APUの内蔵GPUでは非力すぎかなぁ。 コマンドラインオプションは、公式サイトの QSVEncC のを元に設定したけど、 おかしいところありますか? hls.def encoder=VCEEncC64\VCEEncC64.exe window=hide high=--sar 1:1 -f hls -m hls_time:2 -m hls_list_size:1 -m hls_segment_filename:{segment-id}-%d.ts --output-thread 0 --avhw --audio-codec aac --audio-ignore-notrack-error --audio-samplerate 48000 --audio-bitrate 192 -c h264 --vbr 512 --gop-len 60 --tff --output-res 1280x720 -i - -o - middle=--sar 1:1 -f hls -m hls_time:2 -m hls_list_size:1 -m hls_segment_filename:{segment-id}-%d.ts --output-thread 0 --avhw --audio-codec aac --audio-ignore-notrack-error --audio-samplerate 48000 --audio-bitrate 192 -c h264 --vbr 512 --gop-len 60 --tff --output-res 1024x576 -i - -o - low=--sar 1:1 -f hls -m hls_time:2 -m hls_list_size:1 -m hls_segment_filename:{segment-id}-%d.ts --output-thread 0 --avhw --audio-codec aac --audio-ignore-notrack-error --audio-samplerate 48000 --audio-bitrate 192 -c h264 --vbr 512 --gop-len 60 --tff --output-res 640x320 -i - -o - (続き) pd.def encoder=VCEEncC64\VCEEncC64.exe type=video/webm window=hide high=--sar 1:1 --audio-copy -m frag_duration:1000000 -f mp4 --codec h264 --output-res 1280x720 --cqp 28 --quality fast --input-analyze 3 --avhw -i - -o - middle=--sar 1:1 --audio-copy -m frag_duration:1000000 -f mp4 --codec h264 --output-res 1024x576 --cqp 28 --quality fast --input-analyze 3 --avhw -i - -o - low=--sar 1:1 --audio-copy -m frag_duration:1000000 -f mp4 --codec h264 --output-res 512x288 --cqp 28 --quality fast --input-analyze 3 --avhw -i - -o - タスクマネージャー見てると、HWデコーダーとHWエンコーダーがずっと30%くらいで推移してて、 突然100%に飛ぶと同時に止まります。 >>249 ですが、入出力をファイル指定にして VCEEncC.exe を実行したら、数秒〜数十秒で落ちます。 タイミングが不定期なので、ハードウェアの問題ぽいです。 APU の初期不良含め確認してみます。 原因特定できてないけど勝手にスリープ抑止するバグと 再生停止してもブラウザ閉じてもチューナーが視聴中でロックされるバグがある 前者は番組表を更新して自動スリープして復帰した後とか怪しいかな 後者はライブ再生開始後すぐに止めたりブラウザ閉じると起きやすい どちらも発生したらTvmaidを終了させないと止められない >>253 これ多分EPG更新後にスリープ抑止解除されないままTvmaidがスリープさせてる で次に手動で復帰したら抑止が効いててスリープしない 何らかの要因でSleepState.Stop(false)がスキップされてるのか >>248 に抑止解除に失敗するから場所変えたってあるから見てみたら try{ }の中にあると失敗しなくなるみたいなので EpgUpdater.csのSleepState.Stop(false);をserver.RemoveRef();の上に移してみた しばらくこれで様子見てみます スリープ関連は,"おま環"なことが多いので,難しい…ですよね。 # 確か『中の人』は,スリープ運用していないって言っていた様な… で,ザックリおさらい(?) Tvmaidのスリープ制御 SleepMan()は,Gui/MainForm.csのMainForm()から呼ばれます。 先刻のSleepMan.cs内の関数で SleepState.Stop(); ...引数Trueでcounterを++,Falseで--,counterが0でSetState(true)を,1でSetState(false)を実行。 SleepState.SetState(); ...OSのSleep動作を制御(TrueでSleepさせない) SleepState.IsStop(); ...SleepState.Stop();内のcounterを確認(return count > 0;なので,0で戻り値False) * SleepState.Stop()は,あくまでEpgUpdate用,その辺を理解しないで,他で使うと"動作しているように見えるけど…” な状態になります。 SleepState.Stop(false);がSleep許可(or 再スリープするよう準備)って訳では無い。 SleepState.SetState();を使っても,OSの電源管理がSleepに移行しない設定ならSleepしない。 Sleep復帰後の処理はOnResume()にて行なっていて ・設定で "自動Sleepする" な場合 ・現在の時間が次の予約の3分前以内なら、自動復帰したと判断し、再スリープするよう準備。 ・それ以外の場合,自動復帰ではないと判断,TvmaidはSleep(準備含む)しない。 ・この際,OSの電源管理設定を弄っていないので,OS都合でSleepする可能性がある。 ・但し,EPG更新,予約録画時は,SleepStateを使ってOSがSleepするのを阻止している。 OS側のSleep制御は,SetThreadExecutionState()を使っている。 Sleep移行には,SetSuspendState(PowerState.Suspend, false, false)を実行している。 >> 254 ストリーミング中に,ブラウザを閉じると固まるのは… HLSストリーミングのタイムアウト(?)は30秒,その間はチューナを手放さないと思われます。 # Streaming/HlsStream.csのCheckActive()参照 開始直後に停止の方は,遭遇した事ないので… >>254 もしかすると自動スリープがオンの時に自動復帰でEPGが更新されると SleepState.Stop(false)が実行されてから実際に抑止解除されるまでの間に 自動スリープされてしまうって症状かもしれない 場所変えてもダメだったので単純に自動スリープをオフにしてみた これでスリープ抑止効果が残らなくなるならビンゴ >>256 自動スリープは関係なかった EPG更新時にTVTestがサービス切り替えに失敗するとスリープ抑止が残る 別のTVTestでチューナー使用中に手動で更新したら 再現率100%でスリープ抑止解除されなかった 勝手に抑止されるっていうのは自動更新中にチャンネル変更で時間がかかったとか 他でチューナー使ってたとかでサービス切り替えでミスしてる BonDriverProxy使っててログに残らないからわからなかった チューナー共有ソフトだと切り替えできない時は視聴中のチャンネルを返すから 切り替え失敗にならないみたい 原因が見つかったのであとは解決策がほしい 改造版でLive(HLS)視聴中,放送局を変更した際にStart()内でStop()が呼ばれることがあり SleepState内のカウンタの値が思っていたものと違うものになる。 # 要はfalseが一回多く実行される この事で,TvmaidからOSに対するSleep抑止制御がおかしな事になる。 これは,Tvmaidを再起動するまで治らない。 代案(仮) SleepState.Stop()を使うなら,VideoStreamRecorder.csの方に設置すれば 上手く回るのではないかと思います。 ここなら,HLSでもPDでもLiveでも録画ファイルでも,Sleep抑止制御できると思います。 簡単に試した感じでは上手く動いていそう,でも,恒久的にOKか不明です。 # ついでにSleepManのSleep()にも小細工した方が良いかも… >>257 手動でEPG更新中止してもスリープ抑止残った これも再現率100% コードの問題なのか言語の問題なのか環境なのか とにかく更新中にエラーか手動中止があるとダメ 抑止解除失敗がどこで起きてるかまではわからなかった うちはチューナー使用中はBonDriverProxyが抑止してくれるから EpgUpdater.csからSleepState.Stop()の2行を削除してよしとした >>258 245のやつか チャンネル変更は新規にStartを呼ばずStopだけしてストリーム切り替えるから カウンタが-1されてずれる 上に書いたEPG更新中の抑止解除失敗も意図せぬカウンタのずれで そっちはtrueが多くなってる VideoStreamRecorder.csの Interlocked.Incrementの下とInterlocked.Decrementの上で計4箇所に SleepState.Stop()を入れたら大丈夫そうではある 録画は使ったことないけどもしかしたらスリープ抑止で穴があるかも アルゴリズムに抜けがあるとカウンタがおかしくなる BonDriverProxy使ってれば録画視聴時以外は抑止してくれるけど できればTvmaidでやってほしい 作者さん不在でこういうのも個人でDIYするしかない 視聴中の音量調整できたらいいけどこれはさすがに素人には難しい こんな感じかな 2行追加でライブ視聴時のスリープ抑止・解除 VideoStreamReader.cs 43行目Interlocked.Increment(ref ready);の下にSleepState.Stop(true); 75行目Interlocked.Decrement(ref ready);の上にSleepState.Stop(false); 2行追加で録画視聴時のスリープ抑止・解除 VideoStreamReader.cs 123行目Interlocked.Increment(ref ready);の下にSleepState.Stop(true); 133行目Interlocked.Decrement(ref ready);の上にSleepState.Stop(false); うちは録画視聴時のみでいいから下のだけ チューナー使用時はBonDriverProxyがスリープ抑止するから 元々あったEpgUpdater.csとRecorder.csのSleepState.Stop()は削除した >>241 のサブフォルダ改造とこれでビルド あとはdefファイル変更とhtml改変でデフォルト値を変えてる 使ってないWebPDとユーザ番組表と実況コメントを消して 削除済み録画は表示しないにチェック入るようにした 視聴時のARIB字幕オンオフ機能もほしいけどこれも難しそう >>261 弄りすぎてオリジナルの行数は不明なのですが,RecordStreamReader()の if (File.Exists(path) == false) throw new Exception("指定されたIDの録画ファイルはありません。"); を if (File.Exists(path) == false) { SleepState.Stop(false); throw new Exception("指定されたIDの録画ファイルはありません。"); } として頂けると,さらに良い感じになると思いますが,如何でしょう? # 実は,削除した録画ファイルをWebUIから再生しようとしたら,問題が出たので…(笑 ARIB字幕も気になりますが,Live視聴メインの方には,予約録画>番組表更新の優先順位判定に Liveが含まれていないのは問題かも… >>262 Dispose()だけが実行されないケースってありますか? RecordStreamReaderに追加するSleepState.Stop(true)は throw new Exception("指定されたIDの録画ファイルはありません。")と throw new Exception("record streamで無効な開始時間が指定されました。") より下にあればダメな時はthrowされてtrueにする前に止まるはず 個人的な改造は置いといてスリープ機能の改善(簡略化)と 視聴、録画、EPG更新が競合した場合のチューナー割り当てのアルゴリズムは 次の更新があるのであれば最初にやってほしい SleepState.Stopでtrueとfalseの数が合わなくなって スリープ抑止カウンタがおかしくなるのが原因だから EpgUpdater.csとRecorder.csのSleepState.Stopを削除 SleepState.Stopは廃止してSleepMan.csに (VideoStreamReader.Ready || Recorder.Running || EpgUpdater.Running) を満たす間だけスリープ抑止するclassを常駐させれば解決だけど 常駐させる方法は知らない 自動スリープもOSがするから必要なさそう Tvmaidによる手動スリープもOSのスリープボタンでいい リモートでスリープさせたい場合はhtmlにボタンを設置 >>261 > より下にあればダメな時はthrowされてtrueにする前に止まるはず すみません。 ご指摘の通りです。 盛大に勘違いしてました orz 123行目にtrueを入れるなら,throw new Exception("…の上に追加は不要ですね。 私の方では,LiveStreamReader()の場合,TvTest起動動作前に(true)したかったので,try{}内の先頭に挿入。 そのノリでRecordStreamReader()も関数の先頭付近に入れたので,throw new Exception("の上に必要でした。 #SleepMan.Sleep()は有効時,1秒間隔で動作するので,TvTestやファイル操作で,もたついている間にSleep発動されるのが嫌だったため。 #実際に,もたつきでSleep発動するかは,未確認。 同様にDispose()の(false)も関数の最後(catch{}の後)に入れています。 #LiveStreamReader.Despose()のtry{}内で2秒待ちが有るし… > Dispose()だけが実行されないケースってありますか? VS上Debugで動かして様子を見ると,RecordStreamReader()は,内部で例外(上記,thow new含む)が発生した場合,呼ばれない様です。 LiveStreamReader()はtry…catchしているので,多分大丈夫。 連投ご容赦願います。 WebUIでLive視聴中に番組表更新に邪魔されない様にしてみる(仮) >>261 の改造に追加で,RecTimer.csの85行目辺りに小細工 else if (Queue.Find(tvdb, tuner) != null) // Queueが有れば,EpgUpdate { var server = new TvServer(this.tuner); // 視聴中EpgUpdate回避実験 2020/01/06 if (server.IsOpen() == false) { var updater = new EpgUpdater(tuner); updater.Start(); } } 注意: ・あくまで実験レベルなご提案(無保証)。 ・チューナの取り合い発生時,予約録画 > Live視聴 > 番組表更新 な関係。 ・Live視聴中に番組表更新が発動,同番組表更新中にLive視聴を停止すると番組表更新に取られてしまう。 # この改造では,取り返せません orz 停止せずに他局へ切り替える分には,大丈夫な感じ… ・Maidbarからの操作は,ガン無視なので,番組表更新は発動する。 ・BonDriverProxyなどでチューナ共有していて,Tvmaid制御の他でチューナを使っている場合 Tvmaidは今まで通り ”サービス切り替えに失敗しました” する。 Maidbarも含めた,根本的な優先順処理実現は,少々(いや,大分?)面倒ですね。。。 >>279 >ソースフォーク版ってどこにあるんですか? フォーク版って? お前がそんなくだらないことを書き込んだ気持ちと 似たようなもんさ tvmaid氏もkeii氏も降臨しなくなったからなー、>>282 のアホしか出てこなくなったりするわな yui 1.7 まだ使ってるわ 欠点だらけだけど普通使いやすい TVTest複数起動はこれしかない みなさま,ご無沙汰しております。 私の所は,今もMAYA(改)が安定動作中。 現状,致命的な困り事がないので,このまま継続して使用する予定です。 そういえば… 近々,BSの帯域再編が有るようですが,Tvmaidだと面倒が少なくて良いですよね。 >>279 もう,ご存知かもしれませんが… YUI系なら『mark10als』さんのが,GitHubに有るようです。 MAYA(改)は,少し前にGitLabに上げました。 # 『中の人』様,ごめんなさい。 # 公開しないって言っていたのですが… もうゴールしてもいいですよね。 GitLabに上げただけなので,動作確認など一切行っておりません。 もし,お試し頂く際は,自己責任,自己解決でお願いします。 # そのままBuild出来るかも未確認です。 使用方法は,マニュアルを添付していますので,そちらでご確認下さい。 # /maya/manual.htmlで開けるようにしています。 わけあってインストールしなおしたら 番組表の表示に20秒ぐらいかかるようになってしまった どうすればいいんでしたか もう忘れちゃった YUIたその maid barからどのチューナーがどのチャンネルを見ているのか分からない不便を乗り越えて使ってます。 何となくODBC経由でデータ引っ張って Accessとか Excelでなんかできないかなー と思ってやってみたけど、日付フィールドの変換が上手く行かなくて挫折 >>295 tvmaid-5.db event.startやendは,Ticks値です。 変換は… UnixTime(JST) = (Ticks / 10000000) - 62135596800 - 32400 ExcelTime(JST) = (UnixTime + 32400) / 86400 + 25569 とされています…? 32400 = 協定世界時と日本標準時の差の秒数 86400 = 1日の秒数 25569 = UNIX Time の基準時刻 (1970/01/01(木) 00:00:00 UTC) に相当するシリアル値 * Tvmaidが保持している値は,すでに "JST" なので,時差の調整は不要です。 Excelならセルに… =((A1 / 10000000) - 62135596800) / 86400 + 25569 って感じ…でしょうか… DB Browser for SQLite等なら… select datetime(start / 10000000 - 62135596800, 'unixepoch') as sdatetime, datetime(end / 10000000 - 62135596800, 'unixepoch') as edatetime, title from event; って感じ… >>296 ODBCの設定で [Always BIGINT]のチェック入れてなかったから 32bitにまとめられてました 失礼 Live配信をフジ021chとかをチャンネル指定して起動するコマンドがありましたら教えてください。更に全画面も指定出来たらいいな。 ショートカットアイコンからワンクリック視聴したいです >>302 コマンドは用意されていません。 ですが,配信方法がPDならブラウザで以下のようなURLを開けば,すぐに再生が始まります。 http:// {MaidPC IP addr}:20001/live-stream/stream?tuner={チューナー名}&fsid={FSID}&mode={画質} チューナー名: 使用するチューナーの名前を記述します。 FSID: チャンネルを指し示すID(user/logo/*.bmpを見て,当たりを付ける) 画質: pd.defで設定した画質の名称を記述します。 例えば… MaidPCのIP: 192.168.1.1 チューナー: S4 fsid: 18256822375 (うちでは,NHKBS Pに相当) 画質: middle で http://192.168.1.1:20001/live-stream/stream?tuner=S4& ;fsid=18256822375&mode=middle な感じになります。 後はお好きな方法で,ブラウザを起動,上記URLを開く,表示最大化,までを行えばご希望の動作に近いことが出来ると思われます。 注意: ・PDが使えないブラウザの場合は諦めてください。 ・ブラウザの機能で再生しているので,操作はブラウザのプレイヤーの物になります。 ・録画で使用する予定のあるチューナーを指定しないで下さい。 * カチあった場合,どんな動作をするか不明です,録画に失敗するかもしれません。 hls.defで運用してました、Pd.defを使って無かったので配信設定が確認できたら、試してみます ありがとうございます >303 ご指示に従い設定したつもりですが、エラーで再生できないです、どの辺が間違っていますか。 windows10pro 21h1 tvtest073 Maya30 MaidPCのIP: 127.0.0.1 もしくは localhost もしくは実IP チューナー: wt-01 fsid: 140610784855056&mode (tbsに相当) 画質: middle 方式:pd 待ち時間:2 ttp://127.0.0.1:20001/maya/index.html#live サーバーPCでlocalhostでブラウザChromeにてPD再生確認できました。 しかし次のURLでは再生できませんでした ttp://127.0.0.1:20001/live-stream/stream?tuner=wt-01&;fsid=140610784855056&mode=middle エラー500 このページは動作していません127.0.0.1 では現在このリクエストを処理できません。 HTTP ERROR 500 fsidやチューナ名を他にかえたりしてこちらもだめでした. ttp://127.0.0.1:20001/maya/live-stream/stream?tuner=wt-01&;fsid=140610784855056&mode=middle >>305 WebUIから再生出来ているとの事ですので,dp.defの設定は問題と思います。 > ...tuner=wt-01&;fsid=140610784855056... - 途中の ";" は不要です。(/mayaも不要,...20001/livestream/... です) - チューナ名は大文字/小文字の区別が有ります。設定した通りに記述します。 - fsidが古く有りませんが? - TVmaidは,溜め込んだ局Logoを消しません。 fsidが変わっている場合,上書きされず古いものが残ります) ご参考: dp.defのwindow項の hide を消すと,encoderの画面が隠されず表示されます。 # Errorの場合,すぐに閉じてしまい参考にできませんが… window=hide ↓ window= ご参考2: WindowsのChromeなら F12 Networkタブ を開く この状態でLive再生を行うと横にバーが伸びていく行がある これがstreamでName欄でこのstream行を探しマウスオーバすると件のURLが表示されます。 >>306 すみません >dp.defの設定は問題と思います dp.defの設定は問題 無いと 思います。 です。 >306 解決出来ましたありがとうございます。 ;が不要ケアレスミス、チューナ名の先頭大文字が使われてました。 この修正後再生出来ました。 画像は最大化ではなく解像度サイズになるんですね。 それとチャンネルが画面内で変えられないのですね でも一発再生に満足です。 >>308 うまくいった様で,何よりでした。 本件,Streamを直接ブラウザで受けているだけなので,操作には不便が多いです。 チャンネル切り替えは,URLをBookmarkに登録すれば,サクサク(?)切り替えが出来ます。 また,VLCなどのプレイヤーソフトを使う手も有ります。 VLCなら,メディア(M) →ネットワークストリームを開く(Ctrl+N) の 「ネットワークURLを入力して下さい」に本件のURLを入力すればOKです。 プレイリストの作成は面倒ですが,こちらの方が汎用性があると思います。 3月下旬にBSジャパネットネクストが始まるけど、対応してる? >>313 当日,やってみないと判らないのですが… 以前に有った各種変更の時は,当該チャンネルをTvTestで視聴出来るように調整出来れば Tvmaidでは "チューナー更新"の後,"番組表取得" すればOKと思われます。 >>313 試験電波発射中になっていたので,試してみました。 私,PT3使いなので… BonDriver_PT3-S.chset.txtを編集。 TVTestでチャンネルスキャン,新3局が出てくるのを確認。 Tvmaidでチューナー更新を実行,WebUIやメイドバーで新3局が出てくるのを確認。 一応,番組表更新を実行して,番組表に"試験電波発射中"って出てくればOK… と思われます。 BonDriver_PT3-S.chset.txt (抜粋) BS23/TS3 BS松竹東急 0 26 11 18803 ;20220309 試験電波開始 BS23/TS2 BSJapanext 0 27 11 18802 ;20220309 試験電波開始 BS23/TS1 BSよしもと 0 28 11 18801 ;20220309 試験電波開始 26, 27, 28の数字は,ファイル内で任意に付ける連番なので,環境に合わせて要修正です。 不具合が一切ないので何も書き込むことがない 礼賛って訳じゃないけどEDCBとか面倒なのを辞めて正解だった ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる