(
args: argparse.Namespace,
result: Dict[str, Any],
progress_handler: Optional[Callable[[ProgressInfo], None]] = None,
)
| 620 | |
| 621 | |
| 622 | def _run_impl( |
| 623 | args: argparse.Namespace, |
| 624 | result: Dict[str, Any], |
| 625 | progress_handler: Optional[Callable[[ProgressInfo], None]] = None, |
| 626 | ) -> bool: |
| 627 | if args.extract_subs_from_stream is not None: |
| 628 | result["retval"] = extract_subtitles_from_reference(args) |
| 629 | return True |
| 630 | if args.srtin is not None and ( |
| 631 | args.reference is None |
| 632 | or (len(args.srtin) == 1 and args.srtin[0] == args.reference) |
| 633 | ): |
| 634 | return try_sync(args, None, result) |
| 635 | reference_pipe = make_reference_pipe(args, progress_handler=progress_handler) |
| 636 | logger.info("extracting speech segments from reference '%s'...", args.reference) |
| 637 | reference_pipe.fit(args.reference) |
| 638 | logger.info("...done") |
| 639 | if args.make_test_case or args.serialize_speech: |
| 640 | logger.info("serializing speech...") |
| 641 | np.savez_compressed( |
| 642 | _npy_savename(args), speech=reference_pipe.transform(args.reference) |
| 643 | ) |
| 644 | logger.info("...done") |
| 645 | if not args.srtin: |
| 646 | logger.info( |
| 647 | "unsynchronized subtitle file not specified; skipping synchronization" |
| 648 | ) |
| 649 | return False |
| 650 | return try_sync(args, reference_pipe, result) |
| 651 | |
| 652 | |
| 653 | def validate_and_transform_args( |
no test coverage detected