Media Player Classicホームシネマのブックマーク

履歴を保持し、設定の表示位置を保存することを選択した場合、MPC HCは、ビデオファイルを最後に視聴した場所に最大20個のブックマークと、DVDの数のブックマークを自動的に保存できます。 表示を再開するときに、プレーヤーがデータベース内のファイルに関する情報を見つけると、プレーヤーは最後の位置から再生を開始します(ユーザーの選択に応じて、レジストリまたはiniファイルに他の設定とともに保存されます)。 ただし、20個のブックマークでは不十分な場合があります。 誰かが多くの映画を並行して鑑賞するのを好み、しばらく見るのを延期することもあります。 誰かがMPC HCで音楽を聴きます(そのキーは同じです。1つの大きなアルバム-すべてのブックマークが上書きされます)。 誰かがプレーヤーを使用して、エンコードされたビデオを繰り返しテストします。 最後に、複数の家族が一度に1つのアカウントを使用できます(たとえば、子供が両親が忙しいときに漫画を見ることができます)。 一般に、希望する映画にブックマークを保存してから復元するための信頼できる方法が必要です。



レジストリでは、データはHKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings



セクションに保存されます。 ビデオファイルの場合、 File Name N



/ File Position N



キーペアが使用されます(c N



は0〜19)。 DVDの場合、1つのDVD Position N



キーが使用されます(同じ範囲。プレーヤーは、DVD IDと最後に視聴した場所の両方を1つの不思議なデジタル記録に保存します)。



レジストリを操作するときにカスタムブックマークを作成するには、最も単純で柔軟性の低いものから、より複雑で微妙なものまで、3つの方法があります。 もちろん、この投稿はロケット科学であると主張していません。 シンプルで便利な実用的なトリックを説明します。



I.プレーヤー自体を使用した設定のエクスポート/インポート







ムービーでプレーヤーを閉じた後、MPCを再度開始してからエクスポートを開始する必要があります。これは、レジストリ内の最新ファイルのデータを閉じる前にのみ更新されるためです。 .regファイルはすべての設定(必要なセクションだけでなく)で作成されます。これはもう1つの不便です。設定をインポートすると、目的のブックマークだけでなく、以前の設定全体も復元されます。



状況を少し改善してみましょう(さらにソリューションはWindows XPでのみテストされました)。



II。 バッチファイルを使用したエクスポート/インポート



レジストリを操作するための標準ツールでは個々のレジストリエントリをエクスポートできないため、ここでもセクション全体を処理する必要がありますが、ボリュームを目的のHKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings



絞り込むことができます。 また、プレーヤーを再度開く必要がなく、ブックマークの名前を手動で入力する必要がないという利点もあります。すべてが自動的に行われます。



1.バッチファイル


簡単な場所はありません(拡張子が.batのテキストファイルとして保存):



 @echo off reg export "hkcu\Software\Gabest\Media Player Classic\Settings" "%~dpn1.reg"
      
      





引数には、DVDの最後のビデオファイルまたはフォルダーを指定できます。 同じディレクトリに同じ名前の.regファイルが作成されます。これは、ムービーに戻る前にワンクリックで簡単にインポートできます。



2.システムインターフェイスへの統合


毎回コマンドラインにアクセスしたり、ビデオをバッチファイルのショートカットにドラッグしたりする必要がないように、より便利な接続を実装します。



a。 Explorerの実装


バッチファイルの呼び出しをファイルとフォルダーのコンテキストメニューに追加します。 これを行うには、次のテキストファイルを作成し、.reg拡張子を付けてUnicodeで保存し、統合のために実行します(プログラムパスを自分のものに置き換えるだけで、スラッシュを2倍にしてください)。



 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\* MPC bookmark] [HKEY_CLASSES_ROOT\*\shell\* MPC bookmark\command] @="E:\\DOC\\prg\\bat\\mpc_bm.bat \"%1\"" [HKEY_CLASSES_ROOT\Folder\shell\* MPC bookmark] [HKEY_CLASSES_ROOT\Folder\shell\* MPC bookmark\command] @="E:\\DOC\\prg\\bat\\mpc_bm.bat \"%1\""
      
      





b。 Total Commanderの実装


このファイルマネージャーに慣れている人は、ツールバーにボタンを作成できます(コンテキストメニューを使用して、以前のレシピでボタンを複製できます)。







次に、ビデオを見た後にアクティブなタブのフォーカスにあるファイルのブックマークを作成できます。



II。 Perlスクリプトを使用したエクスポート/インポート



ここでは、さらに大きな利便性を実現できます。 誰かがPerlに慣れていない場合、これは怖いことではありません。Windowsインタープリター実装をダウンロードしてインストールするだけで、他のすべても簡単になります。



スクリプトを使用して、必要なキーのみを保存できます。 ビデオを視聴した直後にブックマークを付けた場合、履歴の最初のエントリのみが必要になります。それらは表示時間の最新のものです。 File Name 0



+ File Position 0



またはDVD Position 0



です。 さらに、誤ったブックマークを誤って残さないように、スクリプトは引数ファイルの識別情報とプレーヤーの履歴の最後のファイルを確認します。



1.スクリプト


次のテキストファイルを作成し、拡張子.plを付けて保存します。



 ################################################################################ use strict; use warnings; use Win32::TieRegistry; ################################################################################ $Registry->Delimiter("/"); my $movie = shift(); ################################################################################ if ($movie && -d $movie) { open(OUTPUT, '>:raw:encoding(UTF16-LE)', $movie . ".DVD.reg") or die "Cannot create the .reg file: $!\n"; print OUTPUT "\x{FEFF}Windows Registry Editor Version 5.00\r\n\r\n[HKEY_CURRENT_USER\\Software\\Gabest\\Media Player Classic\\Settings]\r\n", '"DVD Position 0"="', $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//DVD Position 0'}, "\"\r\n\r\n"; close(OUTPUT) or die "Cannot close the .reg file: $!\n"; } elsif ($movie && -f $movie) { my $last_file = $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//File Name 0'}; if (lc($movie) eq lc($last_file)) { open(OUTPUT, '>:raw:encoding(UTF16-LE)', $last_file =~ s/\.\w+$/.reg/r) or die "Cannot create the .reg file: $!\n"; print OUTPUT "\x{FEFF}Windows Registry Editor Version 5.00\r\n\r\n[HKEY_CURRENT_USER\\Software\\Gabest\\Media Player Classic\\Settings]\r\n", '"File Name 0"="', $last_file =~ s/\\/\\\\/gr, "\"\r\n", '"File Position 0"="', $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//File Position 0'}, "\"\r\n\r\n"; close(OUTPUT) or die "Cannot close the .reg file: $!\n"; } else { print "The input file does not match the last played one:\n\n$movie\n\n$last_file\n\n"; system('pause'); } } else { my $last_file = $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//File Name 0'}; open(OUTPUT, '>:raw:encoding(UTF16-LE)', $last_file =~ s/^.+\\//r =~ s/\.\w+$/+Last_DVD.reg/r) or die "Cannot create the .reg file: $!\n"; print OUTPUT "\x{FEFF}Windows Registry Editor Version 5.00\r\n\r\n[HKEY_CURRENT_USER\\Software\\Gabest\\Media Player Classic\\Settings]\r\n", '"File Name 0"="', $last_file =~ s/\\/\\\\/gr, "\"\r\n", '"File Position 0"="', $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//File Position 0'}, "\"\r\n", '"DVD Position 0"="', $Registry->{'HKEY_CURRENT_USER/Software/Gabest/Media Player Classic/Settings//DVD Position 0'}, "\"\r\n\r\n"; close(OUTPUT) or die "Cannot close the .reg file: $!\n"; } ################################################################################
      
      





フォルダーがスクリプトに転送される場合、フォルダーの名前を付けて.regファイルの最後のDVDにブックマークを保存するだけです(これがDVDかどうかを確認することはできません。誰かがこれを行う方法を知っている場合は、コメントを書き込んでください。ただし、映画を視聴してプレーヤーを閉じた直後にブックマークを付けた場合、その正確性について心配する必要はありません)。 ファイルが転送されると、スクリプトはこのファイルと履歴の最後のファイルのIDを確認します。 ファイルが一致する場合、スクリプトは2つの必要なキーを使用して同じ名前の.regファイルを作成し、一致しない場合はエラーメッセージを表示します。 引数がスクリプトにまったく渡されない場合、現在のアクティブフォルダー内の最後のDVDと最後のビデオファイルに関する情報を含む要約.regファイルが作成されます。



2.システムインターフェイスへの統合


最小限の変更ですべてがほぼ同じになります(プログラムへのパスを書き留めることを忘れないでください)。



a。 Explorerの実装


何らかの理由で、1つのスクリプトを指定するだけでは不十分なため、(。pl拡張子がPATHEXT変数に追加されていても)インタープリターを指定する必要があります。



 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\* MPC bookmark] [HKEY_CLASSES_ROOT\*\shell\* MPC bookmark\command] @="C:\\Perl\\bin\\perl.exe E:\\DOC\\prg\\perl\\var\\mpc_bm.pl \"%1\"" [HKEY_CLASSES_ROOT\Folder\shell\* MPC bookmark] [HKEY_CLASSES_ROOT\Folder\shell\* MPC bookmark\command] @="C:\\Perl\\bin\\perl.exe E:\\DOC\\prg\\perl\\var\\mpc_bm.pl \"%1\""
      
      





b。 Total Commanderの実装


同様のボタン:










説明されているメカニズムにより、この状態を実現できます。







PSもちろん、プレーヤー自体にも「お気に入り」がありますが、一部の人にとっては不便に思えるかもしれません。ブックマークを更新する、つまり同じ映画のトランジション時間を変更するには、古いブックマークを削除して新しいブックマークを作成する必要があります。 ブックマークが映画の隣のフォルダーにある場合、それらは検索後、映画を見ると不要なものとして簡単に削除できます。 このようなブックマークは、すべてのアカウントから利用できます。 ファイル名またはファイルへのパスが変更された場合、(メモ帳でも)編集しやすくなります。



All Articles