## Design Details The folowing points will be implemented in MATLAB ### Sender's Side: * Convert the video stream into frames. * Separate each frame into Y, U and V components. * Change the position of all pixels in three components Y, U and V by a special key. * Convert the message which is to be sent to a one dimension array, and then change the position of the whole message by a key. * Encode each 4 bits of the message using Hamming (7, 4) encoder. * The result of the encoded data, which consists of 7 bits (4 bits of message + 3 bits of parity) is XORed with the 7 bits of random value using a key. * The pixels are then repositioned to the original locations and the video is rebuilt. ### Receivers's Side: * Convert the video stream into frames. * Separate each frame into Y, U and V components. * Change the position of all pixel values in the three Y, U, and V components by the special key that was used in the embedding process. * Obtain the encoded data from the YUV components and XOR with the random number using the same key that was used in the sender side. * Decode 4 bits of the message by the Hamming decoder. * Reposition the whole message again into the original order. * Convert the message array to two dimensions.