| 
									
										
										
										
											2024-07-21 14:28:19 +03:00
										 |  |  | #!/usr/bin/env bash | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-07-21 15:26:04 +03:00
										 |  |  | # XXX add help... | 
					
						
							|  |  |  | # XXX add better options... | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | FPS=${FPS:-8} | 
					
						
							|  |  |  | if [ $1 == "-r" ] ; then | 
					
						
							|  |  |  | 	FPS=$2 | 
					
						
							|  |  |  | 	shift 2 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | PATTERN=${PATTERN:-'*.jpg'} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # generate name... | 
					
						
							|  |  |  | LST=($PATTERN) | 
					
						
							|  |  |  | A=${LST[0]} | 
					
						
							|  |  |  | A=${A%.jpg} | 
					
						
							|  |  |  | B=${LST[$(( ${#LST[@]} - 1 ))]} | 
					
						
							|  |  |  | B=${B%.jpg} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | NAME=${NAME:-${A}-${B}} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | PALETTE=${PALETTE:-.palette.png} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # generate... | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	set -o noglob | 
					
						
							|  |  |  | 	# gif palette... | 
					
						
							|  |  |  | 	ffmpeg \ | 
					
						
							|  |  |  | 		-pattern_type glob \ | 
					
						
							|  |  |  | 			-i $PATTERN \ | 
					
						
							|  |  |  | 		-vf palettegen \ | 
					
						
							|  |  |  | 		"$PALETTE" | 
					
						
							|  |  |  | 	# gif... | 
					
						
							|  |  |  | 	ffmpeg \ | 
					
						
							|  |  |  | 		-r $FPS \ | 
					
						
							|  |  |  | 		-pattern_type glob \ | 
					
						
							|  |  |  | 			-i $PATTERN \ | 
					
						
							|  |  |  | 		-i "$PALETTE" \ | 
					
						
							|  |  |  | 		-filter_complex paletteuse=dither=none \ | 
					
						
							|  |  |  | 		"${NAME}".gif | 
					
						
							| 
									
										
										
										
											2024-07-28 11:27:06 +03:00
										 |  |  | 	# cleanup... | 
					
						
							|  |  |  | 	rm "$PALETTE" | 
					
						
							| 
									
										
										
										
											2024-07-21 15:26:04 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	# mkv... | 
					
						
							|  |  |  | 	ffmpeg \ | 
					
						
							|  |  |  | 		-r $FPS \ | 
					
						
							|  |  |  | 		-pattern_type glob \ | 
					
						
							|  |  |  | 			-i $PATTERN \ | 
					
						
							|  |  |  | 		"${NAME}".mkv | 
					
						
							|  |  |  | 	#set +o noglob | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2024-07-21 14:28:19 +03:00
										 |  |  | 
 |