@@ -42,6 +42,7 @@ struct sense_voice_params {
4242 std::string openvino_encode_device = " CPU" ;
4343 std::vector<std::string> fname_inp = {};
4444 std::vector<std::string> fname_out = {};
45+ std::string outfile = " " ;
4546};
4647
4748static int sense_voice_has_coreml (void ) {
@@ -107,6 +108,7 @@ static void sense_voice_print_usage(int /*argc*/, char **argv, const sense_voice
107108 fprintf (stderr, " -ng, --no-gpu [%-7s] disable GPU\n " , params.use_gpu ? " false" : " true" );
108109 fprintf (stderr, " -fa, --flash-attn [%-7s] flash attention\n " , params.flash_attn ? " true" : " false" );
109110 fprintf (stderr, " -itn, --use-itn [%-7s] use itn\n " , params.use_itn ? " true" : " false" );
111+ fprintf (stderr, " -fout --outfile [%s] output file path\n " , params.outfile .c_str ());
110112 fprintf (stderr, " --chunk_size [%-7lu] vad chunk size(ms)\n " , params.chunk_size );
111113 fprintf (stderr, " -mmc --min-mute-chunks [%-7lu] When consecutive chunks are identified as silence\n " , params.min_mute_chunks );
112114 fprintf (stderr, " -mnc --max-nomute-chunks [%-7lu] when the first non-silent chunk is too far away\n " , params.max_nomute_chunks );
@@ -166,7 +168,7 @@ static bool sense_voice_params_parse(int argc, char **argv, sense_voice_params &
166168 } else if (arg == " -of" || arg == " --output-file" ) {
167169 params.fname_out .emplace_back (argv[++i]);
168170 } else if (arg == " -np" || arg == " --no-prints" ) {
169- params.no_prints = false ;
171+ params.no_prints = true ;
170172 } else if (arg == " -l" || arg == " --language" ) {
171173 params.language = sense_voice_param_turn_lowercase (argv[++i]);
172174 } else if (arg == " --prompt" ) {
@@ -195,6 +197,8 @@ static bool sense_voice_params_parse(int argc, char **argv, sense_voice_params &
195197 params.max_batch = std::stoi (argv[++i]);
196198 } else if (arg == " --chunk_size" ) {
197199 params.chunk_size = std::stoi (argv[++i]);
200+ } else if (arg == " --outfile" || arg == " -fout" ) {
201+ params.outfile = argv[++i];
198202 } else {
199203 fprintf (stderr, " error: unknown argument: %s\n " , arg.c_str ());
200204 sense_voice_print_usage (argc, argv, params);
@@ -385,6 +389,11 @@ int main(int argc, char **argv) {
385389 exit (0 );
386390 }
387391
392+ if (!params.outfile .empty ()) {
393+ freopen (params.outfile .c_str (), " w" , stdout);
394+ params.use_prefix = false ;
395+ }
396+
388397 // sense-voice init
389398
390399 struct sense_voice_context_params cparams = sense_voice_context_default_params ();
0 commit comments