1、 Reference numberISO/IEC 14496-11:2005/Amd.5:2007(E)ISO/IEC 2007Information technology Coding of audio-visual objects Part 11: Scene description and application engineAMENDMENT 5: Support for Symbolic Music Notation Technologies de linformation Codage des objets audiovisuels Partie 11: Description d
2、e scne et moteur dapplication AMENDEMENT 5: Support pour la notation musicale symbolique Amendment 5:2008 toNational Standard of CanadaCAN/CSA-ISO/IEC 14496-11:07Amendment 5:2007 to International Standard ISO/IEC 14496-11:2005 has been adopted withoutmodification (IDT) as Amendment 5:2008 to CSA Sta
3、n dard CAN/CSA-ISO/IEC 14496-11:07. ThisAmendment was reviewed by the CSA Technical Committee on Information Technology (TCIT) under thejurisdiction of the Strategic Steering Committee on Information Technology and deemed acceptable for use inCanada.September 2008 International Organization for Stan
4、dardization (ISO), 2007. All rights reserved. International Electrotechnical Commission (IEC), 2007. All rights reserved. NOT FOR RESALE. ISO/IEC 14496-11:2005/Amd.5:2007(E) PDF disclaimer This PDF file may contain embedded typefaces. In accordance with Adobes licensing policy, this file may be prin
5、ted or viewed but shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this file, parties accept therein the responsibility of not infringing Adobes licensing policy. The ISO Central Secretariat accepts no li
6、ability in this area. Adobe is a trademark of Adobe Systems Incorporated. Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters were optimized for printing. Every care has been taken to ensure that the file is
7、 suitable for use by ISO member bodies. In the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below. COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2007 All rights reserved. Unless otherwise specified, no part of this publication may be reprod
8、uced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISOs member body in the country of the requester. ISO copyright office Case postale 56 CH-1211 Geneva 20 Tel. + 41 22 74
9、9 01 11 Fax + 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org ii ISO/IEC 2007 All rights reservedISO/IEC 14496-11:2005/Amd.5:2007(E) ISO/IEC 2007 All rights reserved iiiForeword ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) f
10、orm the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC
11、 technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC
12、 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by the joint technical committee are circulated to national bodies
13、 for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identify
14、ing any or all such patent rights. Amendment 5 to ISO/IEC 14496-11:2005 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information. This Amendment contains new node specifications with syntax an
15、d semantics as well as a short description of SMR and its role inside MPEG-4. ISO/IEC 14496-11:2005/Amd.5:2007(E) ISO/IEC 2007 All rights reserved 1Information technology Coding of audio-visual objects Part 11: Scene description and application engine AMENDMENT 5: Support for Symbolic Music Notation
16、 In clause 4, add the following definition: Symbolic Music Representation (SMR) A method of describing a logical structure consisting of: symbolic elements that represent audiovisual events; the relationship between those events; and aspects of rendering those events as defined by ISO/IEC 14496-23.
17、In subclause 7.2, Node Semantics, add the following subclauses: 7.2.2.87 MusicScore 7.2.2.87.1 Node interface MusicScore eventIn SFBool executeCommand eventIn SFString gotoLabel eventIn SFInt32 gotoMeasure eventIn SFTime highlightTimePosition eventIn SFVec3f mousePosition exposedField MFString argum
18、entsOnExecute exposedField SFString commandOnExecute exposedField SFInt32 firstVisibleMeasure 0 exposedField SFBool hyperlinkEnable TRUE exposedField SFBool loop FALSE exposedField MFString partsLyrics exposedField MFInt32 partsShown exposedField SFTime scoreOffset 0.0 exposedField SFVec2f size -1,
19、-1 exposedField SFFloat speed 1.0 exposedField SFTime startTime 0.0 exposedField SFTime stopTime exposedField SFFloat transpose 0.0 exposedField MFURL url exposedField MFURL urlSA exposedField SFString viewType eventOut SFString activatedLink eventOut MFString availableCommands eventOut MFString ava
20、ilableLabels eventOut MFString availableLyricLanguages eventOut MFString availableViewTypes eventOut SFBool isActive ISO/IEC 14496-11:2005/Amd.5:2007(E) 2 ISO/IEC 2007 All rights reservedeventOut SFVec3f highlightPosition eventOut SFInt32 lastVisibleMeasure eventOut SFInt32 numMeasures eventOut MFSt
21、ring partNames NOTE For the binary encoding of this node see node coding tables in electronic attachment. 7.2.2.87.2 Functionality and semantics Rendering of Symbolic Music allows different solutions ranging from bitmap to vector graphics. To minimize the impact on some widespread existing solutions
22、, including the SMR reference software, two new nodes are defined: ScoreShape, similarly to Shape, is used to map a MusicScore on a geometry, and a MusicScore as a child node. In such a way different solutions are allowed, including vector graphics and bitmaps. The loop, startTime, and stopTime expo
23、sedFields and the isActive eventOut, and their effects on the MusicScore node, are described in 7.1.1.1.6.2. A MusicScore node is inactive before startTime is reached. The MusicScore node displays the score at SMR stream time t=0 until it is activated, and keep the last composed image available when
24、 it is deactivated. Please note that the internal SMR decoder has also its own time representation and it may continue to run after stopTime with SMR stream being processed. However, a loop field set to TRUE may infer a restart of a certain portion of the score rendering. The executeCommand eventIn
25、is an input event indicating that when the hyperlinkEnable field is FALSE the command set in commandOnExecute has to be performed considering the values of argumentsOnExecute and of mousePosition while if hyperlinkEnable is TRUE the value of mousePosition is used to see if in that position is presen
26、t something with an associated link, if this is the case the activatedLink eventOut is generated with the value of the link. The gotoLabel eventIn positions the score on the page containing the specified label (one of the availableLabels). The gotoMeasure eventIn positions the score on the page cont
27、aining the specified measure. The highlightTimePosition eventIn highlights the time position indicated relative to the scoreOffset field. The mousePosition eventIn is used to indicate the point where the user has clicked; the position will be taken into account when the next executeCommand eventIn w
28、ill be issued. The argumentsOnExecute exposedField indicates arguments for the commandOnExecute command. The commandOnExecute exposedField indicates the command to be executed when the user clicks on the score (via executeCommand eventIn). Some commands that shall be supported by the commandOnExecut
29、e, according to the profile, are: “ADD_TEXT_ANNOTATION“ the first value in argumentsOnExecute contains the text to be added to the score in the position indicated by the last mousePosition eventIn (that is the position where the user clicked) “ADD_LABEL“ the first value in argumentsOnExecute contain
30、s the label text to be added to the measure indicated by the last mousePosition eventIn, if the measure already has a label the label is substituted “ADD_NOTE“ the first value in argumentsOnExecute contains the note duration: “D1“, “D1_2“, “D1_4“, “D1_8“, “D1_16“, “D1_32“, “D1_64“; the second value
31、indicates the notehead type: “CLASSIC“, “X“, “DSHARP“, “DIAMOND“, “RYTHMIC“, “DIDAPTIC“, etc. (see Table 11 in ISO/IEC 14496-23) the note is inserted where the user clicks or it is added to a chord if sufficiently near to another note/chord. ISO/IEC 14496-11:2005/Amd.5:2007(E) ISO/IEC 2007 All right
32、s reserved 3 “ADD_REST“ the first value in argumentsOnExecute contains the rest duration: “D1“, “D1_2“, “D1_4“, “D1_8“, “D1_16“, “D1_32“, “D1_64“; the rest is inserted in the position indicated by the last mousePosition eventIn. “SET_ALTERATION“ the first value in argumentsOnExecute contains the alt
33、eration to be set on the note, it can be: “SHARP“,“DSHARP“,“FLAT“,“DFLAT“,“NATURAL“. The alteration is set to the note indicated by the last mousePosition eventIn. “SET_DOTS“ the first value in argumentsOnExecute contains the number of dots to be set on the note, it can be: “0“,“1“,“2“. The dots are
34、 set to the note indicated by the last mousePosition eventIn. “ADD_SYMBOL“ the first value in argumentsOnExecute contains the symbol to be added on the note/rest/measure, it can be: “STACCATO“, “TENUTO“ or any symbol defined using the formatting language (see Table 116 in ISO/IEC 14496-23). The symb
35、ol is added in the position indicated by the last mousePosition eventIn. “ADD_MEASURE“ adds a measure to the score, the first value in argumentsOnExecute can be: “BEFORE“, “AFTER“ or “APPEND“, the second value in argumentsOnExecute indicates the measure number with respect to the new measure is adde
36、d. If the second value is not present or empty the last mousePosition eventIn is used to identify the reference measure. Note that adding a measure means add a measure to all the parts “DEL_MEASURE“ removes a measure of the score; the first value in argumentsOnExecute indicates the measure number to
37、 be removed. If the first value is not present or empty the last mousePosition eventIn is used to identify the measure to be delete. Note that deleting a measure means delete a measure from all the parts. “CHANGE_CLEF“ changes the clef of a measure and for all the following until another clef change
38、 or to the end. The first value in argumentsOnExecute contains the clef type, it can be: “TREBLE“, “SOPRANO“, “BASS“, “TENOR“ etc. (see Table 9 in ISO/IEC 14496-23) The clef change applies to the measure indicated by the last mousePosition eventIn. “CHANGE_KEYSIGNATURE“ changes the key signature of
39、a measure and for all the following until another key signature change or to the end. The first value in argumentsOnExecute contains the key signature type, it can be: “DOdM“, “FAdM“, “SIM“, etc. (see Table 10 in ISO/IEC 14496-23) The key signature change applies to the measure indicated by the last
40、 mousePosition eventIn. “CHANGE_TIME“ changes the time of a measure and for all the following until another time change or to the end. The first value in argumentsOnExecute contains the time, it can be: “4/4“, “3/4“, “2/4“, “C“ or “C/“. The time change applies to the measure indicated by the last mo
41、usePosition eventIn. “SET_METRONOME“ sets the metronome for the whole piece. The first value in argumentsOnExecute contains the reference note duration (D1, D1_2, D1_4,) the second value contains “TRUE“ if the reference note is with augmentation dot (“FALSE“ or empty otherwise), the third value indi
42、cates the number of reference notes in one minute. For example “D1_4“, “TRUE“, “100“ sets a metronome with 100 dotted quarters in one minute. The metronome is set using the executeCommand eventIn. “DELETE“ allows deleting any symbol, note, rest, alteration, label and annotation added by the user in
43、the position indicated by the last mousePosition eventIn “TRANSPOSE“ allows transposing the score. The first value in argumentsOnExecute contains the part to be transposed (0 for the whole main score, 1 for the first upper part, 2 the second part, ), the second value indicates the measure from which
44、 to start the transposition, the third value indicates the measure where to end transposition (the measure is included) a value of 0 or negative indicates to transpose until the last measure, the fourth value indicates the amount of transposition in half tones (e.g. 1 to increase of a half tone, 2 t
45、o increase of a tone, -1 to decrease of a half tone). This command does not depend on the mouse position and it is executed when the executeCommand eventIn is issued. ISO/IEC 14496-11:2005/Amd.5:2007(E) 4 ISO/IEC 2007 All rights reservedThe firstVisibleMeasure exposedField is the first measure curre
46、ntly visible. When the hyperlinkEnable exposedField is set to TRUE hyperlinks are shown; when the user clicks (via executeCommand eventIn) on a link an eventOut activatedLink is generated. The partsLyrics exposedField is an array of strings indicating for which part to view the lyrics and in which l
47、anguage (e.g. “it“, “en“, “ to view lyrics for part 1 in Italian and for part 2 in English). The partsShown exposedField is an array of integers indicating which parts have to be shown; the number is the position in the array of parts names; if partShown is empty all parts will be visible (e.g. to v
48、iew main score with all parts, 2 to view single part number 2, 1,3 view main score with parts 1 and 3, etc.). The scoreOffset exposedField indicates the initial (or point 0) offset from the beginning of the score; it may be used to change page or move inside the score before starting it, or in pause
49、 etc. scoreOffset is indicated in seconds from the beginning of the score. scoreOffset can be used only if synchronization information is provided or a metronome indication is present in the score. The size exposedField parameter expresses the width and height of the music score in the units of the local coordinate system. A size of -1 in either coordinate means that the MusicScore node is not specified in size in that dimension, and that the size is adjusted to the size of t