Это должно быть возможно с использованием следующих инструментов:
- AutoHotkey
mediainfo.dll
, распространяется с большинством видеоплееров и кодеков, но также доступна напрямую.
Поскольку AutoHotkey является 32-разрядным, используйте 32-разрядную версию.
Скриптовый скрипт AutoHotkey ниже может быть частью файла .ahk
для решения проблемы:
video = "file-path"
DllCall( "LoadLibrary", Str,"MediaInfo.Dll" )
hnd := MediaInfo_New()
MediaInfo_Open( hnd, video )
height := MediaInfo_Get( hnd, 1,0, "Height", 1 )
MediaInfo_Close( hnd )
if (height < 500)
Run, "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" --zoom=2 %video%
else
Run, "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" %video%
MediaInfo_New() {
Return DllCall( "mediainfo\MediaInfo" ( A_IsUnicode ? "" : "A" ) "_New" )
}
MediaInfo_Open( hnd, MediaFile ) {
Return DllCall( "mediainfo.dll\MediaInfo" ( A_IsUnicode ? "" : "A" ) "_Open", UInt,hnd
, Str,MediaFile, UInt )
}
MediaInfo_Get( hnd, StrK=0, StrN=0, Comm="", InfK=0, Srch=0 ) {
Return DllCall( "mediainfo.dll\MediaInfo" ( A_IsUnicode ? "" : "A" ) "_Get", UInt,hnd
, Int,StrK, Int,StrN, Str,Comm, Int,InfK, Int,Sech, Str )
}
MediaInfo_Close( hnd ) {
Return DllCall( "mediainfo\MediaInfo" ( A_IsUnicode ? "" : "A" ) "_Close", UInt,hnd )
}
Этот скрипт основан на посте форума AutoHotkey. Получите длину и разрешение видео.
Скрипт в посте также показывает, как создать окно AutoHotkey, которое работает с файлами, которые были пропущены в этом окне.
Обратите внимание, что я не проверял вышеупомянутый скрипт.