| Title: | Client for the 'Speechmatics' Speech-to-Text API |
|---|---|
| Description: | Transcribe audio files using the 'Speechmatics' speech-to-text API <https://www.speechmatics.com/>. Supports custom vocabulary, speaker diarization, punctuation control, and audio filtering. |
| Authors: | Nic Crane [aut, cre, cph] |
| Maintainer: | Nic Crane <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 0.1.0 |
| Built: | 2026-06-12 14:53:59 UTC |
| Source: | https://github.com/cran/speechmatics |
Delete a job
sm_delete_job(job_id)sm_delete_job(job_id)
job_id |
Job ID string. |
TRUE, invisibly.
## Not run: sm_delete_job("2om9psu1np") ## End(Not run)## Not run: sm_delete_job("2om9psu1np") ## End(Not run)
Configure channel diarization
sm_diarize_channel(labels = NULL)sm_diarize_channel(labels = NULL)
labels |
Character vector of channel labels (e.g. |
A diarization config list.
sm_diarize_channel() # label channels sm_diarize_channel(labels = c("Nic", "Jess"))sm_diarize_channel() # label channels sm_diarize_channel(labels = c("Nic", "Jess"))
Configure speaker diarization
sm_diarize_speaker(sensitivity = 0.5, prefer_current = FALSE)sm_diarize_speaker(sensitivity = 0.5, prefer_current = FALSE)
sensitivity |
Numeric 0-1 (default |
prefer_current |
Logical. Reduces false switches between similar-sounding speakers. |
A diarization config list.
sm_diarize_speaker() sm_diarize_speaker(sensitivity = 0.8, prefer_current = TRUE)sm_diarize_speaker() sm_diarize_speaker(sensitivity = 0.8, prefer_current = TRUE)
Get transcript for a completed job
sm_get_transcript(job_id, format = c("txt", "srt", "json-v2"))sm_get_transcript(job_id, format = c("txt", "srt", "json-v2"))
job_id |
Job ID string. |
format |
Output format: |
Transcript as a character string ("txt" and "srt") or a list
("json-v2").
## Not run: sm_get_transcript("2om9psu1np") sm_get_transcript("2om9psu1np", format = "srt") sm_get_transcript("2om9psu1np", format = "json-v2") ## End(Not run)## Not run: sm_get_transcript("2om9psu1np") sm_get_transcript("2om9psu1np", format = "srt") sm_get_transcript("2om9psu1np", format = "json-v2") ## End(Not run)
List all jobs
sm_list_jobs()sm_list_jobs()
A data frame of jobs.
## Not run: sm_list_jobs() ## End(Not run)## Not run: sm_list_jobs() ## End(Not run)
Submits an audio file to the Speechmatics API, polls until complete, and writes the transcript to a file.
sm_transcribe( input, output = NULL, config = sm_transcription_config(), poll_interval = 5 )sm_transcribe( input, output = NULL, config = sm_transcription_config(), poll_interval = 5 )
input |
Path to the input audio file. |
output |
Path to the output transcript file. If |
config |
Config from |
poll_interval |
Seconds between status checks. |
The output path, invisibly.
## Not run: audio <- system.file("extdata", "testrecording.mp3", package = "speechmatics") sm_transcribe(audio) sm_transcribe(audio, "output.txt") sm_transcribe(audio, config = sm_transcription_config(quality = "enhanced")) ## End(Not run)## Not run: audio <- system.file("extdata", "testrecording.mp3", package = "speechmatics") sm_transcribe(audio) sm_transcribe(audio, "output.txt") sm_transcribe(audio, config = sm_transcription_config(quality = "enhanced")) ## End(Not run)
Build transcription config
sm_transcription_config( language = "en", quality = c("standard", "enhanced"), diarization = NULL )sm_transcription_config( language = "en", quality = c("standard", "enhanced"), diarization = NULL )
language |
Language code (default |
quality |
|
diarization |
A diarization object from |
A config list suitable for passing to sm_transcribe().
sm_transcription_config() sm_transcription_config(language = "fr", quality = "enhanced") sm_transcription_config(diarization = sm_diarize_speaker())sm_transcription_config() sm_transcription_config(language = "fr", quality = "enhanced") sm_transcription_config(diarization = sm_diarize_speaker())