Productivity AI Prompt
Video Downloader GUI
Create a Python GUI tool to download full or partial videos with skip sections and previews. Perfectly crafted free system prompt or custom instructions for ChatGPT, Gemini, and Claude chatbots and models.
You are to design and implement a comprehensive, user-friendly GUI tool in Python for downloading videos either in full or as specific segments with flexible skip-section functionality. The tool must satisfy a detailed set of functional and non-functional requirements covering video downloading, metadata extraction, user interface features, performance, compatibility, and usability, as described below. Your implementation should use the specified core technologies and follow the key algorithms and logic outlined. --- # Requirements **Functional Requirements:** - **Video Downloading:** - Download entire videos from given URLs. - Support partial downloads by specifying start and end times. - Allow skipping multiple unwanted sections within the specified segment. - Enable parallel downloads if the server supports HTTP range requests, using threading to accelerate downloads. - Fallback gracefully to single-threaded downloading if parallelism is unsupported. - **Metadata Extraction:** - Determine video duration accurately via ffprobe. - Detect file size and acceptance of range requests via HTTP HEAD. - **User Interface (GUI):** - Input field for URLs with a button to "Check Video Info". - Controls to select download type (full video or segment). - Time range selectors for start and end times. - Manager to add/remove multiple skip sections. - Output file selection dialog. - Preview panel showing random video thumbnails generated from sampled frames. - Progress bar reporting download progress, speed, and estimated time remaining. - Status bar displaying error messages and other updates. - **Utility Functions:** - Robust time parsing supporting formats HH:MM:SS, MM:SS, and SS. - File size formatting converting bytes to human-readable KB, MB, or GB units. - Error handling that includes ability to copy error details to clipboard for support. **Non-Functional Requirements:** - Responsive UI throughout download operations. - Efficient use of threading for parallel downloads. - Cross-platform compatibility (Windows, macOS, Linux). - Dependencies: Python 3.8+, ffmpeg, requests library. - Clear and informative error messages. - Intuitive and accessible controls. - Real-time thumbnail previews during download or segment specification. --- # Objectives Primary goal: deliver a polished tool with user-friendly GUI to enable downloading of videos fully or partially with skipped segments. Secondary goals: - Maximize download speed via parallel transfers where possible. - Provide rich visual feedback to users including progress and previews. - Handle all error conditions gracefully without crashing. --- # Methods **Backend:** - Use `requests` for performing HTTP downloads. - Use `ffmpeg` via subprocess or wrappers for video processing and thumbnail extraction. - Use `ThreadPoolExecutor` for managing parallel chunk downloads. **Frontend:** - Use `tkinter` for building the GUI. - Use `PIL (Pillow)` for loading and displaying image previews. - Use `tqdm` or equivalent for progress indication internally. **Key Algorithms:** - Fetch video metadata by sending HTTP HEAD requests and running ffprobe. - For parallel downloads, split file into multiple byte ranges; download concurrently and merge. - When downloading segments and skipping sections, leverage ffmpeg to cut and skip video parts. - Generate preview thumbnails by sampling random frames using ffmpeg and show via Pillow in UI. --- # Evaluation Success will be based on: - Error-free downloads of full videos and segments with skip sections. - Correct implementation of segment and skip logic verified through tests. - Responsive and intuitive UI that continues to update during processing. - Robust handling of invalid inputs and error states. Testing should include: - Unit tests for time parsing and file size formatting utilities. - Integration tests to verify integrity of downloads and segment skipping. - UI tests to validate input controls and preview update responsiveness. --- # Output Format Deliver a complete Python application source code with clear modular structure, including GUI, backend logic, and utility functions as per above specifications. - Provide comprehensive inline documentation. - Use exception handling consistently. - Ensure code readability and maintainability. - Optionally, include example configuration or usage instructions within code comments or a README. --- Your implementation must strictly follow these guidelines and cover all requirements and goals comprehensively.
Create your own custom GPT chatbot with your own data and knowledge. Use for customer support, internal knowledge sharing, or anything else you can imagine.





More Productivity Prompts
1-Minute Task Breakdown
A structured approach to achieve a goal in 1 minute.
1 Week Plan
Generates a detailed 1-week plan or summary for a specified goal or task.
10-Day Habit Tracker
Digital planner for tracking habits.
10-Day Social Media Plan
Generate a 10-day engaging social media content plan.
10-Hour Study Schedule
Generate a structured schedule for a 10-hour study session.
10-Minute Win Strategy
Outline a strategy for achieving quick wins in 10 minutes.
10 Question JSON
Generates a JSON object with 10 user prompt questions.
100-Day Goal Plan
Create a structured plan to achieve a goal in 100 days.