VLC Transcriber with simple Timer (会話分析等文字化支援ソフト; vtt)

倉庫では,本ページで紹介した自作のソフトウェアなどを紹介します.

*I do not provide details in English, but download and read the “Help” anyway. I think you can get it what this is.

(会話分析用)文字起こし支援ソフトVLC Transcriber with simple Timer (以下,VTT)

目次

a)概要とざっくりとした使い方

b)DLリンク導入順序

c)既知の問題,ビルドログ

※古いバージョンですが,導入手順などを解説しています.

 

a)概要とざっくりとした使い方

ELANなどの支援ソフトが多々ある中,Windowsで,無料,かつ動画を再生でき,文字化を支援する軽量ソフトとして開発しました.VLCメディアプレーヤーと,WORDなどのテキストソフトとともに起動させ,使用します.

インストール不要ですので,USBで持ち運べます.VLCポータブルを合わせて使えば,文字化環境をUSB一つで持ち運ぶことができます.

無料です.オープンソースです.Windows専用です.現在Win8.1, Win10での動作を確認しています.

VTTは,タイマーとして使用とともに,VLCのショートカットキーをバックグランドに送る機能も付与されています.

通常,WORDとVLCを起動させて文字を起こす場合,再生,停止は,マウスやCtrl+Tabなどでウインドウを切り替える必要があります.でもそれが時間喰いなんですよね.

しかし,VTTを利用すれば,WORDの画面のまま,例えば[無変換]キーを押すことで3秒動画を戻すことができます.ほかにもスロー再生,コマ送りなどができます.

利用で,実測1.5倍ぐらいの速度で文字起こしができるようになります.

 

 

20170821_1322

↑の画像の左側は[Help]を押したときのものです.ショートカットキーの一覧が表示されています.無変換で3秒戻し,Ctrl+[,]でスピードダウン,など.

 


b)導入順序

導入順序は以下の通りです.

1.VLCMedia Player, VTTの双方をダウンロード.VLCをインストール.
 
Download: VLC Transcriber and simple timer
2.VLC,VTT(ダブルクリックで),WORDを起動.お好みで配置.
3.VLCで[ビデオ]→[常に最前面に表示]
4.VLCで音声/映像ファイルを再生
5.WORDに書き込みつつ,
6.[無変換]キーや[F1]キーで巻き戻しなどが可能.[Help]ボタン参照.

個人的にはすごく便利だと思うのですが,会話分析系のひとはみなMacユーザーが多いので,あまり今のところは人気がありません.バグなどは今のところありませんが(そこまで複雑でもない),Fixの必要があればご連絡ください.

なお,開発にはAutoHotkeyを使っていますので,最後に,オープンソースとしてソースを公開しておきます.ご活用ください.(ぜひもっといいものができた場合は教えてください.Twitter:@neo_kix)

また,開発のオリジナルのアイデアはkojimuさんという方のポストに大きく寄っています.ブログは2012年から更新されてないようで悲しいのですが,とにかく感謝しています.

AutoHotkeyでVLCメディアプレイヤーを操作して、書き起こしを楽にする – 跡々 : http://d.hatena.ne.jp/kojimu/20110425/1303762269

 

 


c)既知の問題,ビルドログ

—既知の問題— 20170821現在

A:ウイルスソフトが実行を許さない

例外に加えて許可させるか,AutoHotkeyをDL後,下のソースコードをコピー&ペーストしてご使用ください.

なお,Virustotalでのスキャン結果では,55社のスキャン結果からウイルスを含んでいないことが示されています.

https://www.virustotal.com/ja/file/88ad3dfb0cb547a38d822245cab80b53afd8dc8667dbd0a07200db91cf5510d1/analysis/1485092698/


—ビルドログ— (2017/04/03現在)

2017/10/07

·実際にどれぐらい早くなるのか計ってみた動画をアップしました.

2017/08/21

.英語版,日本語版,解像度別を統合しました.

.選択した場所の周りを(), ##, ¥などで覆う機能を実装しました.(プログラム内Helpを参照)

.可視的なタイマーを削除.F3-F4で(0.0)形式で挿入されるように合理化.

2017/04/03 リンク切れを解消しました.

···低解像度版:Row Resolution (1080等)などのためにウインドウを常に真ん中になるように表示
···VLC との同時起動を実装(VTTを起動すると,VLCも自動起動します)

*VTT 日本語キーボード用·高解像度(1920× 1080)用

https://www.dropbox.com/s/r3h88f5iitb0j3v/vlc%20transcriber%20and%20timer%20neokix%2020170111.exe?dl=0

*VTT 日本語キーボード用·低解像度(小さい画面)用→高解像度かわからない人はこちらを

https://www.dropbox.com/s/3uh2fm4z699akk6/vlc%20transcriber%20and%20timer%20for%20low%20res%20neokix%2020170121.exe?dl=0
*VTT 英語キーボード用:今後の開発の予定はありません

https://www.dropbox.com/s/3w21jm8rbw5dsmr/vlc%20transcriber%20and%20timer%20neokix%2020170112%20eng%20keyboard%20version.exe?dl=0

2017/01/22 VTT 高解像度/低解像度版 分化して公開

2017/1/19 VTT 20170119バージョン公開·掲載箇所一括化
···Help内表記一部変更,Exitボタン実装

2017/1/17 VTT 20170117バージョン公開
···表記,Helpボタン実装,ショートカットキーの合理化

2017/1/某日 VLC Transcriber and Timerとしてタイマー機能を実装,公開

2016/12/20? VLC Transcriberとして公開

 

 


以下,ソースコードです.AutoHotkeyで使用するためには,AutoHotkeyをダウンロード後,任意の名前の.ahkファイルを作成し,右クリックからEdit Scriptを選択,以下をコピー&ペーストして保存してダブルクリックしてください.

 ;vlc transcrivber with timer Build:20170821
 /*
 Reminder
 Window Key-> #
 Ctrl Key -> ^
 Alt Key -> !
 無変換 -> {vk1Dsc07B}
 変換 -> {vk1Csc079}
 かなkey -> {vkF2sc070}
 F1 & Up:: -> you can use non-modifier keys as modifier keys.

To add this to Startup of Win10,
 [Win+R]
 then
 [%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup]
 then
 Copy and paste this .exe/.ahk file or its shortcut
 */

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
 ;#Warn ; Enable warnings to assist with detecting common errors.
 SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
 SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.

Gui , Timer:Font , s10, Segoe UI
 Gui , Timer:Add , Text, x10 y10, VLC transcriver with simple timer
 Gui , Timer:Font , s10, Segoe UI
 Gui , Timer:Add , Button , x120 y40 w70 gHelp , Help
 Gui , Timer:Add , Button , x50 y40 w70 gExit , Exit
 Gui , Timer:+AlwaysOnTop
 Gui , Timer:Show, x50 y50
 Gui , Timer:Color, White
 return

Help:
 Msgbox, vlc transcriber with simple timer (VTT) `n Makes Transcribing Less Painful with Windows `n `n Key strokes and functions; `n*Only works when VLC is running. `n  `n [ScrollLock] Suspend vtt `n [Ctrl][Shift][Alt]+[W] Exit vtt`n`n `n *Only works when VLC is running. `n [F1]/[Alt]+[F1]/[無変換]→3sec back `n [F2]/[Alt]+[F2]→3sec forwards `n [Ctrl]+[↑]/[Alt]+[F5] → Start/Pause `n [Ctrl]+[,] → Slow `n [Ctrl]+[.] → Fast `n [Alt]+[F12]→Next Frame `n`n <​Stopwatch​>​ `n Will be typed automatically with (0.0) form. `n F3/F9→Start `n F4/F10→Stop `n `n  [Ctrl][Alt][Shift]+[ ] `n [F1] ºº `n [F2] // `n [F3] >< `n [F4] <> `n [F5] [↑] three times`n [F6][↓] three times`n [F7] ( ) `n [F8]## `n delevopper : neokix (twitter : @neo_kix) `n source code : https://neokixblog.wordpress.com/ `n made with "AutoHotkey" https://autohotkey.com/

return

Exit:
 ExitApp
 return

;Suspend Shortcuts
 ScrollLock::Suspend

;Exit
 ^!+w::ExitApp

/*

Keyboard Mod

*/

;;Transcription Mod

;Blacketing selected lines with ºº
 ^!+F1::
 {
 clipboard =
 sleep, 25
 sleep, 100
 Sendinput, ^{x}
 Sendinput, ºº
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 return
 }

;Blacketing selected lines with \\
 ^!+F2::
 {
 clipboard =
 sleep, 25
 sleep, 100
 Sendinput, ^{x}
 Sendinput, \\
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 Return
 }

;Blacketing selected lines with >< ^!+F3:: { clipboard = sleep, 25 sleep, 100 Sendinput, ^{x} Sendinput, ><
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 Return
 }

;Blacketing selected lines with <>
 ^!+F4::
 {
 clipboard =
 sleep, 25
 sleep, 100
 Sendinput, ^{x}
 Sendinput, <>
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 Return
 }

;Blacketing selected lines with ()
 ^!+F7::
 {
 clipboard =
 sleep, 25
 sleep, 100
 Sendinput, ^{x}
 Sendinput, ()
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 Return
 }

;Blacketing selected lines with ##
 ^!+F8::
 {
 clipboard =
 sleep, 25
 sleep, 100
 Sendinput, ^{x}
 Sendinput, {#}{#}
 Sendinput, {Left}
 Sendinput, ^{v}
 sleep, 100
 Return
 }

;insert uparrow 3 times for each characters
 ^!+F5::
 {
 sleep, 100
 Loop,2
 {
 Sendinput, ↑
 sleep, 50
 Sendinput, {Right}
 sleep, 50
 }
 Sendinput, ↑
 sleep, 100
 Return
 }

;insert downarrow 3 times for each characters
 ^!+F6::
 {
 sleep, 100
 Loop,2
 {
 Sendinput, ↓
 sleep, 50
 Sendinput, {Right}
 sleep, 50
 }
 Sendinput, ↓
 sleep, 100
 Return
 }

/*

VLC Player Control

*/

; Play and Pause
 #IfWinExist, ahk_class QWidget
 ;WinSet, AlwaysOnTop, On, VLCメディアプレイヤー
 ^Up::
 !F5::
 IfWinNotActive, ahk_class QWidget
 {
 SetTitleMatchMode, 2
 ControlSend, , {space}, ahk_class QWidget
 }
 else
 {
 Send, {space}
 }
 Return

#IfWinExist, ahk_class QWidget
 ; Speeding up (0.10x)
 ^.::
 SetTitleMatchMode, 2
 ControlSend, , ], ahk_class QWidget
 Return

; Slowing down (0.10x)
 ^,::
 SetTitleMatchMode, 2
 ControlSend, , [, VLC
 Return

; 3seconds back using 無変換/F1
 vk1Dsc07B::
 F1::
 !F1::
 IfWinNotActive, ahk_class QWidget
 {
 SetTitleMatchMode, 2
 ControlSend, , +{Left}, ahk_class QWidget
 }
 else
 {
 Send, +{Left}
 }
 Return

; 1second back using Ctrl+Left
 ^Left::
 SetTitleMatchMode, 2
 ControlSend, , !{Left}, ahk_class QWidget
 Return

; 3 seconds ahead1
 F2::
 !F2::
 ^Right::
 IfWinNotActive, ahk_class QWidget
 {
 SetTitleMatchMode, 2
 ControlSend, , +{Right}, ahk_class QWidget
 }
 else,
 {
 Send, +{Right}
 }
 Return

; next frame
 !F12::
 SetTitleMatchMode, 2
 ControlSend, , e, ahk_class QWidget
 return
 #IfWinExist,

;Precise Timer
 F3::
 F9::
 CounterBefore = ;var1
 DllCall("QueryPerformanceCounter", "Int64*", CounterBefore)
 return

F4::
 F10::
 CounterAfter = ; var2
 CountFrequency = ; var3
 DllCall("QueryPerformanceFrequency", "Int64*", CountFrequency)
 DllCall("QueryPerformanceCounter", "Int64*", CounterAfter)
 Send, {Backspace 3}{(}
 Counterresult := (CounterAfter - CounterBefore)/CountFrequency
 Send, % Round(Counterresult, 1)
 Send, {)}
 tooltip, Counted!
 sleep, 500
 tooltip,
 return
広告