PG Music Home
I like to save the biab songs as midi files with chord names as lyrics so I can play them by my Yamaha keyboard. When I use the option "Save special, midi file, write lyrics in GM format", those midi files will play by Yamaha but no lyrics in the display. I want to read the chord names with each bar.

I looked to the forum but couldn't find a topic about this.
Originally Posted By: Jan Ronday
.. "Save special, midi file, write lyrics in GM format" ....
¿Qué?
Yes. Left top corner: file/save special/ save song as midi file/ etc. Is that not the right way? But the lyrics (chord names) are not on the Yamaha display. I understand it should work. How?
Guess a karaoke midi expert here should be able to tell you more. You can export the chords ad midi data on a track (number 9?) as option somewhere, but lyrics?
Did you enter the chord names as lyrics in your BIAB file, or were you expecting BIAB to do that for you? I don't believe it currently does. Also, there is currently no MIDI standard for chord name designations, so the chords from the chord grid does not get exported out of BIAB into a MIDI file.

The setting you selected, "Write Lyrics in General MIDI Format" is used strictly to either save lyrics in the standard MIDI format or in the older proprietary PGMusic format (not really used anymore). It has nothing to do with the song chords (unless, of course, you have manually entered them as lyrics on the lyric line.
Jan,

As far as I'm aware, chords from the BIAB chord sheet cannot be automatically converted to lyrics and saved in a midi file.

I'll investigate this further but it's not an option that I remember seeing (not that that means it's not available).

It would certainly be possible to enter the chord symbols in the lyric line manually and this would only take about 10 or 15 minutes for most songs. It's not a challenging process.

What did you read that led you to the conclusion that "I understand this should work"? If I know this, it might help me solve the problem.

Regards,
Noel


Thanks everyone for your feedback. I think I am wrong about it should be possible to save the chords grid in midi files as lyrics. I will try to enter the chord names as lyrics. I am not using a melody part in my songs. Just bass, drums and piano. Is that a problem to create lyrics?
Originally Posted By: Jan Ronday
Thanks everyone for your feedback. I think I am wrong about it should be possible to save the chords grid in midi files as lyrics. I will try to enter the chord names as lyrics. I am not using a melody part in my songs. Just bass, drums and piano. Is that a problem to create lyrics?


No, not at all.

In version 2018 (Windows) of BIAB...

1. go into Editable Notation Mode

2. right-click on the staff where you'd like to add the chord

3. select 'Insert lyrics' from the menu

Regards,
Noel


I inserted the lyrics. I can see them on top of the bars. I saved the song with midi format 1/0/KAR. None of the midi files are showing the lyrics on my Yamaha. I can't find in the Biab Help what I do wrong.
I think I found a solution or work around. When I insert the lyrics as Section Text this will be displayed on my Yamaha on the bass clef. In lyrics mode too but there is no space between the chord names. But I am happy for now. I will work on it, but not tonight. It is late in the evening.
Jan, I think you just discovered an excellent workaround for getting the chords in a midi file, write them as lyrics. I know I never would have thought of that because I don't sing, I ignore anything to do with lyrics. Good job!

Bob
Does the Yamaha show Midi Markers ?
In RealBand you can insert Markers in the Midi file (still waiting for that request "Chords to Midi Markers").

Biab exports the chords in MusicXML as Notation Events, if you drag a musicxml file into Reaper, split it to separate tracks then open a track in the midi editor by double clicking it, down the bottom where the velocity lane is, add a Notation Events lane and you will see the chords.
You can copy the chords from the Notation Events lane to the Text Events lane, then save the track to midi and import back into Biab or do it all in Reaper.
See how you go with that, I could probably put a script together for you to copy Notation Events to Text Events in Reaper.

You could also Opt > Prefs > Chord Output > Save in Midi file
Save As Special ABC > Chords only
then http://www.pgmusic.com/forums/ubbthreads.php?ubb=showflat&Number=372872
choose the BB Chord Output to sync the lyrics (ABC Chords, clean the text up wordpad to remove the characters you don't need).
You can also get chords from the big lyric window Print > Copy to clipboard, you just need to add 1 lyric in the track to get it to copy the chords.
This will insert the chords as lyrics where the chord changes occur in the BB Chord Output track.
But hey, it should just do all this in BB/RB.

Attached picture Reaper-NotationEventsChords.png
This is a lot of information and solutions. Thanks. I will try them all but that will take some time. Thank you.
In Reaper Menu > Actions > Show Action List > Reascript > New
copy and paste code below,
select a track from the imported musicxml
in the Reascript window > Ctrl+S to save and run script
close script window
to run the script next time just type the name you save it to in the filter box
in the midi editor File > Export to New MIDI file
Biab File > Import > Import Melody from MIDI file.
You can also import the Midi from Biab into Reaper and copy the BB Chord Track Midi notes to any one of the musicxml track replacing the existing notes, this will give you a BB Chord Track as well as Chord Lyrics.

Code:
reaper.Undo_BeginBlock2(0)
reaper.Main_OnCommand(40421,0) --Item: Select all items in track 40421
reaper.Main_OnCommand(40153,0) --Item: Open in built-in MIDI editor (set default behavior in preferences) 40153
take = reaper.MIDIEditor_GetTake(reaper.MIDIEditor_GetActive())
reaper.MIDI_Sort(take)
MIDIOK, MIDI = reaper.MIDI_GetAllEvts(take, "")
tChords = {}
stringPos, ticks = 1, 0
while stringPos < MIDI:len() do
    offset, flags, msg, stringPos = string.unpack("i4Bs4", MIDI, stringPos)
    ticks = ticks + offset
    if msg:byte(1) == 0xFF then
        chord = msg:match("text (.+)")
        if chord then
            tChords[#tChords+1] = {chord = chord, ticks = ticks}
        end
    end
end

for i = 1, #tChords-1 do
    
    reaper.MIDI_InsertTextSysexEvt(take, true, false, tChords[i].ticks, 5, tChords[i].chord)
     
end
reaper.Undo_EndBlock2(0, "Convert Notation Event Text to Text Events", -1)



Or in Karakan select the BB Chord Output track, (you can add bar numbers or bar characters with the chords, just join them so there are no spaces \1.|Bm|\2. \3.|Em|\4. or |Bm///|//// |Em///|//// or ??? )



Attached picture KK-Chords.gif
Attached picture Reaper-NotationEvents-to-TextEvents.png
Thanks Pipeline, but sorry this is too much information for me. I like to do it in BB only. Or is that not possible? Can you please mention again the steps to follow just by simple instructions.
-----------
Update: I discovered MixMaster. Easy tool to edit midi files. I can add Chord Names and Text Events. The midi files saved in BB and loaded into MixMaster do not contain text or chord names. I will try this tool and hope I can see the chord names as lyrics on my yamaha piano.
That MixMaster looks good and it's donationware.
But it will take a lot longer than the other to methods.
I think the easiest way right now is save the midi file and save to ABC.

1. Download Karakan https://sites.google.com/site/karakankaraoke/

2. Biab > Options > Preferences > OutputChords (see pic below)

3. Biab > File > Save Special > Save Song as ABC Notation

4. Drag ABC file into NotePad

5. Notepad > Edit > Replace > copy the characters you don't need
and paste in "Find What" and in "Replace With" leave blank to remove or add new character to replace with. If your chords have numbers in them find 7 replace with \7
6. Open Karakan > open the midi saved from Biab > Select Voice track > BB Chord Output.

7. Copy and paste the chords from notepad into Karakan > Play Karakan

8. Karakan menu > Karaoke > Save to MIDI file with Lyrics


Attached picture BB-Chord-Output.png
Attached picture Notepad-ABC.png
Attached picture Notepad-ABC-2.png
Attached picture Notepad-ABC-3.png
Attached picture Notepad-ABC-4.png
There's also this http://www.pgmusic.com/forums/ubbthreads.php?ubb=showflat&Number=431852#Post431897

more..

Attached picture Notepad-ABC-5.png
Attached picture Notepad-ABC-6.png
Attached picture Notepad-ABC-7.png
Thanks Pipeline. You spend a lot of time to help me, and other members I guess. I will try this today. A real challenge.
-------------------
Update: it works. The only issue is that because of the 2-bar lead in the lyrics (chord names) and score is not in sync during playing on the Yamaha. It is in sync with the Karakan tool. But I will figure out that.

Thank you. I am very pleased.
Try PSRUTI http://www.heikoplate.de/mambo/index.php?option=com_content&task=blogcategory&id=67&Itemid=83
http://www.heikoplate.de/zips/psruti817_setup.zip
http://www.heikoplate.de/pdf/psruti_eng817.pdf

I saved a bb song to mid in Biab with Options > Prefs > Chord Output
Open midi in PSRUTI
Compute Chords, choose BB Chord Output channel and Save as text
Chords/Lyrics Import/Export > Import the exported text as lyrics
Save As midi file.

If you Output Chords during Lead In you will get the chords on bar -1 and 0
Or Midi Option uncheck Include 2 bar lead-in



Attached picture BB-Output-Chords.png
Attached picture PSRUTI01.png
Attached picture PSRUTI03.png
Attached picture BB-Midi-Options.png
Wow!

Pipeline, I'm blown away by your incredible tutorial.

It's outstanding work.

Noel
Just trying the BB Chord Output to see how accurate the midi chords that BB output are.
Here's an sgu with all bb chords https://www.dropbox.com/s/jmczuttw335esc2/BB%20All%20Chords.SGU?dl=1

In RapidComposer I can edit the Chords and add aliases, but I don't think there is and option in BB to correct any.

Attached picture All-BB-Chords-Compare2.png
Attached picture RC-Chord-Edit.png
I think the easiest way to save all of this messing around is to have an option in Midi Options to Include Chords text makers and Include Chords as Lyrics:

Attached picture BB_Midi-Options-Chords-Export.png
© PG Music Forums