[{"id":67,"target":"avi","category":"video","options":{"codec":{"type":"string","enum":["dx50","ffv1_v3","h.264","h.265","huffyuv","mjpeg","mpeg4","msmpeg","theora","vp8","vp9","xvid","copy"],"description":"Sets the video codec"},"crf":{"type":"integer","minimum":0,"maximum":51,"description":"The Constant Rate Factor (CRF) allows the encoder to attempt to achieve a certain output quality for the whole file when output file size is of less importance. Lower values result in better quality at the expense of a higher file size. This option will be ignored if video_bitrate is set."},"audio_codec":{"type":"string","enum":["aac","ac3","adpcm_ms","heaac1","heaac2","mp2","mp3","opus","pcm_s16le","vorbis","copy"],"description":"Sets the audio codec"},"audio_frequency":{"type":"integer","description":"Audio frequency in Hz.","enum":[1000,8000,11025,16000,22050,24000,32000,44100,48000,96000]},"download_password":{"type":"string","pattern":"^[ -~]{0,1000}$","example":"secret_password","description":"A password to protect the download. To download the file send the password in the x-oc-download-password header or set a cookie named x-oc-download-password.  The value contains a comma separated list of passwords."},"allow_multiple_outputs":{"type":"boolean","default":false,"description":"If the conversion produces more than one output file, by default all of them are compressed in just one file. Set this option to true if you want a download link for each file."},"allow_multiple_outputs_threshold":{"type":"integer","minimum":2,"maximum":400,"description":"Sets the threshold for the number of output files during conversion. This option is considered only when `allow_multiple_outputs` is set to true. If the generated output files exceed this threshold, they are compressed into one file. Conversely, if the threshold is not met, each output file remains uncompressed."},"preset":{"type":"string","pattern":"^[\\w\\W]{1,255}$","description":"Predefined options"},"output_filename":{"type":"string","pattern":"^[\\w\\W]{0,255}$","example":"my_base_filename_without_extension","description":"The desired file name of the converted file WITHOUT the file extension."},"video_bitrate":{"type":"integer","minimum":1,"maximum":100000,"description":"Specifies the bitrate in kbps. This controls the average rate at which video data is processed and affects the video quality and file size."},"video_max_bitrate":{"type":"integer","minimum":1,"maximum":100000,"description":"Specifies the maximum bitrate in kbps. This helps to control the peak bitrate and prevent excessive bitrates that could lead to playback issues or excessive file sizes."},"video_buffer_size":{"type":"integer","minimum":1,"maximum":100000,"description":"Specifies the buffer size in kb. It determines the amount of data the encoder can accumulate before it must send it to the output. A larger buffer allows more flexibility for bitrate control but can introduce latency."},"framerate":{"type":"number","minimum":1,"maximum":120,"description":"Specifies the video frames per second"},"remove_audio":{"type":"boolean","default":false,"description":"Disable the audio track"},"channel":{"type":"string","description":"Audio channels.","enum":["stereo","mono"]},"normalize":{"type":"boolean","default":false,"description":"Normalize the audio volume."},"deinterlace":{"type":"boolean","default":false,"description":"Deinterlace the video"},"aspect_ratio":{"type":"string","pattern":"^\\d{1,6}:\\d{1,6}$","description":"Specify the aspect ratio of the video e.g. 16:9."},"default_still_frame_duration":{"type":"number","minimum":0.02867,"maximum":1800,"description":"Defines the duration in seconds of a still frame. E.g. when converting from images or documents."},"overlays":{"type":"array","additionalProperties":false,"input_id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$","required":true,"description":"Define the input_id of the file you want to specify as an overlay. Valid files are videos and images"},"position_x":{"type":"integer","minimum":-100000,"maximum":100000,"description":"The position of the overlay on the x-axis"},"position_y":{"type":"integer","minimum":-100000,"maximum":100000,"description":"The position of the overlay on the y-axis"},"origin":{"type":"string","enum":["top-left","top-right","bottom-left","bottom-right","center"],"description":"Specify the origin for the positioning of the overlay. Default is top-left"},"width":{"type":"integer","minimum":0,"maximum":100000,"description":"The width of the overlay"},"height":{"type":"integer","minimum":0,"maximum":100000,"description":"The height of the overlay"},"opacity":{"type":"string","pattern":"^[0,1]$|^0\\.\\d{1,2}$","description":"Define the opacity of the overlay where 0 is invisible and 1 is full opacity"}},"crop_top":{"type":"integer","minimum":0,"maximum":100000,"description":"Crop from the top. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_bottom":{"type":"integer","minimum":0,"maximum":100000,"description":"Crop from the bottom. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_left":{"type":"integer","minimum":0,"maximum":100000,"description":"Crop from the left side. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_right":{"type":"integer","minimum":0,"maximum":100000,"description":"Crop from the right side. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_origin_x":{"type":"integer","minimum":0,"maximum":65000,"description":"Specifies the X origin coordinate in pixels of the crop area starting from the upmost left corner of the image. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_origin_y":{"type":"integer","minimum":0,"maximum":65000,"description":"Specifies the Y origin coordinate in pixels of the crop area starting from the upmost left corner of the image. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_width":{"type":"integer","minimum":1,"maximum":65000,"description":"Specifies the width in pixels of the crop area. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"crop_height":{"type":"integer","minimum":1,"maximum":65000,"description":"Specifies the height in pixels of the crop area. Use either the cropping from crop_top\/bottom\/left\/right or crop_origin_x\/y and crop_width\/height."},"start":{"type":"string","pattern":"^\\d\\d:\\d\\d:\\d\\d$","description":"Sets the start point of the part of the video you want to keep. The format is HH:MM:SS. HH = hour, MM = minutes, SS = seconds. Example 00:02:23"},"end":{"type":"string","pattern":"^\\d\\d:\\d\\d:\\d\\d$","description":"Sets the end point of the part of the video you want to keep. The format is HH:MM:SS. HH = hour, MM = minutes, SS = seconds. Example 00:05:35"},"mirror":{"type":"string","enum":["none","horizontal","vertical"],"description":"Mirror\/flip your video"},"rotate":{"type":"integer","enum":[90,180,270],"description":"Rotate your video, specified in degrees clockwise"},"audio_bitrate":{"type":"integer","description":"Audio bitrate in kbps.","enum":[8,16,24,32,48,56,64,96,112,128,160,192,224,256,320]},"width":{"type":"integer","minimum":1,"maximum":10000,"description":"Specifies the screen width in pixels"},"height":{"type":"integer","minimum":1,"maximum":10000,"description":"Specifies the screen height in pixels"},"resize_by":{"type":"string","enum":["px","perc"],"description":"Sets the unit of measurement for the image's width and height"},"resize_handling":{"type":"string","enum":["stretch","keep_aspect_ratio_fill_black","keep_aspect_ratio_fill_white","keep_aspect_ratio_fill_blurred","keep_aspect_ratio_crop","do_not_upscale"],"default":"stretch","description":"Determine how the resizing of the image should be done. Either by stretching, keeping the original aspect ratio (filling the empty space if needed) or not upscaling the original video."},"merge":{"type":"boolean","description":"Allows to merge the input files to a single video"},"ffv1_archival_use":{"type":"boolean","description":"Output is for archival use"}}}]