Projects
Multimedia
ffxvid
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 14
View file
ffxvid.changes
Changed
@@ -1,4 +1,13 @@ ------------------------------------------------------------------- +Fri Jun 09 08:50:00 UTC 2017 - neutrino8@opensuse.org + +- Update to version 1.1.4 + * New function, video_chars_func(), to detect and display video + characteristics like color range/space/transfer/primaries + * Detect and display video resolution if video scaling is enabled + * Detect and display pixel format + +------------------------------------------------------------------- Thu Jun 08 14:51:00 UTC 2017 - neutrino8@opensuse.org - Update to version 1.1.3
View file
ffxvid.spec
Changed
@@ -17,7 +17,7 @@ Name: ffxvid -Version: 1.1.3 +Version: 1.1.4 Release: 0 Summary: A small shell script for encoding to H.264 with ffmpeg License: GPL-2.0+
View file
ffxvid-1.1.3.tar.gz/ChangeLog -> ffxvid-1.1.4.tar.gz/ChangeLog
Changed
@@ -1,3 +1,9 @@ +2017-06-09 - ffxvid 1.1.4 + * New function, video_chars_func(), to detect and display video + characteristics like color range/space/transfer/primaries + * Detect and display video resolution if video scaling is enabled + * Detect and display pixel format + 2017-06-08 - ffxvid 1.1.3 * Report software scaler set in the config file * Merge the bicubic and spline scaler tuning code
View file
ffxvid-1.1.3.tar.gz/ffxvid -> ffxvid-1.1.4.tar.gz/ffxvid
Changed
@@ -2,8 +2,8 @@ # # Small script to encode to Xvid video using FFmpeg. # Author: Grozdan "microchip" Nikolov <neutrino8@opensuse.org> -# Version: 1.1.3 -# Date: 2017-06-08 +# Version: 1.1.4 +# Date: 2017-06-09 # # ffx264 is free software ; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -24,7 +24,7 @@ brown() { echo -e "\e[0;33m$1\e[0;39;49m"; } error() { echo -e "\e[1;31m$1\e[0;39;49m"; } -version="1.1.3" +version="1.1.4" CFG="$HOME/.ffxvid" cfgversion="6" @@ -788,6 +788,11 @@ read pix if [ "$pix" = "y" -o "$pix" = "Y" ]; then echo + green "-> Detecting Pixel Format..." + sleep 1 + PIXFMT="$($FFPROBE -i "$input" -v error -select_streams v:0 -show_entries stream=pix_fmt -of default=noprint_wrappers=1:nokey=1 | tail -1)" + green "-> Detected $(echo "$PIXFMT" | tr '[a-z]' '[A-Z]')" + echo brown " Pixel Formats" brown " ~~~~~~~~~~~~~" echo " 0 -> YUV420P" @@ -821,10 +826,34 @@ fi } +video_chars_func() { + for i in ${1..4}; do + case "$i" in + 1) char[1]="color_range" ;; + 2) char[2]="color_space" ;; + 3) char[3]="color_transfer" ;; + 4) char[4]="color_primaries" ;; + esac + CHARS[i]="$($FFPROBE -i "$input" -v error -select_streams v:0 -show_entries stream=${char[i]} -of default=noprint_wrappers=1:nokey=1 | tail -1)" + done + to_upper() { + echo "$1" | tr '[a-z]' '[A-Z]' + } + green "-> Color Range: $(to_upper "${CHARS[1]}")" + green "-> Color Space: $(to_upper "${CHARS[2]}")" + green "-> Color Transfer: $(to_upper "${CHARS[3]}")" + green "-> Color Primaries: $(to_upper "${CHARS[4]}")" +} + video_colorspace_func() { printf "Do a Colorspace/Transfer/Primaries Conversion? [y/N]: " read ctp if [ "$ctp" = "y" -o "$ctp" = "Y" ]; then + echo + green "-> Detecting characteristics..." + sleep 1 + video_chars_func + echo printf "Specify the Input/Output Color Range [tv|mpeg|pc|jpeg - default is mpeg/tv]: " read crange if [ -z "$crange" ]; then @@ -1047,6 +1076,18 @@ fi if [ "$SCALE" = "y" ]; then + echo + green "-> Detecting video resolution..." + sleep 1 + WIDTH="$($FFPROBE -i "$input" -v error -select_streams v:0 -show_entries stream=width -of default=noprint_wrappers=1:nokey=1 | tail -1)" + HEIGHT="$($FFPROBE -i "$input" -v error -select_streams v:0 -show_entries stream=height -of default=noprint_wrappers=1:nokey=1 | tail -1)" + if [ ! -z "$crop" ]; then + green "-> Original resolution: ${WIDTH}x${HEIGHT}" + green "-> Cropped resolution: $(echo "$crop" | sed 's|crop=||' | awk -F: '{print $1}')x$(echo "$crop" | awk -F: '{print $2}')" + else + green "-> Detected ${WIDTH}x${HEIGHT}" + fi + echo printf "Specify the Desired Resolution [WxH - press 'Enter' to skip]: " read res if [ ! -z "$res" ]; then
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
.