1

我想将 Mediainfo 与 bat 文件一起使用。它应该将媒体信息写入文本文件,然后将文件重命名为 *.nfo 效果很好,我总是得到完整的“标准”媒体信息,而不是我需要的自定义媒体信息。到目前为止,这是我的代码:

@echo off

set "mediainfo_path=C:\Program Files\mi cli\MediaInfo.exe"
set "output_extension=C:\Program Files\mi cli\custom.txt"
cd %1
echo.
echo Looking for Media Assets on target directory . . .
REM  ******** Add media file extensions here ********
dir *.mkv /b /s > filelist.tmp
REM  *
REM  ******* Loop through temporary file list *******
(for /f "delims=" %%i in (filelist.tmp) do (
echo Extracting %%i metadata information . . .
setlocal enabledelayedexpansion
"!mediainfo_path!" --logfile="!output_extension" "%%i" > %%i.nfo

echo()
endlocal
)
del filelist.tmp

echo.

无论我选择什么“output_extenstion”,结果总是相同的,完整的日志。

4

1 回答 1

1

首先,您需要一步一步地做,所以首先尝试不使用批处理的 MediaInfo 命令。你会发现它不起作用。“--logfile”用于存储输出(类似于您的“>%%i.nfo”),因此您没有对 MediaInfo 说您想要自定义报告。

mediainfo --Output=file://custom.txt a.mkv >a.nfo

或者

mediainfo --Output=file://custom.txt a.mkv --LogFile=a.nfo

将按您的预期工作(第一个版本显示和存储信息,第二个版本只存储信息)。

因此,将“MediaInfo 行”替换为:

"!mediainfo_path!" "--Output=file://!output_extension!" "%%i" > %%i.nfo

它可以按您的预期工作。

注意:我知道由于时间不足,缺少文档:(。

Jérôme,MediaInfo 开发人员

于 2016-11-16T17:33:54.980 回答