scriptek

Programozás, programnyelvek, kiegészítők, alkalmazások, programnyelvek, programfejlesztéssel kapcsolatos témák, közvetlenül a programozással összefüggő kérdések
Avatar
KuLuSz
Adminisztrátor
Hozzászólások: 606
Csatlakozott: 2014.06.17. 21:19

Re: scriptek

Hozzászólás Szerző: KuLuSz »

jelentem a kns müködik nyitott wifivel is:
Kép
-<(].K.u.L.u.S.z.[)>-
-----------------------------------------------
Elérhetőségeim: Angol irc csevegő, (reg mentes) Discord, YouTube

Avatar
nocsak
Hozzászólások: 408
Csatlakozott: 2014.09.29. 15:01
Kapcsolat:

Re: scriptek

Hozzászólás Szerző: nocsak »

Kód: Egész kijelölése

#!/bin/bash 
#This script made by nocsak 2020.09.29.
#dependencies: sshfs, gtkdialog
 
 export OUTPUT_CHARSET=UTF-8

# echo -e "Ha nem megfelelő paramétereket állítunk\n be, az SMS szkript hibásan működhet!" | xmessage -title "Emlékeztető" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse -timeout 4 -file -
 
 export MAIN_DIALOG="
 <window title=\"$(gettext 'sshfs Mount Script for Puppy')\" icon-name=\"folder-remote\" resizable=\"true\">
    <vbox scrollable=\"true\" height=\"340\" width=\"400\">
    <frame Remote sshfs path>
     <entry>
      <default>192.168.1.101:/mnt</default>
      <variable>PATHPROG01</variable>
     </entry>
     </frame>
     <frame username>
     <entry>
      <default>username</default>
      <variable>PATHPROG02</variable>
     </entry>
     </frame>
     <frame target mount point:>
     <entry>
      <default>/mnt/sshfs01</default>
      <variable>PATHPROG03</variable>
     </entry>
     </frame>
     <frame Port:>
     <entry>
      <default>22</default>
      <variable>PATHPROG07</variable>
     </entry>
     </frame>
     <frame sshfs password>
     <entry visibility=\"false\" caps-lock-warning=\"true\">
     <variable>PATHPROG04</variable>
     </entry>
     </frame>
     <hbox homogeneous=\"true\">
      <button ok></button>
      <togglebutton><input file stock=\"gtk-quit\"></input><label>$(gettext 'Quit')</label><input>exit 1</input><action>exit:abort</action><default>true</default><variable>pagg</variable></togglebutton>
     </hbox>
    </vbox>
    </window>
   "
 RETSTRING="`gtkdialog --program=MAIN_DIALOG --center`"
 eval "$RETSTRING"

if [ "$pagg" = true ]; then

echo "nothing"

else

exit 1

fi

if [ ! "$PATHPROG03" ] || [ ! "$PATHPROG02" ] || [ ! "$PATHPROG01" ] || [ ! "$PATHPROG07" ] || [ ! "$PATHPROG04" ]; then
	
	xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5
  
 
  else
  if [ ! -d "$PATHPROG03" ]; then
	
	mkdir $PATHPROG03

  else
  
  echo "Directory $PATHPROG03 exists."
  
fi
  printf "$PATHPROG04\n" | sshfs -o password_stdin -o ssh_command='ssh -o StrictHostKeyChecking=no' -o allow_other $PATHPROG02@$PATHPROG01 $PATHPROG03 -p $PATHPROG07 &
  
fi


if [ ! "$PATHPROG03" ] || [ ! "$PATHPROG02" ] || [ ! "$PATHPROG01" ] || [ ! "$PATHPROG07" ] || [ ! "$PATHPROG04" ]; then

xmessage -title "Nothing to umount" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "Nothing to umount!" -timeout 5

else 

ICONSETSGUI8=""
ICONSETSGUI8="$ICONSETSGUI8

<vbox>
<hbox>
<button>
<label>Open ${PATHPROG03}</label>
<action>rox ${PATHPROG03}</action>
</button>
<button>
<label>Eject ${PATHPROG03}</label>
<action>fusermount -u ${PATHPROG03}</action>
</button>
</hbox>
</vbox>

"


export MAIN_DIALOG="
<window title=\"$(gettext 'Eject sshfs Script')\" icon-name=\"gtk-disconnect\" resizable=\"true\">
 <vbox>
 <frame Functions:>
  <text wrap=\"true\" width-chars=\"40\"><label>$(gettext 'sshfs drive eject')</label></text>
  </frame>
  
     <frame  Mounted places:>
 
     
  ${ICONSETSGUI8}
  
    <text>
      <label>-1-</label>
     </text>
    </frame>

  <hbox>
  
<button><input file stock=\"gtk-quit\"></input><label>$(gettext 'QUIT')</label></button>
  
   
  </hbox>
 </vbox>

</window>"

gtkdialog --program=MAIN_DIALOG --center

fi




sshfs_mounter.jpg
sshfs_mounter.jpg (25.38 KiB) Megtekintve 4655 alkalommal
sshfs_mounter02.jpg
sshfs_mounter02.jpg (13.65 KiB) Megtekintve 4652 alkalommal

Avatar
KuLuSz
Adminisztrátor
Hozzászólások: 606
Csatlakozott: 2014.06.17. 21:19

Re: scriptek

Hozzászólás Szerző: KuLuSz »

YT: Bash shell szkriptelés - Tömbök

A videóban alkalmazott szkript:

Kód: Egész kijelölése

#!/bin/bash
clear && echo && echo -n ' '

#Tömbök a bashban

#	0	  1	    2	      3	<<< helyi értékek
TOMB=('első' 'második' 'harmadik' 'negyedik')

echo ${TOMB[*]} 	# összes elem kiíratása: * vagy @ jellel

#echo ${#TOMB[*]} 	# elemek száma

#echo ${!TOMB[*]} 	# helyiértékek kiíratása

#echo ${TOMB[1]} 	# 1 adott elem kiíratása

#TOMB+=( 'ötödik' )	# új elem hozzáadása
#echo ${TOMB[*]}

#unset TOMB[1]		# elem eltávolitása
#echo ${!TOMB[*]}

#TOMB[1]='kettyó'	# elem megváltoztatása
#echo ${TOMB[*]}

#echo ${!TOMB[*]:2}	# elemek kiíratása X elemtől
Információ forrása: LINK
-<(].K.u.L.u.S.z.[)>-
-----------------------------------------------
Elérhetőségeim: Angol irc csevegő, (reg mentes) Discord, YouTube

Avatar
nocsak
Hozzászólások: 408
Csatlakozott: 2014.09.29. 15:01
Kapcsolat:

Re: scriptek

Hozzászólás Szerző: nocsak »

Kicsit elővettem ezt a ZRAM szkriptet megint, kikommenteltem a prioritást adó sort és a swapinness sorokat.
Így alapértelmezés szerint fogja kezelni a ZRAM swappelést a rendszer.

Meg az erről szóló videómban elfelejtettem elmagyarázni, hova kell másolni, miként nevezve és hogyan kell indítani.

Szóval ezt:

Kód: Egész kijelölése

#!/bin/bash

### BEGIN INIT INFO

# Provides: zram

# Required-Start: $local_fs

# Required-Stop:

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Increased Performance In Linux With zRam (Virtual Swap Compressed in RAM)

# Description: Adapted from systemd scripts

# Included as part of antix-goodies package

# This script was written by tradetaxfree and is found at http://crunchbanglinux.org/forums/topic/15344/zram-a-good-idea/

# Copy this script (as root) from /usr/local/bin to /etc/init.d and then #update-rc.d zram defaults

# After booting verify the module is loaded with: lsmod | grep zram

### END INIT INFO

 

start() {

    # get the number of CPUs

    # num_cpus=$(grep -c processor /proc/cpuinfo)

    # if something goes wrong, assume we have 1

    # [ "$num_cpus" != 0 ] || num_cpus=1

 

    # set decremented number of CPUs

    # last_cpu=$((num_cpus - 1))

   

    #default Factor % = 90 change this value here or create /etc/default/zram

    FACTOR=40

    #& put the above single line in /etc/default/zram with the value you want

        [ -f /etc/default/zram ] && source /etc/default/zram || true

        factor=$FACTOR # percentage

 

    # get the amount of memory in the machine

#    memtotal=$(grep MemTotal /proc/meminfo | awk ' { print $2 } ')

     memtotal=$(grep MemTotal /proc/meminfo | sed 's/[^0-9]\+//g')

   mem_by_cpu=$(($memtotal*$factor/100*1024))

 

    # load dependency modules

    # kernels 3.4 onwards

   

    modprobe zram
    sleep 2
    # modprobe zram num_devices=$num_cpus
    sleep 2
   

    if [ $? -gt 0 ]; then

          # kernels 3.1 - 3.3

      #modprobe zram zram_num_devices=$num_cpus       

    #else

      echo -e "Your Kernel needs to be compiled with ZRAM support:" \

      "\n\nDevice Drivers --> Staging Drivers --> Compressed RAM block device support (M)" \

      "\nDevice Drivers --> Staging Drivers --> Dynamic compression of swap pages and clean pagecache pages (*)" \

      "\n\nThe Liquorix Kernel (http://liquorix.net) has ZRAM support built in."

      exit 1

    fi

    echo "zram devices probed successfully"

   

    # initialize the devices

    # for i in $(seq 0 $last_cpu); do

    # echo $mem_by_cpu > /sys/block/zram$i/disksize
    echo $mem_by_cpu > /sys/block/zram0/disksize
    # Creating swap filesystems
    sleep 2
    mkswap /dev/zram0

    # Switch the swaps on
    sleep 2
    # swapon -p 100 /dev/zram0
    swapon /dev/zram0

    sleep 2
    # sysctl vm.swappiness=90
    # done

}

 

stop() {

    # get the number of CPUs

    # num_cpus=$(grep -c processor /proc/cpuinfo)

 

    # set decremented number of CPUs

    # last_cpu=$((num_cpus - 1))

 

    # Switching off swap

    # for i in $(seq 0 $last_cpu); do

    # if [ "$(grep /dev/zram$i /proc/swaps)" != "" ]; then

    swapoff /dev/zram0

    sleep 1
    # sysctl vm.swappiness=60
    sleep 1
    # fi

    # done

 

    sleep 1

    rmmod zram

}

 

case "$1" in

    start)

        start

        ;;

    stop)

        stop

        ;;

    restart)

        stop

        sleep 3

        start

        ;;

    *)

        echo "Usage: $0 {start|stop|restart}"

        RETVAL=1

esac

exit $RETVAL


Másoljuk például puppy linux alatt, az /etc/init.d/ mappába rc.zram névvel futtatható jogosultsággal.

Indítani a képen látható módon tudjuk hisz ezek definiálva vannak benne: start|stop|restart
Ha mentésfájllal dolgozunk minden rendszer indulásnál alapértelmezetten lefut a szkript.

A különbség annyi a videóban bemutatottól, hogy egy zram meghajtó a /dev/zram0 kerül beállításra kizárólag, mivel nem láttam én értelmét az eredeti több processzoros elképzelésnek, így a FACTOR változó már a valós % értéket fogja levenni zramnak a fizikai memóriából....

Állítólag a swappiness 0-100 értékig 100 a leginkább swappelős kernel beállítás , és a swapon -p kapcsoló a prioritást -1 -től 32767 -ig "priorizálja" alapértelmezés előbbinél a 60 utóbbinál a -1 most ez ugye ki lett kommentelve, tehát alapértelmezés szerint lesz véve a zramnál.

Tehát miután rc.zram -ként bemásoltuk az /etc/init.d/ könyvtárba futtatható joggal, akkor vagy újraindítjuk mentésfájllal a gépet és úgy alkalmazzuk, vagy terminálból először kiadjuk a /etc/init.d/rc.zram start parancsot.


Remélem tudtam segíteni!



rc_zram01.jpg
rc_zram01.jpg (199.71 KiB) Megtekintve 4559 alkalommal

Avatar
KuLuSz
Adminisztrátor
Hozzászólások: 606
Csatlakozott: 2014.06.17. 21:19

Re: scriptek

Hozzászólás Szerző: KuLuSz »

Bash shell szkriptelés - Sed


A videóban alkalmazott szkript :

Kód: Egész kijelölése

#!/bin/bash
clear && echo
: '
	Reguláris kifejezések:
	^ - sor eleje - altgr+3
	$ - sor vége  - altgr+é (L mellett jobbra) , változó esetén nem!
	. - bármilyen karakter, ha . kell akkor \.
	* - akárhányszor
	\{2\} - kétszer
	\| - vagy (több minta esetén)
	[a-z] - helyettesítés bármilyen kisbetű
	[A-Z] - helyettesítés bármilyen nagybetű
	[a-zA-Z] - helyettesítés bármilyen betű
	[0-9] - helyettesítés bármilyen szám
	[akármi] - helyettesítés/kiegészítés
 
Sed opciói:'

F=" 1 minta minta

 2 minta minta

 3 minta minta"

echo "$F" | sed "/1 minta/d"
# törli azt a sort amiben az "1 minta" szerepel
#echo "$F" | sed "/^$/d"
# törli az összes üres sort
#echo "$F" | sed "2 d"
# törli a 2. sort

# a törlést és a cserét külön sed paranccsal használjuk (tapasztalat)
# / - elválasztó jel, de ez tulajdonképpen bármi lehet

#echo "$F" | sed "s:minta:erre:"
# cseréli a mintát erre (egyszer az összes sorban)
#echo "$F" | sed "s/minta/erre/g"
# cseréli az összes mintát erre (az összes sorban)
#echo "$F" | sed "s/minta/erre/2"
# cseréli a 2. mintát erre (az összes sorban)
#echo "$F" | sed "3s/minta/erre/"
# cseréli a mintát erre a 3. sorban (egyszer)
#echo "$F" | sed "/3 minta/s/minta/erre/"
# cseréli a mintát erre a "3 minta" sorban (egyszer)
# ; - több változtatás megadása egyszerre (EGYMÁS UTÁN!)
#echo "$F" | sed "3s/minta/erre/ ; s/erre/arra/"
# cseréli a mintát erre, majd arra a 3. sorban

#STRING="változó"
#echo "$F" | sed "s/minta/$STRING/g"
# cseréli az összes mintát a változóra

#sed -i "deklaráció" /elérés/fájlnév
# szerkeszti a fájlban a sed-ben megadott változtatásokat
-<(].K.u.L.u.S.z.[)>-
-----------------------------------------------
Elérhetőségeim: Angol irc csevegő, (reg mentes) Discord, YouTube

Avatar
KuLuSz
Adminisztrátor
Hozzászólások: 606
Csatlakozott: 2014.06.17. 21:19

Re: scriptek

Hozzászólás Szerző: KuLuSz »

YT LINK: Bash shell szkriptelés - sztringek 2

A videóban alkalmazott szkript:

Kód: Egész kijelölése

#!/bin/bash
clear && echo && echo -n " "

#	Sztringek/változók manipulálása

#	Használat (karakter)tömb ként
STR="123456789"
echo ${#STR}			# karakterek darab száma
#echo ${STR:6}			# kiíratás a 4. karaktertől
#echo ${STR:4:2}		# 2 karakter kiíratása a 4. karaktertől
#echo ${STR: -4}		# utolsó 4 karakter kiírása
#echo ${STR: -4:2}		# 2 karakter kiírása az utolsó 4 karakterből
#hossz=2
#echo ${STR: -6:hossz}	# kiíratás a 'hossz' változóval

#	Törlési formák (minta alapján)
#STR="abcABC123ABCabc"
#echo ${STR%A*}			# utótag törlés
#echo ${STR##*C}			# előtag törlés
#echo ${STR/abc}		# 1. egyezés törlése
#echo ${STR//abc}		# összes egyezés törlése

#	Átalakítások
#echo ${STR^}			# 1. betü csere nagybetűre		(altgr+3)
#echo ${STR^^}			# összes betü csere nagybetűre	(altgr+3)
#echo ${STR,}			# 1. betü csere kisbetüre
#echo ${STR,,}			# összes betü csere kisbetüre
#echo ${STR/ABC/00} 	# ABC csere 00 -ra 1x
#echo ${STR//ABC/00}	# összes ABC csere 00 -ra

#	Példa parancs helyettesítésre
#STR="/usr/share/backgrounds/default.jpg"
#echo ${STR%/*}			# dirname parancs helyett
#echo ${STR##*/}		# basename parancs helyett
#echo ${STR##*.}		# Fájl kiterjesztése
Forrás:
https://devhints.io/bash
https://tldp.org/LDP/abs/html/string-manipulation.html
-<(].K.u.L.u.S.z.[)>-
-----------------------------------------------
Elérhetőségeim: Angol irc csevegő, (reg mentes) Discord, YouTube

Avatar
nocsak
Hozzászólások: 408
Csatlakozott: 2014.09.29. 15:01
Kapcsolat:

Re: scriptek

Hozzászólás Szerző: nocsak »

Üdv!

Módosítottam itt-ott a szkripten, ami a fő módosítás az a cache: előtag minden URL előtt, így mindennek most már stimmelnie kéne ezzel is főként ha online videó stream-et játszunk vele íme:
fofiplayer5.jpg
fofiplayer5.jpg (34.16 KiB) Megtekintve 4007 alkalommal

fofi5player.sh:

Kód: Egész kijelölése

#!/bin/bash 
#This script REmade by nocsak 2020.12.27.
 
 export OUTPUT_CHARSET=UTF-8
 
 export MAIN_DIALOG="
 <window title=\"$(gettext 'ffmpeg Player 5')\" icon-name=\"folder-remote\" resizable=\"true\">
    <vbox scrollable=\"true\" height=\"440\" width=\"400\">
    <frame Stream URL or File path>
     <entry>
<variable>PATHPROG01</variable>
     </entry>
     <button>
   <label>Search</label>
   <input file stock=\"gtk-open\"></input>
   <action>fileselect:PATHPROG01</action>
   </button>
   </frame>
   <frame Playback Volume>
     <hscale width-request=\"250\" range-min=\"1\" range-max=\"9\" range-step=\"1\">
		<default>4</default>
		<variable>PATHPROG08</variable>
     </hscale>
     
     </frame>
     <frame Resolution width (0 or vaule or leave empty)>
     <entry>
      <default>600</default>
      <variable>HTP</variable>
     </entry>
     </frame>
     <frame If video only without audio>
    <checkbox>
      <label>videoonly</label>
      <variable>HTVPD</variable>
    </checkbox>
  </frame>
     <frame Renderer (xv or opengl or audio)>
          <radiobutton active=\"true\">
      <label>opengl</label>
      <variable>HTVP1</variable>
    </radiobutton>

    <radiobutton>
      <label>xv</label>
      <variable>HTVP2</variable>
    </radiobutton>

    <radiobutton>
      <label>audio</label>
      <variable>HTVP3</variable>
    </radiobutton>
  </frame>
     
     <hbox homogeneous=\"true\">
      <button ok></button>
      <togglebutton><input file stock=\"gtk-quit\"></input><label>$(gettext 'Kilépés')</label><input>exit 1</input><action>exit:abort</action><default>true</default><variable>pagg</variable></togglebutton>
     </hbox>
    </vbox>
    </window>
   "
 RETSTRING="`gtkdialog --program=MAIN_DIALOG --center`"
 eval "$RETSTRING"

if [[ "$pagg" = true ]]; then

echo "nothing"

else

exit 1

fi


if [ ! "$HTP" ] || [ "$HTP" == "0" ]; then









if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
  
  if [ "$HTVP3" == true ];then
  
  defaultterminal -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
fi

else



if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
  
  
  
  
    if [ "$HTVP3" == true ];then
  
  defaultterminal -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
  fi
  
  

fi




még defaultterminal a terminal tehát elsősorban még puppy linuxokra készült. De átírhatjuk $TERM -re is. Szabad a gazda, szóval csak azért osztom ezt meg megint itt, mert a cache: előtag az fontos változtatás. És ezt már az új ffmpeg-gel teszteltem.


És akkor egy kombinált változat a hopping kódos streamekhez pl.:

fofi5play:

Kód: Egész kijelölése

#!/bin/bash 
#This script REmade by nocsak 2020.12.27.
 
 export OUTPUT_CHARSET=UTF-8
 
 export MAIN_DIALOG="
 <window title=\"$(gettext 'ffmpeg Player 5')\" icon-name=\"folder-remote\" resizable=\"true\">
    <vbox scrollable=\"true\" height=\"440\" width=\"400\">
    <frame Stream URL or File path>
     <entry>
<variable>PATHPROG01</variable>
     </entry>
     <button>
   <label>Search</label>
   <input file stock=\"gtk-open\"></input>
   <action>fileselect:PATHPROG01</action>
   </button>
   </frame>
   <frame Playback Volume>
     <hscale width-request=\"250\" range-min=\"1\" range-max=\"9\" range-step=\"1\">
		<default>4</default>
		<variable>PATHPROG08</variable>
     </hscale>
     
     </frame>
     <frame Resolution width (0 or vaule or leave empty)>
     <entry>
      <default>600</default>
      <variable>HTP</variable>
     </entry>
     </frame>
     <frame If video only without audio>
    <checkbox>
      <label>videoonly</label>
      <variable>HTVPD</variable>
    </checkbox>
  </frame>
     <frame Renderer (xv or opengl or audio)>
          <radiobutton active=\"true\">
      <label>opengl</label>
      <variable>HTVP1</variable>
    </radiobutton>

    <radiobutton>
      <label>xv</label>
      <variable>HTVP2</variable>
    </radiobutton>

    <radiobutton>
      <label>audio</label>
      <variable>HTVP3</variable>
    </radiobutton>
  
     <radiobutton>
      <label>ffplay</label>
      <variable>HTVP_PLAY</variable>
    </radiobutton>
  </frame>
     <hbox homogeneous=\"true\">
      <button ok></button>
      <togglebutton><input file stock=\"gtk-quit\"></input><label>$(gettext 'Kilépés')</label><input>exit 1</input><action>exit:abort</action><default>true</default><variable>pagg</variable></togglebutton>
     </hbox>
    </vbox>
    </window>
   "
 RETSTRING="`gtkdialog --program=MAIN_DIALOG --center`"
 eval "$RETSTRING"

if [[ "$pagg" = true ]]; then

echo "nothing"

else

exit 1

fi


if [ ! "$HTP" ] || [ "$HTP" == "0" ]; then









if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
  if [ "$HTVP_PLAY" == true ];then
  
  defaultterminal -e ffplay "$PATHPROG01" &
  
  else
  
  
  
  if [ "$HTVP3" == true ];then
  
  defaultterminal -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
fi
fi
else



if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
    
  if [ "$HTVP_PLAY" == true ];then
  
  defaultterminal -e ffplay -vf scale=$HTP:-1 "$PATHPROG01" &
  
  else
  
  
  
  
  
  
    if [ "$HTVP3" == true ];then
  
  defaultterminal -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
  fi
  
  fi
fi



ffplay_combined.jpg
ffplay_combined.jpg (35.19 KiB) Megtekintve 3991 alkalommal

Itt az ffplay felülbírálja az összes beállítást, a volume-t nem tudjuk állítani, a felbontást igen. Az ffplay esetén a megjelenő videóban jobb egérgombbal kattintva tudunk seek-elni.

Avatar
nocsak
Hozzászólások: 408
Csatlakozott: 2014.09.29. 15:01
Kapcsolat:

Re: scriptek

Hozzászólás Szerző: nocsak »

Üdv!

Az új, KuLuSz segítségével módosított fofi lejátszó szkript puppykhoz:

Kód: Egész kijelölése

#!/bin/bash 
#This script REmade by nocsak 2021.01.04.
 
 export OUTPUT_CHARSET=UTF-8
 DEF=""
[ "$1" ]&& DEF="<default>$1</default>"
 
 
 
 export MAIN_DIALOG="
 <window title=\"$(gettext 'ffmpeg Player 5')\" icon-name=\"folder-remote\" resizable=\"true\">
    <vbox scrollable=\"true\" height=\"440\" width=\"400\">
    <frame Stream URL or File path>
     <entry>
     $DEF
<variable>PATHPROG01</variable>
     </entry>
     <button>
   <label>Search</label>
   <input file stock=\"gtk-open\"></input>
   <action>fileselect:PATHPROG01</action>
   </button>
   </frame>
   <frame Playback Volume>
     <hscale width-request=\"250\" range-min=\"1\" range-max=\"9\" range-step=\"1\">
		<default>4</default>
		<variable>PATHPROG08</variable>
     </hscale>
     
     </frame>
     <frame Resolution width (0 or vaule or leave empty)>
     <entry>
      <default>600</default>
      <variable>HTP</variable>
     </entry>
     </frame>
     <frame If video only without audio>
    <checkbox>
      <label>videoonly</label>
      <variable>HTVPD</variable>
    </checkbox>
  </frame>
     <frame Renderer (xv or opengl or audio)>
          <radiobutton active=\"true\">
      <label>opengl</label>
      <variable>HTVP1</variable>
    </radiobutton>

    <radiobutton>
      <label>xv</label>
      <variable>HTVP2</variable>
    </radiobutton>

    <radiobutton>
      <label>audio</label>
      <variable>HTVP3</variable>
    </radiobutton>
  
     <radiobutton>
      <label>ffplay</label>
      <variable>HTVP_PLAY</variable>
    </radiobutton>
  </frame>
     <hbox homogeneous=\"true\">
      <button ok></button>
      <togglebutton><input file stock=\"gtk-quit\"></input><label>$(gettext 'Kilépés')</label><input>exit 1</input><action>exit:abort</action><default>true</default><variable>pagg</variable></togglebutton>
     </hbox>
    </vbox>
    </window>
   "
 RETSTRING="`gtkdialog --program=MAIN_DIALOG --center`"
 eval "$RETSTRING"

if [[ "$pagg" = true ]]; then

echo "nothing"

else

exit 1

fi


if [ ! "$HTP" ] || [ "$HTP" == "0" ]; then









if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
  if [ "$HTVP_PLAY" == true ];then
  
  $TERM -e ffplay "$PATHPROG01" &
  
  else
  
  
  
  if [ "$HTVP3" == true ];then
  
  $TERM -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
fi
fi
else



if [ ! "$PATHPROG01" ]; then
    
    xmessage -title "Something wrong" -buttons Ok:0,"Hmm":1,Cancel:2 -default Ok -nearmouse "No value given!" -timeout 5 &
  
 
  else
  
    
  if [ "$HTVP_PLAY" == true ];then
  
  $TERM -e ffplay -vf scale=$HTP:-1 "$PATHPROG01" &
  
  else
  
  
  
  
  
  
    if [ "$HTVP3" == true ];then
  
  $TERM -e ffmpeg -i cache:"$PATHPROG01" -filter:a volume=0.$PATHPROG08 -ac 2 -f alsa default &
  
  else
  
  
  if [ "$HTVPD" == true ];then
  if [ "$HTVP1" == true ];then
    ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play &
else

ffmpeg -re -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play &

fi

else
if [ "$HTVP1" == true ];then
ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f opengl fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  else
  ffmpeg -i cache:"$PATHPROG01" -vf scale=$HTP:-1 -f xv fofi5play -filter:a volume=0.$PATHPROG08 -f alsa default &
  fi
  fi
fi
  fi
  
  fi
fi


Videó róla: https://youtu.be/gxZpe81Qico

Avatar
nocsak
Hozzászólások: 408
Csatlakozott: 2014.09.29. 15:01
Kapcsolat:

Re: scriptek

Hozzászólás Szerző: nocsak »

Üdv!

Gondoltam megfeszülök akkor is rájövök mi a hiba.... hát.... ez nem is olyan egyszerű, pillanatnyilag működik. Ha valakinek nem megy adjon füstjeleket, mert még így sem biztos, hogy jó:


Szerk.: sokadjára átírva perpill nálam NosPup32 alatt működik.

szkript.sh:

Kód: Egész kijelölése

#!/bin/bash
# Screen Recorder v2 by KuLuSz 2019 12 24
# Itt szerkesztheted az alap beállításokat ( csak a felsővessző közötti részt szerkeszd! )
# Bekapcsolás "true" , Kikapcsolás "false"
# Bemeneti alap beállitások:
SR_SAMPLE_RATE="44100"
SR_AUDIO_CHANNELS="2"
SR_FRAME_RATE="10"

# Kódolási alap beállítások:
SR_VIDEO_CODEC="libx264"
SR_VIDEO_BITRATE="600"
SR_VIDEO_CRF="30"
SR_AUDIO_CODEC="libmp3lame"
SR_AUDIO_BITRATE="128"

# Átalakítási alap beállítások:
SR_PRESET="ultrafast"
SR_OUTPUT_FRAME_WIDTH="640"
SR_OUTPUT_FRAME_HEIGHT="480"
SR_ASPECT_RATIO="true"

# Kimeneti alap beállítások:
SR_SAVE_DIR="/root"
SR_SAVE_FILE_NAME="SR_v2-Video"
SR_SAVE_FILE_EXTENSION="mp4"
SR_MAX_FILE_SW="false"
SR_MAX_FILE_SIZE="8"
SR_MAX_FILE_UNIT="Mb"
SR_FILE_OVERWRITE="false"
SR_ADD_DATE="false"
SR_MINIMIZE="false"
###################################### Ez alatt NE írj át semmit! #####################################
export SR_TMP="/tmp/SRv2"
[ ! -e $SR_TMP ]&& mkdir -p $SR_TMP
[ "$(echo "$SR_VIDEO_CODEC" | grep -i "x26[45]\|mpeg4\|vpx")" ]&& CRFSW="true" || CRFSW="false"
[ "$(which wmctrl)" ]&& MINIMIZE="true" MINIINFO="" || MINIMIZE="false" MINIINFO=" (Ez a funkció nem elérhető, telepítsd a wmctrl parancsot.)"
ffmpeg -hide_banner -encoders|grep "V..\..." | grep "mpeg\|H\.\|VP\|theora\|wmv" | cut -f3- -d' ' |
sed 's/          / /g ; s: / : :g ; s/ part 2// ; s/(cod.*)// ; s/ AVC MPEG-4//' > $SR_TMP/video_codec_list1
export SR_VIDEO_CODEC_LIST="$(cat $SR_TMP/video_codec_list1 | cut -f1 -d' ')"
VCTIP="Állítható videó kodekkek:

$(cat $SR_TMP/video_codec_list1 | sed 's/(co.*[^)]//g')"

ffmpeg -hide_banner -encoders|grep "A..\..." | grep -v "= Audio\|[248]\-bit\|planar\|[aA][dD][pP]" | cut -f3- -d' ' |
sed 's/          / /g' > $SR_TMP/audio_codec_list1
export SR_AUDIO_CODEC_LIST="$(cat $SR_TMP/audio_codec_list1 | cut -f1 -d' ')"
ACTIP="Állítható audió kodekkek:

$(cat $SR_TMP/audio_codec_list1 | sed 's/(co.*[^)]//g')"
xrandr 1>& $SR_TMP/display
export SR_ALL_DISPLAY_SIZE="$(cat $SR_TMP/display | grep 'Screen' | grep -o "t.*, " | sed 's/ \|t\|\,//g')+0+0"
cat $SR_TMP/display | grep " con" | sed 's/ [a-z]* / /g' | cut -f-2 -d' ' | while read i;do
echo "$i" | cut -f1 -d' ' >> $SR_TMP/displays
done
[ "$(cat $SR_TMP/displays | grep -c ".*")" -gt 1 ]&& echo "Mind" >> $SR_TMP/displays
cat $SR_TMP/display | head -n 1 | grep -o " [0-9]*x[0-9]*+[0-9]*+[0-9]*" > $SR_TMP/vals

ffmpeg -hide_banner -sources alsa | grep " def" | cut -f2 -d= | cut -f1 -d' ' > $SR_TMP/audio_card_list
echo "00:00:00" > $SR_TMP/stopper
echo "-" > $SR_TMP/ofs
input_size(){
	if [ "$1" == "screen" ];then
		if [ -z "$(cat $SR_TMP/display | grep "$2")" ];then
		echo "$SR_ALL_DISPLAY_SIZE" > $SR_TMP/vals
		else
		cat $SR_TMP/display | grep " con" | grep "$2" | grep -o " [0-9]*x[0-9]*+[0-9]*+[0-9]*" > $SR_TMP/vals
		fi	
	export SR_INPUT_SIZE="$(cat $SR_TMP/vals | cut -f1 -d'+')"
	export SR_INPUT_POSITION="$(cat $SR_TMP/vals | grep -o '+.*' | sed 's/+/\,/2')"
	MSG="$2 kijelző"
	elif [ "$1" == "window" ];then
	export SR_INPUT_SIZE="$(cat $SR_TMP/vals | grep "Wid\|He" | grep -o ":.*" | tr -d '\n' | sed 's/: // ; s/: /x/')"
	export SR_INPUT_POSITION="$(cat $SR_TMP/vals | grep "Cor" | awk '{print $2}' | sed 's/+/\,/2')"
	MSG="Az ablak"
	fi
	yaf-splash -text "$MSG kijelölve rögzítésre" -placement top-left -timeout 2 -close never &
	echo "$SR_INPUT_SIZE" > $SR_TMP/isize
	echo "$SR_INPUT_POSITION" > $SR_TMP/ipos
	rm $SR_TMP/vals
	}
export -f input_size
input_size screen

PRESETS="ultrafast veryfast faster fast medium slow slower veryslow"
EXT="3gp asf avi flv mkv mpg mp3 mp4 ogg ogv wav wma wmv"

recording(){
	#[ "$(pgrep ffmpeg)" ]&& kill -15 $(pgrep ffmpeg)
	WIN_ID="$(xprop -root 32x '\t$0' _NET_ACTIVE_WINDOW | cut -f 2)"
	[ "$TRAY" == "true" -a "$(which wmctrl)" ]&& WIN_MIN="wmctrl -i -r $WIN_ID -b toggle,hidden" || WIN_MIN=""
	DATE="-$(date +'%Y_%m_%d-%H-%M-%S')"
	if [ "$VREC" == "true" ];then
	PRESET="-preset $SR_PRESET "
	IPOS="$(cat $SR_TMP/ipos)"
	IW="$(echo $SR_INPUT_SIZE | cut -f1 -d'x')"
	IH="$(echo $SR_INPUT_SIZE | cut -f2 -d'x')"
	[ "$(echo $IW | grep -o ".$" | grep "1\|3\|5\|7\|9")" ]&& IW=$[$IW-1]
	[ "$(echo $IH | grep -o ".$" | grep "1\|3\|5\|7\|9")" ]&& IH=$[$IH-1]
	[ -e $SR_TMP/crf ]&& CRF="-crf $SR_VIDEO_CRF " || CRF=""
	VI="-f x11grab -skip_alpha 1 -skip_frame all -framerate $SR_FRAME_RATE -s ${IW}x$IH -i :0.0$IPOS "
	VCB="-vcodec $SR_VIDEO_CODEC -b:v ${SR_VIDEO_BITRATE}K -pix_fmt yuv420p -flags unaligned $CRF"
	 if [ "$SR_O_SIZE_SW" == "true" ];then
	 SCALE="-vf scale=$SR_OUTPUT_FRAME_WIDTH:$SR_OUTPUT_FRAME_HEIGHT "
		if [ "$SR_ASPECT_RATIO" == "true" ];then
		[ "$SR_OUTPUT_FRAME_WIDTH" -gt "$SR_OUTPUT_FRAME_HEIGHT" ]&& SCALE="-vf scale=$SR_OUTPUT_FRAME_WIDTH:-1 " || SCALE="-vf scale=-1:$SR_OUTPUT_FRAME_HEIGHT "
		fi
	 else
	 SCALE=""
	 fi
	else
	VI="" VCB="" PRESET=""
	fi
	if [ "$AREC" == "true" ];then
	AI="-f alsa -thread_queue_size 1M -ar $SR_SAMPLE_RATE -ac $SR_AUDIO_CHANNELS -i default:CARD=$SR_AUDIO_CARD "
	ACB="-acodec $SR_AUDIO_CODEC -b:a ${SR_AUDIO_BITRATE}K -af aresample=async=1 -async 1 "
	else
	AI="" ACB=""
	fi
	[ "$SR_MAX_FILE_SW" == "true" ]&& FS="-fs $SR_MAX_FILE_SIZE$(echo $SR_MAX_FILE_UNIT | cut -c1) " || FS=""
	[ "$SR_FILE_OVERWRITE" == "true" ]&& OW="-y " || OW=""
	[ "$SR_ADD_DATE" == "true" -o -z "$SR_SAVE_FILE_NAME" ]&& NAME="$SR_SAVE_FILE_NAME$DATE.$SR_SAVE_FILE_EXTENSION" || NAME="$SR_SAVE_FILE_NAME.$SR_SAVE_FILE_EXTENSION"
	[ "$SR_FILE_OVERWRITE" == "false" -a -e $SR_SAVE_DIR/$NAME ]&& NAME="$SR_SAVE_FILE_NAME$DATE.$SR_SAVE_FILE_EXTENSION"
	if [ ! -e $SR_SAVE_DIR ];then
	 yaf-splash -text "A $SR_SAVE_DIR könyvtár nem létezik, hozd létre, vagy válassz másikat..." -placement center -timeout 20 -close never &
	else
	NAME="$(echo "$NAME" | sed 's/ /_/g')"
	FILE="$(echo "$SR_SAVE_DIR/$NAME" | sed 's://:/:g ; s/ /\ /g')"
	$WIN_MIN
	echo "" > $SR_TMP/error.log
	FFREPORT=file=$SR_TMP/error.log:level=16 ffmpeg -hide_banner -hwaccel auto $VI$AI$VCB$ACB$SCALE$FS$PRESET$OW -fflags nobuffer $FILE &
	PID1="$!"
	
	
	H="0"	M="0"	S="0"
	sync
	while [ ! -e $SR_TMP/stop ];do
		if [ ! -e /proc/$PID1 ];then
		touch $SR_TMP/stop
		[ "$(cat $SR_TMP/error.log | grep -c ".*")" -gt 2 ]&& \
		cat $SR_TMP/error.log | tail -n +3 | sed 's/ \- /\n\t \- /g' > $SR_TMP/error2.log && \
		echo '<window width-request="640" height-request="120" resizable="true" title="Hiba történt">
		<vbox scrollable="true" vscrollbar-policy="1">
		<edit editable="false" wrap="true" width-chars="90">
		<input file>'$SR_TMP'/error2.log</input>
		</edit> </vbox> </window>' | gtkdialog -s --center &
		break
		fi
	[ $S -eq 60 ]&& S="0" && M="$[$M+1]"
	[ $M -eq 60 ]&& M="0" && H="$[$H+1]"
	[ $S -lt 10 ]&& SS="0$S" || SS="$S"
	[ $M -lt 10 ]&& MM="0$M" || MM="$M"
	[ $H -lt 10 ]&& HH="0$H" || HH="$H"
	echo "$HH:$MM:$SS" > $SR_TMP/stopper
	echo "$(du -h $FILE | awk '{print $1}')b" > $SR_TMP/ofs
	sleep 1
	S="$[$S+1]"
	done
	
	[ -e /proc/$PID1 ]&& kill -15 "$PID1"
	
	sync
	touch $SR_TMP/stop
	[ "$(xprop -id $WIN_ID | grep "_NET_WM_STATE_HIDDEN")" -a "$WIN_MIN" ]&& $WIN_MIN
	yaf-splash -text "A felvétel véget ért!" -placement top -timeout 3 -close never &
	sleep 15 && echo "00:00:00" > $SR_TMP/stopper && echo "-" > $SR_TMP/ofs
	
	fi
	}
export -f recording

export MD='<window width-request="620" resizable="true" title="Screen Recorder v2.2 by KuLuSz - ( ffmpeg'$(ffmpeg -version | head -n1 | grep -o ' [0-9]*\.[0-9]*\.[0-9]*')' )"> <vbox>  <frame Bemenet> <hbox>  <vbox>
    <checkbox>   <label>Videó rögzitése</label>   <variable>VREC</variable>   <default>true</default>
    <action>if true show:VI</action>			<action>if false hide:VI</action>
    <action>if true show:VC</action>			<action>if false hide:VC</action>
    <action>if true show:VE</action>			<action>if false hide:VE</action>
   <action condition="active_is_false(AREC)">hide:COD</action>   <action condition="active_is_true(VREC)">show:COD</action>
   <action condition="active_is_false(AREC)">hide:OUTPUT</action>   <action condition="active_is_true(VREC)">show:OUTPUT</action>
    </checkbox>
  <eventbox>  <hbox space-expand="true">
   <comboboxtext width-request="100" tooltip-text="Választható kijelzők rögzítésre">
    <variable>SCREEN</variable>    <input file>'$SR_TMP'/displays</input>
    <action>input_size screen $SCREEN &</action>
   </comboboxtext>
   <button tooltip-text="Választható ablak rögzítésre"> <label>Ablak</label>
    <action>xwininfo -stats > '$SR_TMP'/vals && input_size window &</action>
   </button>
   <entry tooltip-text="A videó bemeneti kép mérete: szélesség x magasság" auto-refresh="true" editable="false" width-request="60">
   <input file>'$SR_TMP'/isize</input>   <variable>SR_INPUT_SIZE</variable> </entry>
  </hbox>
  <variable>VI</variable>
  </eventbox>
  <vseparator width-request="301"></vseparator>
  </vbox>
  <vbox>
   <checkbox> <label>Hang rögzitése</label> <variable>AREC</variable> <default>true</default>
   <action>if true show:AI</action>   			<action>if false hide:AI</action>
   <action>if true show:AC</action>   			<action>if false hide:AC</action>
   <action condition="active_is_false(VREC)" condition="active_is_false(AREC)">hide:COD</action>   <action condition="active_is_true(AREC)">show:COD</action>
   <action condition="active_is_false(AREC)">hide:OUTPUT</action>   <action condition="active_is_true(VREC)">show:OUTPUT</action>
   <action condition="active_is_true(AREC)">show:OUTPUT</action>
   </checkbox>
   <eventbox>   <hbox space-expand="true">
   <comboboxtext width-request="100" tooltip-text="Választható hangkártyák rögzítésre">
    <variable>SR_AUDIO_CARD</variable>    <input file>'$SR_TMP'/audio_card_list</input>
    <action>yaf-splash -text "$SOUND hankártya kijelölve rögzítésre" -placement top-left -timeout 2 -close never 1>& /dev/null</action>
   </comboboxtext>
   <comboboxtext tooltip-text="Mintavételezési sebesség"> <variable>SR_SAMPLE_RATE</variable> <default>'$SR_SAMPLE_RATE'</default>
   <item>48000</item> <item>44100</item> <item>22050</item>
   </comboboxtext>
   <comboboxtext tooltip-text="Csatornák száma 
   1 Mono 
   2 Stereo"> <variable>SR_AUDIO_CHANNELS</variable> <default>'$SR_AUDIO_CHANNELS'</default>
   <item>1</item> <item>2</item> </comboboxtext>
   </hbox>
   <variable>AI</variable>   </eventbox>
   <vseparator width-request="280"></vseparator>
   </vbox> </hbox> </frame>
 <eventbox> <frame Kódolás> <hbox> <eventbox> <vbox>
	<hbox space-expand="true">	<text><label>Video:</label></text>
	 <comboboxtext tooltip-text="'$VCTIP'">	<default>'$SR_VIDEO_CODEC'</default> <variable>SR_VIDEO_CODEC</variable>
	 <input>echo "$SR_VIDEO_CODEC_LIST" | sed "s/ /\n/g"</input>
	 <action>[ $SR_VIDEO_CODEC != libx264 -o $SR_VIDEO_CODEC != libx264rgb -o $SR_VIDEO_CODEC != libx265 -o $SR_VIDEO_CODEC != mpeg4 -o $SR_VIDEO_CODEC != libvpx -o $SR_VIDEO_CODEC != libvpx-vp9 ]&& [ -e '$SR_TMP'/crf ]&& rm '$SR_TMP'/crf</action>
	 <action>[ $SR_VIDEO_CODEC == libx264 -o $SR_VIDEO_CODEC == libx264rgb -o $SR_VIDEO_CODEC == libx265 -o $SR_VIDEO_CODEC == mpeg4 -o $SR_VIDEO_CODEC == libvpx -o $SR_VIDEO_CODEC == libvpx-vp9 ]&& echo true > '$SR_TMP'/crf</action>
	 <action condition="command_is_true([ -e '$SR_TMP'/crf ]&& echo true)">enable:SR_VIDEO_CRF</action>
	 <action condition="command_is_false([ ! -e '$SR_TMP'/crf ]&& echo false)">disable:SR_VIDEO_CRF</action>
	 </comboboxtext>
	 <spinbutton width-request="60" range-min="-1" range-max="40" range-step="5" tooltip-text="Videó képminősége (-1 = legjobb)">
	 <default>'$SR_VIDEO_CRF'</default> <variable>SR_VIDEO_CRF</variable>
	 <sensitive>'$CRFSW'</sensitive>
     </spinbutton>	 
	 <spinbutton width-request="60" range-min="300" range-max="20000" range-step="50" tooltip-text="Videó tömöritési adatmennyisége (Kbps)">
	 <default>'$SR_VIDEO_BITRATE'</default> <variable>SR_VIDEO_BITRATE</variable>
	 <sensitive>true</sensitive><visible>false</visible>
     </spinbutton>
	</hbox>
 <vseparator width-request="281"></vseparator>
 </vbox> <variable>VC</variable> </eventbox>
 <vbox> <eventbox> <vbox> 	<hbox space-expand="true">
	<text><label>Audio:</label></text>
	<comboboxtext tooltip-text="'$ACTIP'">	<default>'$SR_AUDIO_CODEC'</default>	<variable>SR_AUDIO_CODEC</variable>
	 <input>echo "$SR_AUDIO_CODEC_LIST" | sed "s/ /\n/g"</input>
	</comboboxtext>
	<spinbutton width-request="60" range-min="96" range-max="320" tooltip-text="Audio tömöritési adatmennyisége (Kbps)">
	<default>'$SR_AUDIO_BITRATE'</default>	 <variable>SR_AUDIO_BITRATE</variable>
	</spinbutton>
	</hbox> </vbox> <variable>AC</variable> </eventbox>
 <vseparator width-request="281"></vseparator>
 </vbox> </hbox> </frame> <variable>COD</variable> </eventbox>
 <eventbox> <frame Átalakítás>
 	<hbox space-expand="true">
	<text><label>Fps:</label></text>
	<spinbutton width-request="60" range-max="60" range-step="5" tooltip-text="Képkockák száma másodpercenként">    <default>'$SR_FRAME_RATE'</default>
    <variable>SR_FRAME_RATE</variable>
    </spinbutton>
    <checkbox>    <label>Videó átméretezése:</label>	<default>false</default>	<variable>SR_O_SIZE_SW</variable>
	<action>if true enable:E</action>			<action>if false disable:E</action>
	</checkbox>
	<eventbox>	<vbox><hbox>
	<spinbutton width-request="60" range-max="1920" range-min="320" tooltip-text="Kimeneti szélesség">	<variable>SR_OUTPUT_FRAME_WIDTH</variable>
	<default>'$SR_OUTPUT_FRAME_WIDTH'</default>
	</spinbutton>
	<text><label>x</label></text>
	<spinbutton width-request="60" range-max="1080" range-min="240" tooltip-text="Kimeneti magasság">	<variable>SR_OUTPUT_FRAME_HEIGHT</variable>
	<default>'$SR_OUTPUT_FRAME_HEIGHT'</default>
	</spinbutton>
    <checkbox>	<label>Képarány tartása</label>	<default>'$SR_ASPECT_RATIO'</default>	<variable>SR_ASPECT_RATIO</variable>
	</checkbox>
	</hbox></vbox>	<sensitive>false</sensitive>	<variable>E</variable>	</eventbox>	</hbox> </frame>
 <variable>VE</variable> </eventbox>
 <eventbox> <frame Kimenet>
 
	<hbox tooltip-text="Mentési könyvtár/fájlnév/kiterjesztés beállítása">
	<text><label>Mentés ide:</label></text>
	<entry fs-title="Mentési könyvtár:" fs-action="folder" width-request="165">	<default>'$SR_SAVE_DIR'</default>
	<variable>SR_SAVE_DIR</variable>
	</entry>
	<button> <input file stock="gtk-open"></input> <action>fileselect:SR_SAVE_DIR</action> </button>
	<text><label>Fájlnév:</label></text>
	<entry width-request="160" auto-refresh="true">	<variable>SR_SAVE_FILE_NAME</variable> <default>'$SR_SAVE_FILE_NAME'</default>
	</entry>
	<comboboxtext width-request="60"> <default>'$SR_SAVE_FILE_EXTENSION'</default> <variable>SR_SAVE_FILE_EXTENSION</variable>
	<input>echo "'$EXT'" | sed "s/ /\n/g"</input>
	</comboboxtext>
	</hbox> 
 
 	<hbox space-expand="true">	 <vbox space-expand="true">
	 <hbox>
	 <checkbox> <label>Maximum fájlméret:</label> <default>'$SR_MAX_FILE_SW'</default> <variable>SR_MAX_FILE_SW</variable>
	 <action>if true enable:SR_MAX_FILE_SIZE</action>	<action>if false disable:SR_MAX_FILE_SIZE</action>
	 <action>if true enable:SR_MAX_FILE_UNIT</action>	<action>if false disable:SR_MAX_FILE_UNIT</action>
	 </checkbox>
	 </hbox>
	 <checkbox tooltip-text="Dátum hozzáadása a fájlnévhez."> <label>Dátum hozzáadás</label>	<default>'$SR_ADD_DATE'</default>
	 <variable>SR_ADD_DATE</variable>
	 </checkbox>
	 <checkbox tooltip-text="Létező fájlok felülirása.">	<label>Fájl felülírás</label>
	 <default>'$SR_FILE_OVERWRITE'</default>	 <variable>SR_FILE_OVERWRITE</variable>
	 </checkbox>
	</vbox>
	 <vbox space-expand="true">	
	<hbox>
	 <spinbutton width-request="65" range-min="1" range-max="100000"> <sensitive>false</sensitive> <variable>SR_MAX_FILE_SIZE</variable>
	 <default>'$SR_MAX_FILE_SIZE'</default>
	 </spinbutton>
	 <comboboxtext width-request="50" tooltip-text="Méret mértékegysége."> <default>'$SR_MAX_FILE_UNIT'</default>
	 <variable>SR_MAX_FILE_UNIT</variable> <sensitive>false</sensitive> <item>Gb</item> <item>Mb</item> <item>Kb</item>
	 </comboboxtext>
	</hbox>
	<hbox tooltip-text="Felvételi idő">
	<text><label>Idő:</label></text>
    <entry auto-refresh="true" editable="false" width-request="60"> <input file>'$SR_TMP'/stopper</input> </entry>	
	</hbox>
	<hbox tooltip-text="Felvételi fájlméret">
	<text><label>Méret:</label></text>
    <entry auto-refresh="true" editable="false" width-request="60"> <input file>'$SR_TMP'/ofs</input> </entry>	
	</hbox>
	</vbox>
	<vbox space-expand="true">
	 <checkbox tooltip-text="Ablak tálcára küldése felvétel megkezdésekor.'$MINIINFO'">	<label>Ablak minimalizálása</label>
	 <default>'$SR_MINIMIZE'</default>	 <variable>TRAY</variable> <sensitive>'$MINIMIZE'</sensitive>
	 </checkbox>
	<hbox space-expand="true" tooltip-text="Tömörítési bitráta/minőség/sebesség kapcsoló">
	<text><label>Profil:</label></text>
	<comboboxtext width-request="90"> <default>'$SR_PRESET'</default> <variable>SR_PRESET</variable>
	<input>echo -e "'$PRESETS'" | sed "s/ /\n/g"</input>
	</comboboxtext>
	</hbox>
	<hbox space-expand="true">
	<button tooltip-text="Rögzítés megkezdése" width-request="70"> <label>Felvétel</label> <variable>RECBTN</variable> <input file stock="gtk-rec"></input>
	<action>disable:RECBTN</action>
	<action>enable:STOPBTN</action>
	<action>[ -e '$SR_TMP'/stop ]&& rm '$SR_TMP'/stop</action>
	<action>recording &</action>
	</button>
	<button tooltip-text="Rögzítés megállítása" width-request="70"> <label>Állj</label> <variable>STOPBTN</variable> <input file stock="gtk-rec"></input>
	<sensitive>false</sensitive><action>enable:RECBTN</action>	<action>disable:STOPBTN</action> <action>touch '$SR_TMP'/stop</action>
	</button>
	</hbox>
	<timer interval="1" visible="false">
	<action condition="command_is_true([ -e $SR_TMP/stop ]&& echo true)">disable:STOPBTN</action>
	<action condition="command_is_true([ -e $SR_TMP/stop ]&& echo true)">enable:RECBTN</action>
	</timer> </vbox> </hbox>
 </frame> <variable>OUTPUT</variable>	</eventbox>  </vbox> </window>' && gtkdialog --program=MD --center
touch $SR_TMP/stop && rm -r $SR_TMP


ticoo1
Hozzászólások: 625
Csatlakozott: 2014.10.21. 08:58

Re: scriptek

Hozzászólás Szerző: ticoo1 »

Köszönöm!

A HuBi-Pup32-ön is rendben működik. :D

Válasz küldése

Vissza: “Programozás, alkalmazásfejlesztés”