To be more useful, the first index is always time ascending w.r.t. to the input (it doesn’t make much sense to get a concatenation of the forward step for t=0 and the backward step for t=seq_len-1), so output[t, b] corresponds to the output after input[t, b] has been read.
Best regards
Thomas