Projects
Multimedia
ffhevc
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 6
View file
ffhevc.changes
Changed
@@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Thu Nov 03 15:29:00 UTC 2016 - neutrino8@gmail.com + +Update to version 2.9.1 + * Added support for interlace-aware encoding + * Added support for the spp, uspp and pp7 deblockers + * Support asking for software scaler during exec time + * Added new SCALE var to the config file to enable/disable + support for software scaling. Bumps up the config file + version to 27 + * Do a test write to see if output directory is writable by + the script executing user + * Updated the README file + +------------------------------------------------------------------- Wed Nov 02 19:40:00 UTC 2016 - neutrino8@gmail.com - Update to version 2.9.0
View file
ffhevc.spec
Changed
@@ -17,7 +17,7 @@ Name: ffhevc -Version: 2.9.0 +Version: 2.9.1 Release: 0 Summary: A small shell script for encoding to H.265/HEVC with ffmpeg License: GPL-2.0+
View file
ffhevc-2.9.0.tar.gz/ChangeLog -> ffhevc-2.9.1.tar.gz/ChangeLog
Changed
@@ -1,3 +1,14 @@ +2016-11-03 - ffhevc 2.9.1 + * Added support for interlace-aware encoding + * Added support for the spp, uspp and pp7 deblockers + * Support asking for software scaler during exec time + * Added new SCALE var to the config file to enable/disable + support for software scaling. Bumps up the config file + version to 27 + * Do a test write to see if output directory is writable + by the script executing user + * Updated the README file + 2016-11-02 - ffhevc 2.9.0 * Added support for motion compensation deinterlacing for both deinterlacing at original FPS and bobbing
View file
ffhevc-2.9.0.tar.gz/README -> ffhevc-2.9.1.tar.gz/README
Changed
@@ -9,7 +9,7 @@ - it has a configuration file in $HOME/.ffhevc to set things up. - it does auto-cropping. - it supports three video denoise filters. -- it supports one video deblocking filter (fspp). +- it supports four video deblock filters. - it supports one audio volume filter. - it supports one audio volume normalizing filter. - it supports audio resampling. @@ -27,4 +27,5 @@ Parameters: -Run 'ffhevc -h' in a console to see a list of supported parameters. +Run 'ffhevc -h' in a console to see a list of supported parameters or +read the man page (man ffhevc).
View file
ffhevc-2.9.0.tar.gz/ffhevc -> ffhevc-2.9.1.tar.gz/ffhevc
Changed
@@ -2,18 +2,18 @@ # # Small script to encode to H.265/HEVC video using FFmpeg and libx265. # Author: Grozdan "microchip" Nikolov <neutrino8@gmail.com> -# Version: 2.9.0 -# Date: 2016-11-02 +# Version: 2.9.1 +# Date: 2016-11-03 # License: GNU GPLv2+ green() { echo -e "\e[1;32m$1\e[0;39;49m"; } brown() { echo -e "\e[0;33m$1\e[0;39;49m"; } error() { echo -e "\e[1;31m$1\e[0;39;49m"; } -version="2.9.0" +version="2.9.1" CFG="$HOME/.ffhevc" -cfgversion="26" +cfgversion="27" genconfig_func() { cat<<EOF>>"$CFG" @@ -43,8 +43,11 @@ # Automatically crop the input? AUTOCROP="y" -# Leave empty to encode at full (cropped) -# resolution or set a software scaler +# Enable software scaling support +SCALE="y" + +# Leave empty to ask each time or +# set a default software scaler # # fast_bilinear # bilinear @@ -323,6 +326,26 @@ error "-> You have to provide a name for the output!" exit 1 else + if [ ! -z "$(echo "$output" | grep '/')" ]; then + mkdir -p "$(dirname "$output")" 2>/dev/null + if [ $? != 0 ]; then + error "-> Could not create output directory!" + exit 1 + fi + OUTPUT="$output" + else + OUTPUT="$OUTDIR/$output" + fi + # Check if output dir is writable + WRITE="$(dirname "$OUTPUT")/.ff_writable$$" + touch "$WRITE" 2>/dev/null + if [ $? != 0 ]; then + error "-> Specified output directory is not writable by user '$(id -un)'" + exit 1 + else + rm -f "$WRITE" + fi + if [ -z "$CON" ]; then printf "Which Container Format to use? [default is mkv]: " read confmt @@ -332,17 +355,9 @@ case "$CON" in mp4|m4v|mov) movflags="-movflags +faststart" ;; esac - if [ ! -z "$(echo "$output" | grep '/')" ]; then - mkdir -p "$(dirname "$output")" 2>/dev/null - if [ $? != 0 ]; then - error "-> Could not create output directory!" - exit 1 - fi - OUTPUT="$output.$CON" - OUTDIR="$(dirname "$OUTPUT")" - else - OUTPUT="$OUTDIR/$output.$CON" - fi + + OUTPUT="$OUTPUT.$CON" + METATITLE="-metadata title=\"$(basename "${OUTPUT%.*}")\" -metadata:s:v:0 title=\"$(basename "${OUTPUT%.*}")\"" fi @@ -446,10 +461,46 @@ printf "Deblock the Input File? [y/N]: " read db if [ "$db" = "y" -o "$db" = "Y" ]; then - printf "Specify the fspp filter strength [-15-32 - default is 6]: " - read ffs - test -z "$ffs" && fs="6" || fs="$ffs" - deblock="fspp=strength=$fs," + echo + brown " Deblock Filters" + brown " ~~~~~~~~~~~~~~~" + echo " 0 -> spp" + echo " 1 -> fspp" + echo " 2 -> uspp" + echo " 3 -> pp7" + echo + printf "Specify the Deblock Filter [default is 3]: " + read dbfilter + case "$dbfilter" in + 0) + printf "Specify the Deblock Parameters [quality(0-6):qp - default is 3:11]: " + read dp + test -z "$dp" && dparam="3:11" || dparam="$dp" + deblock="spp=quality=$(echo "$dparam" | awk -F: '{print $1}'):qp=$(echo "$dparam" | awk -F: '{print $2}')," + ;; + 1) + printf "Specify the Deblock Parameters [strength(-15-32):qp - default is 6:11]: " + read dp + test -z "$dp" && dparam="6:11" || dparam="$dp" + deblock="fspp=strength=$(echo "$dparam" | awk -F: '{print $1}'):qp=$(echo "$dparam" | awk -F: '{print $2}')," + ;; + 2) + printf "Specify the Deblock Parameters [quality(0-8):qp - default is 3:11]: " + read dp + test -z "$dp" && dparam="3:11" || dparam="$dp" + deblock="uspp=quality=$(echo "$dparam" | awk -F: '{print $1}'):qp=$(echo "$dparam" | awk -F: '{print $2}')," + ;; + 3|"") + printf "Specify the Deblock Quantization Parameter [default is 11]: " + read dp + test -z "$dp" && dparam="11" || dparam="$dp" + deblock="pp7=qp=$dparam," + ;; + *) + error "-> Invalid option!" + exit 1 + ;; + esac fi fi @@ -458,7 +509,7 @@ printf "Use Motion-Compensation Deinterlacing? [y/N]: " read mcd if [ "$mcd" = "y" -o "$mcd" = "Y" ]; then - printf "Specify the Field Parity [tff/bff - default is tff]: " + printf "Specify the Field Parity of the Input File [tff/bff - default is tff]: " read par case "$par" in t*|T*|"") fp="tff" ;; @@ -538,6 +589,24 @@ fi fi +if [ -z "$deinterlace" ]; then + printf "Enable Interlace-aware encoding? [y/N]: " + read intaw + if [ "$intaw" = "y" -o "$intaw" = "Y" ]; then + printf "Specify the Field Parity of the Input File [tff/bff - default is tff]: " + read parity + case "$parity" in + t*|T*|"") interlaced=":interlace=tff" ;; + b*|B*) interlaced=":interlace=bff" ;; + *) + error "-> Invalid option!" + exit 1 + ;; + esac + X265PARAMS="$X265PARAMS$interlaced" + fi +fi + if [ "$AUTOCROP" = "y" ]; then echo green "-> Detecting crop values..." @@ -559,12 +628,48 @@ test ! -z "$cropval" && crop="crop=$cropval," fi -if [ ! -z "$SCALER" ]; then +if [ "$SCALE" = "y" ]; then printf "Specify the Desired Resolution [WxH - press 'Enter' to skip]: " read res if [ ! -z "$res" ]; then - scale="scale=$res," - sws="-sws_flags $SCALER" + test -z "$interlaced" && scale="scale=$res," || scale="scale=$res:interl=1," + if [ -z "$SCALER" ]; then + echo + brown " Software Scalers" + brown " ~~~~~~~~~~~~~~~~" + echo " 0 -> Fast Bilinear" + echo " 1 -> Bilinear" + echo " 2 -> Bicubic" + echo " 3 -> Neighbor" + echo " 4 -> Area" + echo " 5 -> Luma Bicubic/Chroma Bilinear" + echo " 6 -> Gaussian" + echo " 7 -> Sinc" + echo " 8 -> Lanczos" + echo " 9 -> Natural Bicubic Spline" + echo + printf "Sepcify the Software Scaler [default is 9]: " + read scale + case "$scale" in
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.