DC and AC are sent together, the receiver can determine whether to use DC Huffman or AC Huffman because it knows whether the block has ended or not. for every new block, a new DC value is sent, which is a DC Huffman and the actual differential value. then the values for AC run-length/bits value is sent and then the actual value of the first none zero AC. if the block is ended (all 64 are sent or the rest is zero and EOB symbol is sent) the receiver knows that the next value is DC.