Eltelt idő kinyerése VLC-ből

Kiindulópont

Filmek másodperc alapú tartalomelemzéséhez szerettem volna egy megoldást, hogy ne kelljen kézzel felírni a filmből eltelt időt. A tartalomelemzést VLC segítségével végzik, aminek nincs ilyen funkciója.

Megoldás

Kis kutakodás után azt találtam, hogy az AutoHotKey-nek van olyan könyvtára (ACC library), aminek a segítségével kinyerhetőek adatok a VLC-ből. Már csak fel kellett telepíteni, le kellett tölteni a könyvtárat és megírni az AutoHotKey scriptet.

AutoHotKey letöltése, telepítése

A letöltés az AutoHotKey hivatalos honlapjáról indítható. A telepítés során a megszokott lépéseket kell követni.

ACC library letöltése

Az ACC library összetevői az alábbi három linkről érhetőek el:

Abban az esetben, ha valami miatt ezek a linkek nem lennének elérhető, a 2018.11.27-én érvényes verziójú fájlokat innen is le tudod tölteni: dolgozzhatekonyan.hu/files/acc-lib.zip

A letöltött fájlokat az AutoHotKey mappájában a lib mappában kell elhelyezni.

AutoHotKey script

Már csak az AutoHotKey script megírása maradt, ami a következő lett:

^!s::
Sleep 1
#Include C:\Program Files\AutoHotkey\Lib\Acc.ahk
position := Acc_Get(„Name”,”4.3.3.1″,0, „ahk_exe vlc.exe”)
clipboard = %position%
SendInput ^v
return

Ezt kell elmentenünk .ahk formátumban. (Én a lib mappába mentettem az ACC fájlok mellé.)

Magyarázat:

  1. ^!s:: – ez adja meg a billentyűkombinációt, amivel a script futtatható. Jelen esetben CTRL + ALT + S. A return paranccsal zárhatjuk le, a két sor közti parancsokat futtatjuk a billentyűkombinációval.
  2. Sleep 1 – A tesztelés során azt tapasztaltam, hogy a billentyűkombináció megadása utáni első sornak tartalmaznia kell egy parancsot, hogy rendben lefusson a script. A Sleep 1 parancs 1 milliszekundum időtartamra megállítja a script futását. (Ha tudsz szebb megoldást, írd meg a hozzászólások között.)
  3. #Include C:\Program Files\AutoHotkey\Lib\Acc.ahk – Az ACC library használata
  4. position := Acc_Get(„Name”,”4.3.3.1″,0, „ahk_exe vlc.exe”) – A position nevű változóban eltároljuk a a VLC-ből kinyert eltelt időt
  5. clipboard = %position% – A változót kimásoljuk a vágólapra
  6. SendInput ^v – A CTRL + V billentyűparancs használata (beillesztés)
  7. return – A billentyűkombináció által meghívott parancsok sorait zárja.

Használat

  1. Futtassuk az elmentett ahk formátumú scriptet. Ekkor a tálcán megjelenik az AutoHotKey ikonja, és ettől kezdve figyeli a billentyűkombinációt.
  2. Nyissuk meg a VLC-t (ha még nem futna), és indítsuk el a filmet/audio fájlt (ha még nem indítottuk volna el a lejátszást).
  3. Kattintsunk arra a helyre, ahova be szeretnénk illeszteni az időpontot (Excel cella, Jegyzettömb, stb.), és nyomjuk meg a megadott billentyűkombinációt (CTRL+ALT+S)

Ha van valamilyen észrevételed, ötleted, kérdésed az AutoHotKey alapú scripttel kapcsolatban, írd meg a hozzászólások között!
Van valamilyen problémád? Írd meg a hozzászólások között, hátha tudok segíteni!

Ákos Written by: