30 if (
length < 3)
return false;
31 const uint8_t entity = bytes[0], attribute = bytes[1];
32 const uint8_t* text = bytes + 3;
34 if (entity == 2 && (attribute == 0 || attribute == 2)) {
36 const size_t count =
size < 31 ?
size : 31;
38 memcpy(next, text, count);
39 if (strcmp(target, next) == 0)
return false;
40 memcpy(target, next,
sizeof(next));
43 if (entity == 0 && attribute == 1 &&
size >= 2 && text[1] ==
',' && text[0] >=
'0' && text[0] <=
'3') {
44 const bool nextPlaying = text[0] !=
'0';
45 if (
playing == nextPlaying)
return false;