批处理之家's Archiver

老刘1号 发表于 2017-6-10 15:43

[翻译]MIDI<->CSV第三方工具使用手册

[i=s] 本帖最后由 老刘1号 于 2017-6-10 15:56 编辑 [/i]

[p=30, 2, left][quote]只为对音乐的热爱[/quote][/p][p=30, 2, left]翻译自[url=http://www.fourmilab.ch/webtools/midicsv/]http://www.fourmilab.ch/webtools/midicsv/[/url][/p][p=30, 2, left]从Manual Pages开始翻译[/p][p=30, 2, left]MIDI_CSV文件的详细编写方法以后将会在其他帖子发表。[/p][p=30, 2, left]括号中的内容为参考[/p][p=30, 2, left]加红的字体(非标题)是翻译中比较不确定的内容,仅用作参考,具体还是看英文版[/p][p=30, 2, left]晕,复制上来就成黑白的了,懒得加色了[/p][p=30, 2, left]有色版见本人小站:[url=http://lbcpc.3vcm.net/MIDI-CSV%E7%AC%AC%E4%B8%89%E6%96%B9%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8C.html]http://lbcpc.3vcm.net/MIDI-CSV%E ... 89%8B%E5%86%8C.html[/url][/p]

[b][size=7]MIDICSV&CSVMIDI[font=宋体]使用手册[/font][/size][/b][font=宋体][size=7][/size][/font][p=30, 2, left][font=Verdana][size=22pt]                                   MIDICSV[/size][/font][/p][p=30, 2, left][font=微软雅黑][size=22pt][b]名称[/b][/size][/font][/p][p=30, 2, left][font=Verdana][size=22pt]MIDICSV [/size][/font][font=Verdana][size=22pt]--[font=宋体]将[/font][font=Verdana]MIDI[/font][font=宋体]音频文件转换为[/font][font=Verdana]CSV[/font][font=宋体]文件[/font][/size][/font][/p][p=30, 2, left][font=微软雅黑][size=22pt][b]用法摘要[/b][/size][/font][/p][p=30, 2, left][font=Verdana][size=22pt]MIDICSV [/size][/font][font=Verdana][size=22pt][ [/size][/font][font=Verdana][size=22pt][b]-u -v[/b][/size][/font][font=Verdana][size=22pt] ] [ [/size][/font][font=Verdana][size=22pt][i]输入文件名[font=Verdana]/[/font][font=宋体]路径[/font][/i][/size][/font][font=Verdana][size=22pt] [ [/size][/font][font=Verdana][size=22pt][i]输出文件名[font=Verdana]/[/font][font=宋体]路径[/font][/i][/size][/font][font=Verdana][size=22pt] ] ][/size][/font][/p][p=30, 2, left][font=微软雅黑][size=22pt][b]功能说明[/b][/size][/font][/p][p=30, 2, left][font=仿宋_GB2312][size=16pt]MIDICSV读取一个标准的MIDI音频文件并将其解码为可以保留源MIDI文件所有信息的CSV[/size][/font][font=仿宋_GB2312][size=16pt](逗点分隔值)文件。使用Ascii的CSV文件可以被电子表格或数据库程序读取或通过应用程序进行更简便的加工处理([/size][/font][font=仿宋_GB2312][size=16pt]例如移调一部分音轨或者从一个多序列(多轨道)的MIDI文件提取一条音轨[/size][/font][font=仿宋_GB2312][size=16pt])。一个被此工具创建的MIDI_CSV文件可以被CSVMIDI转换回一个标准的MIDI文件。[/size][/font][/p][p=30, 2, left][font=微软雅黑][size=6][b]选项/参数[/b][/size][/font][/p][p=30, 2, left][font=仿宋_GB2312][size=12px][size=16pt]-u[/size][/size][/font][font=仿宋_GB2312][size=12px][size=16pt] 打印“程序调用方法”信息。[/size][/size][/font][/p][p=30, 2, left][font=仿宋_GB2312][size=16pt]-v [/size][/font][font=仿宋_GB2312][size=16pt]在标准错误句柄(句柄2)打印详尽的排错信息。[/size][/font][font=仿宋_GB2312][size=16pt]MIDI文件头和每个音轨的长度将会被转储。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]输入/输出文件[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]如果没有指定输入文件或者输入文件参数被传递为“-[/size][/font][font=仿宋_GB2312][size=16pt]”[/size][/font][font=仿宋_GB2312][size=16pt],程序将从标准输入句柄(句柄0)接收MIDI文件内容。同样,如果没有指定输出文件或者输出文件参数被传递为“-[/size][/font][font=仿宋_GB2312][size=16pt]”[/size][/font][font=仿宋_GB2312][size=16pt],程序将从标准输出句柄(句柄1)打印转换后得到的CSV内容。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]缺陷/BUG[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/font][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]MIDICSV程序假定输入或传入的是符合语法规则的MIDI音频文件;当错误检查进行的时候,严重的一个或几个错误将导致程序崩溃。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]请将你发现的BUG或缺陷 反馈到fourmilab.ch。 [/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/p]

[p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=Verdana][size=22pt][/size][/font][/font][/font][/font][/font][/font][/p]
[p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=Verdana][size=22pt]                                     CSVMIDI[/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]名称[/b][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=Verdana][size=22pt]CSVMIDI [/size][/font][font=Verdana][size=22pt]--[/size][/font][font=宋体][size=22pt]将[font=Verdana]MIDI_[/font][/size][/font][font=Verdana][size=22pt]CSV[font=宋体]文件[/font][/size][/font][font=宋体][size=22pt]编码为[font=Verdana]MIDI[/font][font=宋体]音频[/font][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]用法摘要[/b][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=Verdana][size=22pt]CSVMIDI [/size][/font][font=Verdana][size=22pt][ [/size][/font][font=Verdana][size=22pt][b]-u -v[/b][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=宋体][size=22pt][b]-x -z [/b][/size][/font][font=Verdana][size=22pt]] [ [/size][/font][font=Verdana][size=22pt][i]输入文件名[font=Verdana]/[/font][font=宋体]路径[/font][/i][/size][/font][font=Verdana][size=22pt] [ [/size][/font][font=Verdana][size=22pt][i]输出文件名[font=Verdana]/[/font][font=宋体]路径[/font][/i][/size][/font][font=Verdana][size=22pt] ] ][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]功能说明[/b][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]CSVMIDI程序读取一个由MIDICSV程序所创建的[/size][/font][font=仿宋_GB2312][size=16pt]或等价的[/size][/font][font=仿宋_GB2312][size=16pt]CSV[/size][/font][font=仿宋_GB2312][size=16pt](逗点分隔值)文件,将其编码/转换为一个标准的MIDI文件。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]选项/参数[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]-u[/size][/font][font=仿宋_GB2312][size=16pt] 打印“程序调用方法”信息。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]-v [/size][/font][font=仿宋_GB2312][size=16pt]在标准错误句柄(句柄2)打印详尽的排错信息。[/size][/font][font=仿宋_GB2312][size=16pt]MIDI文件头和每个音轨的长度将会被转储。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]-x [/size][/font][font=仿宋_GB2312][size=16pt]MIDI流支持基本形式([/size][/font][font=仿宋_GB2312][size=16pt]具有相同的或可以省略的[/size][/font][font=仿宋_GB2312][size=16pt][i][u]事件类型[/u][/i][/size][/font][font=仿宋_GB2312][size=16pt]和[/size][/font][font=仿宋_GB2312][size=16pt][i][u]通道[/u][/i][/size][/font][font=仿宋_GB2312][size=16pt]的连续的事件[/size][/font][font=仿宋_GB2312][size=16pt])的压缩。 默认情况下CSVMIDI会执行压缩。如果指定了-x参数,所有事件中的相同的事件类型和通道的解释字节将不会被省略——将不会做出任何压缩行为(尽管MIDI文件支持)。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]-z[/size][/font][font=仿宋_GB2312][size=16pt] 大多数CSV文件中检测到的错误将被忽略并被打印至标准错误句柄(句柄2)。-z参数将使CSVMIDI在发现第一个错误的时候立即停止CSV转换。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]退出码/返回值[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]如果没有错误或警告产生,CSVMIDI将会将返回值设置为0。当一个或多个错误在传入的CSV中发现的时候,程序将会将返回值设置为1。当返回值为2的时候代表无法打开传入文件或者调用工具时产生了语法错误。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]输入/输出文件[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]如果没有指定输入文件或者输入文件参数被传递为“-[/size][/font][font=仿宋_GB2312][size=16pt]”[/size][/font][font=仿宋_GB2312][size=16pt],程序将从标准输入句柄(句柄0)接收CSV内容。同样,如果没有指定输出文件或者输出文件参数被传递为“-[/size][/font][font=仿宋_GB2312][size=16pt]”[/size][/font][font=仿宋_GB2312][size=16pt],程序将从标准输出句柄(句柄1)打印转换后得到的的MIDI内容。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][size=22pt][b]缺陷/BUG[/b][/size][/font][font=微软雅黑][size=22pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][size=16pt]CSVMIDI程序假定传入的是由MIDICSV产生的或手动制作的标准格式的MIDI_CSV文件。[/size][/font][font=仿宋_GB2312][size=16pt]如果传入了一个有着几行无意义的语句但总体格式正确的CSV文件,CSVMIDI将会抛弃错误,避过无意义的语句,继续转换[/size][/font][font=仿宋_GB2312][size=16pt](-z参数除外)。CSVMIDI工具将检查丢失的节并且范围性的检查数字的值。但将不会进行更高级别的(如[/size][/font][font=仿宋_GB2312][size=16pt]一致性[/size][/font][font=仿宋_GB2312][size=16pt])的检查(例如,确定每个“音符-开(按下"琴键"开始发音)”对应着“音符-关(放开"琴键"结束发音)”)。如果必须进行该级别的验证,应该在CSV文件被CSVMIDI处理之前手动完成。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]使用MIDICSV转换MIDI到CSV文件再使用CSVMIDI转换回MIDI得到的文件不能保证与源MIDI文件完全相同(二进制方面),因为MIDI文件支持压缩模式(当然不压缩也可以……使用-x参数)。MIDI文件转换到CSV并重新转换回MIDI所得到的MIDI文件和源MIDI文件应该是等价的(播放方面)。同一个MIDI文件转换得到的CSV肯定是全部相同的。[/size][/font][font=仿宋_GB2312][size=16pt][/size][/font][/font][/font][/font][/font][/font][/font][/p][p=30, 2, left][font=微软雅黑][font=微软雅黑][font=仿宋_GB2312][font=微软雅黑][font=仿宋_GB2312][font=仿宋_GB2312][font=仿宋_GB2312][size=16pt]请将你发现的BUG 反馈到fourmilab.ch。[/size][/font][/font][/font][/font][/font][/font][/font][/p]


[font=仿宋_GB2312][size=16pt][/size][/font]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.