I have to admit that I would have probably gone for the naive approach, but I took the question as a challenge and had that idea.
One detail that I am not sure of is how the grouped conv groups the channels. Does a Conv1d(100*m, 10*m, 1, groups=m) use the first 100 channels input to produce the first 10 channels output? Or do the first m channels of input & output all belong to different groups? I suspect the former, but I don’t know.