Charlieplexing

The 'common rail' is just another digital output pin so it can be set HIGH or LOW as you want to drive the pair of diodes forwards or backwards.

Because the rail is common to all the other diode pairs you will need to control all four diode pairs in parallel, but that's just a matter of managing the timing.

If I was implementing that I would generate a fixed frequency square wave on the 'common rail' and at the start of the 'high' part of that cycle I'd turn on all the odd LEDS, and then turn them off after an interval corresponding to the desired duty cycle for each LED; then do the same for the even LEDs during the 'low' part of the cycle. All it needs is an array of timer values and a couple of FOR loops to do the timing, using the approach demonstrated in the blink without delay example.