35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
# File 'lib/ruby_impl/speech_trimmer.rb', line 35
def enqueue pcm
return if @eos_reached
@queue << pcm
if @cent_marker << pcm
@false_count = 0
@true_count += 1
else
@false_count += 1
@true_count = 0
end
if @speech_started
if @false_count == @ecs
@eos_reached = true
@queue = @queue[0, @queue.size - @ecs + @trailer]
end
elsif @true_count > @scs
if @leader + @scs < @queue.size
start = @queue.size - @leader - 1 - @scs
@queue = @queue[start,@queue.size - start]
end
@speech_started = true
end
end
|