MKVファイルのメタデータを(再エンコードせずに)編集する方法はありますか?
On 2月 16, 2021 by adminVLCでWebからMKVファイルを見ると、タイトルバー(下の画像の「#1」を参照)はメタデータから取得されているように見えます。ファイル名。
VLCで[情報を見る]パネルを開くと、タイトル( “#2″)を変更してから[メタデータの保存]( “#3″)をクリックできますが、ファイルを再度開くと、古い情報が表示されます。
MKVメタデータを編集できる他のMacアプリは見つかりませんでした。 mp4メタデータを編集する提案がいくつかありますが、それは私が必要としているものではありません。
回答
mkvpropedit
を使用してこれを行う方法を見つけました。 mkvtoolnix の一部であるdiv>。
mkvpropedit "foo.mkv" -e info -s title="This Is The Title"
このためのGUIラッパーがありますアプリとその他のMacのインストール手順公式ウェブサイトで入手可能。
回答
さらに、bashスクリプトで mkvpropedit
を使用して、すべてのmkvのタイトルを設定できます。ディレクトリ内のファイル。 (ファイル名が目的のタイトルである場合。)
#!/bin/bash # This script takes all mkv files in the current directory and sets the filename # (without .mkv) as its title in metadata for mkvfile in *.mkv; do mkvpropedit "$mkvfile" -e info -s title="${mkvfile::-4}" done
コメント
回答
MKVToolNix
GUIの方法:
- メニューからヘッダーエディターを選択します。
-
ファイル。
-
segment information
の下にtitle
があります。アイテム、必要に応じてタイトルを変更してください。
- Tここには保存ボタンがありません。メインメニューを使用して変更を保存してください。
macOSバージョンのサポート
MKVToolNixの現在のバージョンには macOS Mojave(10.14)
以降ですが、以前のバージョンのMKVToolNixは以前のバージョンのmacOS / OSXで機能する可能性があります。
v42以降.0.0、MKVToolNixは
std::optional
、 aを使用します にはmacOS10.14が必要です。 b
macOS High Sierra(10.13)および Sierra (10.12)は v41.0.0 “Smarra”(2019-Dec-06)まで実行する必要があります。
OS X El Capitan(10.11)は v29.0.0「LikeIt Or Not」(2018-Dec-01)まで実行する必要があります。
v26.0.0以降、「README.macOS.txt」ファイルには
works only with macOS 10.11 "El Capitan" or newer
e (ただし、MACOSX_DEPLOYMENT_TARGET
およびLSMinimumSystemVersion
はまだ10.9
にあるため、Yosemite10.10またはMavericks10.9で実行される可能性があります。
OS X Yosemite(10.10)および Mavericks(10.9)は v25.0.0 “Prog Noir”(2018-July-12) aまで実行する必要があります>。
v9.7.1-build4以降、
MACOSX_DEPLOYMENT_TARGET
およびLSMinimumSystemVersion
は10.9
に設定されています。 f
OS Xマウンテンライオン(10.8) v9.7.1-build2 “Pandemonium”(2016-Dec-27)まで実行される可能性があります。
v8.2.0以降、「README。macOS.txt “ファイルには、
works only with Mac OS X 10.9 and higher
と記載されていますが、LSMinimumSystemVersion
はまだ10.8.0
にありますが、そのため、Mountain Lion10.8で実行される可能性があります。さらに、
MACOSX_DEPLOYMENT_TARGET
は設定されていないため、OSのバージョンをターゲットにする必要があります。組み込み。 g v9.7.0-build2 および v9.7.1-build2 <として/ em>はSierra10.12で構築されましたが、Yosemite10.10でもElCapitan 10.11でも実行されません(ただし、Mavericks10.9とMountainLion 10.8で実行され、その制限を無視しているようです)。関連するディスカッションこちらをご覧ください。
コメント
- これは機能しますが、'一度に1つずつです。 apple.stackexchange.com/questionsを参照してください。 / 367737 / … バルク方式の場合。
- これが一度に1つのファイルで機能することを確認できます。
- はい一括操作には適していません。他の答えはすでにそれを処理しました。これは、' cliパラメータ(
mkvpropedit --help
)をわざわざチェックしない場合の小さな作業用です。
回答
VLCプレーヤーでファイルを開き、Ctrl + Iを押して、目的のメタデータ、タイトルなどを選択し、変更してから下部に移動します。 「データの保存」をクリックします。それだけです。
他の外部エディターは必要ありません。
コメント
- これはOPにあります。彼は言いました。 'は機能しませんでした。
- MacでVLCを使用してこれを試しましたが、機能します。必ずメディア情報ウィンドウのメタデータの保存"ボタン。'を見つけるのは簡単ではありません。
- 変更すると保存されると思いますが、削除するだけでは' t。
- @Tetsujinは正しいです。空の値を入力すると受け入れられないため、'は機能しているように見えますが、もう一度確認すると、古い値が残っているためです。 '簡単に"機能しない' "、ある意味ではそうではないと思います' t。要するに、削除せず、別のものに変更するだけです。
- "メタデータの保存"。一見動作しているように見えますが、VLCでファイルを再度開くと、古い値がまだ存在していることがわかります。 MKVファイルでテスト済み。
回答
大量のファイルをダウンロードしましたが、その多くには***が含まれていました。タイトルに、別の回答の拡張として独自のスクリプトを作成しました。
すべてのファイル。アクションは「名前を保持しますか?[1] /新しい名前を入力しますか?[2] /ファイル名をムービー名として使用しますか?[3]」です。
後で github 、今のところは次のとおりです:
#!/bin/sh # This script takes all mkv files in the (sub)directory and sets it"s Movie name/Title # Requires mkvtools (mkvpropedit) and mediainfo installed # # param1 Starting directory (defaults to current) # param2 Default action to do with files # (Keep the name?[1] / Type a new name?[2] / Use the filename as a movie name?[3]) # Be carefaul with param2 since this script doesn"t (atm) back up the existing movie names. IFS=$"\n"; set -f updateTitle() { mkvpropedit "${1}" -e info -s title="${2}" echo "✅ Updated to \"${2}\""; } getMovieTitle() { echo "$(mediainfo ${1} | grep "Movie name" | sed "s/^.*: //")"; } parseFilename() { filename=${1##*/} filename=${filename%.*} echo ${filename} } chooseAction() { f="${1}" curFilename="${2}" defaultAction="${3}" if [[ -n "${defaultAction}" ]]; then ans="${defaultAction}" else read -p "Keep the name?[1] / Type a new name?[2] / Use the filename as a movie name?[3] : " -n 1 ans echo fi case "${ans}" in 1) echo "Keeping the old name" ;; 2) read -p "New movie name: " newName updateTitle ${f} ${newName} ;; 3) updateTitle ${f} ${curFilename} ;; *) echo "Invalid char \"${ans}\"" chooseAction $@ ;; esac echo } renameMovies() { for f in $(find ${1} -name "*.mkv"); do curTitle="$(getMovieTitle ${f})" curFilename="$(parseFilename ${f})" echo "File location - ${f}" echo "File name - ${curFilename}" echo "Movie name - ${curTitle}" chooseAction ${f} ${curFilename} ${2} done echo "Done" } renameMovies ${1:-$(pwd)} ${2} unset IFS; set +f
回答
MetaX for Windowsは、MKVファイル(およびMP4、M4V、WMV、およびAVI)にタグを付けます。また、タグ付けに使用する情報(カバーアート、俳優など)をインターネットで検索します。
line 8: -4: substring expression < 0
と表示されます。 mkvpropedit " $ mkvfile " -e info -s title = "を変更する必要がありました$ {mkvfile ::-4} "からmkvpropedit " $ mkvfile " -e info -s title = " $ {mkvfile :: $ {#mkvfile} -4} "これは他の人が同じ問題を抱えているのに役立つかもしれません。