And for 28 teams, it may well be that the algorithm will take too long to find even the first example.
Same for 24 players, it will probably take too long to find there's no solution so I manually made it stop at the position where it begins to loop for a while.
Anyway, it turns out that the problem wasn't exposed to me the correct way.
In a round, there are 4 teams per game BUT it's divided in two matchs played in parallel.
With the algo, some tweaks, and manual operations, I finally managed to make my schedule with all the constraints.
By the way, there's a mistake in the sheet you linked for 24 players :
in round 3, third combination, A4 meets B7 again (R1 fourth combination)
Thanks again for help and explanations.