UDPStreamViewer is a Java Swing application designed to receive and display real-time images via the UDP protocol. It provides a dynamic interface for visualizing live video streams transmitted over UDP.
- Dynamic Live Streaming: The application continuously updates to display the live video feed as it receives images from the UDP stream.
- Configurable IP and Port: Users can configure the listening IP address and port number directly within the interface to match the UDP stream source.
- Logging: Server activity and image updates are logged to provide feedback and assist with debugging.
- Image Packet Combining: The application includes a system that can reassemble fragmented image data transmitted over multiple UDP packets, combining them into a complete image.
- Test Module: A separate test module is available for testing image sending functionality over UDP.
.
├── src
│ └── main
│ └── java
│ └── com
│ └── udpstream
│ ├── # Core UDP stream functionalities and the Java Swing interface.
│ └── test
│ └── # Test cases for the image sender and stream functionalities.
├── pom.xml # Maven project configuration
- Java 17 or later
- Maven installed
-
Clone the Repository:
git clone https://github.com/PaulDebril/UDPStreamViewer.git cd UDPStreamViewer
-
Build the Project: Use Maven to compile the project and manage dependencies.
mvn clean install
-
Run the Application: After the build, you can run the application with the following Maven command:
mvn exec:java -Dexec.mainClass="com.udpstream.Main"
-
Configure IP and Port:
- On launching the application, configure the IP and port of the UDP server by entering the required details into the input fields.
- Once configured, the application will listen for incoming images and update the interface dynamically.
To test the image streaming functionality, there is a sender application available. This application allows you to send images over UDP to your receiver application for testing purposes.
The "UDP Image Sender" provides a graphical interface (as shown in the image) where you can configure the IP address, port, the folder containing the images, and the frames per second (FPS) to send. Use this tool to test the receiver by sending image data over UDP.
- IP Address: Specify the IP address of the machine where the receiver is running.
- Port: Specify the port on which the receiver listens for incoming data.
- Images Folder: Provide the folder path containing the images to be sent.
- FPS: Define the number of frames per second for the transmission.
Once configured, click on "Démarrer l'envoi" to start sending images. You can stop the transmission at any time using the "Arrêter" button.
This project is licensed under the MIT License - see the LICENSE file for details.