* Don't convert to temporary VALUE
* Define Whisper::Context::Params
* Add test for Whisper::Context::Params
* Implement Whisper::Context::Params
* Add tests for Context::Params
* Fix Whisper::Token memory management
* Add test for token_timestamps
* Make Context accept Context::Params
* Make Context::Params.new accept keyword args
* Add test for Context::Params.new with keyword args
* Add signature of Context::Params
* Add example for Whisper::Token
* Fix typos
* Revert "Don't convert to temporary VALUE"
This reverts commit dee66e7384.
* Hold Token#text as Ruby objectd
* Don't use pointer for ruby_whisper_context_params.params
* Use RUBY_DEFAULT_FREE instead of custom function
* Update bindings/ruby/README.md
Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com>
* Add document for Whisper::Context::Params
---------
Co-authored-by: Daniel Bevenius <daniel.bevenius@gmail.com>
* ruby : Bump version to 1.3.6
* Fix code in example
* Add sample code to transcribe from MemoryView
* Define GetVADContext macro
* Use GetVADContext
* Extract parse_full_args function
* Use parse_full_args in ruby_whisper_full_parallel
* Free samples after use
* Check return value of parse_full_args()
* Define GetVADParams macro
* Add VAD::Context#segments_from_samples
* Add tests for VAD::Context#segments_from_samples
* Add signature for VAD::Context#segments_from_samples
* Add sample code for VAD::Context#segments_from_samples
* Add test for Whisper::Context#transcribe with Pathname
* Make Whisper::Context#transcribe and Whisper::VAD::Context#detect accept Pathname
* Update signature of Whisper::Context#transcribe
* Fix variable name
* Don't free memory view
* Make parse_full_args return struct
* Fallback when failed to get MemoryView
* Add num of samples when too long
* Check members of MemoryView
* Fix a typo
* Remove unnecessary include
* Fix a typo
* Fix a typo
* Care the case of MemoryView doesn't fit spec
* Add TODO comment
* Add optimazation option to compiler flags
* Use ALLOC_N instead of malloc
* Add description to sample code
* Rename and change args: parse_full_args -> parse_samples
* Free samples when exception raised
* Assign type check result to a variable
* Define wrapper function of whisper_full
* Change signature of parse_samples for rb_ensure
* Ensure release MemoryView
* Extract fill_samples function
* Free samples memory when filling it failed
* Free samples memory when transcription failed
* Prepare transcription in wrapper funciton
* Change function name
* Simplify function boundary
* Define and use macro to get context safely
* Add test to check SEGV
* Move installation guid after usage
* [skip ci]Change doc slightly
* [skip ci]Fix a typo in README
* [skip ci]Add carry_initial_prompt option in README
* Define GetVADSegments and use it
* Use GetContext
* Fix download URI of small.en-tdrz
* Fix URI of CoreML models corresponding to quantized models
* Cache computed string
* Remove unused argument
* Add Whisper::Token
* Add document comments
* Rename function: rb_whisper_token_s_new -> ruby_whisper_token_s_init
* Fix size of token
* Insert _get into function names
* Add Whisper::Token#text
* Add test for Whisper::Token#text
* Declare static if possible
* Change method names
* Add Whisper::Token#deconstruct_keys
* Add tests for Whisper::Token#deconstruct_keys
* Add signatures for Whisper::Token
* Complete signature
* [skip ci]Add n_tokens to document of Segment
* Add Whisper::VAD::Context
* Add test for Whisper::VAD::Context
* Add Whisper::VAD::Segment
* Add Whisper::VAD::Segments
* Add Whisper::VAD::Context#detect
* Define Whisper::VAD::Segments#each
* Define Whisper::VAD::Segment#start_time and #end_time
* Define Whisper::VAD::Segment#deconstruct_keys
* Add tests for Whisper::VAD family
* Add signatures for VAD family
* Add document on VAD in README
* Define Whisper::VAD::Segments#length
* Add test for Whisper::VAD::Segments#length
* Add signature of Segments#length
* Make vad_segments responsible to initialize VAD::Segments
* Remove meaningless argument check
* Check NULL of segments member
* Add tests for Whisper::VAD::Segments
* Initialize Whisper::VAD::Segment on .allocate
* Add tests for Whisper::VAD::Segment
* Check NULL of context member
* Add test for Whisper::VAD::Context.allocate
* Add support for --carry-initial-prompt
* PR fixes for ruby and go
* Refactoring for readability
* WIP 1
* WIP 2
* PR fixes
* More PR fixes
* PR fix
* Further simplification
* d'oh
* One more logic fix
* Update src/whisper.cpp
Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
* Truncate prompt_past0 upon initialization
* Slight simplification
---------
Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
* Add a test for segment
* Check option existence
* Use more proper variable to define build option
* Assert Core ML enabled
* Define Whisper::VERSION
* Add test for Whisper::VERSION
* Add signature of Whisper::VERSION
* Add Apple frameworks to $LDFLAGS when needed
* Add utility method to Options
* Remove unnecessary propaty date from gemspec
* Add Apple frameworks for CoreML build
* Add Accelerate framework only for Apple platform
* Fix ZipURI#cache signature
* Download test fixtures if needed
* Fix indentation of code sample in document comment
* Make Whisper::Context#transcribe able to run non-parallel
* Add test for Whisper::Context#transcribe with parallel option
* Follow signature API change of Context#transcribe
* Remove useless variable assignment
* Move simple usage up in README
* Add need help section in README
* Add document on Context#transcribe's parallel option in README
* Update date
* Fix signature of Context.new
* Make Context#subscribe accept n_processors option
* Make test follow #transcribe's change
* Make RBS follow #transcribe's change
* Add document for #transcribe's n_processors option
* Rename test directory so that Rake tasks' default setting is used