Rotate

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(Rotate v1.5)
 
(Description: update link)
 
(4 intermediate revisions by one user not shown)
Line 1: Line 1:
{{FilterCat4|External_filters|Plugins|Adjustment_filters|Rotation}}
+
{{FilterCat4|External_filters|Plugins|Plugins_x64|Adjustment_filters|Rotation}}
 
{{Filter3
 
{{Filter3
 
| {{Author/Fizick}}
 
| {{Author/Fizick}}
| v1.5
+
| v1.6.0
| [http://avisynth.org.ru/rotate/rotate15.zip rotate15.zip]
+
| [https://web.archive.org/web/20200627194529if_/https://files.videohelp.com/u/223002/Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip]
 
| Rotation
 
| Rotation
 
| [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
| [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
Line 13: Line 13:
 
It may be used for perspective correction of amateur films or for special effect. AviSynth internal functions TurnLeft and TurnRight can rotate image on 90 degrees only. The [[Rotate]] plugin is faster than [[Zoom]] plugin (by WarpEnterprises) and EffectRotation (from [[EffectsMany]] plugin by vcmohan) and produces good quality images (IMO). Implemented Alan Paeth's method of bitmap rotation by means of 3 shears. Pixel (linear) interpolation is used at every shear. Size (scale) and aspect ratio of source picture are preserved.
 
It may be used for perspective correction of amateur films or for special effect. AviSynth internal functions TurnLeft and TurnRight can rotate image on 90 degrees only. The [[Rotate]] plugin is faster than [[Zoom]] plugin (by WarpEnterprises) and EffectRotation (from [[EffectsMany]] plugin by vcmohan) and produces good quality images (IMO). Implemented Alan Paeth's method of bitmap rotation by means of 3 shears. Pixel (linear) interpolation is used at every shear. Size (scale) and aspect ratio of source picture are preserved.
  
*Official documentation: http://avisynth.org.ru/rotate/rotate.html
+
*Official documentation: http://www.avisynth.nl/users/fizick/rotate/rotate.html
 
<br>
 
<br>
 +
 
== Requirements ==
 
== Requirements ==
 
* [x86]: [[AviSynth+]] or [http://sourceforge.net/projects/avisynth2/ AviSynth 2.6]
 
* [x86]: [[AviSynth+]] or [http://sourceforge.net/projects/avisynth2/ AviSynth 2.6]
 
* [x64]: [[AviSynth+]]
 
* [x64]: [[AviSynth+]]
 
* Supported color formats: [[RGB32]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]]
 
* Supported color formats: [[RGB32]], [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]]
 +
<br>
 +
* [https://www.microsoft.com/en-us/download/details.aspx?id=26368 Microsoft Visual C++ 2008 Redistributable Package (x86 / x64)]
 +
:<span style="color:red">***</span> <tt>vcredist_x86.exe</tt> is required for <tt>Rotate-x86</tt>
 +
:<span style="color:red">***</span> <tt>vcredist_x64.exe</tt> is required for <tt>Rotate-x64</tt>
 
<br>
 
<br>
 
== [[Script variables|Syntax and Parameters]] ==
 
== [[Script variables|Syntax and Parameters]] ==
Line 31: Line 36:
 
:::Input clip.
 
:::Input clip.
 
<br>
 
<br>
::{{Par2|angel|float|0.0}}
+
::{{Par2|angle|float|0.0}}
 
:::<code>angle</code> is rotation angle in degrees clock wise. Default 0.
 
:::<code>angle</code> is rotation angle in degrees clock wise. Default 0.
 
<br>
 
<br>
Line 61: Line 66:
 
== Changelog ==
 
== Changelog ==
 
  Version      Date            Changes<br>
 
  Version      Date            Changes<br>
 +
v1.6        2020/06/27      - Mods by StainlessS, compile for avs 2.58 and 2.60 x86 and x64.
 
  v1.5        2016/03/11      - Added support for differently subsampled planar formats.  
 
  v1.5        2016/03/11      - Added support for differently subsampled planar formats.  
 
                               - Added parameter "aspect".  
 
                               - Added parameter "aspect".  
Line 72: Line 78:
 
!!width="150px"| Download
 
!!width="150px"| Download
 
!!width="150px"| Mirror
 
!!width="150px"| Mirror
 +
|-
 +
!v1.6
 +
|[http://www.mediafire.com/file/ql69v9tf2vf1qs3/Rotate_25%252626_x86_x64_dll_v1.6.0_20200627.zip/file Rotate_25&26_x86_x64_dll_v1.6.0_20200627.zip]
 +
|[https://web.archive.org/web/20200627194529if_/https://files.videohelp.com/u/223002/Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip]
 
|-
 
|-
 
!v1.5
 
!v1.5
Line 79: Line 89:
 
<br>
 
<br>
 
== External Links ==
 
== External Links ==
 +
*[https://github.com/SuNNjek/rotate-plugin GitHub] - Rotate for AviSynth+ (source code only)
 
<br>
 
<br>
 
<br>
 
<br>
 
-----------------------------------------------
 
-----------------------------------------------
'''Back to [[External_filters#Rotate|External Filters]] &larr;'''
+
'''Back to [[External_filters#Rotation.2FShear.2FSkew.2FPerspective|External Filters]] &larr;'''

Latest revision as of 08:50, 9 February 2023

Abstract
Author Fizick
Version v1.6.0
Download Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip
Category Rotation
License GPLv2
Discussion Doom9 Thread

Contents

[edit] Description

Rotate plugin makes frames rotation or shear on any given angle.

It may be used for perspective correction of amateur films or for special effect. AviSynth internal functions TurnLeft and TurnRight can rotate image on 90 degrees only. The Rotate plugin is faster than Zoom plugin (by WarpEnterprises) and EffectRotation (from EffectsMany plugin by vcmohan) and produces good quality images (IMO). Implemented Alan Paeth's method of bitmap rotation by means of 3 shears. Pixel (linear) interpolation is used at every shear. Size (scale) and aspect ratio of source picture are preserved.


[edit] Requirements


*** vcredist_x86.exe is required for Rotate-x86
*** vcredist_x64.exe is required for Rotate-x64


[edit] Syntax and Parameters

Rotate is rotation, HShear is horizontal shear, VShear is vertical shear.

Rotate (clip, float "angle", int "color", int "start", int "end", float "endangle", int "width", int "height", float "aspect")
HShear (clip, float "angle", int "color", int "start", int "end", float "endangle", int "width", int "height", float "aspect")
VShear (clip, float "angle", int "color", int "start", int "end", float "endangle", int "width", int "height", float "aspect")


clip   =
Input clip.


float  angle = 0.0
angle is rotation angle in degrees clock wise. Default 0.


int  color = 0
color is background color of part of clip. Integer or hex or global color constant like color_gray (see colors_rgb.avsi). Default 0 (color_black)


int  start = 0
start is first frame number to rotate. Default 0.


int  end = -1
end is last frame number to rotate. Default is -1 (as final frame).


int  endangle =
endangle is rotation angle of end frame. Default is same as angle. If not the same, then rotation angle of intermediate frames is linear function.


int  width = 0
int  height = 0
width and height are sizes of destination output frame. Default 0 is to be equal to input clip size.


float  aspect = 1.0
aspect is pixel aspect ratio. Default 1.0 (square pixel).


[edit] Examples

1 degree rotation:

AviSource("Blah.avi")
Rotate(angle=1.0)


[edit] Changelog

Version      Date            Changes
v1.6 2020/06/27 - Mods by StainlessS, compile for avs 2.58 and 2.60 x86 and x64. v1.5 2016/03/11 - Added support for differently subsampled planar formats. - Added parameter "aspect". - Changed processing of big angles (about 90) to be compatible with aspect, but it is more blurred now. v1.4 2016/02/28 - Updated to vc2005. Upgrade to avisynth 2.6 (all planar formats).


[edit] Archived Downloads

Version Download Mirror
v1.6 Rotate_25&26_x86_x64_dll_v1.6.0_20200627.zip Rotate_25_26_x86_x64_dll_v1.6.0_20200627.zip
v1.5 rotate15.zip rotate15.zip


[edit] External Links

  • GitHub - Rotate for AviSynth+ (source code only)




Back to External Filters

Personal tools