{
  "_id": "6a1eaf1db25058d4daadac62",
  "Package": "ProTrackR",
  "Type": "Package",
  "Title": "Manipulate and Play 'ProTracker' Modules",
  "Version": "0.4.4",
  "Authors@R": "c(person(\"Pepijn\", \"de Vries\", role = c(\"aut\", \"cre\", \"dtc\"),\nemail = \"pepijn.devries@outlook.com\",\ncomment = c(ORCID = \"0000-0002-7961-6646\")))",
  "Author": "Pepijn de Vries [aut, cre, dtc] (0000-0002-7961-6646)",
  "Maintainer": "Pepijn de Vries <pepijn.devries@outlook.com>",
  "Description": "'ProTracker' is a popular music tracker to sequence music\non a Commodore Amiga machine. This package offers the\nopportunity to import, export, manipulate and play 'ProTracker'\nmodule files. Even though the file format could be considered\narchaic, it still remains popular to this date. This package\nintends to contribute to this popularity and therewith keeping\nthe legacy of 'ProTracker' and the Commodore Amiga alive.",
  "License": "GPL (>= 3)",
  "LazyData": "True",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.2.3",
  "Roxygen": "list(markdown = TRUE)",
  "NeedsCompilation": "no",
  "URL": "https://pepijn-devries.github.io/ProTrackR/,\nhttps://github.com/pepijn-devries/ProTrackR/",
  "BugReports": "https://github.com/pepijn-devries/ProTrackR/issues",
  "Language": "en-US",
  "Repository": "https://pepijn-devries.r-universe.dev",
  "Date/Publication": "2025-01-12 19:40:06 UTC",
  "RemoteUrl": "https://github.com/pepijn-devries/ProTrackR",
  "RemoteRef": "master",
  "RemoteSha": "17d1ceed77b871e9bc446a254095241e576e79c1",
  "Packaged": {
    "Date": "2026-06-02 10:20:28 UTC",
    "User": "root"
  },
  "MD5sum": "4b1acacb0ab15663042ba33b76d1bc1d",
  "_user": "pepijn-devries",
  "_type": "src",
  "_file": "ProTrackR_0.4.4.tar.gz",
  "_fileid": "1a064318e573764034835d0d75642e72f45a74631521a45d3a0fa865acddcee4",
  "_filesize": 807112,
  "_sha256": "1a064318e573764034835d0d75642e72f45a74631521a45d3a0fa865acddcee4",
  "_created": "2026-06-02T10:20:28.000Z",
  "_published": "2026-06-02T10:23:25.013Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 79049477952,
      "time": 121,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7355108227"
    },
    {
      "job": 79049477884,
      "time": 126,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7355109330"
    },
    {
      "job": 79049477961,
      "time": 106,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7355104831"
    },
    {
      "job": 79049477988,
      "time": 122,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7355110640"
    },
    {
      "job": 79049066760,
      "time": 150,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7355067555"
    },
    {
      "job": 79049477928,
      "time": 91,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7355098171"
    },
    {
      "job": 79049478008,
      "time": 95,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7355099722"
    },
    {
      "job": 79049477926,
      "time": 91,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7355098218"
    },
    {
      "job": 79049477953,
      "time": 90,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7355097667"
    }
  ],
  "_buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/pepijn-devries/ProTrackR",
  "_commit": {
    "id": "17d1ceed77b871e9bc446a254095241e576e79c1",
    "author": "pepijn-devries <pepijn-devries@users.noreply.github.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Merge pull request #8 from pepijn-devries/work-in-progress\n\nMinor fixes and prepare CRAN release",
    "time": 1736710806
  },
  "_maintainer": {
    "name": "Pepijn de Vries",
    "email": "pepijn.devries@outlook.com",
    "login": "pepijn-devries",
    "linkedin": "in/pepijn-de-vries-2509b664",
    "orcid": "0000-0002-7961-6646",
    "description": "",
    "uuid": 13707449
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "audio",
      "role": "Depends"
    },
    {
      "package": "lattice",
      "role": "Depends"
    },
    {
      "package": "signal",
      "role": "Depends"
    },
    {
      "package": "tuneR",
      "version": ">= 1.0",
      "role": "Depends"
    },
    {
      "package": "graphics",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "AmigaFFH",
      "version": ">= 0.2.0",
      "role": "Suggests"
    }
  ],
  "_owner": "pepijn-devries",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_topics": [
    "amiga",
    "audio",
    "modules",
    "retrocomputing"
  ],
  "_stars": 4,
  "_contributors": [
    {
      "user": "pepijn-devries",
      "count": 11,
      "uuid": 13707449
    }
  ],
  "_userbio": {
    "uuid": 13707449,
    "type": "user",
    "name": "Pepijn de Vries"
  },
  "_downloads": {
    "count": 168,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/ProTrackR"
  },
  "_devurl": "https://github.com/pepijn-devries/protrackr",
  "_pkgdown": "https://pepijn-devries.github.io/ProTrackR/",
  "_searchresults": 67,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/ProTrackR.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/pepijn-devries/protrackr",
  "_realowner": "pepijn-devries",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.3",
      "date": "2015-09-25"
    },
    {
      "version": "0.2.3",
      "date": "2015-11-07"
    },
    {
      "version": "0.3.3",
      "date": "2016-03-26"
    },
    {
      "version": "0.3.4",
      "date": "2016-11-25"
    },
    {
      "version": "0.3.5",
      "date": "2017-10-14"
    },
    {
      "version": "0.3.6",
      "date": "2019-02-06"
    },
    {
      "version": "0.3.7",
      "date": "2020-02-03"
    },
    {
      "version": "0.3.8",
      "date": "2023-08-24"
    },
    {
      "version": "0.4.3",
      "date": "2024-02-15"
    },
    {
      "version": "0.4.4",
      "date": "2025-01-13"
    }
  ],
  "_exports": [
    "appendPattern",
    "as.raw<-",
    "clearSamples",
    "clearSong",
    "deletePattern",
    "effect",
    "effect<-",
    "fineTune",
    "fineTune<-",
    "fix.PTModule",
    "hiNybble",
    "loNybble",
    "loopLength",
    "loopLength<-",
    "loopSample",
    "loopStart",
    "loopStart<-",
    "loopState",
    "modArchive.download",
    "modArchive.info",
    "modArchive.max.requests",
    "modArchive.random.pick",
    "modArchive.request.count",
    "modArchive.search.artist",
    "modArchive.search.genre",
    "modArchive.search.hash",
    "modArchive.search.mod",
    "modArchive.view.by",
    "modLand.download.mod",
    "modLand.search.mod",
    "MODPlugToPTPattern",
    "modToWave",
    "moduleSize",
    "name",
    "name<-",
    "note",
    "note<-",
    "noteDown",
    "noteToPeriod",
    "noteToSampleRate",
    "noteUp",
    "nybble",
    "nybbleToSignedInt",
    "octave",
    "octave<-",
    "octaveDown",
    "octaveUp",
    "pasteBlock",
    "patternLength",
    "patternOrder",
    "patternOrder<-",
    "patternOrderLength",
    "patternOrderLength<-",
    "periodToChar",
    "periodToSampleRate",
    "playingtable",
    "playMod",
    "playSample",
    "playWave",
    "print",
    "proTrackerVibrato",
    "PTBlock",
    "PTCell",
    "PTCell<-",
    "PTPattern",
    "PTPattern<-",
    "PTPatternToMODPlug",
    "PTSample",
    "PTSample<-",
    "PTTrack",
    "PTTrack<-",
    "rawToCharNull",
    "rawToPTModule",
    "rawToSignedInt",
    "rawToUnsignedInt",
    "read.module",
    "read.sample",
    "resample",
    "sampleLength",
    "sampleNumber",
    "sampleNumber<-",
    "signedIntToNybble",
    "signedIntToRaw",
    "trackerFlag",
    "trackerFlag<-",
    "unsignedIntToRaw",
    "volume",
    "volume<-",
    "waveform",
    "waveform<-",
    "write.module",
    "write.sample"
  ],
  "_datasets": [
    {
      "name": "funk_table",
      "title": "ProTracker Funk Table",
      "object": "funk_table",
      "class": [
        "numeric"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "mod.intro",
      "title": "Example of a PTModule object",
      "object": "mod.intro",
      "class": [
        "PTModule"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "paula_clock",
      "title": "Paula clock table",
      "object": "paula_clock",
      "class": [
        "data.frame"
      ],
      "fields": [
        "frequency",
        "video"
      ],
      "rows": 2,
      "table": true,
      "tojson": true
    },
    {
      "name": "period_table",
      "title": "ProTracker Period Table",
      "object": "period_table",
      "class": [
        "data.frame"
      ],
      "fields": [
        "octave",
        "tuning",
        "C-",
        "C#",
        "D-",
        "D#",
        "E-",
        "F-",
        "F#",
        "G-",
        "G#",
        "A-",
        "A#",
        "B-"
      ],
      "rows": 48,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "appendPattern",
      "title": "Append a PTPattern to a PTModule",
      "concept": [
        "module.operations",
        "pattern.operations"
      ],
      "topics": [
        "appendPattern",
        "appendPattern,PTModule,PTPattern-method"
      ]
    },
    {
      "page": "as.character",
      "title": "Character representation of ProTrackR objects",
      "concept": [
        "character.operations",
        "track.operations"
      ],
      "topics": [
        "as.character",
        "as.character,PTCell-method",
        "as.character,PTPattern-method",
        "as.character,PTTrack-method"
      ]
    },
    {
      "page": "as.raw",
      "title": "Extract and replace raw data",
      "concept": [
        "raw.operations"
      ],
      "topics": [
        "as.raw",
        "as.raw,PTCell-method",
        "as.raw,PTModule-method",
        "as.raw,PTPattern-method",
        "as.raw,PTTrack-method",
        "as.raw<-",
        "as.raw<-,PTCell,raw-method",
        "as.raw<-,PTPattern,matrix-method",
        "as.raw<-,PTTrack,matrix-method"
      ]
    },
    {
      "page": "clearSamples",
      "title": "Clear all samples from module",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "clearSamples",
        "clearSamples,PTModule-method"
      ]
    },
    {
      "page": "clearSong",
      "title": "Clear all pattern info from module",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "clearSong",
        "clearSong,PTModule-method"
      ]
    },
    {
      "page": "deletePattern",
      "title": "Remove a PTPattern table from a PTModule object",
      "concept": [
        "module.operations",
        "pattern.operations"
      ],
      "topics": [
        "deletePattern",
        "deletePattern,PTModule,numeric-method"
      ]
    },
    {
      "page": "effect",
      "title": "Extract or replace effect/trigger codes",
      "concept": [
        "cell.operations"
      ],
      "topics": [
        "effect",
        "effect,PTCell-method",
        "effect<-",
        "effect<-,PTCell,character-method"
      ]
    },
    {
      "page": "fineTune",
      "title": "Fine tune a PTSample",
      "concept": [
        "sample.operations"
      ],
      "topics": [
        "fineTune",
        "fineTune,PTSample-method",
        "fineTune<-",
        "fineTune<-,PTSample,numeric-method"
      ]
    },
    {
      "page": "fix.PTModule",
      "title": "Attempt to fix PTModule to ProTracker specs",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "fix.PTModule",
        "fix.PTModule,PTModule,logical-method",
        "fix.PTModule,PTModule,missing-method"
      ]
    },
    {
      "page": "funk_table",
      "title": "ProTracker Funk Table",
      "topics": [
        "funk_table"
      ]
    },
    {
      "page": "loopLength",
      "title": "The loop length of a PTSample",
      "concept": [
        "loop.methods",
        "sample.operations"
      ],
      "topics": [
        "loopLength",
        "loopLength,PTSample-method",
        "loopLength<-",
        "loopLength<-,PTSample-method"
      ]
    },
    {
      "page": "loopSample",
      "title": "Looped waveform of a sample",
      "concept": [
        "loop.methods",
        "sample.operations"
      ],
      "topics": [
        "loopSample",
        "loopSample,PTSample-method"
      ]
    },
    {
      "page": "loopStart",
      "title": "The loop start position of a PTSample",
      "concept": [
        "loop.methods",
        "sample.operations"
      ],
      "topics": [
        "loopStart",
        "loopStart,PTSample-method",
        "loopStart<-",
        "loopStart<-,PTSample-method"
      ]
    },
    {
      "page": "loopState",
      "title": "Get PTSample loop state",
      "concept": [
        "loop.methods",
        "sample.operations"
      ],
      "topics": [
        "loopState",
        "loopState,PTSample-method"
      ]
    },
    {
      "page": "mod.intro",
      "title": "Example of a PTModule object",
      "topics": [
        "mod.intro"
      ]
    },
    {
      "page": "openmpt-deprecated",
      "title": "Deprecated function migrated to 'openmpt'",
      "topics": [
        "modArchive.download",
        "modArchive.info",
        "modArchive.max.requests",
        "modArchive.random.pick",
        "modArchive.request.count",
        "modArchive.search.artist",
        "modArchive.search.genre",
        "modArchive.search.hash",
        "modArchive.search.mod",
        "modArchive.view.by",
        "modLand.download.mod",
        "modLand.search.mod"
      ]
    },
    {
      "page": "MODPlugToPTPattern",
      "title": "Convert MODPlug pattern into a PTPattern object",
      "concept": [
        "MODPlug.operations",
        "pattern.operations"
      ],
      "topics": [
        "MODPlugToPTPattern"
      ]
    },
    {
      "page": "modToWave",
      "title": "Convert a PTModule object into an audio Wave object",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "modToWave",
        "modToWave,PTModule-method"
      ]
    },
    {
      "page": "moduleSize",
      "title": "Get module file size",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "moduleSize",
        "moduleSize,PTModule-method"
      ]
    },
    {
      "page": "name",
      "title": "Obtain or replace the name of a PTModule or PTSample",
      "concept": [
        "character.operations",
        "sample.operations"
      ],
      "topics": [
        "name",
        "name,PTModule-method",
        "name,PTSample-method",
        "name<-",
        "name<-,PTModule,character-method",
        "name<-,PTSample,character-method"
      ]
    },
    {
      "page": "note",
      "title": "Extract or replace a note",
      "concept": [
        "cell.operations",
        "note.and.octave.operations",
        "period.operations"
      ],
      "topics": [
        "note",
        "note,numeric-method",
        "note,PTCell-method",
        "note<-",
        "note<-,PTCell,character-method"
      ]
    },
    {
      "page": "noteToPeriod",
      "title": "Extract period value for a specific note",
      "concept": [
        "note.and.octave.operations",
        "period.operations"
      ],
      "topics": [
        "noteToPeriod"
      ]
    },
    {
      "page": "noteManipulation",
      "title": "Raise or lower notes and octaves",
      "concept": [
        "note.and.octave.operations"
      ],
      "topics": [
        "noteDown",
        "noteDown,PTCell-method",
        "noteDown,PTPattern-method",
        "noteDown,PTTrack-method",
        "noteUp",
        "noteUp,PTCell-method",
        "noteUp,PTPattern-method",
        "noteUp,PTTrack-method",
        "octaveDown",
        "octaveDown,PTCell-method",
        "octaveDown,PTPattern-method",
        "octaveDown,PTTrack-method",
        "octaveUp",
        "octaveUp,PTCell-method",
        "octaveUp,PTPattern-method",
        "octaveUp,PTTrack-method"
      ]
    },
    {
      "page": "nybble",
      "title": "Get the high or low nybble of a raw value",
      "concept": [
        "integer.operations",
        "nybble.functions",
        "raw.operations"
      ],
      "topics": [
        "hiNybble",
        "loNybble",
        "nybble"
      ]
    },
    {
      "page": "nybbleToSignedInt",
      "title": "Get signed integer values from nybbles",
      "concept": [
        "integer.operations",
        "nybble.functions",
        "raw.operations"
      ],
      "topics": [
        "nybbleToSignedInt"
      ]
    },
    {
      "page": "octave",
      "title": "Extract or replace an octave",
      "concept": [
        "note.and.octave.operations",
        "period.operations"
      ],
      "topics": [
        "octave",
        "octave,numeric-method",
        "octave,PTCell-method",
        "octave<-",
        "octave<-,PTCell,numeric-method"
      ]
    },
    {
      "page": "pasteBlock",
      "title": "Paste a block of PTCell data into a PTPattern",
      "concept": [
        "block.operations",
        "pattern.operations"
      ],
      "topics": [
        "pasteBlock",
        "pasteBlock,PTPattern,matrix,numeric,numeric-method"
      ]
    },
    {
      "page": "patternLength",
      "title": "Get the number of PTPattern tables in a PTModule",
      "concept": [
        "module.operations",
        "pattern.operations"
      ],
      "topics": [
        "patternLength",
        "patternLength,PTModule-method"
      ]
    },
    {
      "page": "patternOrder",
      "title": "Get the pattern order table",
      "concept": [
        "module.operations",
        "pattern.operations"
      ],
      "topics": [
        "patternOrder",
        "patternOrder,PTModule-method",
        "patternOrder<-",
        "patternOrder<-,PTModule,ANY,numeric-method"
      ]
    },
    {
      "page": "patternOrderLength",
      "title": "Get the length of the pattern order table",
      "concept": [
        "module.operations",
        "pattern.operations"
      ],
      "topics": [
        "patternOrderLength",
        "patternOrderLength,PTModule-method",
        "patternOrderLength<-",
        "patternOrderLength<-,PTModule,numeric-method"
      ]
    },
    {
      "page": "paula_clock",
      "title": "Paula clock table",
      "topics": [
        "paula_clock"
      ]
    },
    {
      "page": "period_table",
      "title": "ProTracker Period Table",
      "concept": [
        "period.operations"
      ],
      "topics": [
        "period_table"
      ]
    },
    {
      "page": "periodToChar",
      "title": "Get the note and octave from period table",
      "concept": [
        "character.operations",
        "note.and.octave.operations",
        "period.operations"
      ],
      "topics": [
        "periodToChar"
      ]
    },
    {
      "page": "playingtable",
      "title": "Generate a table for playing a PTModule object",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "playingtable",
        "playingtable,PTModule-method"
      ]
    },
    {
      "page": "playMod",
      "title": "Play PTModule objects",
      "concept": [
        "module.operations",
        "play.audio.routines"
      ],
      "topics": [
        "playMod",
        "playMod,PTModule-method"
      ]
    },
    {
      "page": "playSample",
      "title": "Play audio samples",
      "concept": [
        "play.audio.routines",
        "sample.operations",
        "sample.rate.operations"
      ],
      "topics": [
        "playSample",
        "playSample,PTModule-method",
        "playSample,PTSample-method"
      ]
    },
    {
      "page": "playWave",
      "title": "Play Wave objects",
      "concept": [
        "play.audio.routines"
      ],
      "topics": [
        "playWave",
        "playWave,Wave-method",
        "playWave,WaveMC-method"
      ]
    },
    {
      "page": "plot",
      "title": "Plot a PTModule object",
      "topics": [
        "plot",
        "plot,PTModule,missing-method"
      ]
    },
    {
      "page": "print",
      "title": "Print ProTrackR objects",
      "topics": [
        "print",
        "print,PTCell-method",
        "print,PTModule-method",
        "print,PTPattern-method",
        "print,PTSample-method",
        "print,PTTrack-method"
      ]
    },
    {
      "page": "proTrackerVibrato",
      "title": "Get the vibrato table used by ProTracker",
      "topics": [
        "proTrackerVibrato"
      ]
    },
    {
      "page": "PTBlock",
      "title": "Select and copy a range of PTCells into a PTBlock",
      "concept": [
        "block.operations"
      ],
      "topics": [
        "PTBlock",
        "PTBlock,PTPattern,numeric,numeric-method"
      ]
    },
    {
      "page": "PTCell-class",
      "title": "The PTCell class",
      "concept": [
        "cell.operations"
      ],
      "topics": [
        "PTCell",
        "PTCell-class"
      ]
    },
    {
      "page": "PTCell-method",
      "title": "Coerce to or replace PTCell",
      "concept": [
        "cell.operations"
      ],
      "topics": [
        "PTCell,character,missing,missing,missing-method",
        "PTCell,PTModule,numeric,numeric,numeric-method",
        "PTCell,PTPattern,numeric,numeric,missing-method",
        "PTCell,PTTrack,numeric,missing,missing-method",
        "PTCell,raw,missing,missing,missing-method",
        "PTCell-method",
        "PTCell<-",
        "PTCell<-,PTModule,numeric,numeric,numeric,PTCell-method",
        "PTCell<-,PTPattern,numeric,numeric,missing,PTCell-method",
        "PTCell<-,PTTrack,numeric,missing,missing,PTCell-method",
        "PTCell<-,PTTrack,numeric,missing,missing-method"
      ]
    },
    {
      "page": "PTModule-class",
      "title": "The PTModule class",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "PTModule",
        "PTModule-class"
      ]
    },
    {
      "page": "PTPattern-class",
      "title": "The PTPattern class",
      "concept": [
        "pattern.operations"
      ],
      "topics": [
        "PTPattern",
        "PTPattern-class"
      ]
    },
    {
      "page": "PTPattern-method",
      "title": "Coerce to or replace PTPattern",
      "concept": [
        "pattern.operations"
      ],
      "topics": [
        "PTPattern,matrix,missing-method",
        "PTPattern,PTModule,numeric-method",
        "PTPattern,raw,missing-method",
        "PTPattern-method",
        "PTPattern<-",
        "PTPattern<-,PTModule,numeric,PTPattern-method"
      ]
    },
    {
      "page": "PTPatternToMODPlug",
      "title": "Convert PTPattern data into a MODPlug pattern",
      "concept": [
        "MODPlug.operations",
        "pattern.operations"
      ],
      "topics": [
        "PTPatternToMODPlug"
      ]
    },
    {
      "page": "PTSample-class",
      "title": "The PTSample class",
      "concept": [
        "sample.operations"
      ],
      "topics": [
        "PTSample",
        "PTSample-class"
      ]
    },
    {
      "page": "PTSample-method",
      "title": "Coerce to or replace PTSample",
      "concept": [
        "sample.operations"
      ],
      "topics": [
        "PTSample,PTModule,numeric-method",
        "PTSample,raw,missing-method",
        "PTSample,Wave,missing-method",
        "PTSample-method",
        "PTSample<-",
        "PTSample<-,PTModule,numeric,PTSample-method"
      ]
    },
    {
      "page": "PTTrack-class",
      "title": "The PTTrack class",
      "topics": [
        "PTTrack",
        "PTTrack-class"
      ]
    },
    {
      "page": "PTTrack-method",
      "title": "Coerce to or replace PTTrack",
      "concept": [
        "track.operations"
      ],
      "topics": [
        "PTTrack,character,missing,missing-method",
        "PTTrack,matrix,missing,missing-method",
        "PTTrack,numeric,missing-method",
        "PTTrack,PTModule,numeric,numeric-method",
        "PTTrack,PTPattern,numeric,missing-method",
        "PTTrack,raw,missing,missing-method",
        "PTTrack-method",
        "PTTrack<-",
        "PTTrack<-,numeric,missing,PTTrack-method",
        "PTTrack<-,PTModule,numeric,numeric,PTTrack-method",
        "PTTrack<-,PTPattern,numeric,missing,PTTrack-method"
      ]
    },
    {
      "page": "rawToCharNull",
      "title": "Convert raw vectors into a character string",
      "concept": [
        "character.operations",
        "raw.operations"
      ],
      "topics": [
        "rawToCharNull"
      ]
    },
    {
      "page": "rawToPTModule",
      "title": "Convert a vector of raw data into a PTModule object",
      "concept": [
        "module.operations",
        "raw.operations"
      ],
      "topics": [
        "rawToPTModule",
        "rawToPTModule,raw-method"
      ]
    },
    {
      "page": "rawToSignedInt",
      "title": "Convert a raw vector into signed integers (short)",
      "concept": [
        "integer.operations",
        "raw.operations"
      ],
      "topics": [
        "rawToSignedInt"
      ]
    },
    {
      "page": "rawToUnsignedInt",
      "title": "Convert raw vector into a single unsigned integer value",
      "concept": [
        "integer.operations",
        "raw.operations"
      ],
      "topics": [
        "rawToUnsignedInt"
      ]
    },
    {
      "page": "read.module",
      "title": "Read a ProTracker module file",
      "concept": [
        "io.operations",
        "module.operations"
      ],
      "topics": [
        "read.module",
        "read.module,ANY,logical-method",
        "read.module,ANY,missing-method",
        "read.module,character,logical-method",
        "read.module,character,missing-method"
      ]
    },
    {
      "page": "read.sample",
      "title": "Read an audio file and coerce to a PTSample object",
      "concept": [
        "io.operations",
        "sample.operations"
      ],
      "topics": [
        "read.sample",
        "read.sample,character-method"
      ]
    },
    {
      "page": "resample",
      "title": "Resample data",
      "topics": [
        "resample"
      ]
    },
    {
      "page": "sampleLength",
      "title": "Get the length of a PTSample",
      "concept": [
        "sample.operations"
      ],
      "topics": [
        "sampleLength",
        "sampleLength,PTSample-method"
      ]
    },
    {
      "page": "sampleNumber",
      "title": "Extract or replace a sample number",
      "concept": [
        "cell.operations"
      ],
      "topics": [
        "sampleNumber",
        "sampleNumber,PTCell-method",
        "sampleNumber<-",
        "sampleNumber<-,PTCell,numeric-method"
      ]
    },
    {
      "page": "sampleRate",
      "title": "Calculate the sample rate for a note or period value",
      "concept": [
        "character.operations",
        "note.and.octave.operations",
        "period.operations",
        "sample.rate.operations"
      ],
      "topics": [
        "noteToSampleRate",
        "periodToSampleRate",
        "sampleRate"
      ]
    },
    {
      "page": "signedIntToNybble",
      "title": "Convert a signed integer to a nybble in raw data.",
      "concept": [
        "integer.operations",
        "nybble.functions",
        "raw.operations"
      ],
      "topics": [
        "signedIntToNybble"
      ]
    },
    {
      "page": "signedIntToRaw",
      "title": "Convert signed integers (short) into a raw vector",
      "concept": [
        "integer.operations",
        "raw.operations"
      ],
      "topics": [
        "signedIntToRaw"
      ]
    },
    {
      "page": "trackerFlag",
      "title": "Tracker flag indicating version compatibility",
      "concept": [
        "module.operations"
      ],
      "topics": [
        "trackerFlag",
        "trackerFlag,PTModule-method",
        "trackerFlag<-",
        "trackerFlag<-,PTModule-method"
      ]
    },
    {
      "page": "unsignedIntToRaw",
      "title": "Convert unsigned integer into a raw vector",
      "concept": [
        "integer.operations",
        "raw.operations"
      ],
      "topics": [
        "unsignedIntToRaw"
      ]
    },
    {
      "page": "volume",
      "title": "Default playback volume of PTSample",
      "concept": [
        "sample.operations"
      ],
      "topics": [
        "volume",
        "volume,PTSample-method",
        "volume<-",
        "volume<-,PTSample,numeric-method"
      ]
    },
    {
      "page": "waveform",
      "title": "Extract or replace a PTSample waveform",
      "concept": [
        "integer.operations",
        "sample.operations"
      ],
      "topics": [
        "waveform",
        "waveform,PTSample-method",
        "waveform<-",
        "waveform<-,PTSample-method"
      ]
    },
    {
      "page": "write.module",
      "title": "Export an PTModule object as a ProTracker module file",
      "concept": [
        "io.operations",
        "module.operations"
      ],
      "topics": [
        "write.module",
        "write.module,PTModule,ANY-method",
        "write.module,PTModule,character-method"
      ]
    },
    {
      "page": "write.sample",
      "title": "Write a PTSample object to an audio file",
      "concept": [
        "io.operations",
        "sample.operations"
      ],
      "topics": [
        "write.sample",
        "write.sample,PTSample,character-method"
      ]
    }
  ],
  "_readme": "https://github.com/pepijn-devries/ProTrackR/raw/master/README.md",
  "_rundeps": [
    "audio",
    "lattice",
    "MASS",
    "signal",
    "tuneR"
  ],
  "_score": 4.127104798364808,
  "_indexed": true,
  "_nocasepkg": "protrackr",
  "_universes": [
    "pepijn-devries"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.4.4",
      "date": "2026-06-02T10:22:25.000Z",
      "distro": "noble",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "24ca790c9727721dd2f247263693647cd937294191130d8670c50d5a231ee2c5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.4.4",
      "date": "2026-06-02T10:22:29.000Z",
      "distro": "noble",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "9d115f11ead17badb9ea6f1eaea715201c112e485053fb0b8a4f132932b224b0",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.4.4",
      "date": "2026-06-02T10:22:23.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "8e8f9c64134e3e80a5696b6c8cf28cc78f4a66a904f3cf46345a01b070021d0b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.4.4",
      "date": "2026-06-02T10:22:37.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "46bd3ca360923db61f9334b28341a1286d86d38c119250ab37d21a55a0cdff7d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.4.4",
      "date": "2026-06-02T10:22:24.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "7c89ecbdeb1abf46b4abdcbfaf9d5153ab12eca5ca5080a09d7eefbbbd3e9b96",
      "status": "success",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.4.4",
      "date": "2026-06-02T10:21:45.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "28fe28c10a9b356f81d1a143d417f15014525bd4bf662e1273c901750ee63bab",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.4.4",
      "date": "2026-06-02T10:21:42.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "f1d1696f7eb9bd1acd8432e497170e077b4079ebebad088a4ed957242b1f496e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.4.4",
      "date": "2026-06-02T10:21:43.000Z",
      "commit": "17d1ceed77b871e9bc446a254095241e576e79c1",
      "fileid": "1720e8701b44fec76125d7c5de1748b2d90c49dd3b80f05d9d1e1e1e1c3e4e28",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/pepijn-devries/actions/runs/26813412836"
    }
  ]
}