I can do something like this whis whsper
$ ffmpeg -ss 0 -t 10 -i "./video.mkv" ... -f wav - | whisper - ..."
So, I can pipe whisper with the results from ffmpeg.
I need to feed whisper from segments that output from ffmpeg, rather than feeding the full video length, or physically split video into multiple chunks
But when using the same technique with VOSK, the input is not recognized
$ ffmpeg -ss 0 -t 10 -i "./video.mkv" -vn -ar 16000 -ac 1 -c:a pcm_s16le -af "dynaudnorm,highpass=f=80,lowpass=f=8000" -f wav - | vosk-transcriber -i - --output "./video.txt" --lang "en" --output-type "txt"
INFO:root:File/folder {args.input} does not exist, please specify an existing file/directory [aost#0:0/pcm_s16le @ 0x56ffe816bb80] Error submitting a packet to the muxer: Broken pipe [out#0/wav @ 0x56ffe80e7cc0] Error muxing a packet [out#0/wav @ 0x56ffe80e7cc0] Error writing trailer: Broken pipe [out#0/wav @ 0x56ffe80e7cc0] Error closing file: Broken pipe [out#0/wav @ 0x56ffe80e7cc0] video:0kB audio:78kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown size= 63kB time=00:00:06.49 bitrate= 78.9kbits/s speed=55.9x
I can do something like this whis whsper
So, I can pipe whisper with the results from ffmpeg.
I need to feed whisper from segments that output from ffmpeg, rather than feeding the full video length, or physically split video into multiple chunks
But when using the same technique with VOSK, the input is not recognized