嘗試從一堆 MKV 檔案中刪除“標題”屬性。 Windows 資源管理器被 COM 代理程式阻止,該代理程式保留了此資訊 (如何從影片檔案中刪除標題和其他元資料?)從工作中。我可以運行一個命令來遍歷所有檔案並使用 mkvmerge 或 mkvpropedit 刪除“標題”嗎?
答案1
這是單一批次檔選項。在 .txt 檔案中,儲存以下程式碼,然後將檔案副檔名重新命名為 .bat 或 .cmd 以建立 Windows 批次檔。
for %%A IN (*.mkv) do ("C:\Program Files\MKVToolNix\mkvpropedit.exe" -d title "%%~A") 暫停
運行時,它僅過濾當前資料夾或目錄中的 .mkv 文件,然後繼續刪除在該資料夾或目錄中找到的所有 mkv 文件的標題。使用此方法,mkv 檔案不會重新編碼,也不會被複製。
我希望這對我將來再次需要時有所幫助,如果不是其他人,也許是我自己。 ;-)
答案2
正在尋找解決此問題的方法,因為當從 Windows 串流傳輸到我的電視時,電視會亂序播放文件,因為它使用標題按字母順序對文件進行排序。
使用上面的一些答案,這個腳本在 PowerShell 中為我工作(顯然根據您的環境替換路徑:
foreach ($f in Get-ChildItem "C:\Users\User\Videos\") { D:\Programs\mkvtoolnix\mkvpropedit.exe "C:\Users\User\Videos\" -d title }
答案3
經過幾個小時無法破解「for」語句後,我發現了這個
for %%i IN (*.txt) DO (mybatch.bat "%%i")
。
我將其更改為for %%i IN (*.mkv) DO (fix.bat "%%i")
並將文件命名為“fix2.bat”
雖然檔案“fix.bat”包含"C:/Program Files/MKVToolNix\mkvpropedit.exe" %* -d title
我不明白它是如何工作的,但它會獲取當前目錄中的所有 mkv 檔案並刪除“title”屬性。
答案4
建立 .bat 文件,然後將 mkv 檔案拖曳到 .bat 檔案中。這將刪除標籤、標題、視訊軌道名稱和音軌名稱。隨意修改。
set "mkvproedit=C:\mkvtoolnix\mkvpropedit.exe"
for %%a in (*.mkv) do "%mkvproedit%" "%%a" --edit info --set title= --tags all: --edit track:v1 --set language=jpn --set name="" --edit track:a1 --set language=eng --set name=""
pause