RiTa from old norse: 'to write, sketch, or scratch'       

natural language processing for generative literature

 
  • Support for probabilistic context-free grammars (CFGs)
  • Support for generation via Markov (N-Gram) models
  • Support for KeyWord-In-Context search (see RiKWICker)
  • Integration with WordNet (here), and JSAPI for text-to-speech
  • Feature Extraction: Syllables, Phonemes, Stress, Pos, etc.
  • Constraint-based word substitution (see RiSubstitute)
  • Support for user-customizable lexicons (RiLexicon)
  • Web/Text-Mining Capabilities (see RiHtmlParser)
  • Audio support for RiText objects (see RiSample)
  • Pluggable 'behavior' model for events/animations etc.

:: RiTa Project Gallery ::       

 

     Core Objects

     Examples

 

       Downloads:

       [ RiTa Core ]     [ RiTa +TTS ]

 Author:Daniel C. Howe
 Version:alpha [053]
 Optional:Minim/Sonia/Ess for audio
 Acknowledgements:
Ken Perlin
Matthew Stone
Braxon Soderman

                                         [ QUESTIONS ]

 

     Installation:

  • To install RiTa unzip RiTa.zip and place the 'rita' folder inside the Processing 'libraries' folder or in your 'sketchbook' folder (recommended).

    Optional: if you wish to use the sound features of RiTa (.wav/.aiff/.mp3 files & streams), unzip & install a sound support library: Minim (recommended), Ess, or Sonia as above.

  ** [requires separate download]

 
Creative Commons License
RiTa is licensed under a Creative Commons Attribution-
Noncommercial-Share Alike 3.0 United States License
.
 

[RiText]

RiText
font
image
sample
x
y
z
addBehavior()
addFeature()
align()
boundingBoxFill()
boundingBoxPadding()
boundingBoxSelectedFill()
boundingBoxSelectedStroke()
boundingBoxStroke()
boundingBoxStrokeWeight()
charAt()
clearFeatures()
contains()
contains3D()
fadeColor()
fadeIn()
fadeOut()
fadeToText()
fill()
fillHex()
firstIndexOf()
getAlpha()
getAvailableFeatures()
getBehaviors()
getBoundingBoxFill()
getBoundingBoxStroke()
getColor()
getFeature()
getFeatures()
getFont()
getImageHeight()
getImageWidth()
getLiveBehaviorCount()
getMotionType()
getPos()
getPosAt()
getPosition()
getPosStr()
getSample()
getScreenBoundingBox()
getSelectedColor()
getText()
getTextAlignment()
getWordAt()
getWordCount()
getWordOffset()
getWords()
getX()
getY()
hasFeature()
imageContains()
indexOf()
insertWordAt()
isBoundingBoxVisible()
isInvisible()
isMouseDraggable()
isOffscreen()
isSelected()
isVisible()
lastIndexOf()
length()
loadSample()
moveBy()
moveBy3D()
moveTo()
moveTo3D()
pauseBehaviors()
removeBehavior()
removeBehaviors()
removeFeature()
replace()
replaceByPos()
replaceFirst()
replaceWordAt()
scaleImage()
setAlpha()
setColor()
setFeatures()
setImage()
setImageHeight()
setImageOffset()
setImageVisible()
setImageWidth()
setLocation()
setMotionType()
setMouseDraggable()
setSelected()
setSelectedColor()
setText()
setVisible()
setX()
setY()
showBoundingBox()
split()
subSequence()
textFont()
textHeight()
textMode()
textSize()
textWidth()
RiText.clearSelected()
RiText.copy()
RiText.createLines()
RiText.createLinesFromFile()
RiText.createWords()
RiText.createWordsX()
RiText.delete()
RiText.deleteAll()
RiText.disableAutoDraw()
RiText.drawAll()
RiText.fadeAllIn()
RiText.fadeAllOut()
RiText.getInstances()
RiText.getNumInstances()
RiText.getPicked()
RiText.getSelected()
RiText.loadStrings()
RiText.loopSample()
RiText.pauseAllBehaviors()
RiText.regexMatch()
RiText.regexReplace()
RiText.setDefaultAlignment()
RiText.setDefaultBoundingBoxStrokeWeight()
RiText.setDefaultBoundingBoxVisibility()
RiText.setDefaultColor()
RiText.setDefaultFont()
RiText.setDefaultMotionType()
RiText.setDefaultMouseDraggable()
RiText.setFont()
RiText.setFontSize()
RiText.setTextAlignment()
RiText.showBoundingBoxes()

[SoniaSamplePlayer]

SoniaSamplePlayer
delegate
lastVolume
panFade
volumeFade
delete()
dispose()
fadeVolume()
getCurrentFrame()
getNumFrames()
getPan()
getVolume()
isLooping()
isPlaying()
load()
loop()
mute()
pan()
pause()
play()
setCurrentFrame()
setVolume()
stop()
stopFade()
stopPan()
update()

[RiTravesty]

RiTravesty
containsChar()
getCompletion()
getCompletions()
getEndOfSequenceChar()
getNFactor()
getProbabilities()
getProbability()
isSmoothing()
loadCharData()
loadFile()
printTree()
setEndOfSequenceChar()
setUseSmoothing()

[RiTextBehavior]

RiTextBehavior
startTime
addListener()
delete()
finish()
getDuration()
getParent()
getStartOffset()
getType()
isCompleted()
isPaused()
isRunning()
isWaiting()
setPaused()
setRunning()
setType()
stop()
update()
RiTextBehavior.disposeAll()
RiTextBehavior.pauseAll()

[RiStemmer]

RiStemmer
DBUG
add()
getResultBuffer()
getResultLength()
resultToString()
stem()
RiStemmer.test()

[RiSpeech]

RiSpeech
KEVIN
MBROLA_US1
MBROLA_US2
MBROLA_US3
delete()
getAvailableVoices()
getVoiceDescription()
getVoiceDescriptions()
getVoiceInfo()
getVoicePitch()
getVoicePitchRange()
getVoicePitchShift()
getVoiceRate()
getVoiceVolume()
setMbrolaBase()
setVoice()
setVoicePitch()
setVoicePitchRange()
setVoicePitchShift()
setVoiceRate()
setVoiceVolume()
speak()
RiSpeech.isTTSEnabled()
RiSpeech.setTTSEnabled()

[RiSentencer]

RiSentencer
split()

[RiSample]

RiSample
fadeVolume()
getCurrentFrame()
getNumFrames()
getPan()
getVolume()
isLooping()
isPlaying()
load()
loop()
mute()
pan()
pause()
play()
setCurrentFrame()
setVolume()
stop()
stopFade()
stopPan()
RiSample.setDefaultVolume()

[RiPosTagger]

RiPosTagger
COMPARE_TAGGERS
DEFAULT_POS_TAGGER
tag()
tagInline()
RiPosTagger.isAdjective()
RiPosTagger.isAdverb()
RiPosTagger.isNoun()
RiPosTagger.isVerb()
RiPosTagger.setDefaultTagger()

[RiMarkov]

RiMarkov
containsChar()
disableSentenceProcessing()
generate()
generateSentences()
generateTokens()
getNFactor()
getProbabilities()
getProbability()
isRecognizingSentences()
isSmoothing()
loadFile()
loadSentences()
loadText()
loadTokens()
nextWords()
printTree()
setRecognizeSentences()
setUseSmoothing()

[RiLexicon]

RiLexicon
containingStringsByLetter()
getAlliterations()
getSimpleRhymes()
getWords()
isContaining()
isSubstring()
isSuperstring()
similarByLetter()
similarBySound()
similarBySoundAndLetter()
substringsByLetter()
superstringsByLetter()

[RiKWICker]

RiKWICker
addLines()
addLinesFromFile()
lookup()
setLines()
setLinesFromFile()

[RiGrammar]

RiGrammar
dumpDefinitions()
expand()
expandFrom()
expandWith()
getDefinition()
setDefinition()
setGrammar()
setIncludeSpaces()

[RiGoogler]

RiGoogler
DBUG
getBigram()
getBigramAvg()
getBigramMin()
getCallCount()
getCount()
getWeightedBigram()
getWeightedUnigram()
RiGoogler.isCacheEnabled()
RiGoogler.setCacheEnabled()

[RiConcorder]

RiConcorder
addLine()
addWord()
addWords()
clear()
contains()
getCount()
getLeastCommonTokens()
getMostCommonTokens()
getProbability()
isIgnoringCase()
isIgnoringPunctuation()
isIgnoringStopWords()
loadFile()
loadFiles()
setIgnoreCase()
setIgnorePunctuation()
setIgnoreStopWords()
setWordsToIgnore()
totalCount()
uniqueCount()

[RiChunker]

RiChunker
ADJ_PHRASE
ADV_PHRASE
IND_PHRASE
NOUN_PHRASE
PREP_PHRASE
PRT_PHRASE
SBAR_PHRASE
VERB_PHRASE
chunk()
getAdjPhrases()
getAdvPhrases()
getChunkData()
getChunks()
getNounPhrases()
getPrepPhrases()
getVerbPhrases()

[RiAnalyzer]

RiAnalyzer
analyze()
dumpFeatures()
firstIdx()
getAvailableFeatures()
getCallCount()
getFeature()
getFeatures()
getFeatureString()
getPhonemes()
getPhonemesAt()
getPos()
getPosAt()
getStresses()
getStressesAt()
getSyllables()
getText()
getTokens()
getWords()
isCacheEnabled()
lastIdx()
setCacheEnabled()
wordAt()
wordCount()
RiAnalyzer.setDefaultTagger()

[EssSamplePlayer]

EssSamplePlayer
delete()
dispose()
fadeVolume()
getCurrentFrame()
getNumFrames()
getPan()
getVolume()
isLooping()
isPlaying()
load()
loop()
mute()
pan()
pause()
play()
setCurrentFrame()
setVolume()
stop()
stopFade()
stopPan()