I'd use 'encoded as 15:17', or 'packed' is fine here as well.
I'd also recommend being explicit about which 15 and 17 bits are used rather than using 'first' and 'last', because that may mean different things depending on the platform endianness. You could say 'Bits 0:14 store the sequence number, while bits 15:31 store the shot number'. That makes it far easier to reason about how to access each piece of data in the combined 32 bits.