Hi,
Second guess (which is probably it :-) ): In general, batman-adv (re)broadcasts a multicast packet three times on an interface. To ensure proper reception even over multiple hops.
PS: As you are compiling batman-adv yourself, you might want to try different values for BATADV_NUM_BCASTS_WIRELESS in main.h to (in)validate this hypothesis.
This was indeed "the problem". Setting that value to 1 allowed much more throughput. Is the value 3 just an arbitrary number to "ensure" reliability? Because that would mean that if dropping some multicast packets now and then is not really an issue, I could just set this to 1 in my case.
-- MVH Ignacio Quezada