betlog

recordDesktop-START_embed-specifiedSource.sh

Oct 30th, 2019
377
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.18 KB | None | 0 0
  1. #!/bin/bash
  2. # BETLOG - 2019-10-24--19-36-55
  3. #
  4. # pacmd list-sources
  5. # pactl list sinks
  6. #
  7. # -b:v 4.5M -bufsize 9M -maxrate 6M
  8. #
  9. # ------- generic
  10. # /home/user/documents/scripts/audio/listAudioSources.sh
  11. AUDIOPREF_OUT="alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1.monitor"
  12. AUDIOPREF_MIC="alsa_input.pci-0000_00_1b.0.analog-stereo"
  13. OUTPUTPATH="/home/user/.steamdata/video"
  14. MODULENULLSINKNAME="combinedSinks"
  15. FRAMERATE=60.00 #59.94006   #30 #29.970030
  16. VIDEOCODEC=h264_nvenc
  17. # ========
  18. if [[ $(pgrep ffmpeg) ]];then
  19.     paplay ---volume=32768 --device=${AUDIOPREF_OUT/.monitor/} "/home/user/music/audio/_all-alarms-notifications-ringtones/warzone2100-beacon.ogg" 1> /dev/null    
  20.     kdialog --title "Recording Desktop" --passivepopup "ALREADY RECORDING" 3
  21.     exit
  22. fi
  23. paplay --volume=32768 --device=${AUDIOPREF_OUT/.monitor/} "/home/user/music/audio/_all-alarms-notifications-ringtones/bell.oga" 1> /dev/null
  24. title="_$(xdotool getwindowname $(xdotool getactivewindow 2> /dev/null) 2> /dev/null|sed 's/[^[:alnum:]]//g')"
  25. resolution=$(xrandr | grep -m1 "*" | awk '{print $1}')
  26. msg="\\n"
  27. # ------- just kdialog message
  28. data=$(echo $AUDIOPREF_MIC|sed 's/\.monitor//'|awk -F'.' '{print $1 " " $NF}')
  29. type=$(echo $data|awk '{print $1}'|sed 's/alsa_//')
  30. nameLong=$(echo $data|awk '{print $2}')
  31. msg+="$type: $nameLong\\n"    
  32. # ------- embed - AUDIOPREF_OUT
  33. data=$(echo $AUDIOPREF_OUT|sed 's/\.monitor//'|awk -F'.' '{print $1 " " $NF}')
  34. type=$(echo $data|awk '{print $1}'|sed 's/alsa_//')
  35. nameLong=$(echo $data|awk '{print $2}')
  36. msg+="$type: $nameLong\\n"    
  37. ffmpeg \
  38. -hwaccel cuvid \
  39. -f pulse \
  40. -i $AUDIOPREF_OUT \
  41. -f x11grab \
  42. -s $resolution \
  43. -i :0.0 \
  44. -r $FRAMERATE \
  45. -vcodec $VIDEOCODEC \
  46. -b:v 0 \
  47. "$OUTPUTPATH/$(date +%Y-%m-%d--%H-%M-%S.%3N)${title}.mkv" &
  48. # ------- generic
  49. if [[ $! ]];then
  50.     [[ -L $0 ]] && name=$(basename $(readlink $0)) || name=$(basename $0)
  51.     kdialog --title "${name%%_*}" --passivepopup "$(echo ${name##*START_}|sed 's/.sh//')\\n$resolution@$FRAMERATE$msg" 3
  52. else
  53.     paplay ---volume=32768 --device=${AUDIOPREF_OUT/.monitor/} "/home/user/music/audio/_all-alarms-notifications-ringtones/Wookie.mp3" 1> /dev/null
  54.     kdialog --title "Recording Desktop - ERROR" --passivepopup "Process not found" 3
  55. fi
Advertisement
Add Comment
Please, Sign In to add comment