and how do you imagine distinct between a large download which can
finished one hour later and nobody cares or streaming?
and whenever you manage it - it's something that need to be fixed and
changed ASAP sou will have a moving target
Streaming service never runs flat out, you have to observe data rates.
Amazon max. data rate is barely 20Mbps for example.
Whereas data download usually saturates whole line. It is not perfect
QoS but it worked on 500Mbps cable Internet for me.
Mikrotik also have so called "Layer 7" filtering designed specially for
filtering per service requests that requires lots of resources to
inspect packets.
I think netfilter allows such filtering as well.