{
  "_id": "6ac7cc07de46216d5edd2f7f",
  "Package": "subtools",
  "Type": "Package",
  "Title": "Read and Manipulate Video Subtitles",
  "Version": "1.1.1",
  "Date": "2026-10-08",
  "Authors@R": "c(\nperson(\"Francois\", \"Keck\", email = \"francois.keck@gmail.com\",\nrole =  c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0000-0002-3323-4167\")),\nperson(\"Bob\", \"Rudis\", email = \"bob@rud.is\", role = \"ctb\",\ncomment = c(ORCID = \"0000-0001-5670-2640\")),\nperson(\"Alban\", \"Sagouis\", email = \"sagouis@pm.me\", role = \"ctb\",\ncomment = c(ORCID = \"0000-0002-3827-1063\"))\n)",
  "Maintainer": "Francois Keck <francois.keck@gmail.com>",
  "Description": "A collection of functions to read, write and manipulate\nvideo subtitles. Supported formats include 'srt', 'subrip',\n'sub', 'subviewer', 'microdvd', 'ssa', 'ass', 'substation',\n'vtt', and 'webvtt'.",
  "Language": "en-GB",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "Config/testthat/parallel": "false",
  "Config/testthat/start-first": "*assert*, *utils*, *read*",
  "RoxygenNote": "7.3.3",
  "Config/pak/sysreqs": "libicu-dev libx11-dev",
  "Repository": "https://fkeck.r-universe.dev",
  "Date/Publication": "2026-10-08 15:06:02 UTC",
  "RemoteUrl": "https://github.com/fkeck/subtools",
  "RemoteRef": "HEAD",
  "RemoteSha": "f5794145b1d44474230f358386e358445028f33c",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-08 16:51:18 UTC",
    "User": "root"
  },
  "Author": "Francois Keck [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0002-3323-4167>),\nBob Rudis [ctb] (ORCID: <https://orcid.org/0000-0001-5670-2640>),\nAlban Sagouis [ctb] (ORCID: <https://orcid.org/0000-0002-3827-1063>)",
  "_user": "fkeck",
  "_type": "src",
  "_file": "subtools_1.1.1.tar.gz",
  "_fileid": "https://r2.ropensci.org/bc97d3fe6090427f6d861ebc0bd02ad1e4397be3c8c866d88d02cedaa729d517",
  "_filesize": 250783,
  "_sha256": "bc97d3fe6090427f6d861ebc0bd02ad1e4397be3c8c866d88d02cedaa729d517",
  "_expires": "2027-01-16T16:59:49.000Z",
  "_created": "2026-10-08T16:51:18.000Z",
  "_published": "2026-10-08T16:59:50.870Z",
  "_buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 113431168739,
      "time": 131,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11565831105"
    },
    {
      "job": 113431168639,
      "time": 131,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11565895939"
    },
    {
      "job": 113431168650,
      "time": 123,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11565109958"
    },
    {
      "job": 113431168747,
      "time": 118,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11565811880"
    },
    {
      "job": 113429403583,
      "time": 241,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11565263116"
    },
    {
      "job": 113431168527,
      "time": 110,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11565054085"
    },
    {
      "job": 113431168792,
      "time": 82,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11566000451"
    },
    {
      "job": 113431168790,
      "time": 91,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11564719370"
    },
    {
      "job": 113431168830,
      "time": 84,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11566095368"
    }
  ],
  "_upstream": "https://github.com/fkeck/subtools",
  "_commit": {
    "id": "f5794145b1d44474230f358386e358445028f33c",
    "author": "fkeck <francois.keck@gmail.com>",
    "committer": "fkeck <francois.keck@gmail.com>",
    "message": "Fixes for CRAN check\n",
    "time": 1791471962
  },
  "_maintainer": {
    "name": "Francois Keck",
    "email": "francois.keck@gmail.com",
    "login": "fkeck",
    "bluesky": "@francoiskeck.bsky.social",
    "orcid": "0000-0002-3323-4167",
    "description": "",
    "uuid": 9269625
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "readr",
      "role": "Imports"
    },
    {
      "package": "hms",
      "role": "Imports"
    },
    {
      "package": "tidytext",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    }
  ],
  "_owner": "fkeck",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-11",
      "n": 7
    },
    {
      "week": "2026-12",
      "n": 3
    },
    {
      "week": "2026-29",
      "n": 1
    },
    {
      "week": "2026-41",
      "n": 5
    }
  ],
  "_tags": [
    {
      "name": "v1.1.0",
      "date": "2026-03-16"
    }
  ],
  "_topics": [
    "subtitles",
    "video",
    "text",
    "srt",
    "vtt",
    "ssa",
    "natural\nlanguage processing"
  ],
  "_stars": 44,
  "_contributors": [
    {
      "user": "fkeck",
      "count": 175,
      "uuid": 9269625
    },
    {
      "user": "albansagouis",
      "count": 32,
      "uuid": 25483578
    },
    {
      "user": "hrbrmstr",
      "count": 3,
      "uuid": 509878
    }
  ],
  "_userbio": {
    "uuid": 9269625,
    "type": "user",
    "name": "François Keck",
    "followers": 66
  },
  "_downloads": {
    "count": 220,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/subtools"
  },
  "_devurl": "https://github.com/fkeck/subtools",
  "_searchresults": 45,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/subtools.html"
  ],
  "_homeurl": "https://github.com/fkeck/subtools",
  "_realowner": "fkeck",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.1.0",
      "date": "2026-03-24"
    }
  ],
  "_exports": [
    "as_subtitle",
    "bind_subtitles",
    "clean_captions",
    "clean_patterns",
    "clean_tags",
    "get_mkv_info",
    "get_raw_text",
    "get_subtitles_info",
    "move_subtitles",
    "read_subtitles",
    "read_subtitles_mkv",
    "read_subtitles_multiseries",
    "read_subtitles_season",
    "read_subtitles_serie",
    "subtitles",
    "unnest_tokens",
    "write_subtitles"
  ],
  "_help": [
    {
      "page": "as_subtitle",
      "title": "Convert an R object to a 'subtitles' object",
      "topics": [
        "as_subtitle",
        "as_subtitle.character",
        "as_subtitle.default"
      ]
    },
    {
      "page": "bind_subtitles",
      "title": "Bind subtitles",
      "topics": [
        "bind_subtitles"
      ]
    },
    {
      "page": "clean",
      "title": "Clean subtitles",
      "topics": [
        "clean_captions",
        "clean_patterns",
        "clean_tags"
      ]
    },
    {
      "page": "get_mkv_info",
      "title": "Get informations about subtitles embedded in MKV files",
      "topics": [
        "get_mkv_info"
      ]
    },
    {
      "page": "get_raw_text",
      "title": "Get subtitles text",
      "topics": [
        "get_raw_text"
      ]
    },
    {
      "page": "get_subtitles_info",
      "title": "Get basic informations for subtitle objects",
      "topics": [
        "get_subtitles_info"
      ]
    },
    {
      "page": "move_subtitles",
      "title": "Move subtitles Move subtitles forward or backward in 'subtitles'.",
      "topics": [
        "move_subtitles"
      ]
    },
    {
      "page": "print.multisubtitles",
      "title": "Print method for multisubtitles",
      "topics": [
        "print.multisubtitles"
      ]
    },
    {
      "page": "read_subtitles",
      "title": "Read subtitles",
      "topics": [
        "read_subtitles"
      ]
    },
    {
      "page": "read_subtitles_mkv",
      "title": "Extract subtitles embedded in MKV files",
      "topics": [
        "read_subtitles_mkv"
      ]
    },
    {
      "page": "read_series",
      "title": "Read series subtitles",
      "topics": [
        "read_subtitles_multiseries",
        "read_subtitles_season",
        "read_subtitles_serie"
      ]
    },
    {
      "page": "subtitles",
      "title": "Create a 'subtitles' object",
      "topics": [
        "subtitles"
      ]
    },
    {
      "page": "unnest_tokens",
      "title": "Split a column into tokens",
      "topics": [
        "unnest_tokens",
        "unnest_tokens.default",
        "unnest_tokens.subtitles"
      ]
    },
    {
      "page": "write_subtitles",
      "title": "Write subtitles",
      "topics": [
        "write_subtitles"
      ]
    }
  ],
  "_readme": "https://github.com/fkeck/subtools/raw/HEAD/README.md",
  "_rundeps": [
    "bit",
    "bit64",
    "cli",
    "clipr",
    "cpp11",
    "crayon",
    "dplyr",
    "generics",
    "glue",
    "hms",
    "janeaustenr",
    "jsonlite",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "pillar",
    "pkgconfig",
    "prettyunits",
    "progress",
    "purrr",
    "R6",
    "Rcpp",
    "readr",
    "rlang",
    "SnowballC",
    "stringi",
    "stringr",
    "tibble",
    "tidyselect",
    "tidytext",
    "tokenizers",
    "tzdb",
    "utf8",
    "vctrs",
    "vroom",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "subtools-text-analysis.Rmd",
      "filename": "subtools-text-analysis.html",
      "title": "Subtitle Text Analysis with subtools",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Overview",
        "1. Reading subtitles",
        "From a file",
        "Attaching metadata at read time",
        "From a character vector",
        "2. Exploring the subtitles object",
        "Quick summary",
        "Raw text extraction",
        "Accessing individual columns",
        "3. Cleaning subtitles",
        "Remove formatting tags",
        "Remove closed captions",
        "Remove arbitrary patterns",
        "Chaining cleaning steps",
        "4. Combining subtitles",
        "Collapsing multiple objects into one",
        "Keeping a list structure",
        "5. Reading an entire series",
        "6. Adjusting timecodes",
        "7. Writing subtitles back to disk",
        "8. Text analysis with tidytext",
        "Tokenising into words",
        "Tokenising into sentences or n-grams",
        "Word frequency",
        "9. Advanced: cross-episode analysis",
        "TF-IDF across episodes",
        "Dialogue timeline",
        "Summary"
      ],
      "created": "2026-03-10 15:29:15",
      "modified": "2026-03-10 15:29:15",
      "commits": 1
    }
  ],
  "_score": 6.898725181589493,
  "_indexed": true,
  "_nocasepkg": "subtools",
  "_universes": [
    "fkeck"
  ],
  "_previous": "1.1.0",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.1",
      "date": "2026-10-08T16:53:25.000Z",
      "distro": "resolute",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/605f0b816424477fdb27094cf902801ba262896548cef73f2c1c67afed80a962",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.1.1",
      "date": "2026-10-08T16:53:28.000Z",
      "distro": "resolute",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/264869d785ad1244a6c49d68d9bf357d107c0daa645127ead50619d0e7cff0f9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.1",
      "date": "2026-10-08T16:58:55.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/6b1cbe70984ce5fb0333036e44cc75c2f304e995173e83bf646213f4a9e52037",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.1.1",
      "date": "2026-10-08T16:59:02.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/2c4f426867b9a716c0e9157a063c73518f44497381abb559150cc4ffd320e232",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1.1",
      "date": "2026-10-08T16:53:25.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/a8abfe761b87edf7f96b974e1dbc100c1e72c8ae6dc11e9fa087d5064acd73f1",
      "status": "success",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.1",
      "date": "2026-10-08T16:52:28.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/d053e9c4887462a0ef3053c992ac645eb567770581ae3cc91e668715404a2770",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1.1",
      "date": "2026-10-08T16:52:38.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/aa98fe16173b1e829abfabfbbeb58502d90c010de42925ca5c94cc87440b812b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.1.1",
      "date": "2026-10-08T16:52:31.000Z",
      "commit": "f5794145b1d44474230f358386e358445028f33c",
      "fileid": "https://r2.ropensci.org/bffc252214d0a7e80b8a4e951ec33a0511eb34ae4516b494c734e4e90ce5b797",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/fkeck/actions/runs/37811508986"
    }
  ]
}