Hello everyone
I'd like to present my newest script: VHS, given the name, its all about videos.
It is a wrapper/handler for ffmpeg which is also available by the rpmfusion repos.
NOTE: It also requires TUI (Text User Interface), for which installation GIT will be required, please install GIT in advance. (this is not required if you use the repo)
It has reached: final release 2.0
See my BLOG about it.
If no bug reports are made, i assume it works perfectly fine for you too. (exception: vobcopy!! i already told the author)
The main purpose for this script is to convert a video to another container, so i can watch them saved on the NAS on my TV.
Since i'm german speaking, but i like original speaking too, it lets you set 2 languages within the config file, lang_force_both is false by default, so if you wish to have 2 languages in your fresh encoded videos, you have to change it to true.
This said, the 'main' lang is ger, the 2nd is 'eng', so you will need (want) to change this.
The configuration screen will show up upon first call of the script, please take your time to make the proper adjustments.
As the script, grew and i dig into the ffmpeg docs, i found examples for other nice usage of ffmpeg.
And at this time i also want to thank the guys in the ffmpeg channel for their help.
This said, the functionality includes:
1) Convert a video to another container
1.1) Get rid of unwanted audio streams
1.2) Include subtitles only when required
1.3) Make the videos smaller, but maintain a good quality
1.4) Easy option to either down- or upcode them (eg: downcode for the mobile phone, or upcode before writing a video dvd)
2) Record Screen / Desktop
3) Record Videologs using the webcam (internal or usb)
4) Record a 'Desktop' guide ; record your Desktop & Webcam as PiP
5) Extract the soundtrack of a music video (or just an intro)
6) Include external audio or subtitle tracks
7) Put a logo to top left corner
8) Put a video as pip overlay
9) Play streams audio/video
10) Streamcast: Audio, Desktop, Guide, Webcam, Video
Upon first call, it will open the setup dialog.
Please take your time to change the values to your prefered defaults.
This is required, so VHS requires much less arguments to be passed upon calling.
Once configured, the 'regular' calls should look like:
In an ideal situation, this is how i convert all videos within the current folder:Code:vhs [options] [/path/to/]file1 * .. # Encode video files vhs -i [/path/to/]file # Show stream info of a media file vhs -S # Record screen vhs -W # Record from webcam vhs -G # Record a 'Guide' (both of the above) vhs -D # Encode a DVD, -DQ dvd recomended!
Or if i want to save space because i think that this 10gb 1080p video is too large, this will reduce its size to about 1.3 gb:Code:vhs *
For a list of all arguments, please refer to the help screen (vhs -h)Code:vhs -Q fhd *
NOTE:
The script expects the commands it generates to be working.
However, this cannot be promissed in all cases, so if it fails, use the '-v' (verbose of ffmpeg) option to analyze the cause.
There are options available to the script to 'fix' or 'bypass' most common errors that may occour, at least once you have the info from the verbose output.
Furthermore, it saves the commands within a logfile, which can be viewed by vhs -L, and i suggest to clear it after every 400 encoded videos by vhs -x, as it can grow quite large (1mb+)
Bugs & Errors
For 'bug reports' please post here the output of the 'verbose' (-Vv) call, and either attach the log or put the regarding text in [ code ] tags.
For later updates (few months after post date), please refer to: https://github.com/sri-arjuna/vhs
Known Issues
- DvD encoding (actualy copy the vobfiles using vobcopy) does only work for most, ~75% with default mode or 'longest playtime'.
Video Guide / Introduction, done with VHS
(Playlist)
How to install & Configure VHS
Examples: Audio Extraction
Examples: Debug'ing, this case - subtitle codec
Examples - Downcoding
NOTES:
Now available by repositry.... (Requires rpmfusion to be installed too!)
Hope this helpsCode:su wget http://sea.fedorapeople.org/sea-devel.repo -O /etc/yum.repos.d/sea-devel.repo yum install -y vhs
Enjoy