IT虾米网

processing之RiTa + 处理 + 声音

zfyouxi 2025年05月04日 程序员 55 0

我对实现与此人 link 类似的处理方式感兴趣。

据我了解,她将一段视频切成 tiff 格式,然后使用 RiTa 库进行合成

有谁知道如何实现这样的事情,只是改变我正在使用其他扩展名或文件格式的事实。我想通过声音样本来实现这一点。

有关代码、逻辑或类似作品的任何信息,并且可以免费更改。

赐教!!

谢谢

对于直接问题,如何使用以下代码导入和读取这些文件。

import rita.*; 
 
RiMarkov markov; 
 
void setup() 
{     
size(500, 500); 
 
RiText.defaultFontSize(18); 
 
new RiText(this, "click to (re)generate!"); 
 
// create a markov model w' n=3 
markov = new RiMarkov(4);   
 
// load files into the model 
markov.loadFrom(new String[] { "wittgenstein.txt", "kafka.txt" }, this);     
} 
 
void draw() 
{ 
background(255); 
RiText.drawAll(); 
} 
 
void mouseClicked()  
{    
if (!markov.ready()) return;  
 
RiText.disposeAll(); // clean-up old data 
 
String[] lines = markov.generateSentences(10); 
 
// lay out in rect (x=50 y=50, w=400, h=400) 
RiText.createLines(this, lines, 50, 50, 400, 400); 
} 

那么我如何或可以用 .mp3 文件等更改 .txt 文件,然后如何通过处理来播放它?像 Minim 这样的音频库?

任何想法都会有帮助。

请您参考如下方法:

我不知道安吉拉·费拉奥罗是如何制作她的电影的,但如果我要制作这部电影,我会尝试一下如何处理它。

首先,了解 RiTa 处理文本非常重要。文件名是文本。因此,您可以使用 RiTa 通过使用通过某种语法解析的文件名来选择要播放的文件。

语法部分是 RiTa 的强大之处。查看与 RiTa 库一起打包的 HaikuGrammar 示例。想象一下,将 haiku.json 文件中的单词替换为示例名称,每次单击时都可以生成新的示例播放顺序。

您上面引用的示例使用马尔可夫链,其工作原理略有不同。马尔可夫对象查看文本输入并分析某些单词出现在其他单词之后的频率。然后,当它开始生成时,它使用这些频率来生成新文本(如果您感兴趣,很多人都比我更好地描述了这种方式)。话虽这么说,我不认为文件名是马尔可夫链的好种子。除非你用目录结构或其他东西制作了马尔可夫链。如果您将特定样本与特定单词相关联,并且每次出现该单词时,都会播放该样本,也许会很有趣。

长话短说,通过 RiTa 发送文件名,看看会弹出什么内容。


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!