WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章SMS MMSMMS技术手机铃声格式规范,midi格式规范

手机铃声格式规范,midi格式规范
作者:佚名  来源:天堂鸟  发布时间:2005-7-8 15:18:00
um 125 telephone ring
118 melodic tom 126 helicopter
119 synth drum 127 applause
120 reverse cymbal 128 gunshot


**** table 2 - general midi percussion key map ****
(assigns drum sounds to note numbers. midi channel 10 is for percussion)

midi drum sound midi drum sound
key key

35 acoustic bass drum 59 ride cymbal 2
36 bass drum 1 60 hi bongo
37 side stick 61 low bongo
38 acoustic snare 62 mute hi conga
39 hand clap 63 open hi conga
40 electric snare 64 low conga
41 low floor tom 65 high timbale
42 closed hi-hat 66 low timbale
43 high floor tom 67 high agogo
44 pedal hi-hat 68 low agogo
45 low tom 69 cabasa
46 open hi-hat 70 maracas
47 low-mid tom 71 short whistle
48 hi-mid tom 72 long whistle
49 crash cymbal 1 73 short guiro
50 high tom 74 long guiro
51 ride cymbal 1 75 claves
52 chinese cymbal 76 hi wood block
53 ride bell 77 low wood block
54 tambourine 78 mute cuica
55 splash cymbal 79 open cuica
56 cowbell 80 mute triangle
57 crash cymbal 2 81 open triangle
58 vibraslap


**** table 3 - general midi minimum sound module specs ****

voices:
a minimum of either 24 fully dynamically allocated voices
available simultaneously for both melodic and percussive sounds or 16
dynamically allocated voices for melody plus eight for percussion.

channe":
general midi mode supports all sixteen midi channe". each channel can
play a variable number of voices (polyphony). each channel can play a
different instrument (timbre). keybased percussion is always on
channel 10.

instruments:
a minimum of sixteen different timbres playing various instrument
sounds. a minimum of 128 preset for intruments (midi program numbers).

note on/note off:
octabe registration: middle c(c3) = midi key 60. all voices including
percussion respond to velocity.

controllers:
controller # description
1 modulation
7 main volume
10 pan
11 expression
64 sustain
121 reset all controllers
123 all notes off

registered description
parameter #
0 pitch bend sensitivity
1 fine tuning
2 coarse tuning

additional channel messages:
channel pressure (aftertouch)
pitch bend

power-up defaults:
pitch bend amount = 0
pitch bend sensitivity = +-2 semitones
volume = 90
all other controllers = reset


(after electronic musician, 8/91 issue)
------------------------------ DEC.CPP ------------------------------------

/* file dec.cpp

by Dustin Caldwell  (dustin@gse.utah.edu)

*/


#include <dos.h>
#include <stdio.h>
#include <stdlib.h>

void helpdoc();

main()
{
    FILE *fp;

    unsigned char ch, c;

    if((fp=fopen(_argv[1], "rb"))==NULL)      /* open file to read */
    {
        printf("cannot open file %s\n",_argv[1]);
        helpdoc();
        exit(-1);
    }

    c=0;
    ch=fgetc(fp);

    while(!feof(fp))            /* loop for whole file */
    {
        printf("%u\t", ch);      /* print every byte's decimal equiv. */
        c++;
        if(c>8)                /* print 8 numbers to a line */
        {
            c=0;
            printf("\n");
        }

        ch=fgetc(fp);
    }

    fclose(fp);          /* close up */
}

void helpdoc()         /* print help message */
{
    printf("\n Binary File Decoder\n\n");

    printf("\n Syntax: dec binary_file_name\n\n");

    printf("by Dustin Caldwell (dustin@gse.utah.edu)\n\n");
    printf("This is a filter program that reads a binary file\n");
    printf("and prints the decimal equivalent of each byte\n");
    printf("tab-separated. This is mostly useful when piped \n");
    printf("into another file to be edited manually. eg:\n\n");
    printf("c:\>dec sonata3.mid > son3.txt\n\n");
    printf("This will create a file called son3.txt which can\n");
    printf("be edited with any ascii editor. \n\n");
    printf("(rec.exe may a"o be useful, as it reencodes the \n");
    printf("ascii text file).\n\n");
    printf("Have Fun!!\n");
}

---------------------------- REC.CPP ----------------------------------

/* File rec.cpp
    by Dustin Caldwell (dustin@gse.utah.edu)
*/

#include <dos.h>
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>

void helpdoc();

main()
{
    FILE *rfp, *wfp;

    unsigned char ch, c;
    char s[20];

    if((rfp=fopen(_argv[1], "r"))==NULL)          /* open the read file */
    {
        printf("cannot open file %s \n",_argv[1]);
        helpdoc();
        exit(-1);
    }

    if((wfp=fopen(_argv[2], "wb"))==NULL)         /* open the write file */
    {
        printf("cannot open file %s \n",_argv[1]);
        helpdoc();
        exit(-1);
    }

    c=0;

    ch=fgetc(rfp);

    while(!feof(rfp))           /* loop for whole file */
    {

        if(isalnum(ch))        /* only 'see' valid ascii chars */
        {
            c=0;
            while(isdigit(ch))

上一页  [1] [2] [3] [4] [5] [6]  下一页

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码