Skip to content

**Video Kaleidoscope** is a Python tool for real-time video manipulation. It lets users apply effects like flipping, rotating, zooming, panning, mirroring, and color maps. The interface includes intuitive buttons for playback control, frame stepping, and snapshots, creating a kaleidoscopic viewing experience.

Notifications You must be signed in to change notification settings

dannen/video_kaleidoscope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Video Kaleidoscope

Video Kaleidoscope is a video manipulation tool built using Python, OpenCV, and Tkinter. It allows users to load a video file and apply various visual effects in real time, such as flipping, rotating, zooming, panning, mirroring, kaleidoscope effects, and applying color maps (LUTs). The interface includes intuitive buttons for playback control, frame stepping, snapshot capture, and various video transformations. It's designed for both interactive exploration and creative manipulation of video content, providing a kaleidoscopic viewing experience.

Requirements

The following Python modules are required for this application:

  • opencv-python
  • numpy
  • Pillow

You can install these modules using pip:

pip install opencv-python numpy Pillow

Usage

To run the application, use the following command:

python video_kaleidoscope.py <video_path>

Replace <video_path> with the path to the video file you want to use.

Controls

The application provides the following commands and buttons:

  • Playback Speed Slider: Slider to adjust the playback speed of the video, allowing for both faster and slower playback.
  • Reset: Button to reset all applied effects and return the video to its original state. Reset Button
  • Play/Pause: Button to toggle between play and pause. Play Button Pause Button
  • Stop: Button to stop the video. Stop Button
  • Flip Horizontal: Button to flip the video horizontally. Flip Horizontal
  • Flip Vertical: Button to flip the video vertically. Flip Vertical
  • Mirror Up: Button to mirror the top half to the bottom. Mirror Up
  • Mirror Down: Button to mirror the bottom half to the top. Mirror Down
  • Snapshot: Button to take a snapshot of the current frame. Snapshot Button
  • Mirror Left: Button to cycle through mirror levels (center, thirds, quarters) on the left side. Mirror Left
  • Mirror Right: Button to cycle through mirror levels (center, thirds, quarters) on the right side. Mirror Right
  • Zoom In: Button to zoom in. Zoom In
  • Zoom Out: Button to zoom out. Zoom Out
  • Frame Forward: Button to move forward one frame. Frame Forward
  • Frame Reverse: Button to move backward one frame. Frame Reverse
  • Faster: Button to increase playback speed. Faster
  • Slower: Button to decrease playback speed. Slower
  • Pan Up: Button to pan up when zoomed in. Pan Up
  • Pan Down: Button to pan down when zoomed in. Pan Down
  • Pan Left: Button to pan left when zoomed in. Pan Left
  • Pan Right: Button to pan right when zoomed in. Pan Right
  • Center Pan: Button to recenter the panning position. Center Pan
  • Reverse Playback: Button to increase reverse playback speed (up to 8x). Reverse Playback
  • LUT Selection: Dropdown to apply a color map (LUT) to the video.
  • Rotation Slider: Slider to adjust the rotation angle.
  • Zoom Slider: Slider to adjust the zoom level.
  • Brightness Slider: Slider to adjust the brightness level.
  • Kaleidoscope Segments Slider: Slider to adjust the number of kaleidoscope segments.
  • Mirror Nine: Button to apply a nine-part mirror effect.
  • Mirror Six: Button to apply a six-part mirror effect in 60-degree increments.
  • Mirror Three: Button to apply a three-part mirror effect in 120-degree increments.

These controls enable a wide range of video transformations, allowing users to explore and manipulate video content creatively.

About

**Video Kaleidoscope** is a Python tool for real-time video manipulation. It lets users apply effects like flipping, rotating, zooming, panning, mirroring, and color maps. The interface includes intuitive buttons for playback control, frame stepping, and snapshots, creating a kaleidoscopic viewing experience.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages