MediaPlayer-MIU is a video player application developed in C++ as part of our Data Structures & Algorithms Course by a team of 5 members. The project utilizes Doubly Circular Linked List, WinForms, and Windows Media Player (WMP) for managing the playlist functionality.
- 🎥 A user-friendly interface for managing and playing video files.
- 🔄 Dynamic playlist powered by a Doubly Circular Linked List.
- 🎛️ Custom playback controls, including play, pause, shuffle, and volume control.
- 💻 Sleek, modern design; However, limited to WinForms' functionalties.
- ⌨️ Keyboard shortcuts for quick media control: Right Arrow (→): Skip forward by 5 seconds. Left Arrow (←): Skip backward by 5 seconds. K: Pause or play the video. M: Mute or restore sound. Up Arrow (↑): Increase volume by 5 (maximum 100). Down Arrow (↓): Decrease volume by 5 (minimum 0). Delete: Delete the current video from the playlist. F: Toggle fullscreen mode. S: Take a screenshot of the current video.
Application Overview:
MediaPlayer-preview-final.mp4
- Visual Studio with C++ development tools.
- Ensure
AxInterop.WMPLib.dll
is referenced in your project. - WinForms library configured in your Visual Studio environment.
-
Clone the Repository
cd "Preferred Directory" git clone https://github.com/mohamedelziat50/MediaPlayer-MIU.git
-
Open the Solution Open
MediaPlayer-MIU.sln
in Visual Studio. -
Build the Solution Navigate to
Build > Build Solution
to compile the project. -
Add Missing Dependencies Add Windows Media Player (WMP) through the Toolbox or References if not pre-configured.
-
Run the Project Use
Start
in Visual Studio to launch the application.
If you're new to WinForms, follow this guide to set up and configure WinForms in Visual Studio.
-
Configure the Project Settings:
- Go to
Project -> Properties -> Linker -> System
and set SubSystem to"Windows"
. - Under
Linker -> Advanced
, set Entry Point to"main"
.
- Go to
-
Namespace Adjustments:
- Replace
PROJECTNAME::MyForm
with your actual project namespace where applicable.
- Replace
- Go to
Project -> Add New Item -> UI -> Windows Form
. - Fill out the Form's .cpp file
- If after filling out the .cpp file you see only code and not the form, re-open the project
- Ensure the namespace matches your project name in the code.
- References -> There has to be AxInterop.WMPLib.1.0
Included files: C++ source code files (.cpp, .h) Visual Studio project files (.sln, .vcxproj, .vcxproj.filters), and assured References are included.
Excluded files: IDE-specific files: .vs/, .idea/ Build output directories: Debug/, Release/ OS-specific files: .DS_Store, Thumbs.db User-specific settings: .user