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
Hozzászólások: 540
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

nocsak
Hozzászólások: 283
Csatlakozott: 2014.09.29. 15:01

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 887 alkalommal
sshfs_mounter02.jpg
sshfs_mounter02.jpg (13.65 KiB) Megtekintve 884 alkalommal

Avatar
KuLuSz
Hozzászólások: 540
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

nocsak
Hozzászólások: 283
Csatlakozott: 2014.09.29. 15:01

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 791 alkalommal

Avatar
KuLuSz
Hozzászólások: 540
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
Hozzászólások: 540
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

nocsak
Hozzászólások: 283
Csatlakozott: 2014.09.29. 15:01

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 239 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 223 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.

nocsak
Hozzászólások: 283
Csatlakozott: 2014.09.29. 15:01

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

Válasz küldése

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