Sao Mai Braille User Guide

Posted on Tue, 06/05/2018 - 10:26
Lượt xem

Sao Mai Braille (SMB) is a rich text editing and Braille translation software, developed by Sao Mai Center for the Blind. We hope that this additional tool will help blind individuals/organizations for/of visually impaired people produce Braille materials quickly and less costly. It supports to translate and format into Braille for more than 60 languages and is highly customizable.


Sao Mai Braille (SMB) is a free rich text editing and Braille translation software for Windows, developed by Sao Mai Center for the Blind. We hope that this additional tool will help blind individuals/organizations for/of visually impaired people produce Braille materials quickly and less costly.

Main features

  • Edit and translate rich text into Braille.
  • 6-key input method with FDSJKL and VCXM,.
  • Translate into Braille with 134 built-in language tables by LibLouis library.
  • Work and translate into Braille correctly from print document types such as Microsoft Word, TXT, RTF and HTML. Open and save Braille document into rich-text .smb extension, Portable Embosser File .pef, Braille-Ready File .brf, unformatted Braille .brl, and Spanish Braille .bra.
  • Translate document written in multiple languages by selecting relevant correct Braille translation tables.
  • Mathematics: view/edit math equations; import/export LaTeX and MathMl; converting equations to speech and Braille, and navigation mode. MathCAT is used to provide speech and Braille.
  • Insert, edit and convert images into Braille tactile graphic (experimental and very limited at the moment).
  • Translating music scores into Braille (currently, supported MusicXML standard). SM Music Braille translation engine is considered among the most powerful tools to translate music into Braille with many custom options and unique features.
  • Highly customize Braille text format with a set of translation rules, and have frequently-used styles built in.
  • Software’s user interface is available in 36 languages, and designed to work friendly with screen readers like Jaws and NVDA.



SMB doesn’t have any special system requirements. It’s tested on Windows 10 and 11. However, it’s expected to run with older Windows versions as well.

Follow setup instructions to complete the installation. By default, SMB is installed on your system drive -> Program Files\SaoMai\SMB. And configuration files are saved in %appdata%\SaoMai\SMB


User interface and Menus

From main window, press F1 to open user guide. From Options dialogue, press F1 to read help message for current item.

User Interface

Main window of SMB includes the following controls:

  • Title bar: showing name of application.
  • Menu bar: main menu items, press alt key to open.
  • Tool bar: frequently-used editing features. Press ctrl+shift+s: open apply style; ctrl+shift+f: open apply font dialogue.
  • Editing area: multi-document editing window. Press Ctrl+tab or ctrl+shift+tab to move between opened documents. Ctrl+F4 to close current document.
  • Status bar: showing related information about the current opened document such as line number, column, page etc. In options dialogue, it will show the help text for control with focus.


SMB has following main menus:

  • File: New file/Open/Save/Export, Page setup/Print preview/Print, document property.
  • Edit: functions relating to text editing such as copy, cut, paste, paste special, find, replace, go to, clear format, remove hyperlink, remove page break, character case, and split document.
  • View: change to different view modes, access header and footer.
  • Insert: page number, page count, page break, horizontal bar, file, symbols etc.
  • Format: options and settings for font, styles, paragraph, bullet and numbering list, increase/decrease, text/background color, and line spacing.
  • Table: all functions relating to create/delete/manage and format tables.
  • Tools: Braille translation related options, and installing add-ons.
  • Help: user guide and other info about the program.


Document editing and formatting

Sao Mai Braille has two native filetypes, 1) .SMD extension is for print document and 2) .SMB is for Braille rich-text document.

“Print document” term means to talk about the document not translated into Braille yet. While, “Braille document” means document already translated into Braille.

From print or Braille document window, use save or save as from File menu to save the document into different supported print/Braille formats. Other than native Braille rich-text format with .smb file extension, it currently supports to save in:

  • Braille-Ready File with .brf file extension: plain formatted Braille with header , footer, Braille paper settings with correct line breaks and page breaks.
  • Unformatted Braille with .brl: plain Braille without header, footer and page breaks. It’s suitable for reading on Braille display.
  • Portable Embosser Format with .pef: save Braille content in XML-based file. Read more about PEF at:
  • Spanish Braille with .bra: it’s same as BRF filetype but without adding page break character.

In native print, Braille or PEF document window, can go to File menu, choose Property and provide meta data for the document.

Press ctrl+n to create new print document, ctrl+shift+n to new Braille document.

By default, 6-key Braille input method with fds-jkl (dots 123-456) will be turned on in Braille document editing window.


SMB has print and Braille styles. Print style is applied for print document. While, Braille style is applied when text is translated into Braille. Please note, Braille style should have the same name as the print one in order to have SMB correctly apply translation rules. Please refer to [Styles page section] for more information on how to define translation rules for equivalent Braille styles.

To add a print style, go to menu Format and choose Styles (ctrl+alt+shift+s). Then, choose Add button and follow its instructions.

To apply style for a paragraph or selected text, press ctrl+shift+s or click on the Styles button on the tool bar.

Press F2 to cycle through header and footer, where can insert other document info such as page number, page count, date and time etc. Press Esc to go back to document. Like in main document editing window, can use text commands in header and footer areas, such as left/right/center alignments. To choose available options for inserted object, press alt+enter on the selected object like “page number” to choose different type of page number.

Editing keystrokes

Command name


Apply heading styles level 1 through 6








Bullet list


Number list


Increase indent/list level


Decrease indent/level list


Align left


Align center


Align right




Say format info


Insert equation


Insert picture


Insert music score


Object property


Activate Math navigation mode






Table navigation keystrokes

Command name


Next cell


Previous cell


Cell below


Cell above


First table cell


Last table cell


First column cell


Last column cell


First row cell


Last row cell


Read current cell/object


Read current column


Read current row


Say table info



SMB supports to input math equation, import/export between LaTeX and MathML standards and able to convert to both Braille and speech. Currently, it supports math Braille UEB and Nemeth.

For more information about math speech and Braille options, please see [Math equation page] in Options dialogue.

Edit math equation

From print document, go to Insert menu, and choose Equation. Or press Alt+F9. The focus will be on expression edit field on Expression page, where to input LaTeX code directly. This dialogue has three tab pages (Expression, Font and Appearance).

In this expression page has two subpages: 1) Search by category,  and 2) direct text search.

To search by category, press Alt+s to focus on a list of categories to choose. • Next tab is the subcategory list if available. Otherwise, it’s the list of math operators belonging to selected category. Choose the operator and press Space to insert.

To search by entering text, press Alt+d. Just type in name of equation that you want to insert, for instance: “Root”. It will list equations having the word “root”. Press down arrow key to select the right one and press Enter to insert.

Equation in LaTeX code is inserted in Expression edit field, where you can modify its parameters. Below are other remaining controls in this page:

  • Clear button (Alt+l): to delete contents in Expression edit field.
  • Check button: validate equations in Expression edit field for any errors.
  • Formular name: provide name of the content in Expression edit field to be saved in equation Favorite category.A”Save to favorite” button will appear after typing the name. This feature is to help add frequently-used math expressions into the favorite category, where you can search for by choosing “Favorite” category in the Search by category subpage. Press ctrl+delete to delete the equation in ”Recent use” subcategory.
  • Next are Import and Export buttons, where to import or export math equation from/to LaTeX/MathML. Imported equation is inserted directly into the Expression edit field.

Press Esc to close the dialogue. Or, choose Ok button to insert the equation and close the dialogue.

From the print document, move cursor to the equation, press Alt+Enter to open equation dialogue to edit that equation.

Math navigation mode

If you are using screen readers like Jaws and NVDA, at the equation, press Shift+F5 to activate math navigation mode. This mode will let you read equation in more structured with speech, and view the Braille output of that equation. Press tab to move between math formular and Braille output. Press Esc to close math navigation mode.

Below are keystrokes used in math navigation mode:








Move to previous

In table: Move to previous cell

In columnar math: Move to previous digit

Read previous

Describe previous


Move to next

In table: Move to next cell

In columnar math: Move to next digit

Read next

Describe next


Zoom out

In table: Move to cell above

In columnar math: Move to digit above

Change Navigation Mode (Enhanced/Simple/Character) to larger

Zoom out all the way


Zoom in

In table: Move to cell below

In columnar math: Move to digit below

Change Navigation Mode (Enhanced/Simple/Character) to smaller

Zoom in all the way

Numbers 1-10 (0 is 10)

Jump to Place Marker

Set Place Marker

Read Place Marker

Describe Place Marker


Read current

Read current cell

Toggle "speech mode" to read or describe

Describe current cell


Move to start of expression

Move to start of line

Move to start of column

Move to digit at top

NYI: Read from start of expression


Move to end of expression

Move to end of line

Move to end of column

Move to digit at bottom

NYI: Read to end of expression


Move back to last position





Music Score

Since version 21, SMB has new Braille music translation engine named “SM Music Braille”, which currently supports to translate score written in MusicXML standard into Braille. Most of mainstream music notation software’s like Musescore, Sibelius, finale etc., can export score into MusicXML file. There are many resources of MusicXML scores available on the internet like

SMMusicBraille engine is mainly developed based on the Music Braille Code documentation (MBC). However, it has variety of options to flexibly apply for New International Manual of Braille Music Notation (NIM) and for country-specific settings.

Same as other document types, in order to have a high-quality Braille score, the original print score should be well notated and exported into high-quality MusicXML format by notation software. You can read published document from DAISY Music Braille project about Tips For Engravers To Produce Braille Transcription-Friendly Scores.

To prepare for Braille translation, from the print document window, go to Insert menu, choose Music score and browse for the MusicXML file. Multiple MusicXML files can be inserted into one print document. By default, each score and a score part will be placed on a new Braille page.

For more about music Braille translation options, please see [Music Braille page] in Options dialogue.

Score info dialogue

Beside a variety of music Braille translation options from the Options dialogue, this dialogue is used to let transcribers edit some basic score information and provide custom Braille signs for part and staff names. Same as other document types, the better music score is notated and prepared, the higher quality of Braille output you get.

After inserting scores into print document, go to Tools menu, and choose Score info. Press F6 to move quickly move between score and part list.

  • Score list: all inserted scores are listed in this field. Choose one and press Tab to customize its information.
  • Tab edit controls, including title, subtitle, composer, arranger, lyricist and copyright, are to edit general information for the selected score.
  • Part(s): list all parts in the score. By default, all parts are checked to be translated into Braille. Use arrow keys to choose one and then, press tab to edit info specifically for that part. Press Space key to uncheck a part to exclude it from being translated into Braille.
  • Check all and Uncheck all buttons are used to quickly select or exclude all parts from being translated into Braille.
  • Select part edit field shows summary about parts selected to be translated for reference.
  • After selecting a part from the list, there will have four pages to edit and provide custom Braille signs for that part.  They are Part(s), Staff(s), Instrument(s), and Lyrics pages.
  • Part(s) page: to change general information for selected part.
    • Instrument type: specify an instrument type for that part. This would help application apply correct Braille options for that kind of instrument. If not provided, the application will detect instrument type automatically.
    • Part name: modify the part name in the original score. This part name is usually shown at the beginning of a part when translating with part-by-part option. While, it is shown in the instrument list as translating with full score.
    • Part abbreviation: modify the part abbreviation of original score. This is mostly used when translating with full score option. It is shown in the instrument list and in Braille score to indicator the start of that part.
    • Braille part name: provide custom Braille part name. If not provided, the application will use the original part name field. Use 6-key Braille input to enter the name.
    • Braille part abbreviation: provide custom Braille part abbreviation. If not provided, application will use the abbreviation defined in the Instruments.xml settings file. If not found in that file, it will automatically base on the original part abbreviation to generate one.
  • Staff(s) page: provide custom Braille name for each staff in a part. For instance, a part for string instrument type has multiple staves. Each staff is assigned for one player. So, beside the part abbreviation, each staff should be named to differentiate between different players.
    • Staff list: it lists staff changes in selected part. Use arrow key to choose and then, tab for further modifications.
    • Braille staff name: use 6-key Braille input to provide custom Braille staff name. For instance, with Piano right hand staff can be changed from ⠨⠜ to ⠏⠗ etc. If not provided, application will automatically apply default settings from Instruments.xml file.
    • Interval direction: set the direction to write intervals and voices from low to high pitch or in reverse. If not specified, application will apply settings from Instruments.xml file.
  • Instrument(s) page: list instrument changes in that part. For instance, Clarinet plays from bar 1 to 4, then Saxophone plays from bar 5 onwards. This page is used to provide custom Braille name and abbreviation for those changed instruments.
    • Changed instruments: use arrow key to choose an instrument change if having.
    • Instrument info: show the original name and abbreviation of that changed instrument.
    • Braille instrument name: use 6-key Braille input to enter custom Braille instrument name.
    • Braille instrument abbreviation: use 6-key Braille input to enter custom Braille instrument abbreviation.
  • Lyrics: if selected part has lyrics, it will list all lyrics and has a list to assign Braille translation table for selected lyric. For example: the part has lyric 1 written in English and 2 in Italian. You can choose lyric 1 from the list, tab to the Braille table list and choose English translation table. Then, shift+tab and choose lyric 2, tab to Braille table list and choose Italian.

If not specified any table for lyrics in Score info dialogue, by default, it will use the default Braille translation table, or the one you choose to apply for inserted music score to translate all text elements into Braille.

After editing, choose Save button. Go back to part list, select other and continue to modify.


Preparing and transcribing print document into Braille

Splitting document

This simple tool is used to split one long print document into multiple volumes. It’s useful to make multiple Braille volumes.

From print document, go to Edit menu, choose Split document. The tool will base on document heading to cut into multiple files.

On the left, is the Document structure tree view, which lists document headings hierarchically. And on the right, lists splitted volumes. Press F6 to quickly switch between these two panes. Or, use Tab, shift+tab to move between controls.

For example, you have one long document containing the 1) Preface pages, 2) three chapters and 3) index pages. The preface and index pages will be put at the beginning and end of each volume. While, each chapter will be in one separate volume file. Do the following steps:

  • From Split document window, choose New first page button, then in Document structure pane, choose Preface and press Enter to add as first page.
  • Choose New volume button, from Document structure, choose Chapter 1 and press Enter to add that section to the new volume as a starting point. Then, choose New volume again to create volume 2, then choose Chapter 2 from the Document structure and press Enter. Repeat same steps for volume 3.
  • Choose Add last page button, then choose Index pages heading from the Document structure and press Enter.

You can double-check by pressing F6 to switch to Splitted volumes. If you are satisfied, choose Ok button. The tool will create and open three new volume files. Use ctrl+tab to move between opened document windows.

Please note, splitted documents are not saved yet. So, review, make any changes and save each document. Or, can translate each document into Braille directly.

Braille encoding

In some cases, your print document has both print and Braille text. So, you just want to translate print text into Braille, while Braille text is kept intact. In addition, the Braille text is written/encoded in ascii, but you want to have it in unicode Braille.

From print document, to keep the Braille text intact: just select that text and go to Tools menu -> Translation tables -> and choose No translation.

To convert Braille text between ascii and unicode: select the Braille text, go to Tools -> Braille encoding -> and choose the preferred one (convert from ascii to unicode or in reverse).

For more information about Braille table and encoding options, please read Translation tables settings page.

Translating into Braille

From print document, just press ctrl+t to translate into SMB’s rich-text Braille, where you can freely edit, apply Braille styles or make any corrections.

Please note, due to screen readers not supported SMB’s rich-text control yet, screen reader users might not see Braille spacing is not shown correctly on Braille display. To quickly view its final output in BRF or BRL, from Braille document window, go to View menu -> choose View as BRF or BRL. Now, the formatting and spacing are shown correctly on the Braille display. Press Esc to close the view.

Or, you can view it correctly after saving it into BRF, BRL, BRA or PEF filetype.

Below are some notes about how SMB handling translation tables:

  • Default Braille table: the default one used to translate print document into Braille if the document is not specified with another table. For example, from print document, if you don’t apply any specific translation tables, it will translate with default Braille table when pressing ctrl+t.
  • No translation: to force SMB not translate selected text into Braille. In some cases, in your print document has a paragraph already translated into Braille, so you just want to ignore it and translate the rest into Braille. Then, that Braille paragraph should be selected and apply with “No translation” table from Tools menu -> Translation tables.
  • Applying multiple translation tables in one document: just select the text that you want to be translated with a specific table, go to Tools menu -> Translation tables and choose.

Applying desired translation table is workable for any selected elements of print document, including text, math equations, graphics and music scores.

Please refer to [Translation Tables page] in Options dialogue to know more on how to manage  Braille tables. By default, from Tools menu -> Translation tables, it lists few of them such as for English and Vietnamese languages.

And you can find other translation related settings in Options dialogue under Tools menu.


SMB Options Dialogue

Open this dialogue from Tools menu, where you can find most of related settings divided into pages. Press F6 to move quickly to the pane to choose setting page.

Some notes:

  • Braille dot pattern is to define dots in numbers. SMB uses the same concept of dot pattern definition as LibLouis. For instance, dot pattern 456-345, will have US ascii Braille as: “_>”, and Unicode Braille as: “⠇⠜”.


  • UI language: choose language for the application user interface. The “More” button next to it is to check for new language updates from Sao Mai’s web server.
  • 6-key input mode: choose Off to input in QWERTY method; choose FDS-JKL or VCX-M,. to input with 6-key Braille method with the dots in order of 123-456. This is only active in Braille document window.
  • Date time format: specify how SMB will format the date. For instance, yyyy/mm/dd for 2018/05/31.
  • Braille paper width (CPL): set number of Characters Per Line for Braille paper size.
  • Braille paper height (LPP): set number of lines per page for Braille paper size.
  • Hyphen: define the line continuation dot indicator. If specified, SMB will cut word at the end of the line, add this Braille sign and continue to write the word remaining on the next line. If not specified, SMB will go to next line without cutting words. UEB line continuation indicator is defined with dot 5.
  • Check for update when starting: choose to let SMB automatically check for new update every time it runs. You can manually check by finding it from Help menu.
  • Print header footer on odd page: check to translate header and footer on odd pages.
  • Print header footer on even page: choose to translate header and footer on even pages.
  • Ignore page breaks: check to skip page breaks and continue to translate text on the same Braille page. Uncheck to follow the page breaks as in print document.
  • Read image and math contents: read content of math equation and image’s alternate text. If not checked, SMB just announces “equation” for math, and “graphic” for image object.

Translation tables

  • Default Braille table: name and file of the default Braille translation table.. The “Browse” button next to it is to change to new default Braille table.
    • Translation tables list: use arrow keys to move and space key to select/unselect. Checked tables are shown in Translation tables submenu -> Tools. Next tab controls are to define Braille translation rules for selected table.
    • Table path: Name and file path of the translation table.
    • Beginning symbol: Braille dot pattern to mark as open indicator for the text translated with this Braille table.
    • Ending symbol: Braille dot pattern to mark as close indicator for the text.
    • Color: choose color in which will be displayed for the print text applied with this translation table. This would be helpful for sighted transcribers quickly view of print contents applied with correct translation tables.
  • Braille output encoding: choose between Ascii or Unicode Braille encoding.
  • Display Braille code: commonly used is North American Braille code for ascii. You might try with different display Braille code options to see if it works with your system, in case default options are not shown correctly on your computer.
  • Always save BRF/BRL as: it will convert Braille document into selected encoding whenever saving the document into BRF or BRL filetype. By default, BRF and BRL are encoding in ascii Braille.


Text Styles

Text styles are used to format and structure in print document. Some frequently-used styles are headings, bullet/numbering list, title, subtitle, normal etc.

From here, you can customize rules for SMB to translate content with specific style into Braille. Select a style from the list and define translation rules. Repeat the same steps to customize for other styles. Built-in text styles are defined based on UEB format standard. However, if you find any missing and wrong definitions, please get back to us.

  • Text styles list: choose a style to customize. This list will show all built-in, custom and available detected styles of current opened print document. Next tab controls are to define translation rules for selected style from this list.
  • First-line indent: set number of spaces from the left margin for the first line of a paragraph.
  • Child-level indent: number of additional spaces from the left margin for higher level list item, compared and counted by the list level 1. Please note, this rule is only applied for paragraph with multiple-level styles like table of content, bullet and numbering lists.
  • Left margin: number of spaces from the left margin for the remaining lines of the paragraph. Please note, this doesn’t change the indentation which is set for First-line rule.
  • Right indent: number of spaces from the right margin to the text of a paragraph.
  • Blank line before: number of blank lines inserted right before the paragraph with style.
  • Blank line after: number of blank lines inserted right after the paragraph.
  • Beginning symbol: define Braille dot pattern to mark as open indicator at the beginning of the text.
  • Ending symbol: define Braille dot pattern to mark as close indicator at the end of the text.

Font attribute

SMB currently supports to translate font attributes/typeforms: bold, italic and underline. According to UEB rules, there are three level indicators: for letter, word and passage. Text with three words and more are considered as a passage. Place the indicator before the text with font attributes and ending indicator for only the passage. Choose an attribute from the list, move on to customize its settings, then go back to the list and choose another attribute to customize if preferred.

  • Font attribute list: choose font attribute to customize.
  • Show symbol: choose “Hide” to not detect and indicate font attribute for any text with font attribute. “Only normal” is to indicate for text with normal style. “Normal, headings” is to indicate for both text with normal and heading styles.
  • Letter: Braille dot pattern to indicate letters with the font attribute.
  • Word: Braille dot pattern to indicate words with the font attribute.
  • Phrase: Braille dot pattern to indicate the beginning of a passage with the font attribute.
  • Ending symbol: Braille dot pattern to indicate the ending of a passage with the font attribute.

Table Of Contents/TOC styles

SMB will base on document headings to generate Table Of Contents (TOC). Go to Tools menu -> Table of contents, and choose:

  • Generate TOC: to create table of contents based on settings defined in this TOC styles page.
  • Update TOC: to update existing table of contents with any changes since the last TOC generated.
  • Delete TOC: to remove existing table of contents.


Below are TOC settings page:

  • Place TOC at: choose position in a document to insert table of contents.
  • Show levels: up to what level of heading style to be included.
  • Show page number: include page number for each TOC item.
  • Tab leader: choose symbol used for tab to separate between TOC item and its page number (mostly applied for TOC in print document).
  • Centered text: the heading text written at the first line.
  • Left column text: text to mark as table column header for TOC’s items.
  • Guide dot: Braille dot pattern used to separate between TOC’s item and its page number.
  • Right column text: text to mark as table column header for TOC’s page numbers.
  • Braille page number prefix: dot pattern to be inserted right before Braille page number.
  • Print page number prefix: dot pattern to be inserted right before print page number. It’s only active in Braille table of contents.
  • Add print page number in TOC: place the page number of print document together with Braille page number.

Data Table Styles

Note: Braille table style feature is being redesigned to be more flexible to different Braille code standards. So, information below is mostly for reference.

Currently, SMB supports to convert into two Braille table styles, the listed and row-column styles. The listed one will convert table row by row and place the three dots 5 to separate between columns. While the row and column style will try to keep its appearance same as table in print document with adding of row and column separator signs.

  • Left right margin: number of blank cells from the left/right margin to table text (applied for row and column table style).
  • Top bottom margin: number of blank rows from the top/bottom margin to the first line text in the table (applied for row and column table style).
  • Row separator symbol: specify Braille dot pattern to separate between table rows. Leave blank will not add the separator line (applied for row and column style only).
  • Column separator symbol: specify Braille dot pattern to separate between table columns. Leave blank will not add the separator column (applied for row and column style only
  • Convert table to text: check this to translate table in print documents into Braille listed style. Uncheck to convert into row and column styles with previous settings for table translation options.

Math equation

To toggle reading math content reading document (not in math navigation mode), go to Options dialogue, General page and check “Read content: image, math...” option to have it read; or, uncheck to have SMB just announce “equation” for math, and “graphic” for image.

  • Braille code: choose math Braille translation code such as Nemeth or UEB.
  • Speech style: more structured or simple to have screen reader speak.
  • Speech verbosity: choose how much info for screen reader to speak.
  • Navigation mode: choose the way that screen reader will speak. Modes are listed below. Please note, this navigation mode is activated by pressing Shift+F5 when cursor is at the equation in print document.
    • Enhanced mode: Navigation is by mathematically meaningful pieces (operators, delimiters, and operands).
    • Simple mode: This moves by words except when you get to a 2D notation (fractions, roots, …), then it speaks the entire notation. Zooming in lets you explore the 2D notation in the same mode. Zooming out or moving out of the 2D notation brings you back to the outer/higher level of navigation.
    • Character mode: This is actually two useful modes -- word mode and character mode (zoom in to get "real" character mode). Moves by words/characters. This differs for numbers of more than one digit and function names such as "sin" that are multiple characters. Otherwise, word and character navigation are the same.
  • Navigation verbosity: how much info to read for selected mode.
  • Navigation indicator: whether to place dot pattern 7-8 in Braille output.

Music Braille

SM Music Braille translation engine is developed based mainly on Music Braille Code (MBC) and the New International Manual of Braille Music Notation (NIM). So, for more details, please check those materials.

This user guide just describes shortly about main features’ options.

Music Braille settings are saved in profile with .profile file extension. In each music Braille option sub-page, there are buttons:

  • Use default profile: use the default profile file for transcribing scores into Braille, which comes with SMB.
  • Load profile: choose saved profile file to use for transcribing music Braille.
  • Save profile: after making changes in Music Braille pages, click this button to save as a new profile. Otherwise, if click Ok, it will save in currently loaded profile.


  • Default format: support bar-over-bar, line-over-line and section-by-section formatting method. It will have different Braille layout for each format type. Some specific options will appear depending on format type you choose. For instance, section-by-section and line-over-line will have option to set how many measures per section.
  • Measure numbering: numbering the first measure of every parallel. Available for bar-over-bar and line-over-line. Option name with “auto” means that the engine will number in order from one to higher. While “print score” options, engine will respect measure numbering of the score.
  • Transcription mode: choose Single part mode to translate part by part; or, Orchestra/Chamber types as full score; or Solo with accompaniment which contains solo melody and an accompaniment.
  • Number of measures: choosing “Auto” will use same calculation as bar-over-bar for line-over-line; and will base on system breaks to divide number of measures per section for section-by-section format. Otherwise, you can specify exactly how many measures should be on one section. Please note, Braille parallel/section breaking feature works closely with “Break to new parallel” options from Format setting page.
  • Place title page at: when translating multiple-part score with single-part transcription mode, this will write title page info at the beginning of each part. Title page contains song info such as song title, subtitle, composer, arranger, part name etc.
  • Write additional lyrics: whether to write all lyrics together with notes on separate line, or just lyric 1 and additional ones will be written at the end of that part.
  • Write chord symbols: whether to write chord symbols in line with notes, or on separate line right below note line.
  • Always mark octave at first measure note: force to state octave sign before first note of a measure.
  • Restate key sign: to restate key signature at beginning of every new parallel on each staff. This option is mostly used in full score translation mode.
  • State key sign without cancellation: when changing key sign from among flats and/or sharps, if not checked, it will reset to natural accidental(s) and then the new key signature. By default, it will state directly the new key sign without resetting to natural accidentals.
  • Insert blank line between sections: separate parallels/sections with one blank line.
  • Each part on new page: whether to continue write new part on current Braille page or force to a new one.
  • Each score on new page: whether to continue write new score on current Braille page or force to a new one.
  • Keep parallel together: when there’s not enough space to write whole parallel/section, it’s moved to new Braille page.
  • Show line number: state print line number on the second staff line in single instrument transcription mode . Or, state on a separate Braille line in orchestra/chamber full transcription mode.
  • Show page number: choose the position to state print page number, or choose “Off” to not show it. Please note, print page number here refers to the original print score, not the Braille page number which is handled independently from header/footer window of SMB.
  • Start page numbering from: specify the number that starts to number the first page of score.
  • Break to new sections: list of checkbox options to set condition when the engine should break passage to new parallel/section.


This sub-page is divided into option groups:

  1. Show/hide sign: a checkbox list containing options to toggle whether to translate Braille signs for different music elements. For instance, if uncheck articulation, articulation elements like staccato, accent will be not translated into Braille.
  2. Slur and tie:
    1. Only tie for both slur and tie: when both slur and tie are presented at the same location, check this option to use only tie sign.
    2. Use long slur bracket: if checked, slur bracket with dots 56-12 and 45-23 is used for long passage. Otherwise, note slur with dots 14-14 is used. However, for nested slurs, first slur passage is always forced to use long slur bracket.
    3. Grace slur with dots 56-14: if checked, it uses dots 56-14 for graced notes with slur. Otherwise, normal note slur with dot 14 is used.
    4. State tied-into tie: if checked, dot pattern 46-56-14 is stated before the note with tie without starting note. If not checked, it’s ignored.
    5. State l.v tie: if checked, dot pattern 56-14 is stated after the note with tie without ending note. If not checked, it treats as normal tie.
    6. Restate slur and tie: this is to restate slur and tie before first note of a parallel line if that note is slur stop and/or tie stop.
    7. Slur position in chord: some countries prefer placing slur sign right after written note of a chord to placing after the last interval sign.
  3. Multiple voices: handling multiple voices on multiple staves.
    1. In-accord mode: Choose “Full” to use full in-accord only; “Partial” for both full and partial in-accord; or “Partial and stem” for the application of all modes (stem signs + partial and full in-accords). The engine will base on the print score to decide when and what are applicable for stem signs or partial in-accord.
    2. Apply partial in-accord for whole beat: whether to use partial in-accord method when partial beats are in even range (1, 2 or 3 beats range etc.), not in odds (1.5 or 2.5 etc.). Not available for “Full” in-accord mode.
    3. Apply partial in-accord for whole tuplet: if checked, whole tuplet must fully belong to the partial in-accord or combined note passage in order to apply partial in-accord mode. Otherwise, it will apply full in-accord mode. This option is not available for “Full” in-accord mode.
    4. Show hand sign when changing staff: whether to show left/right hand when a voice changes from treble to bass staff or vice versa.
    5. Add supplement accidental in other voices: restate accidental with cautionary dot 5 to make clearer of the accidental case in measure with multiple voices.
    6. Combine voices into chords: when notes on voices on same staff meet certain conditions such as same length, same slur/tie status etc., they are combined to write as chords instead of applying in-accord mode.
    7. Rearrange fingerings to correct notes: in some non-standard notations, multiple fingerings are notated on only one note but actually they are assigned for other notes from different voices at the same duration position. This option will attempt to move and reassign fingerings to correct notes.
  4. Offset handling: calculate offset and apply stem sign for direction and chord symbol. In some cases, direction and chord are with offset to specify playing time not exactly as the time of played note. So, stem sign will demonstrate these duration offset values.
    1. Depth of stem: the deeper value is checked, the more detailed is presented with stem signs.
    2. Apply stem for direction: the engine always checks for offset value and move the direction to right position in Braille score. This option is just for whether to present stem sign or not.
    3. Apply stem for chord symbol: the engine always checks for offset value and move the chord symbol to right position in Braille score. This option is just for whether to present stem sign or not.
    4. Apply stem sign for figured-bass: weather to state stem sign for figured bass with special offset duration.
  5. Doublings: a checkbox option list to choose to apply doubling for different music elements. It supports doubling for following Braille music signs: tuplet, slur and chord tie, articulations, graces and cue, noteheads, harmonics, trill, tremolos, up and down bows, strings, arpeggiates and intervals.
    1. Only doubling chords with same interval pattern: if not checked, interval doubling is handled separately one by one. If checked, all chords must have same intervals. For example: 4 chords have same interval pattern of interval 3+interval6. If a chord has interval 3+interval6+interval7, that breaks the same pattern.
    2. Stop doubling at the end of parallel: if checked, doubling is always stopped at the end of a parallel/section, even it’s continued on the next parallel. If not checked, it will not state the ending doubling sign, but is reset the doubling from the beginning of next parallel.
  6. Note grouping: there are two note grouping types (regular and irregular). Regular type is to write first group note in correct shape and the rest in 8th note shape. Irregular bases on irregular rhythm to mark with Braille music comma.
    1. Mode: “off” to ignore note grouping; “regular” to apply only regular method; “Irregular” to apply only music comma for irregular beamings; and “Both” to apply in combination of both regular and irregular ones.
    2. Treat no-time signature as: when a score has no time signature, this option will tell the engine to process that score as irregular, beat-type=Quarter note  or beat-type=8th note.
  7. Interval direction: “Default” will automatically handle direction to write chord intervals and order of voices based on treble and bass staves as well as settings for each instrument type of different transcription modes. “Up” will handle all from low to high pitch. And “Down” is from high to low pitch. In addition, you can specify the interval direction for a staff from Score info dialogue.
  8. Repetition: set options for repetition cases.
    1. Measure repetition: “Off” to not apply full measure repeat. “Single voice”, only apply for measure with one voice per staff. And “Multiple voices”, apply repetition for measure with both single and multiple voices.
    2. Partial measure: set beat depth for the engine to check for repetition within a measure. Choose “Off” to ignore partial measure repetition.
    3. Partial for undividable time: check beat by beat or all possible repeated beat ranges from longest to shortest based on minimum beat depth set in partial measure repetition option.
    4. Level of partial: this option works conditionally with the beat depth option. Level 1 will not have two adjacent partial repetitions with different durations. Level 2 can have two adjacent repetitions with different durations and so on.
    5. Partial repetition for beats not in whole: if checked, it will apply partial repeats for odd beats as well, such as beat 2.5-3.5 repeats 1.5-2.5.
    6. Apply in-tuplet: whether to check and apply repetition within a tuplet.
    7. Count-back repetition: if checked, count-back method is used to repeat a measure passage. This method is only applied within a parallel or section. An example of count-back case: bars 5-6 repeats bars 1-2. It means: counting back 4 measures and repeating 2.
    8. In-order numbering repetition: if checked, this method is used to repeat a measure passage. This method can be used to repeat from other parallels or sections. An example of in-order numbering method: bars 5-6 repeat bars 1-2. So, at bar 5 location, just number the bars 1-2.
    9. Repeat from other parallels: if checked this option and in-order numbering method is also checked, a current measure passage repeated from previous parallels or sections is stated. If not, it just checks for repeated passage within a parallel/section. This option is only available in orchestra/chamber full score translation mode.
    10. Multiple-staff repetition condition: choose whether to state repetitions when all staves have same repeated measure length and same starting point; or, just check and state within its own staff. By default, bar-over-bar format is required to have same repetition starting point and length. While, line-over-line and section-by-section are handled by within each staff. Choose “Auto” to have the engine handle automatically based on different format methods and transcription modes.
    11. Repeated measures: this edit spinbox to specify minimum number of repeated measures to be valid to state.


This setting page has options for specific instrument types.

General group:

  • Octave-shift direction handling: when print score has octave-shift direction up or down 1 or 2 octaves, there are few options to translate into Braille: 1) Just translate with its real pitch (without octave-shift indicators). 2) Mark an additional octave sign of original print score right before real pitch octave sign at the octave-shift direction change. And 3) Indicate with VA/VB or MA/MB word direction.

Harp instrument group:

  • Harp pedal diagram: choose to write Harp pedal diagram on a separate line, or in line with notes, or not showing.

Wind/brass instrument group:

  • Translate “+” text as stopped: if checked, word direction=”+” is automatically converted into stopped technique with dots 126-12 for wind and brass instrument type.

String instrument group:

  • Translate “+” text as left-hand pizzicato: if string instrument detected, word direction=”+” is automatically converted into left-hand pizzicato sign with dots 456-345.
  • Translate stopped technique as left-hand pizzicato: stopped technique is automatically converted as left-hand pizzicato.

Pluck instrument group:

  • Translate “PIMA” text as pluck technique: if pluck instrument like Guitar detected, word directions are PIMA are automatically converted into correct plucked fingers.
  • Change to correct playing octave: if checked, score is marked with correct playing pitch instead of pitch shown on original print score.

Text direction

This page is to manage options for different music text categories defined in wordsDictionary.xml file. And it will apply translation settings for each category. Current supported categories are tempo, dynamics, hairpins, repetition and common text.

  • Process dictionary:
    • Off: translate all text in line with notes.
    • Default text: detect and apply translation settings for each default text category.
    • Default and custom text: the custom text option is as experimental. It will detect and apply translation settings for custom text definitions before the default text.

Signs/lines order

Please note, changing either signs or lines ordering in this page should cause unwanted translation result.

This page has two Signs and Lines lists.

Signs list: to adjust the position of Braille signs for associated elements of a note item. For example: by default, “articulation” sign is placed before “note type”. “note type” of C quarter note in Braille is dots 1456. From this page, you can move articulation to after the note type etc.

Lines order: some readers might prefer to sort out music lines, for instance, to have lyrics line before notes line; or chord symbols line below lyrics line etc. So, you can arrange the order of those lines here.

Please note, tempo text, harp pedal and word written below lines should be kept in its default position at order of 1, 2 and 8.


Support and Feedback

We are a small non-profit organization based in Vietnam. We mainly rely on project grants to carry out activities to support for visually impaired people. We need your help to keep the work going on to better support the visually impaired people.

Please get in touch with us for any matters with the contact info below:

Sao Mai Center for the Blind

Address: 52/22 Huynh Thien Loc, Hoa Thanh, Tan Phu, HCM, Vietnam.



Subscribe/follow our channels below:

Subscribe to receive announcements from us by sending a blank email to:

Email discussion list:






Chia sẻ bài này qua: