This project implements video steganography, allowing you to hide secret messages within video files. It consists of two main components: an encoder to hide messages and a decoder to extract them.
- Hide text messages within video files
- Extract hidden messages from steganographic videos
- Minimal impact on video quality
- Works with MP4 video format
- Python 3.x
- OpenCV (cv2)
- NumPy
- Clone this repository or download the source code.
- Install the required dependencies: -- pip install opencv-python numpy
To hide a message in a video:
- Open the
encoder.pyfile. - Modify the following variables at the bottom of the file:
input_video: Path to your input video fileoutput_video: Path where the steganographic video will be savedsecret_message: The message you want to hide
- Run the script:
To extract a hidden message from a video:
-
Run the
decoder.pyscript: -
When prompted, enter the binary message extracted from the video.
The encoder hides the message by modifying the least significant bit of each color channel in the video frames. It adds a 32-bit zero sequence as an end marker.
The decoder extracts the least significant bits from the video frames and reconstructs the hidden message. It stops when it encounters the 32-bit zero sequence end marker.
- The current implementation works with MP4 videos.
- The message length is limited by the video size and duration.
- Excessive compression or modification of the steganographic video may corrupt the hidden message.
- Add error handling and input validation
- Implement a graphical user interface
- Support for other video formats
- Enhance security with encryption
- audio steganography
- image steganography
- video to image steganography
This project is open-source and available under the MIT License.
Contributions, issues, and feature requests are welcome. Feel free to check issues page if you want to contribute.
- PappuWalker
- OpenCV library
- NumPy library