Simply casting the bytes to a struct can lead to crashes because of unaligned reads, and is also missing the endianness swapping that is necessary on big endian architectures. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8042>