Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/powerhousepro69/videoinfox

Find videos fast. Powerful playlist building and editing. A play queue to load up unlimited playlists. Index unlimited video libraries and find videos by keyword. Download list building without leaving the browser and a Download Queue. Download URL Playlists. Download via Yt-dlp
https://github.com/powerhousepro69/videoinfox

mpv playlists url-downloader url-list-download video video-utilities youtube yt-dlp

Last synced: about 1 month ago
JSON representation

Find videos fast. Powerful playlist building and editing. A play queue to load up unlimited playlists. Index unlimited video libraries and find videos by keyword. Download list building without leaving the browser and a Download Queue. Download URL Playlists. Download via Yt-dlp

Lists

README

        

# Videoinfox v5.9.53

### *Where video download and play is a clipboard copy away . . .*

![Videoinfox HOME](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/videoinfox.gif)

### To install :     Run the 2 lines below.
```
sudo wget https://raw.githubusercontent.com/powerhousepro69/videoinfox/main/videoinfox -O /usr/local/bin/videoinfox
```
```
sudo chmod +x /usr/local/bin/videoinfox
```

**Getting Started:** Set the Default Directories located in -Set. Enter the parent directories of your video libraries. Then run -Index Default Directories This will build a searchable recursive list of all 5 default directories for -Playlist Find. Find a video(s) with a keyword from the path or file.

#### *Videoinfox will not edit video files. It is a front-end to play videos, build playlists and download videos.*

### 100% Linux Shell Script. Videoinfox is only 1 megabyte.

Find your videos fast. Powerful playlist building and editing. A play queue to load up unlimited playlists
for autoplay with last video played marker to pick up where you left off. Played List that keeps track of
everything played by Play Clipboard, Last Download and Play. Index unlimited video libraries and find
videos by keyword from the path or file. Yt-dlp integration with Download list building without leaving
your web browser and a download queue to load up unlimited download lists for batch processing. Download
entire URL playlists or pick and choose what videos to download with browse. A download queue in browse to
add single videos from any of the playlists to batch download.

Queue summary: Videoinfox has 3 different queues:

- Play Queue in View Playlist to add local playlists for autoplay with resume marker.
- Download Queue in Dowload List. Add local download lists that can be built with a keyboard shortcut.
- Download Queue in Browse to add videos from any of the Url Playlists located in Download Channel.

*Videoinfox recommends using MPV to watch videos and will be set as the default video player if found.
Mpv saves play postion on quit of every video played and Videoinfox saves Playlist and Play Queue position.
Toggle on/off mpv save play position on quit and an option to erase all mpv markers located in settings.

### Hotkey navigation that is robust and efficient.

ONE KEYPRESS FOR ALL MENU SELECTIONS. OVER 150 OPTIONS.

### File types searched for:   .webm   .mp4   .mkv   .avi   .divx   .3gp

Note: -Show All on the Home Screen is recursive.
-Show all in -Navigate Tree is one level deep.

## 4 ways to find videos from the Home Screen.

### 1. Find Video: Recursive search from the current directory.

![Videoinfox Find](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/FIND.png)

### 2. Show All: Recursive listing of all videos in the current directory.

### 3. Navigate Tree - Show All for video listing one directory deep.

### 4. Playlist Find: Search the text of all Playlists and the Default Directories Index.
#### *Instant access to videos in large libraries that are spread out over multiple directories and drives.*

![Playlist Find](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/PLAYLIST-FIND.png)

Find videos to play or add to a playlist without needing to know the files location.
Use a keyword from the path or filename to locate videos.

Note: Default directories must be set up first. Then run - Index Default Directories

Indexing more directories in addition to the 5 default directories is a simple process.
Change to a parent directory of a video library. Then -Show All on the home screen
and select -Make Playlist

* Duplicates are always removed from playlist find results.

## Playlist Features

### *Create, Watch, Manage playlists and the Play Queue in View Playlist*

#### *Create*

- Create .......... Create an empty playlist.
- Playlist Add .... Add an individual video to the loaded playlist.
- Make Playlist ... Save the entire video listing as a new playlist.

Playlist overwrite prompt for an existing file with options: -Create and -Make Playlist

The following 3 areas support -Playlist Add and -Make Playlist:

* Home Screen to add videos from recursive search results or recursive directory listings.
* Navigate Tree >>> Show All to add videos from one level deep directory listings.
* Played List to add videos from the Played List.

Note: Play, Play Clipboard and Last Download all write to the Played List.
Play Directory, Autoplay, Start and Resume do not write to the Played list.

Save the entire list as a new playlist with the following 2 options:

- Make Playlist to save the Play Queue as a new playlist.
- Default directories and all Playlists can be saved as a playlist.
Playlist Find and search . then -Make Playlist.

#### *Watch*

- Start autoplay from anywhere in the playlist.
- Resume to start autoplay from the last video that was playing on quit.
- Play Queue to load up multiple playlists for autoplay with resume.
- Play to play a single video and write it to the played list.

#### *Manage*

- View Playlist

- Move Line .............. move a video in the playlist.
- Move Block ............. move a block of videos in the playlist.
- Remove Line ............ remove a video from the playlist.
- Remove Block ........... remove a block of videos from the playlist
- Remove Dupes ........... remove duplicate videos from the playlist.
- Clear Playlist ......... clear out the playlist.

- Play Queue

- Move Line .............. move a video in the play queue.
- Move Block ............. move a block of videos in the play queue.
- Remove Line ............ remove a video from the play queue.
- Remove Block ........... remove a block of videos from the play queue.
- Remove Dupes ........... remove duplicate videos from the play queue.
- Clear Queue ............ clear out the play queue and the queue list.

- Change and Queue

- Change ................. change playlist.
- Create ................. create empty playlist.
- Delete ................. delete playlist.
- Rename ................. rename playlist.
- Save As ................ save the loaded playlist as... with file overwrite prompt.
- Add to Queue ........... add playlist to the play queue.

- Queue List

- Move Line * ............ move a playlist in the play queue.
- Remove Line * .......... remove a playlist from the play queue.
- Remove Dupes * ......... remove duplicate playlists from the play queue.
- Rebuild Queue .......... updates play queue after one or more of the above 3 options * are run
- Clear Queue ............ clear out the queue list and the play queue.

videoinfox -z Make a playlist from a recursive video listing in the current directory.
The Playlist will be saved in: ~/.config/videoinfox/playlists which makes
the playlist/index available to videoinfox's feature set.



VIEW PLAYLIST to Create, Watch, and Manage Playlists and the Play Queue

![Videoinfox Playlist](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/PLAYLIST.png)



CHANGE AND QUEUE in View Playlist. This is where all local playlists/indexes are diplayed.

![Videoinfox Change and Queue](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/CHANGEANDQUEUE.png)



PLAY QUEUE in Change and Queue to play all playlists that were added to the queue with resume marker.

The play queue can also be written to a new playlist. Create a playlist from multiple playlists.

![Videoinfox Play Queue](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/PLAYQUEUE.png)


## Play Clipboard

Download a video url that is in the clipboard via Yt-dlp and autoplay.
Play Clipboard is available in: Home, Played List, View Playlist, Yt-dlp Menu & View Downloads
The video url is cleared from clipboard after the video player is closed.
To watch the last download after Play Clipboard cleared the link, select Last Download.
Any invalid video urls are costantly cleared from the Clipboard.

Note: A local video file with full path can be copied to the clipboard for play.
No quotes for files with spaces.

To use Play Clipboard:
Copy a video url to the clipboard then press enter to verify validity.
Then p to download and autoplay.


## Autoplay Features

PLAY DIRECTORY to autoplay directory one level deep from beginning to end.

AUTOPLAY to start autoplay from anywhere in a list and play to the end.

START in view playlist and play queue to start autoplay from anywhere in a
playlist and play to the end.

RESUME in view playlist and play queue to start autoplay from the last video
that was playing on player (q) quit.

Note: There is no resume for play directory or autoplay.
Resume is only available in view playlist and the play queue.

![Play Directory](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/PLAY-DIRECTORY.png)



INTERMISSION SCREEN. Initially set to 10 seconds. Time can be changed in Settings. Applies to Play Directory, Autoplay, Start, and Resume

![Quit Play Directory](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/PD-QUIT.png)

#### Yt-dlp integration: Download a single url, a list of url's, a queue of multiple url lists and URL Playlists.

BUILD DOWNLOAD LISTS WITHOUT LEAVING YOUR BROWSER.

Download and update Yt-dlp in Videoinfox.

Download Only: Yt-dlp with no arguments. Download clipboard only. No autoplay.
Download Choose: Choose video type and quality before download. Download only. No autoplay.
Self Destruct: Download, auto play, delete when the player is closed.
Last Download: Play last download.

Download List: Download a list by entering line number.
Logging of downloaded url lists with link and downloaded filename provided by Yt-dlp.
Download Queue: Add unlimited Videoinfox User Download Lists to the queue for batch download.

Download Channel: Download an entire playlist or browse a playlist and choose what to download.

Command Line Option: videoinfox -u listname
Download any url list to the directory of the list's location.

Default List: Keep pasting Video URL's on the fly from the clipboard to the Default List.
Default List companion: Create a keyboard shortcut for: videoinfox -a
to past the video url to the Default List.

User Lists: Keep pasting Video URL's on the fly from the clipboard to the User Set List.
User Set List companion: Create a keyboard shortcut for: videoinfox -l
to paste the video url to the User Set list.



YT-DLP MENU
Download video url in clipboard or download and autoplay with Play Clipboard

![Yt-dlp Menu](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/YT-DLP-MENU.png)



DOWNLOAD CHANNEL in the Yt-dlp Menu

![Videoinfox DL Playlist](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/DOWNLOAD-PLAYLIST.png)

Download Channel: Total number of videos downloaded and videos in URL playlist are displayed for each list. The channel/playlist name are checked to find if the entry already exists to avoid a duplicate entry. Yt-dlp will check URL Playlist validity before it is added to the list. Removed playlists can be recovered with Restore. Update Playlist to download a fresh copy. When downlading an entire playlist you can ctrl/c out of a download in progress and restart the download right from where it left off thanks to Yt-dlp's archive feature. Browse to download single videos from a playlist and a
download queue to add single videos from any of the playlists or search results. There is also an option to add the entire list to the download queue.
Stream the selected video with the default browser.

BROWSE in Download Channel. Download single videos from the playlist or add videos to the queue.
![Videoinfox DL Playlist](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/BROWSE-DPL.png)



DOWNLOAD LIST MENU WITH DOWNLOAD QUEUE

1. Create unlimited user lists. Add video url's to the list from the clipboard without leaving the browser. Copy the url to clipboard then add video url to a user set list with the videoinfox -l keyboard shortcut.

2. Download single list or load unlimited user lists into the download queue for batch download.

![download list menu](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/DOWNLOAD-LIST.png)



DEFAULT LIST

Copy the url to clipboard then add video url to to the default list in videoinfox or stay in your browser and add the url with the videoinfox -a keyboard shortcut.

![Videoinfox download list help](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/DEFAULT-LIST.png)



NAVIGATE TREE

![Navigate Tree](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/NAVIGATE-TREE.png)



NAVIGATE TREE >>> SHOW ALL one directory deep listing with Play, Autoplay, Playlist Add and Make Playlist

![NT Show All](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/NT-SHOW-ALL.png)



FIND DIRECTORY

![Videoinfox Find Directory](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/FIND-DIRECTORY.png)


- Help locations:   Home Screen   View Playlist   Download List   Download Channel
- Auto save last search result(s) and autoload until cleared. Defaulted to never save. Change in Settings.
- Check for update on startup and notifity if update is available. Download and update in Videoinfox.
- Play a local file by entering the line number. Play single video or autoplay the entire list.
- See codec, resolution and duration on the playing video.
- Set Intermission time in seconds. Change the time in seconds on video end/player quit. Initially set to 10.
- Video Player auto closes when the video ends or quit(q). MPV is used by default. Any video player can be used.
- Change directory by entering line number or by entering the path.
- Find directory and change to it by entering the line number.
- Directory saved on exit to load on next run.
- GUI notifications
- Rapid directory changing by setting default directories (5) in Settings. 6 is the directory at last exit.

Default Dirs - 1 2 3 4 5 6 available in: Home, Navigate Tree, Download List & More Options

- Played List:   Log everything played with:   Play,   Play Clipboard   and   Last Download
- Info: Get codec, resolution and duration of videos.


More Options:

List Directory: List video info one directory deep. Options to save/delete per directory.
Video Count: Recursive count of videos broken down by video type.
Video Duration: Recursive duration (days:hrs:min:sec) Options to save/delete per directory.



MORE OPTIONS

![Videoinfox More Options](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/MORE-OPTIONS.png)



LIST DIRECTORY

![Videoinfox List Directory](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/LIST-DIRECTORY.png)



VIDEO COUNT

![Videoinfox Video Count](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/VIDEO-COUNT.png)



VIDEO DURATION

![Videoinfox Duration](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/VIDEO-DURATION.png)



SETTINGS

![Videoinfox Settings](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/SETTINGS.png)



COMMAND LINE OPTIONS:   videoinfox -h

![videoinfox -h](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/VIDEOINFOX-H.png)




#### Dependencies:

- xclip                  copy and paste feature. xclip only works with Xsession
- ffmpeg              extrat duration in   (hrs:min:sec)   format
- ffprobe              extract codec, resolution and duration in floating seconds format   (x.xxxxxx)
- ffplay                 play video
- bc                     floating point math
- notify-send       display gui notifications


YT-DLP is not on the dependeny list becuase Videoinfox will dowload it to:   ~/.config/videoinfox  
All calls to yt-dlp are pointed to:   ~/.config/videoinfox/yt-dlp  
There is an update option in:   \  Settings to update yt-dlp   (just the copy in ~/.config/videoinfox)  
I didn't want to overwrite anyones copy of:   /user/local/bin/yt-dlp    
Also, I wanted to make sure all new Videoinfox script installs included the most recent version of Yt-dlp

#### Videoinfox runs a dependency check at startup. If any dependencies are not found, the script will exit.

Any missing dependencies will be displayed.



FIRST RUN

![Videoinfox FIRST RUN](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/FIRST-RUN.png)

#### Privacy Policy:   Videoinfox will never collect or attempt to transmit any information on it's users.

Internet activity will only happen under the following circumstances:

- On First Run, Github will be contacted to download Yt-dlp.
- On every start, Github will be contacted to download Videoinfox for Update Available Check.
- Every time Videoinfox Update or Yt-dlp Update is selected in Settings, Github will be contacted.
- If there isn't a copy of Yt-dlp in Videoinfox's config directory, Github will be contacted
when you select the Yt-dlp Menu to attempt a download of Yt-dlp.
- Every time Yt-dlp is used to download a video url.
Refer to Yt-dlp's site for their privacy policy. https://github.com/yt-dlp/yt-dlp

** If videoinfox is removed, the directory ~/.config/videoinfox will have to be manually deleted.

### v5.9.53 Add: -Stream added to Browse in Download Channel. Stream selected video in default browser.

### v5.9.52 Fix: Create options file for yt-dlp if it doesn't exist.

### v5.9.51 Fix: eval added to yt-dlp lines. When custom options where added to yt-dlp, there were errors.

### v5.9.50 Change: Videoinfox v.... changed to italic

### v5.9.49 Add: Finally decided on a color for Videoinfox. If the terminal supports 256 colors, blue back with white text.

Add: Command line option -c. This will start videoinfox using your default terminal colors.

Fix: Had some missed Download Playlist in displays that were changed to Download Channel.

### v5.9.46 Fix: Spacing on Saving loaded playlist . . . message.

### v5.9.45 Fix: Removed an extra slash in Update Location in Code Stats.

### v5.9.44 Fix: Had to fix some headers in Download Playlist.

### v5.9.43 Edit: A few small edits in Home Help.

### v5.9.42 Add: Splash screen with script name and removed checking for update display.

💥️ The splash screen suggestion came from goochockipar@reddit Thanks 👍️

### v5.9.41 Change: Added 4s timeout to wget when checking for videoinfox update on startup.


### Harnessing the power of:

Videoinfox - Over 17,000 lines of code.

Xclip - Interact with the clipboard.

Yt-dlp - Download video urls.

MPV or FFplay - Play videos.

FFmpeg - Get duration in hh:min:sec

FFprobe - Get codec, resolution & duration in seconds.

![Code Stats](https://github.com/powerhousepro69/videoinfox/blob/main/screenshots/CODE-STATS.png)