FTurn

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (link)
m (minor touch up)
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{FilterCat|External_filters|Adjustment_filters|Rotate}}
+
{{FilterCat4|External_filters|Plugins|Adjustment_filters|Rotation}}
 
{{Filter3
 
{{Filter3
| {{Authot/tp7}}
+
| {{Author/tp7}}
 
| v1.4
 
| v1.4
| [http://github.com/tp7/fturn/releases/download/1.4/fturn-25.dll fturn-25.dll] - [Avisynth 2.5.8]
+
| <strike>[http://github.com/tp7/fturn/releases/download/1.4/fturn-25.dll fturn-25.dll] - [AviSynth 2.5.8]</strike>
[http://github.com/tp7/fturn/releases/download/1.4/fturn-26.dll fturn-26.dll] - [Avisynth 2.6.0]
+
[http://github.com/tp7/fturn/releases/download/1.4/fturn-26.dll fturn-26.dll] - [AviSynth 2.6.0]
 
| Rotation
 
| Rotation
 
| [http://opensource.org/licenses/MIT MIT] but binaries are [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
| [http://opensource.org/licenses/MIT MIT] but binaries are [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
|6=[http://forum.doom9.org/showthread.php?t=168315 Doom9 Thread]}}
 
|6=[http://forum.doom9.org/showthread.php?t=168315 Doom9 Thread]}}
<br>
+
 
 
== Description ==
 
== Description ==
:Fast implementation of [[TurnLeft]](), [[TurnRight]]() and [[Turn180]]() AviSynth functions. FTurn is internally multithreaded  
+
Fast implementation of <tt>[[TurnLeft]], [[TurnRight]]</tt> and <tt>[[Turn180]]</tt> AviSynth functions. FTurn is internally multithreaded and is [[SSE2]] and [[SSSE3]] optimized, if your CPU supports [[SSSE3]] you can assume slightly better performance.<br>
:and is [[SSE2]] and [[SSSE3]] optimized, if your CPU supports [[SSSE3]] you can assume slightly better performance.  
+
FTurn has the following functions:
:FTurn has the following functions:
+
 
::*{{Template:FuncDef|fturn180}} - rotates a 180 degrees.  
+
*{{Template:FuncDef2|fturn180}} - rotates a 180 degrees.  
::*{{Template:FuncDef|fturnleft}} - rotates 90 degrees counter clock wise.
+
*{{Template:FuncDef2|fturnleft}} - rotates 90 degrees counter clock wise.
::*{{Template:FuncDef|fturnright}} - rotates 90 degrees clockwise.
+
*{{Template:FuncDef2|fturnright}} - rotates 90 degrees clockwise.
 +
 
 +
<span style="color:red">'''Note:'''</span> FTurn is only recommended for AviSynth. The optimized code is integrated into the [[AviSynth+]] core, thus making FTurn obsolete.
 +
<br>
 
<br>
 
<br>
  
 
== Requirements ==
 
== Requirements ==
:- AviSynth 2.5.8 or [http://forum.doom9.org/showthread.php?t=168764 AviSynth 2.6.0 Alpha5] or greater
+
* AviSynth 2.5.8, or [http://sourceforge.net/projects/avisynth2/ 2.6.0] or greater
:- [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only
+
* Supported color formats: [[Y8]], [[YV12]], [[YV24]]
:- Supported color formats: [[Y8]], [[YV12]], [[YV24]]
+
:<span style="color:red">**</span> AviSynth 2.5.8 only supports [[YV12]]
:: <span style="color:red">**</span> If you're using AviSynth 2.5.8, [[YV12]] will be the only colorspace supported.
+
 
<br>
+
* [[SSE2]]/[[SSSE3]] capable CPU
:- [[SSE2]]/[[SSSE3]] capable CPU
+
 
<br>
 
<br>
 +
 
== [[Script variables|Syntax and Parameters]] ==
 
== [[Script variables|Syntax and Parameters]] ==
 
:{{Template:FuncDef|fturn180 (''clip'', ''bool'' "chroma")}}
 
:{{Template:FuncDef|fturn180 (''clip'', ''bool'' "chroma")}}
 
:{{Template:FuncDef|fturnleft (''clip'', ''bool'' "chroma", ''bool'' "mt")}}
 
:{{Template:FuncDef|fturnleft (''clip'', ''bool'' "chroma", ''bool'' "mt")}}
 
:{{Template:FuncDef|fturnright (''clip'', ''bool'' "chroma", ''bool'' "mt")}}
 
:{{Template:FuncDef|fturnright (''clip'', ''bool'' "chroma", ''bool'' "mt")}}
 +
<br>
 +
::{{Par2| |clip| }}
 +
:::Input clip.
 
<br>
 
<br>
 
::{{Par2|chroma|bool|true}}
 
::{{Par2|chroma|bool|true}}
Line 43: Line 49:
 
fturnleft with default settings:
 
fturnleft with default settings:
 
  [[AviSource]]("Blah.avi")
 
  [[AviSource]]("Blah.avi")
  fturnleft(chroma=true, mt-true)
+
  fturnleft(chroma=true, mt=true)
 
<br>
 
<br>
 
== Changelog ==
 
== Changelog ==
Line 61: Line 67:
 
*[http://forum.doom9.org/showthread.php?t=168315 Doom9 Forum] - FTurn discussion.
 
*[http://forum.doom9.org/showthread.php?t=168315 Doom9 Forum] - FTurn discussion.
 
*[http://github.com/tp7/fturn GitHub] - Source code repository.
 
*[http://github.com/tp7/fturn GitHub] - Source code repository.
<br>
 
 
<br>
 
<br>
 
<br>
 
<br>
 
-----------------------------------------------
 
-----------------------------------------------
 
'''Back to [[External_filters#Rotate|External Filters]] &larr;'''
 
'''Back to [[External_filters#Rotate|External Filters]] &larr;'''

Latest revision as of 03:46, 14 February 2016

Abstract
Author tp7
Version v1.4
Download fturn-25.dll - [AviSynth 2.5.8]

fturn-26.dll - [AviSynth 2.6.0]

Category Rotation
License MIT but binaries are GPLv2
Discussion Doom9 Thread

Contents

[edit] Description

Fast implementation of TurnLeft, TurnRight and Turn180 AviSynth functions. FTurn is internally multithreaded and is SSE2 and SSSE3 optimized, if your CPU supports SSSE3 you can assume slightly better performance.
FTurn has the following functions:

  • fturn180 - rotates a 180 degrees.
  • fturnleft - rotates 90 degrees counter clock wise.
  • fturnright - rotates 90 degrees clockwise.

Note: FTurn is only recommended for AviSynth. The optimized code is integrated into the AviSynth+ core, thus making FTurn obsolete.

[edit] Requirements

  • AviSynth 2.5.8, or 2.6.0 or greater
  • Supported color formats: Y8, YV12, YV24
** AviSynth 2.5.8 only supports YV12


[edit] Syntax and Parameters

fturn180 (clip, bool "chroma")
fturnleft (clip, bool "chroma", bool "mt")
fturnright (clip, bool "chroma", bool "mt")


clip   =
Input clip.


bool  chroma = true
When set to false chroma will not be processed.
This is useful when chroma processing is not needed (almost often in anti aliasing scripts).


bool  mt = true
FTurn is internally multithreaded; set to false to disable.
Chroma is processed in a separate thread when mt=true (default).


[edit] Examples

fturnleft with default settings:

AviSource("Blah.avi")
fturnleft(chroma=true, mt=true)


[edit] Changelog

Version      Date            Changes
v1.4 2013/11/12 - 20-30% better performance of FTurnLeft/FTurnRight, lower memory usage. - 5-10% better performance of FTurn180 on SSE2.
v1.3.5 2013/07/29 - This release contains some performance improvements. - You can expect 10-15% faster execution compared to 1.3 on all processors.
v1.3 2013/07/29 - This plugin now requires only SSE2. - SSSE3 version is still here and will be used if your CPU supports it.
v1.2.1 2013/07/26 - Migration to Avisynth 2.6 alpha 4 API. This plugin won't work with alpha 3 anymore.
v1.2 2013/07/08 - Now includes FTurn180() function.
v1.1 2013/07/06 - Now includes YV24 and Y8 support (only in 2.6 version).
v1.0.1 2013/07/06 - public release


[edit] External Links




Back to External Filters

Personal tools