| 
									
										
										
										
											2024-02-05 12:30:51 +04:00
										 |  |  | #!/bin/sh | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ -z $(which ffmpeg) ] | 
					
						
							|  |  |  | then | 
					
						
							|  |  |  |     echo "Missing ffmpeg package, please install it!" | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-02-18 07:17:50 +04:00
										 |  |  | if [ -z $(which shnsplit) ] | 
					
						
							|  |  |  | then | 
					
						
							|  |  |  |     echo "Missing shntool package, please install it!" | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-02-05 12:30:51 +04:00
										 |  |  | if [ ! -z $1 ] | 
					
						
							|  |  |  | then | 
					
						
							|  |  |  |     if [ $1 == 'cut' ]  | 
					
						
							|  |  |  |     then | 
					
						
							|  |  |  |        ffmpeg -i "$2" -ss $3 -t $4 -c:v copy -c:a copy "$5" | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     if [ $1 == 'shrink' ] | 
					
						
							|  |  |  |     then | 
					
						
							| 
									
										
										
										
											2024-02-22 00:09:41 +04:00
										 |  |  |        ffmpeg -i "$2" -vcodec libx264 -crf 15 -filter:v fps=25 -s 1280x720 -c:a copy "$3" | 
					
						
							| 
									
										
										
										
											2024-02-05 12:30:51 +04:00
										 |  |  |     fi | 
					
						
							| 
									
										
										
										
											2024-02-10 16:10:05 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     if [ $1 == 'record' ] | 
					
						
							|  |  |  |     then | 
					
						
							| 
									
										
										
										
											2024-02-22 00:09:41 +04:00
										 |  |  |        device_id=$(pactl list short sources | grep output | awk '{print $1}') | 
					
						
							|  |  |  |        if [ $2 == 'mic' ] | 
					
						
							|  |  |  |        then | 
					
						
							|  |  |  |            microphone_id=$(pactl list short sources | grep input | awk '{print $1}') | 
					
						
							|  |  |  |            ffmpeg -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i $device_id -f pulse -ac 2 -i $microphone_id  -filter_complex "[1:0][2:0]amix=inputs=2:duration=shortest" ~/Videos/$(date "+%F-%N").mkv & | 
					
						
							|  |  |  |        else | 
					
						
							|  |  |  | 	   ffmpeg -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i $device_id ~/Videos/$(date "+%F-%N").mkv & | 
					
						
							|  |  |  |        fi | 
					
						
							| 
									
										
										
										
											2024-02-10 16:10:05 +04:00
										 |  |  |        echo "$!" > ~/.local/share/ffmpeg/recent-recording | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     if [ $1 == 'stop' ] | 
					
						
							|  |  |  |     then | 
					
						
							|  |  |  |        kill $(cat ~/.local/share/ffmpeg/recent-recording) | 
					
						
							|  |  |  |     fi | 
					
						
							| 
									
										
										
										
											2024-02-18 07:17:50 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     if [ $1 == 'cue' ] | 
					
						
							|  |  |  |     then | 
					
						
							|  |  |  |        shnsplit -f $2 $3 | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |     echo "cut:" | 
					
						
							|  |  |  |     echo "ffmpeg -i \$2 -ss \$3 -t \$4 -c:v copy -c:a copy \$5" | 
					
						
							|  |  |  |     echo "shrink:" | 
					
						
							| 
									
										
										
										
											2024-02-22 00:09:41 +04:00
										 |  |  |     echo "ffmpeg -i \$2 -vcodec libx264 -crf 15 -filter:v fps=25 -s 1280x720 -c:a copy\$3" | 
					
						
							| 
									
										
										
										
											2024-02-18 07:17:50 +04:00
										 |  |  |     echo "record:" | 
					
						
							|  |  |  |     echo "ffmpeg -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i 57 ~/Videos/\$(date \"+%F-%N\").mkv &" | 
					
						
							|  |  |  |     echo "cue:" | 
					
						
							|  |  |  |     echo "shnsplit -f \$2 \$3" | 
					
						
							| 
									
										
										
										
											2024-02-05 12:30:51 +04:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 |