initial commit
This commit is contained in:
		
							
								
								
									
										79
									
								
								docs/agn.convert.maxref.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								docs/agn.convert.maxref.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,79 @@ | ||||
| <?xml version='1.0' encoding='utf-8' standalone='yes'?> | ||||
|  | ||||
|  | ||||
| <!-- DO NOT EDIT THIS FILE ... YOU WILL LOSE YOUR WORK --> | ||||
|  | ||||
|  | ||||
| <c74object name='agn.convert' category='again, loop, video'> | ||||
|  | ||||
| 	<digest> | ||||
|         Converts agn.host exports to gif or webm | ||||
|     </digest> | ||||
| 	<description> | ||||
|         Converts agn.host exported png frames to gif or webm, using ffmpeg executed via the shell object | ||||
|     </description> | ||||
|  | ||||
|  | ||||
| 	<!--METADATA--> | ||||
|  | ||||
| 	<metadatalist> | ||||
| 		<metadata name='author'>Théophile Clet</metadata> | ||||
| 		<metadata name='tag'>again</metadata> | ||||
| 		<metadata name='tag'>loop</metadata> | ||||
| 	</metadatalist> | ||||
|  | ||||
|  | ||||
| 	<!--MESSAGES--> | ||||
|  | ||||
| 	<methodlist> | ||||
| 		<method name="gif"> | ||||
| 			<digest>Converts agn.host export to an animated gif</digest> | ||||
| 			<description>Converts agn.host export to an animated gif file.</description> | ||||
| 		</method> | ||||
| 	</methodlist> | ||||
|     <methodlist> | ||||
| 		<method name="webm"> | ||||
| 			<digest>Converts agn.host export to an animated gif</digest> | ||||
| 			<description>Converts agn.host export to a webm file.</description> | ||||
| 		</method> | ||||
| 	</methodlist> | ||||
|     <methodlist> | ||||
| 		<method name="loglevel"> | ||||
| 			<digest>Sets the ffmpeg logging level</digest> | ||||
| 			<description>When followed by one of these words: quiet, fatal, error, warning, info, verbose, sets the ffmpeg logging level</description> | ||||
| 		</method> | ||||
| 	</methodlist> | ||||
|     <methodlist> | ||||
| 		<method name="filename"> | ||||
| 			<digest>Sets the name of the output file</digest> | ||||
| 			<description>Sets the name of the converted file (which will be followed by a timestamp)</description> | ||||
| 		</method> | ||||
| 	</methodlist> | ||||
|  | ||||
|  | ||||
| 	<!--ATTRIBUTES--> | ||||
|  | ||||
| 	<attributelist> | ||||
|  | ||||
| 		<attribute name='loglevel' get='0' set='1'  type='symbol' size='1' > | ||||
| 			<digest>ffmpeg logging level</digest> | ||||
| 			<description>ffmpeg logging level. From the less to most verbose: quiet, fatal, error, warning, info, verbose.</description> | ||||
| 		</attribute> | ||||
|         <attribute name='filename' get='0' set='1'  type='symbol' size='1' > | ||||
| 			<digest>Sets the name of the output file</digest> | ||||
| 			<description>Sets the name of the converted file (which will be followed by a timestamp)</description> | ||||
| 		</attribute> | ||||
|  | ||||
| 	</attributelist> | ||||
|  | ||||
|  | ||||
| 	<!--RELATED--> | ||||
|  | ||||
| 	<seealsolist> | ||||
| 		<seealso name='agn.host' /> | ||||
| 		<seealso name='agn.remote' /> | ||||
| 		<seealso name='shell' /> | ||||
| 	</seealsolist> | ||||
|  | ||||
|  | ||||
| </c74object> | ||||
							
								
								
									
										110
									
								
								docs/agn.host.maxref.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										110
									
								
								docs/agn.host.maxref.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,110 @@ | ||||
| <?xml version='1.0' encoding='utf-8' standalone='yes'?> | ||||
|  | ||||
| <c74object name='agn.host' category='again, loop, video'> | ||||
|  | ||||
| 	<digest> | ||||
| 		Create and export animated loops | ||||
| 	</digest> | ||||
| 	<description> | ||||
| 		Generates synchronized bangs and phase for creating looping animations and export them as files. To be used in tandem with agn.remote to access current phase, rendered frame number and various other information. Send the texture to be exported to the rightmost inlet. | ||||
| 		Only one agn.host object can be present per patcher hierarchy. | ||||
| 	</description> | ||||
|  | ||||
|  | ||||
| 	<!--METADATA--> | ||||
|  | ||||
| 	<metadatalist> | ||||
| 		<metadata name='author'>Théophile Clet</metadata> | ||||
| 		<metadata name='tag'>again</metadata> | ||||
| 		<metadata name='tag'>loop</metadata> | ||||
| 	</metadatalist> | ||||
|  | ||||
|  | ||||
| 	<!--ARGUMENTS--> | ||||
|  | ||||
| 	<objarglist> | ||||
|  | ||||
| 		<objarg name='name' optional='0' type='symbol'> | ||||
| 			<digest>Name of the agn.host instance</digest> | ||||
| 			<description>Name of the agn.host instance</description> | ||||
| 		</objarg> | ||||
|  | ||||
| 	</objarglist> | ||||
|  | ||||
|  | ||||
| 	<!--MESSAGES--> | ||||
|  | ||||
| 	<!-- <methodlist> | ||||
| 		<method name="int"> | ||||
| 			<digest>Function depends on inlet</digest> | ||||
| 			<description>Function depends on inlet</description> | ||||
| 		</method> | ||||
| 		<method name="float"> | ||||
| 			<digest>Function depends on inlet</digest> | ||||
| 			<description>Function depends on inlet</description> | ||||
| 		</method> | ||||
| 		<method name="bang"> | ||||
| 			<digest>Function depends on inlet</digest> | ||||
| 			<description>Function depends on inlet</description> | ||||
| 		</method> | ||||
|         <method name="list"> | ||||
| 			<digest>Function depends on inlet</digest> | ||||
| 			<description>Function depends on inlet</description> | ||||
| 		</method> | ||||
| 	</methodlist> --> | ||||
|  | ||||
|  | ||||
| 	<!--ATTRIBUTES--> | ||||
|  | ||||
| 	<attributelist> | ||||
|  | ||||
| 		<attribute name='duration' get='0' set='1'  type='float' size='1' > | ||||
| 			<digest>Duration of the loop (in seconds)</digest> | ||||
| 			<description>Sets the total duration of the loop (in seconds).</description> | ||||
| 		</attribute> | ||||
|  | ||||
| 		<attribute name='fps_export' get='0' set='1' type='float' size='1' > | ||||
| 			<digest>Target export FPS</digest> | ||||
| 			<description>Number of frames per second to be exported. </description> | ||||
| 		</attribute> | ||||
|  | ||||
|         <attribute name='pre_loop' get='0' set='1' type='int' size='1' > | ||||
| 			<digest>Number of pre-export loops</digest> | ||||
| 			<description>Number of loops to be rendered before exporting when an export is triggered.</description> | ||||
| 		</attribute> | ||||
|  | ||||
|         <attribute name='inter_frames' get='0' set='1' type='int' size='1'> | ||||
| 			<digest>Number of frames to render between two exported frames</digest> | ||||
| 			<description>Number of frames to render between two exported frames. Increases the rendering FPS.</description> | ||||
| 		</attribute> | ||||
|  | ||||
|         <attribute name='texture' get='0' set='1' type='symbol' size='1'> | ||||
| 			<digest>Name of the texture to be exported</digest> | ||||
| 			<description>Name of the texture to be exported</description> | ||||
| 		</attribute> | ||||
|  | ||||
|         <attribute name='export_folder' get='0' set='1' type='symbol' size='1'> | ||||
| 			<digest>Path of the folder to export frames</digest> | ||||
| 			<description>Path of the folder to export frames.</description> | ||||
| 		</attribute> | ||||
|  | ||||
| 		<attribute name='auto_delete' get='0' set='1' type='int' size='1'> | ||||
| 			<digest>When set to 1, deletes exported frames from previous export</digest> | ||||
| 			<description>When set to 1, automatically deletes all frame_*.png found in the export_folder folder when a new export is triggered (0 by default). Requires the shell external to work.</description> | ||||
| 		</attribute> | ||||
|  | ||||
| 	</attributelist> | ||||
|  | ||||
|  | ||||
| 	<!--RELATED--> | ||||
|  | ||||
| 	<seealsolist> | ||||
| 		<seealso name='agn.remote' /> | ||||
| 		<seealso name='agn.convert' /> | ||||
| 		<seealso name='jit.world' /> | ||||
| 		<seealso name='jit.gl.render' /> | ||||
| 		<seealso name='shell' /> | ||||
| 	</seealsolist> | ||||
|  | ||||
|  | ||||
| </c74object> | ||||
							
								
								
									
										72
									
								
								docs/agn.remote.maxref.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								docs/agn.remote.maxref.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
| <?xml version='1.0' encoding='utf-8' standalone='yes'?> | ||||
|  | ||||
| <c74object name='agn.remote' category='again, loop, video'> | ||||
|  | ||||
| 	<digest> | ||||
| 		Retrieve data from a named agn.host | ||||
| 	</digest> | ||||
| 	<description> | ||||
| 		Receives data comming from the agn.host object, if any, found in the patcher hierarchy. | ||||
| 		Outlets are defined by optionnal parameter name arguments. If no extra argument is given, an outlet is provided for each parameter. | ||||
| 	</description> | ||||
|  | ||||
|  | ||||
| 	<!--METADATA--> | ||||
|  | ||||
| 	<metadatalist> | ||||
| 		<metadata name='author'>Théophile Clet</metadata> | ||||
| 		<metadata name='tag'>again</metadata> | ||||
| 		<metadata name='tag'>loop</metadata> | ||||
| 	</metadatalist> | ||||
|  | ||||
|  | ||||
| 	<!--ARGUMENTS--> | ||||
|  | ||||
| 	<objarglist> | ||||
|  | ||||
| 		<!-- <objarg name='name' optional='0' type='symbol'> | ||||
| 			<digest>Name of the agn.host instance to refer to</digest> | ||||
| 			<description>Name of the agn.host instance to refer to</description> | ||||
| 		</objarg> --> | ||||
|  | ||||
|         <objarg name='list' optional='1' type='list'> | ||||
| 			<digest>List of parameters to retrieve</digest> | ||||
| 			<description>List of parameters to retrieve from agn.host. If nothing is set, the object will output all parameters.</description> | ||||
| 		</objarg> | ||||
|  | ||||
| 	</objarglist> | ||||
|  | ||||
|  | ||||
| 	<!--MESSAGES--> | ||||
|  | ||||
| 	<methodlist> | ||||
| 		<method name="offset"> | ||||
| 			<digest>Offsets the phase output</digest> | ||||
| 			<description>Offset value applied to the phase output</description> | ||||
| 		</method> | ||||
| 	</methodlist> | ||||
|  | ||||
|  | ||||
| 	<!--ATTRIBUTES--> | ||||
|  | ||||
| 	<attributelist> | ||||
|  | ||||
| 		<attribute name='offset' get='0' set='1'  type='float' size='1' > | ||||
| 			<digest>Offsets the phase output</digest> | ||||
| 			<description>Offset value applied to the phase output</description> | ||||
| 		</attribute> | ||||
|  | ||||
| 	</attributelist> | ||||
|  | ||||
|  | ||||
| 	<!--RELATED--> | ||||
|  | ||||
| 	<seealsolist> | ||||
| 		<seealso name='agn.host' /> | ||||
| 		<seealso name='agn.convert' /> | ||||
| 		<seealso name='jit.world' /> | ||||
| 		<seealso name='jit.gl.render' /> | ||||
| 	</seealsolist> | ||||
|  | ||||
|  | ||||
| </c74object> | ||||
							
								
								
									
										1251
									
								
								examples/agn_starter.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1251
									
								
								examples/agn_starter.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										6449
									
								
								examples/looped_noise_examples.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6449
									
								
								examples/looped_noise_examples.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										5103
									
								
								examples/space_travel_example.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5103
									
								
								examples/space_travel_example.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										677
									
								
								extras/again.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										677
									
								
								extras/again.maxpat
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,677 @@ | ||||
| { | ||||
| 	"patcher" : 	{ | ||||
| 		"fileversion" : 1, | ||||
| 		"appversion" : 		{ | ||||
| 			"major" : 8, | ||||
| 			"minor" : 5, | ||||
| 			"revision" : 7, | ||||
| 			"architecture" : "x64", | ||||
| 			"modernui" : 1 | ||||
| 		} | ||||
| , | ||||
| 		"classnamespace" : "box", | ||||
| 		"rect" : [ 677.0, 240.0, 639.0, 404.0 ], | ||||
| 		"bglocked" : 0, | ||||
| 		"openinpresentation" : 0, | ||||
| 		"default_fontsize" : 12.0, | ||||
| 		"default_fontface" : 0, | ||||
| 		"default_fontname" : "Arial", | ||||
| 		"gridonopen" : 1, | ||||
| 		"gridsize" : [ 15.0, 15.0 ], | ||||
| 		"gridsnaponopen" : 1, | ||||
| 		"objectsnaponopen" : 1, | ||||
| 		"statusbarvisible" : 2, | ||||
| 		"toolbarvisible" : 1, | ||||
| 		"lefttoolbarpinned" : 0, | ||||
| 		"toptoolbarpinned" : 0, | ||||
| 		"righttoolbarpinned" : 0, | ||||
| 		"bottomtoolbarpinned" : 0, | ||||
| 		"toolbars_unpinned_last_save" : 0, | ||||
| 		"tallnewobj" : 0, | ||||
| 		"boxanimatetime" : 200, | ||||
| 		"enablehscroll" : 1, | ||||
| 		"enablevscroll" : 1, | ||||
| 		"devicewidth" : 0.0, | ||||
| 		"description" : "", | ||||
| 		"digest" : "", | ||||
| 		"tags" : "", | ||||
| 		"style" : "", | ||||
| 		"subpatcher_template" : "", | ||||
| 		"assistshowspatchername" : 0, | ||||
| 		"boxes" : [ 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-26", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 438.375, 231.0, 167.75, 34.0 ], | ||||
| 					"text" : "Convert exported animations to GIF or WEBM", | ||||
| 					"textjustification" : 1 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-19", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 249.25, 231.0, 125.0, 20.0 ], | ||||
| 					"text" : "Drive your animations", | ||||
| 					"textjustification" : 1 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-23", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 47.5, 231.0, 119.0, 34.0 ], | ||||
| 					"text" : "Generate bangs\nand export PNG", | ||||
| 					"textjustification" : 1 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"fontsize" : 14.0, | ||||
| 					"id" : "obj-18", | ||||
| 					"linecount" : 3, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 213.0, 72.0, 198.0, 55.0 ], | ||||
| 					"text" : "3 abstractions to help you create and export seamlessly looping videos", | ||||
| 					"textjustification" : 1 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"button" : 1, | ||||
| 					"id" : "obj-25", | ||||
| 					"maxclass" : "tab", | ||||
| 					"multiline" : 0, | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "int", "", "" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 145.5, 348.0, 333.0, 36.0 ], | ||||
| 					"tabs" : [ "Starter", "Looped noise", "Starfield" ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"fontface" : 1, | ||||
| 					"fontsize" : 14.0, | ||||
| 					"id" : "obj-24", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 248.0, 318.0, 128.0, 23.0 ], | ||||
| 					"text" : "Example patchers" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"handoff" : "", | ||||
| 					"id" : "obj-15", | ||||
| 					"maxclass" : "ubutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 4, | ||||
| 					"outlettype" : [ "bang", "bang", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 471.75, 190.0, 101.0, 42.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"handoff" : "", | ||||
| 					"id" : "obj-9", | ||||
| 					"maxclass" : "ubutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 4, | ||||
| 					"outlettype" : [ "bang", "bang", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 234.75, 190.0, 154.0, 42.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"handoff" : "", | ||||
| 					"id" : "obj-2", | ||||
| 					"maxclass" : "ubutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 4, | ||||
| 					"outlettype" : [ "bang", "bang", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 56.5, 190.0, 101.0, 42.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-22", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 437.0, 91.0, 191.0, 36.0 ], | ||||
| 					"text" : ";\r\nmax launchbrowser https://tflcl.xyz" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"fontsize" : 12.0, | ||||
| 					"id" : "obj-17", | ||||
| 					"linecount" : 3, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 437.0, 14.0, 190.0, 48.0 ], | ||||
| 					"text" : "Created by Théophile Clet © 2023\nunder MIT License\ntflcl.xyz", | ||||
| 					"textcolor" : [ 0.352941176470588, 0.352941176470588, 0.352941176470588, 1.0 ], | ||||
| 					"textjustification" : 2 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-10", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 471.75, 284.0, 120.0, 22.0 ], | ||||
| 					"text" : "agn.convert.maxhelp" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-5", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 235.0, 284.0, 118.0, 22.0 ], | ||||
| 					"text" : "agn.remote.maxhelp" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-8", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 56.5, 284.0, 103.0, 22.0 ], | ||||
| 					"text" : "agn.host.maxhelp" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-12", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 0, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "jit_matrix" ], | ||||
| 					"patcher" : 					{ | ||||
| 						"fileversion" : 1, | ||||
| 						"appversion" : 						{ | ||||
| 							"major" : 8, | ||||
| 							"minor" : 5, | ||||
| 							"revision" : 7, | ||||
| 							"architecture" : "x64", | ||||
| 							"modernui" : 1 | ||||
| 						} | ||||
| , | ||||
| 						"classnamespace" : "box", | ||||
| 						"rect" : [ 59.0, 107.0, 640.0, 480.0 ], | ||||
| 						"bglocked" : 0, | ||||
| 						"openinpresentation" : 0, | ||||
| 						"default_fontsize" : 12.0, | ||||
| 						"default_fontface" : 0, | ||||
| 						"default_fontname" : "Arial", | ||||
| 						"gridonopen" : 1, | ||||
| 						"gridsize" : [ 15.0, 15.0 ], | ||||
| 						"gridsnaponopen" : 1, | ||||
| 						"objectsnaponopen" : 1, | ||||
| 						"statusbarvisible" : 2, | ||||
| 						"toolbarvisible" : 1, | ||||
| 						"lefttoolbarpinned" : 0, | ||||
| 						"toptoolbarpinned" : 0, | ||||
| 						"righttoolbarpinned" : 0, | ||||
| 						"bottomtoolbarpinned" : 0, | ||||
| 						"toolbars_unpinned_last_save" : 0, | ||||
| 						"tallnewobj" : 0, | ||||
| 						"boxanimatetime" : 200, | ||||
| 						"enablehscroll" : 1, | ||||
| 						"enablevscroll" : 1, | ||||
| 						"devicewidth" : 0.0, | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"tags" : "", | ||||
| 						"style" : "", | ||||
| 						"subpatcher_template" : "", | ||||
| 						"assistshowspatchername" : 0, | ||||
| 						"boxes" : [ 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-9", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "start" ], | ||||
| 									"patching_rect" : [ 420.0, 215.0, 39.0, 22.0 ], | ||||
| 									"text" : "t start" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-2", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 2, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "", "" ], | ||||
| 									"patching_rect" : [ 420.0, 188.0, 83.0, 22.0 ], | ||||
| 									"text" : "route loadram" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-8", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "bang" ], | ||||
| 									"patching_rect" : [ 50.0, 100.0, 58.0, 22.0 ], | ||||
| 									"text" : "loadbang" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-17", | ||||
| 									"maxclass" : "message", | ||||
| 									"numinlets" : 2, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 50.0, 128.0, 76.0, 22.0 ], | ||||
| 									"text" : "loadram -0.2" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-15", | ||||
| 									"maxclass" : "playbar", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "", "int" ], | ||||
| 									"patching_rect" : [ 205.0, 145.0, 133.5, 12.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-5", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "jit_matrix", "" ], | ||||
| 									"patching_rect" : [ 50.0, 159.0, 389.0, 22.0 ], | ||||
| 									"text" : "jit.movie @loop 1 @engine viddll @moviefile tunnel.webm @autostart 0" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"comment" : "", | ||||
| 									"id" : "obj-10", | ||||
| 									"index" : 1, | ||||
| 									"maxclass" : "outlet", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 0, | ||||
| 									"patching_rect" : [ 50.0, 304.660767000000021, 30.0, 30.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ], | ||||
| 						"lines" : [ 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-5", 0 ], | ||||
| 									"source" : [ "obj-15", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-5", 0 ], | ||||
| 									"source" : [ "obj-17", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-9", 0 ], | ||||
| 									"source" : [ "obj-2", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-10", 0 ], | ||||
| 									"source" : [ "obj-5", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-2", 0 ], | ||||
| 									"source" : [ "obj-5", 1 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-17", 0 ], | ||||
| 									"source" : [ "obj-8", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-5", 0 ], | ||||
| 									"source" : [ "obj-9", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ] | ||||
| 					} | ||||
| , | ||||
| 					"patching_rect" : [ 145.5, 14.0, 51.0, 22.0 ], | ||||
| 					"saved_object_attributes" : 					{ | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"globalpatchername" : "", | ||||
| 						"tags" : "" | ||||
| 					} | ||||
| , | ||||
| 					"text" : "p player" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-7", | ||||
| 					"maxclass" : "jit.pwindow", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "jit_matrix", "" ], | ||||
| 					"patching_rect" : [ 11.5, 14.0, 132.0, 130.0 ], | ||||
| 					"sync" : 1 | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-1", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 11, | ||||
| 					"outlettype" : [ "", "int", "", "", "", "", "", "", "", "", "" ], | ||||
| 					"patching_rect" : [ 249.75, 200.0, 124.0, 22.0 ], | ||||
| 					"text" : "agn.remote" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-14", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 11.5, 475.0, 51.0, 22.0 ], | ||||
| 					"text" : "pcontrol" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-13", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 11.5, 449.0, 84.0, 22.0 ], | ||||
| 					"text" : "loadunique $1" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-11", | ||||
| 					"items" : [ "agn_starter", ",", "looped_noise_examples", ",", "space_travel_example" ], | ||||
| 					"maxclass" : "umenu", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "int", "", "" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 145.5, 396.0, 171.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-6", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 486.5, 200.0, 71.0, 22.0 ], | ||||
| 					"text" : "agn.convert" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-4", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 6, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "bang", "", "bang" ], | ||||
| 					"patching_rect" : [ 71.25, 200.0, 71.5, 22.0 ], | ||||
| 					"text" : "agn.host" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"fontface" : 1, | ||||
| 					"fontsize" : 36.0, | ||||
| 					"id" : "obj-3", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 255.5, 14.0, 113.0, 48.0 ], | ||||
| 					"text" : "again." | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"handoff" : "", | ||||
| 					"id" : "obj-20", | ||||
| 					"maxclass" : "ubutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 4, | ||||
| 					"outlettype" : [ "bang", "bang", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 437.0, 14.0, 191.0, 61.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"lines" : [ 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-13", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-10", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-13", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-11", 1 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-7", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-12", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-14", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-13", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-10", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-15", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-8", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-2", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-22", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-20", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-11", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-25", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-13", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-5", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-13", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-8", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-5", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-9", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"dependency_cache" : [ 			{ | ||||
| 				"name" : "again_utils.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.convert.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.host.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.remote.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_host.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_remote.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "shell.mxe64", | ||||
| 				"type" : "mx64" | ||||
| 			} | ||||
|  ], | ||||
| 		"autosave" : 0 | ||||
| 	} | ||||
|  | ||||
| } | ||||
							
								
								
									
										692
									
								
								help/agn.convert.maxhelp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										692
									
								
								help/agn.convert.maxhelp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,692 @@ | ||||
| { | ||||
| 	"patcher" : 	{ | ||||
| 		"fileversion" : 1, | ||||
| 		"appversion" : 		{ | ||||
| 			"major" : 8, | ||||
| 			"minor" : 5, | ||||
| 			"revision" : 6, | ||||
| 			"architecture" : "x64", | ||||
| 			"modernui" : 1 | ||||
| 		} | ||||
| , | ||||
| 		"classnamespace" : "box", | ||||
| 		"rect" : [ 457.0, 205.0, 741.0, 528.0 ], | ||||
| 		"bglocked" : 0, | ||||
| 		"openinpresentation" : 0, | ||||
| 		"default_fontsize" : 12.0, | ||||
| 		"default_fontface" : 0, | ||||
| 		"default_fontname" : "Arial", | ||||
| 		"gridonopen" : 1, | ||||
| 		"gridsize" : [ 15.0, 15.0 ], | ||||
| 		"gridsnaponopen" : 1, | ||||
| 		"objectsnaponopen" : 1, | ||||
| 		"statusbarvisible" : 2, | ||||
| 		"toolbarvisible" : 1, | ||||
| 		"lefttoolbarpinned" : 0, | ||||
| 		"toptoolbarpinned" : 0, | ||||
| 		"righttoolbarpinned" : 0, | ||||
| 		"bottomtoolbarpinned" : 0, | ||||
| 		"toolbars_unpinned_last_save" : 0, | ||||
| 		"tallnewobj" : 0, | ||||
| 		"boxanimatetime" : 200, | ||||
| 		"enablehscroll" : 1, | ||||
| 		"enablevscroll" : 1, | ||||
| 		"devicewidth" : 0.0, | ||||
| 		"description" : "", | ||||
| 		"digest" : "", | ||||
| 		"tags" : "", | ||||
| 		"style" : "", | ||||
| 		"subpatcher_template" : "", | ||||
| 		"assistshowspatchername" : 0, | ||||
| 		"boxes" : [ 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-29", | ||||
| 					"linecount" : 3, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 454.5, 343.0, 178.0, 48.0 ], | ||||
| 					"text" : "Download the package or executable file for your operating system, and install it." | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-23", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "bang" ], | ||||
| 					"patching_rect" : [ 767.0, 347.0, 22.0, 22.0 ], | ||||
| 					"text" : "t b" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-24", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 709.0, 447.0, 290.0, 36.0 ], | ||||
| 					"presentation_linecount" : 3, | ||||
| 					"text" : ";\r\nmax launchbrowser https://ffmpeg.org/download.html" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-21", | ||||
| 					"maxclass" : "textbutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 498.0, 313.0, 91.0, 23.0 ], | ||||
| 					"text" : "ffmpeg" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"fontface" : 1, | ||||
| 					"id" : "obj-17", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 394.0, 167.0, 299.0, 34.0 ], | ||||
| 					"text" : "agn.convert requires the shell external and ffmpeg installed on your computer to work properly." | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-15", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "bang" ], | ||||
| 					"patching_rect" : [ 767.0, 208.0, 22.0, 22.0 ], | ||||
| 					"text" : "t b" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-13", | ||||
| 					"maxclass" : "textbutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 498.0, 208.0, 91.0, 23.0 ], | ||||
| 					"text" : "shell external" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-8", | ||||
| 					"linecount" : 2, | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 767.0, 237.0, 465.0, 36.0 ], | ||||
| 					"text" : ";\r\nmax launchbrowser https://github.com/jeremybernstein/shell/releases/" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-4", | ||||
| 					"linecount" : 3, | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 452.5, 237.0, 182.0, 48.0 ], | ||||
| 					"text" : "Download latest release (.zip), and unzip the folder inside of your Max packages folder." | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-18", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "jit_gl_texture" ], | ||||
| 					"patcher" : 					{ | ||||
| 						"fileversion" : 1, | ||||
| 						"appversion" : 						{ | ||||
| 							"major" : 8, | ||||
| 							"minor" : 5, | ||||
| 							"revision" : 6, | ||||
| 							"architecture" : "x64", | ||||
| 							"modernui" : 1 | ||||
| 						} | ||||
| , | ||||
| 						"classnamespace" : "box", | ||||
| 						"rect" : [ 588.0, 150.0, 640.0, 480.0 ], | ||||
| 						"bglocked" : 0, | ||||
| 						"openinpresentation" : 0, | ||||
| 						"default_fontsize" : 12.0, | ||||
| 						"default_fontface" : 0, | ||||
| 						"default_fontname" : "Arial", | ||||
| 						"gridonopen" : 1, | ||||
| 						"gridsize" : [ 15.0, 15.0 ], | ||||
| 						"gridsnaponopen" : 1, | ||||
| 						"objectsnaponopen" : 1, | ||||
| 						"statusbarvisible" : 2, | ||||
| 						"toolbarvisible" : 1, | ||||
| 						"lefttoolbarpinned" : 0, | ||||
| 						"toptoolbarpinned" : 0, | ||||
| 						"righttoolbarpinned" : 0, | ||||
| 						"bottomtoolbarpinned" : 0, | ||||
| 						"toolbars_unpinned_last_save" : 0, | ||||
| 						"tallnewobj" : 0, | ||||
| 						"boxanimatetime" : 200, | ||||
| 						"enablehscroll" : 1, | ||||
| 						"enablevscroll" : 1, | ||||
| 						"devicewidth" : 0.0, | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"tags" : "", | ||||
| 						"style" : "", | ||||
| 						"subpatcher_template" : "", | ||||
| 						"assistshowspatchername" : 0, | ||||
| 						"boxes" : [ 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-15", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 159.0, 231.0, 75.0, 22.0 ], | ||||
| 									"text" : "prepend text" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-14", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 159.0, 192.0, 143.0, 22.0 ], | ||||
| 									"text" : "agn.remote frame_export" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-13", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "jit_matrix", "" ], | ||||
| 									"patching_rect" : [ 159.0, 269.0, 359.0, 22.0 ], | ||||
| 									"text" : "jit.gl.text @align 1 @fontsize 80 @position 0 -0.3 0 @color 1 0 1 1" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-3", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 3, | ||||
| 									"outlettype" : [ "jit_gl_texture", "bang", "" ], | ||||
| 									"patching_rect" : [ 50.0, 100.0, 490.0, 22.0 ], | ||||
| 									"text" : "jit.world @name agn.convert @size 150 150 @capture 1 @enable 1 @erase_color 0 0 0 0" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"comment" : "", | ||||
| 									"id" : "obj-16", | ||||
| 									"index" : 1, | ||||
| 									"maxclass" : "inlet", | ||||
| 									"numinlets" : 0, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "bang" ], | ||||
| 									"patching_rect" : [ 50.0, 40.0, 30.0, 30.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"comment" : "", | ||||
| 									"id" : "obj-17", | ||||
| 									"index" : 1, | ||||
| 									"maxclass" : "outlet", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 0, | ||||
| 									"patching_rect" : [ 50.0, 297.0, 30.0, 30.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ], | ||||
| 						"lines" : [ 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-15", 0 ], | ||||
| 									"source" : [ "obj-14", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-13", 0 ], | ||||
| 									"source" : [ "obj-15", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-3", 0 ], | ||||
| 									"source" : [ "obj-16", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-17", 0 ], | ||||
| 									"source" : [ "obj-3", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ] | ||||
| 					} | ||||
| , | ||||
| 					"patching_rect" : [ 10.0, 367.0, 51.0, 22.0 ], | ||||
| 					"saved_object_attributes" : 					{ | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"globalpatchername" : "", | ||||
| 						"tags" : "" | ||||
| 					} | ||||
| , | ||||
| 					"text" : "p scene" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-12", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 62.5, 484.0, 91.0, 22.0 ], | ||||
| 					"text" : "print @popup 1" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-11", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 62.5, 451.0, 71.0, 22.0 ], | ||||
| 					"text" : "agn.convert" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-7", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 108.0, 417.0, 41.0, 22.0 ], | ||||
| 					"text" : "webm" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-5", | ||||
| 					"maxclass" : "message", | ||||
| 					"numinlets" : 2, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 62.5, 417.0, 29.5, 22.0 ], | ||||
| 					"text" : "gif" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-2", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 10.0, 263.0, 70.0, 22.0 ], | ||||
| 					"text" : "loadmess 1" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-30", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 123.0, 160.0, 164.0, 24.0 ], | ||||
| 					"text" : "Choose your export folder" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-28", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 97.0, 219.0, 126.0, 22.0 ], | ||||
| 					"text" : "prepend export_folder" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-27", | ||||
| 					"maxclass" : "button", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 97.0, 160.0, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-25", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"patching_rect" : [ 97.0, 191.0, 90.0, 22.0 ], | ||||
| 					"text" : "opendialog fold" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-20", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 180.0, 262.0, 105.0, 24.0 ], | ||||
| 					"text" : "Trigger export" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-10", | ||||
| 					"maxclass" : "button", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 154.0, 262.0, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-1", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 6, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "bang", "", "bang" ], | ||||
| 					"patching_rect" : [ 10.0, 334.0, 71.5, 22.0 ], | ||||
| 					"text" : "agn.host", | ||||
| 					"varname" : "agn.host" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"border" : 0, | ||||
| 					"filename" : "helpdetails.js", | ||||
| 					"id" : "obj-22", | ||||
| 					"ignoreclick" : 1, | ||||
| 					"jsarguments" : [ "agn.convert" ], | ||||
| 					"maxclass" : "jsui", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 10.0, 10.0, 690.0, 136.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"background" : 1, | ||||
| 					"bgcolor" : [ 1.0, 0.658824, 0.14902, 1.0 ], | ||||
| 					"fontname" : "Arial Bold", | ||||
| 					"hint" : "", | ||||
| 					"id" : "obj-19", | ||||
| 					"ignoreclick" : 1, | ||||
| 					"legacytextcolor" : 1, | ||||
| 					"maxclass" : "textbutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 132.0, 264.0, 20.0, 20.0 ], | ||||
| 					"rounded" : 60.0, | ||||
| 					"text" : "2", | ||||
| 					"textcolor" : [ 0.2, 0.2, 0.2, 1.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"background" : 1, | ||||
| 					"bgcolor" : [ 1.0, 0.658824, 0.14902, 1.0 ], | ||||
| 					"fontname" : "Arial Bold", | ||||
| 					"hint" : "", | ||||
| 					"id" : "obj-31", | ||||
| 					"ignoreclick" : 1, | ||||
| 					"legacytextcolor" : 1, | ||||
| 					"maxclass" : "textbutton", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "", "", "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 72.0, 162.0, 20.0, 20.0 ], | ||||
| 					"rounded" : 60.0, | ||||
| 					"text" : "1", | ||||
| 					"textcolor" : [ 0.2, 0.2, 0.2, 1.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"lines" : [ 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-18", 0 ], | ||||
| 					"source" : [ "obj-1", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-5", 0 ], | ||||
| 					"source" : [ "obj-1", 2 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-1", 0 ], | ||||
| 					"source" : [ "obj-10", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-12", 0 ], | ||||
| 					"source" : [ "obj-11", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-15", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-13", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-8", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-15", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-1", 5 ], | ||||
| 					"midpoints" : [ 19.5, 396.0, 90.75, 396.0, 90.75, 323.0, 72.0, 323.0 ], | ||||
| 					"source" : [ "obj-18", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-1", 0 ], | ||||
| 					"source" : [ "obj-2", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-23", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-21", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-24", 0 ], | ||||
| 					"hidden" : 1, | ||||
| 					"source" : [ "obj-23", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-28", 0 ], | ||||
| 					"source" : [ "obj-25", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-25", 0 ], | ||||
| 					"source" : [ "obj-27", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-1", 0 ], | ||||
| 					"source" : [ "obj-28", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-11", 0 ], | ||||
| 					"source" : [ "obj-5", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-11", 0 ], | ||||
| 					"source" : [ "obj-7", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"dependency_cache" : [ 			{ | ||||
| 				"name" : "again_utils.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.convert.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.host.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.remote.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_host.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_remote.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "helpdetails.js", | ||||
| 				"bootpath" : "C74:/help/resources", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "shell.mxe64", | ||||
| 				"type" : "mx64" | ||||
| 			} | ||||
|  ], | ||||
| 		"autosave" : 0 | ||||
| 	} | ||||
|  | ||||
| } | ||||
							
								
								
									
										1078
									
								
								help/agn.host.maxhelp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1078
									
								
								help/agn.host.maxhelp
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										902
									
								
								help/agn.remote.maxhelp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										902
									
								
								help/agn.remote.maxhelp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,902 @@ | ||||
| { | ||||
| 	"patcher" : 	{ | ||||
| 		"fileversion" : 1, | ||||
| 		"appversion" : 		{ | ||||
| 			"major" : 8, | ||||
| 			"minor" : 5, | ||||
| 			"revision" : 6, | ||||
| 			"architecture" : "x64", | ||||
| 			"modernui" : 1 | ||||
| 		} | ||||
| , | ||||
| 		"classnamespace" : "box", | ||||
| 		"rect" : [ 100.0, 100.0, 635.0, 564.0 ], | ||||
| 		"bglocked" : 0, | ||||
| 		"openinpresentation" : 0, | ||||
| 		"default_fontsize" : 12.0, | ||||
| 		"default_fontface" : 0, | ||||
| 		"default_fontname" : "Arial", | ||||
| 		"gridonopen" : 1, | ||||
| 		"gridsize" : [ 15.0, 15.0 ], | ||||
| 		"gridsnaponopen" : 1, | ||||
| 		"objectsnaponopen" : 1, | ||||
| 		"statusbarvisible" : 2, | ||||
| 		"toolbarvisible" : 1, | ||||
| 		"lefttoolbarpinned" : 0, | ||||
| 		"toptoolbarpinned" : 0, | ||||
| 		"righttoolbarpinned" : 0, | ||||
| 		"bottomtoolbarpinned" : 0, | ||||
| 		"toolbars_unpinned_last_save" : 0, | ||||
| 		"tallnewobj" : 0, | ||||
| 		"boxanimatetime" : 200, | ||||
| 		"enablehscroll" : 1, | ||||
| 		"enablevscroll" : 1, | ||||
| 		"devicewidth" : 0.0, | ||||
| 		"description" : "", | ||||
| 		"digest" : "", | ||||
| 		"tags" : "", | ||||
| 		"style" : "", | ||||
| 		"subpatcher_template" : "", | ||||
| 		"showontab" : 1, | ||||
| 		"assistshowspatchername" : 0, | ||||
| 		"title" : "agn.remote", | ||||
| 		"boxes" : [ 			{ | ||||
| 				"box" : 				{ | ||||
| 					"border" : 0, | ||||
| 					"filename" : "helpdetails.js", | ||||
| 					"id" : "obj-22", | ||||
| 					"ignoreclick" : 1, | ||||
| 					"jsarguments" : [ "agn.remote" ], | ||||
| 					"maxclass" : "jsui", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 10.0, 10.0, 578.0, 125.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"hidden" : 1, | ||||
| 					"id" : "obj-31", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 0, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patcher" : 					{ | ||||
| 						"fileversion" : 1, | ||||
| 						"appversion" : 						{ | ||||
| 							"major" : 8, | ||||
| 							"minor" : 5, | ||||
| 							"revision" : 6, | ||||
| 							"architecture" : "x64", | ||||
| 							"modernui" : 1 | ||||
| 						} | ||||
| , | ||||
| 						"classnamespace" : "box", | ||||
| 						"rect" : [ 0.0, 26.0, 635.0, 538.0 ], | ||||
| 						"bglocked" : 0, | ||||
| 						"openinpresentation" : 0, | ||||
| 						"default_fontsize" : 12.0, | ||||
| 						"default_fontface" : 0, | ||||
| 						"default_fontname" : "Arial", | ||||
| 						"gridonopen" : 1, | ||||
| 						"gridsize" : [ 15.0, 15.0 ], | ||||
| 						"gridsnaponopen" : 1, | ||||
| 						"objectsnaponopen" : 1, | ||||
| 						"statusbarvisible" : 2, | ||||
| 						"toolbarvisible" : 1, | ||||
| 						"lefttoolbarpinned" : 0, | ||||
| 						"toptoolbarpinned" : 0, | ||||
| 						"righttoolbarpinned" : 0, | ||||
| 						"bottomtoolbarpinned" : 0, | ||||
| 						"toolbars_unpinned_last_save" : 0, | ||||
| 						"tallnewobj" : 0, | ||||
| 						"boxanimatetime" : 200, | ||||
| 						"enablehscroll" : 1, | ||||
| 						"enablevscroll" : 1, | ||||
| 						"devicewidth" : 0.0, | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"tags" : "", | ||||
| 						"style" : "", | ||||
| 						"subpatcher_template" : "", | ||||
| 						"showontab" : 1, | ||||
| 						"assistshowspatchername" : 0, | ||||
| 						"boxes" : [ 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-5", | ||||
| 									"maxclass" : "toggle", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "int" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 168.0, 365.60000000000008, 24.0, 24.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"border" : 0, | ||||
| 									"filename" : "helpname.js", | ||||
| 									"id" : "obj-13", | ||||
| 									"ignoreclick" : 1, | ||||
| 									"jsarguments" : [ "agn.remote" ], | ||||
| 									"maxclass" : "jsui", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 10.0, 10.0, 243.99200439453125, 57.600002288818359 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"fontname" : "Lato Regular", | ||||
| 									"fontsize" : 13.0, | ||||
| 									"id" : "obj-36", | ||||
| 									"linecount" : 2, | ||||
| 									"maxclass" : "comment", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 0, | ||||
| 									"patching_rect" : [ 10.0, 81.600002288818359, 313.0, 38.0 ], | ||||
| 									"text" : "Outlet presence and order can be defined with arguments. The @offset attribute offsets the phase.", | ||||
| 									"textcolor" : [ 0.32549, 0.345098, 0.372549, 1.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"fontname" : "Lato Regular", | ||||
| 									"fontsize" : 13.0, | ||||
| 									"id" : "obj-37", | ||||
| 									"maxclass" : "comment", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 0, | ||||
| 									"patching_rect" : [ 10.0, 63.600002288818359, 274.0, 22.0 ], | ||||
| 									"text" : "Extra arguments and offset." | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-7", | ||||
| 									"maxclass" : "slider", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 268.0, 451.60000000000008, 155.0, 13.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-8", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 6, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 268.0, 415.60000000000008, 97.0, 22.0 ], | ||||
| 									"text" : "scale 0. 1. 0 127" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-10", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "int" ], | ||||
| 									"patching_rect" : [ 268.0, 328.0, 170.0, 22.0 ], | ||||
| 									"text" : "agn.remote phase @offset 0.5" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-2", | ||||
| 									"maxclass" : "slider", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 89.0, 451.60000000000008, 155.0, 13.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-1", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 6, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 89.0, 415.60000000000008, 97.0, 22.0 ], | ||||
| 									"text" : "scale 0. 1. 0 127" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"format" : 6, | ||||
| 									"id" : "obj-25", | ||||
| 									"maxclass" : "flonum", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "", "bang" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 10.0, 259.0, 50.0, 22.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-20", | ||||
| 									"maxclass" : "message", | ||||
| 									"numinlets" : 2, | ||||
| 									"numoutlets" : 1, | ||||
| 									"outlettype" : [ "" ], | ||||
| 									"patching_rect" : [ 10.0, 292.0, 54.0, 22.0 ], | ||||
| 									"text" : "offset $1" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"bubble" : 1, | ||||
| 									"id" : "obj-16", | ||||
| 									"maxclass" : "comment", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 0, | ||||
| 									"patching_rect" : [ 66.0, 258.0, 117.0, 24.0 ], | ||||
| 									"text" : "Offset the phase!" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-12", | ||||
| 									"maxclass" : "number", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 2, | ||||
| 									"outlettype" : [ "", "bang" ], | ||||
| 									"parameter_enable" : 0, | ||||
| 									"patching_rect" : [ 10.0, 365.60000000000008, 50.0, 22.0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"box" : 								{ | ||||
| 									"id" : "obj-4", | ||||
| 									"maxclass" : "newobj", | ||||
| 									"numinlets" : 1, | ||||
| 									"numoutlets" : 3, | ||||
| 									"outlettype" : [ "", "int", "" ], | ||||
| 									"patching_rect" : [ 10.0, 328.0, 177.0, 22.0 ], | ||||
| 									"text" : "agn.remote frame phase render" | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ], | ||||
| 						"lines" : [ 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-2", 0 ], | ||||
| 									"source" : [ "obj-1", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-8", 0 ], | ||||
| 									"source" : [ "obj-10", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-4", 0 ], | ||||
| 									"source" : [ "obj-20", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-20", 0 ], | ||||
| 									"source" : [ "obj-25", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-1", 0 ], | ||||
| 									"source" : [ "obj-4", 1 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-12", 0 ], | ||||
| 									"source" : [ "obj-4", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-5", 0 ], | ||||
| 									"source" : [ "obj-4", 2 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
| , 							{ | ||||
| 								"patchline" : 								{ | ||||
| 									"destination" : [ "obj-7", 0 ], | ||||
| 									"source" : [ "obj-8", 0 ] | ||||
| 								} | ||||
|  | ||||
| 							} | ||||
|  ] | ||||
| 					} | ||||
| , | ||||
| 					"patching_rect" : [ 483.999999999999886, 141.0, 170.0, 22.0 ], | ||||
| 					"saved_object_attributes" : 					{ | ||||
| 						"description" : "", | ||||
| 						"digest" : "", | ||||
| 						"globalpatchername" : "", | ||||
| 						"tags" : "" | ||||
| 					} | ||||
| , | ||||
| 					"text" : "p \"extra arguments and offset\"" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-29", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 180.399999999999977, 416.799999999999955, 129.0, 24.0 ], | ||||
| 					"text" : "Change inter-frame" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-27", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 121.200000000000045, 382.0, 114.0, 24.0 ], | ||||
| 					"text" : "Change duration" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-23", | ||||
| 					"maxclass" : "number", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 128.399999999999977, 416.799999999999955, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"format" : 6, | ||||
| 					"id" : "obj-8", | ||||
| 					"maxclass" : "flonum", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 69.200000000000045, 382.0, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-48", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 509.0, 492.999999999999943, 92.0, 24.0 ], | ||||
| 					"text" : "Export FPS" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-47", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 464.299999999999955, 461.800000000000011, 92.0, 24.0 ], | ||||
| 					"text" : "Render FPS" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-46", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 421.000000000000057, 430.599999999999966, 102.0, 24.0 ], | ||||
| 					"text" : "Loop duration " | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-45", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 372.000000000000057, 399.400000000000034, 220.0, 24.0 ], | ||||
| 					"text" : "Number of frames to export per loop" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-44", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 327.300000000000011, 369.200000000000045, 220.0, 24.0 ], | ||||
| 					"text" : "Number of frames to render per loop" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-43", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 257.5, 336.000000000000057, 88.0, 24.0 ], | ||||
| 					"text" : "Render flag" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-42", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 212.0, 302.800000000000068, 83.0, 24.0 ], | ||||
| 					"text" : "Export flag" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-41", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 196.100000000000023, 270.60000000000008, 264.0, 24.0 ], | ||||
| 					"text" : "Current exported frame number (if exporting)" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-40", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 151.400000000000006, 239.400000000000034, 195.0, 24.0 ], | ||||
| 					"text" : "Current rendered frame number" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-39", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 106.100000000000023, 208.200000000000045, 88.0, 24.0 ], | ||||
| 					"text" : "Loop phase" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"bubble" : 1, | ||||
| 					"id" : "obj-38", | ||||
| 					"maxclass" : "comment", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 0, | ||||
| 					"patching_rect" : [ 36.0, 178.0, 117.0, 24.0 ], | ||||
| 					"text" : "Rendering bangs" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-36", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "jit_matrix", "bang", "" ], | ||||
| 					"patching_rect" : [ 10.0, 494.0, 111.0, 22.0 ], | ||||
| 					"text" : "jit.world @enable 1" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-34", | ||||
| 					"maxclass" : "toggle", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 10.0, 382.0, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"format" : 6, | ||||
| 					"id" : "obj-32", | ||||
| 					"maxclass" : "flonum", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 457.0, 494.0, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"format" : 6, | ||||
| 					"id" : "obj-30", | ||||
| 					"maxclass" : "flonum", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 412.299999999999955, 462.800000000000011, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"format" : 6, | ||||
| 					"id" : "obj-26", | ||||
| 					"maxclass" : "flonum", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 367.600000000000023, 431.600000000000023, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-24", | ||||
| 					"maxclass" : "number", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 322.899999999999977, 400.400000000000034, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-21", | ||||
| 					"maxclass" : "number", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 278.199999999999989, 369.200000000000045, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-19", | ||||
| 					"maxclass" : "toggle", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 233.5, 336.000000000000057, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-17", | ||||
| 					"maxclass" : "toggle", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "int" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 189.0, 302.800000000000068, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-15", | ||||
| 					"maxclass" : "number", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 144.100000000000023, 271.600000000000023, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-13", | ||||
| 					"maxclass" : "number", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 99.400000000000006, 240.400000000000034, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"format" : 6, | ||||
| 					"id" : "obj-11", | ||||
| 					"maxclass" : "flonum", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 2, | ||||
| 					"outlettype" : [ "", "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 54.699999999999989, 209.200000000000017, 50.0, 22.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-5", | ||||
| 					"maxclass" : "button", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "bang" ], | ||||
| 					"parameter_enable" : 0, | ||||
| 					"patching_rect" : [ 10.0, 176.0, 24.0, 24.0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-3", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 1, | ||||
| 					"outlettype" : [ "" ], | ||||
| 					"patching_rect" : [ 10.0, 351.0, 70.0, 22.0 ], | ||||
| 					"text" : "loadmess 1" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-2", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 6, | ||||
| 					"numoutlets" : 3, | ||||
| 					"outlettype" : [ "bang", "", "bang" ], | ||||
| 					"patching_rect" : [ 10.0, 457.0, 71.5, 22.0 ], | ||||
| 					"text" : "agn.host", | ||||
| 					"varname" : "agn.host" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"box" : 				{ | ||||
| 					"id" : "obj-1", | ||||
| 					"maxclass" : "newobj", | ||||
| 					"numinlets" : 1, | ||||
| 					"numoutlets" : 11, | ||||
| 					"outlettype" : [ "", "int", "", "", "", "", "", "", "", "", "" ], | ||||
| 					"patching_rect" : [ 10.0, 141.0, 465.999999999999943, 22.0 ], | ||||
| 					"text" : "agn.remote" | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"lines" : [ 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-11", 0 ], | ||||
| 					"source" : [ "obj-1", 1 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-13", 0 ], | ||||
| 					"source" : [ "obj-1", 2 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-15", 0 ], | ||||
| 					"source" : [ "obj-1", 3 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-17", 0 ], | ||||
| 					"source" : [ "obj-1", 4 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-19", 0 ], | ||||
| 					"source" : [ "obj-1", 5 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-21", 0 ], | ||||
| 					"source" : [ "obj-1", 6 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-24", 0 ], | ||||
| 					"source" : [ "obj-1", 7 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-26", 0 ], | ||||
| 					"source" : [ "obj-1", 8 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-30", 0 ], | ||||
| 					"source" : [ "obj-1", 9 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-32", 0 ], | ||||
| 					"source" : [ "obj-1", 10 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-5", 0 ], | ||||
| 					"source" : [ "obj-1", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-36", 0 ], | ||||
| 					"source" : [ "obj-2", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-2", 4 ], | ||||
| 					"source" : [ "obj-23", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-34", 0 ], | ||||
| 					"source" : [ "obj-3", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-2", 0 ], | ||||
| 					"source" : [ "obj-34", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| , 			{ | ||||
| 				"patchline" : 				{ | ||||
| 					"destination" : [ "obj-2", 2 ], | ||||
| 					"source" : [ "obj-8", 0 ] | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  ], | ||||
| 		"dependency_cache" : [ 			{ | ||||
| 				"name" : "again_utils.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.host.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn.remote.maxpat", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/patchers", | ||||
| 				"patcherrelativepath" : "../patchers", | ||||
| 				"type" : "JSON", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_host.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "agn_remote.js", | ||||
| 				"bootpath" : "~/Documents/Max 8/Packages/again/javascript", | ||||
| 				"patcherrelativepath" : "../javascript", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "helpdetails.js", | ||||
| 				"bootpath" : "C74:/help/resources", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "helpname.js", | ||||
| 				"bootpath" : "C74:/help/resources", | ||||
| 				"type" : "TEXT", | ||||
| 				"implicit" : 1 | ||||
| 			} | ||||
| , 			{ | ||||
| 				"name" : "shell.mxe64", | ||||
| 				"type" : "mx64" | ||||
| 			} | ||||
|  ], | ||||
| 		"autosave" : 0 | ||||
| 	} | ||||
|  | ||||
| } | ||||
							
								
								
									
										19
									
								
								javascript/again_utils.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								javascript/again_utils.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| function get_top_level_patcher() | ||||
| { | ||||
|     var p = this.patcher; | ||||
|     while (p.parentpatcher)  // If I have a parent, keep going up | ||||
|         { | ||||
|             p = p.parentpatcher; | ||||
|         } | ||||
|     return p; | ||||
|  | ||||
|     // var prev = 0; | ||||
|     // var owner = this.patcher.box; | ||||
|     // while (owner) { | ||||
|     //     prev = owner; | ||||
|     //     owner = owner.patcher.box; | ||||
|     // } | ||||
|     // if (prev) | ||||
|     // // post("top patcher is",prev.patcher.name); | ||||
|     // return prev.patcher; | ||||
| } | ||||
							
								
								
									
										65
									
								
								javascript/agn_host.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								javascript/agn_host.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| // One day this might handle most of the [agn.host] mechanism. | ||||
| include("again_utils.js") | ||||
| autowatch = 1; | ||||
|  | ||||
| inlets = 1; | ||||
| outlets = 1; | ||||
|  | ||||
| var host_name = null; | ||||
| var top_level_patcher = null; | ||||
|  | ||||
| function loadbang() { | ||||
|  | ||||
|     top_level_patcher = get_top_level_patcher(); | ||||
|     host_name = jsarguments[1]; | ||||
|  | ||||
|     if (top_level_patcher) { | ||||
|         // post("toplevel patcher: " + top_level_patcher.name); post(); | ||||
|         // outlet(0, host_name); | ||||
|          | ||||
|         // check_for_other_host(); | ||||
|  | ||||
|         set_all_agn_host_name(); | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| function set_all_agn_host_name() { | ||||
|     if (top_level_patcher) { | ||||
|         top_level_patcher.applydeep(send_agn_host_name); | ||||
|     } | ||||
| } | ||||
| // set_all_agn_host_name.local = 0; | ||||
|  | ||||
| function send_agn_host_name (obj) { | ||||
|     if (obj.maxclass === "js") { | ||||
|         // post("js obj:" + obj.maxclass); post(); | ||||
|         var patcher_name = obj.patcher.getattr("name"); | ||||
|         if (["agn.remote","agn.convert"].indexOf(patcher_name) > -1) { | ||||
|                 // post(obj.varname); post(); | ||||
|             obj.message("set_agn_host_name", host_name); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| // send_agn_host_name.local = 0; | ||||
|  | ||||
| function request_host_name() { | ||||
|     set_all_agn_host_name(); | ||||
| } | ||||
| // request_host_name.local = 0; | ||||
|  | ||||
|  | ||||
| function check_for_other_host() { | ||||
|     top_level_patcher.applydeep(check_is_agn_host); | ||||
| } | ||||
|  | ||||
|  | ||||
| // Need some logic to detect if the currently check agn.host is this agn.host | ||||
| function check_is_agn_host (obj) { | ||||
|     if (obj.maxclass === "js") { | ||||
|         var patcher_name = obj.patcher.getattr("name"); | ||||
|         if (patcher_name === "agn.host") { | ||||
|             error("An agn.host object already exist in the patcher hierarchy. Please delete one."); post(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										60
									
								
								javascript/agn_remote.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								javascript/agn_remote.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,60 @@ | ||||
| include("again_utils.js") | ||||
| outlets = 2; | ||||
|  | ||||
|  | ||||
| var top_level_patcher = null; | ||||
| // var agn_host_js = null; | ||||
| var host_name = null; | ||||
|  | ||||
| var remote_args = []; | ||||
| // var patcherargs = null; | ||||
|  | ||||
|  | ||||
| function loadbang() { | ||||
|     // post("this: " + this.box.maxclass); | ||||
|     // patcherargs = this.patcher.newdefault(400, 25, "patcherargs", "test"); | ||||
|     // this.patcher.connect(patcherargs, 0, this.box, 0); | ||||
|     // patcherargs.bang(); | ||||
|  | ||||
|     top_level_patcher = get_top_level_patcher(); | ||||
|  | ||||
|     top_level_patcher.applydeep(get_host_name); | ||||
|  | ||||
| } | ||||
|  | ||||
| // function anything() { | ||||
| //     remote_args = arrayfromargs(messagename,arguments); | ||||
| //     post("number of args: " + remote_args.length); | ||||
| //     if (remote_args.length == 0) { | ||||
| //         outlet(1, "dump"); | ||||
| //     } else { | ||||
| //         outlet(1, remote_args); | ||||
| //     } | ||||
| // } | ||||
|  | ||||
| function get_host_name(obj) { | ||||
|     if (obj.maxclass === "js") { | ||||
|         // post(obj.varname); post(); | ||||
|         if (obj.patcher.getattr("name") === "agn.host") { | ||||
|             // post("troué !! " + obj.value); post(); | ||||
|             obj.message("request_host_name"); | ||||
|  | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
| function set_agn_host_name(param) { | ||||
|     // post("set host name: " + param); post(); | ||||
|     if (host_name !== param) { | ||||
|         host_name = param; | ||||
|         outlet(0, param); | ||||
|  | ||||
|         // if (remote_args.length == 0) { | ||||
|         //     outlet(1, "dump"); | ||||
|         // } else { | ||||
|         //     outlet(1, remote_args); | ||||
|         // } | ||||
|  | ||||
|     } | ||||
|      | ||||
| } | ||||
							
								
								
									
										24
									
								
								license.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								license.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| MIT License | ||||
|  | ||||
| Copyright (c) 2023 Théophile Clet | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
| of this software and associated documentation files (the "Software"), to deal | ||||
| in the Software without restriction, including without limitation the rights | ||||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
| copies of the Software, and to permit persons to whom the Software is | ||||
| furnished to do so, subject to the following conditions: | ||||
|  | ||||
| The above copyright notice and this permission notice shall be included in all | ||||
| copies or substantial portions of the Software. | ||||
|  | ||||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||
| SOFTWARE. | ||||
|  | ||||
| Additionnal licensing: | ||||
| shell object: MIT License - Copyright (c) 2013-2018 Jeremy Bernstein and Bill Orcutt | ||||
							
								
								
									
										
											BIN
										
									
								
								media/tunnel.webm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								media/tunnel.webm
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										28
									
								
								package-info.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								package-info.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| { | ||||
| 	"name" : "Again", | ||||
| 	"displayname" : "", | ||||
| 	"version" : "0.0.1", | ||||
| 	"author" : "Théophile Clet", | ||||
| 	"authors" : [  ], | ||||
| 	"description" : "Create and export seamlessly looping videos", | ||||
| 	"tags" : ["animation", "loop", "noise", "video", "gif"], | ||||
| 	"website" : "", | ||||
| 	"extends" : "", | ||||
| 	"extensible" : 0, | ||||
| 	"max_version_min" : "8.5.6", | ||||
| 	"max_version_max" : "none", | ||||
| 	"os" : 	{ | ||||
| 		"macintosh" : 		{ | ||||
| 			"min_version" : "10.11.x", | ||||
| 			"platform" : [ "x64", "aarch64" ] | ||||
| 		} | ||||
| , | ||||
| 		"windows" : 		{ | ||||
| 			"min_version" : "10", | ||||
| 			"platform" : [ "x64" ] | ||||
| 		} | ||||
|  | ||||
| 	} | ||||
| , | ||||
| 	"homepatcher" : "NOTHEREYET.maxpat" | ||||
| } | ||||
							
								
								
									
										2356
									
								
								patchers/agn.convert.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2356
									
								
								patchers/agn.convert.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										4620
									
								
								patchers/agn.host.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4620
									
								
								patchers/agn.host.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2818
									
								
								patchers/agn.remote.maxpat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2818
									
								
								patchers/agn.remote.maxpat
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user