Skip to content

Commit

Permalink
Some logging for long messages that might fail.
Browse files Browse the repository at this point in the history
If we find them, then we will do somethign about it.
  • Loading branch information
davidmoreno committed Sep 14, 2024
1 parent 9464975 commit 84ecafb
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions lib/rtppeer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -668,14 +668,23 @@ void rtppeer_t::send_midi(const io_bytes_reader &events) {
buffer.write_uint32(timestamp);
buffer.write_uint32(local_ssrc);

auto events_size = events.size();
// Now midi
if (events.size() < 16) {
if (events_size < 16) {
// Short header, 1 octet
buffer.write_uint8(events.size());
buffer.write_uint8(events_size);
} else {
// Long header, 2 octets
buffer.write_uint8((events.size() & 0x0f00) >> 8 | 0x80);
buffer.write_uint8(events.size() & 0xff);
DEBUG("Send long message: message_size={} bytes", events_size);
if (events_size > 1400) {
WARNING("MIDI message too long, may fail on UDP. message_size={} . If "
"find any problem report an issue to "
"https://github.com/davidmoreno/rtpmidid/ .",
events_size);
}

buffer.write_uint8((events_size & 0x0f00) >> 8 | 0x80);
buffer.write_uint8(events_size & 0xff);
}

buffer.copy_from(events);
Expand Down

0 comments on commit 84ecafb

Please sign in to comment.