因此,我尝试设置一种使用bat文件启动视频的简单方法,然后首先运行Mediainfo以获取视频的长度,以便它可以随后停止vlc或其他任何其他内容。做完了。
Complete name : C:\Users\Tyler\Desktop\Psych s05e11.mp4
Format : MPEG-4
Format profile : Base Media
Codec ID : isom (isom/iso2/avc1/mp41)
File size : 116 MiB
Duration : 42 min 36 s
Overall bit rate : 382 kb/s
Writing application : Lavf55.13.102
这是我在txt文件中获得的mediainfo的输出,我试图从持续时间位中拉出42和36并在另一个命令中使用它。我还要补充一点,这些数字必须单独使用。谢谢!
编辑:感谢您的回复,每个人都热爱帮助; 以下是我现在要尝试的内容:
mediainfo.lnk --Language=raw --Output=General;%Duration% "C:\Users\Tyler\Desktop\Psych s05e11.mp4"
,输出为:
2556249
现在我需要一种方法来获取前四位数并在另一个命令中使用它们,以某种方式使2556变量?
答案 0 :(得分:0)
如果您需要持续时间,请使用例如这个命令:
mediainfo "--Output=General;%Duration%" YourFileName.ext
一般来说,当你考虑某些自动化时,更喜欢使用例如:
mediainfo -f --Language=raw YourFileName.ext
并选择最适合您需要的行,避免使用带有“/ String”的字段,因为它们仅用于显示(不适用于自动化)。
MediaInfo的开发人员Jérôme。
答案 1 :(得分:0)
使用FOR /F
@echo off
for /f "delims=" %%a in ('mediainfo "--Output=General;%%Duration%%" "C:\Users\Tyler\Desktop\Psych\s05e11.mp4"') do set $Duration=%%a
Echo %$Duration%
使用临时文件
@echo off
mediainfo.exe --Language=raw --Output=General;%%Duration%% "C:\Users\Tyler\Desktop\Psych s05e11.mp4" >out.txt
set /p $Duration= <out.txt
set $Duration=%$Duration:~0,4%
echo Result = %$Duration%
del out.txt
使用@JérômeMartinez[raw -output]想法的另一种方式。
没有临时文件,请使用findstr
:
@echo off
for /f "tokens=2 delims=:" %%a in ('mediainfo -f --Language=raw "C:\Users\Tyler\Desktop\Psych s05e11.mp4" ^| findstr /i "duration"') do (
set $Duration=%%a
goto:next
)
:next
set $Duration=%$Duration:~1,4%
echo %$Duration%
答案 2 :(得分:0)
好的,这就是我最后所做的,感谢所有的帮助!
C:\mediainfo\MediaInfo.exe --Language=raw --Output=General;%%Duration%% "C:\Users\Tyler\Desktop\Psych_s05e11.mp4" >out.txt
set /p $Duration= <out.txt
set $Duration=%$Duration:~0,4%
echo Result = %$Duration%
del out.txt
pause
,输出为:
C:\mediainfo\MediaInfo.exe --Language=raw --Output=General;%Duration% "C:\Users\Tyler\Desktop\Psych_s05e11.mp4" >out.txt
set /p $Duration= <out.txt
set $Duration=2556
echo Result = 2556
Result = 2556
del out.txt
pause
Press any key to continue . . .
将@echo带到那里,所以你可以看到所有