A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 16042|回复: 2

[软件]AVS Writer

 关闭 [复制链接]

精华
25
帖子
65375
威望
53 点
积分
76450 点
种子
13 点
注册时间
2003-8-23
最后登录
2024-10-28
 楼主| 发表于 2008-7-30 23:50  ·  四川 | 显示全部楼层 |阅读模式
AVS Writer by 天神十三煞
http://gilleco.2alien.net/MediaTools/AVSWriter.rar

AviSynth是一个媒体滤镜处理工具,AVS是其语句脚本,稍微有点视频编码常识都该知道它及其好处
AVSWriter是一个傻瓜的AVS脚本编写器,主要针对不懂AVS的人,几个简单即可操作编写,方便懒人

在此之前推荐安装全面的解码包,如终极解码[含AviSynth],保证播放无问题。
使用本软件需要Net Farmeware 2以上。本软件的基本的操作如下

首先加载一个视频,选择后会自动播放视频,点选文件->属性->详细信息,看到如图信息

如果你默认不是mplayerc播放,那么单独打开MediaPlayerClassic播放器播放该视频
获取视频属性里的的像素和比例尺的值,然后填入AVSWriter
视频大小一行的那四个就是要填入AVSWriter的值,AR[变形尺寸]那两个如果没有就默认0,不用管
填此数值的目的是软件可以根据此按1.777标准比例自动加黑
然后选择视频的字幕,如不需要则不选。接着选择要压制成的帧率,选择要压制成的尺寸大小
有需要的人可以点高级设置,里面有些其他常用的AVS语句,可自选添加修改
点生成AVS,可以在右边框里再做修改,保存时以这框里最终内容为准
最后点保存AVS即可,接下来就是测试播放AVS,然后将其拖进编码器进行编码了
.

精华
25
帖子
65375
威望
53 点
积分
76450 点
种子
13 点
注册时间
2003-8-23
最后登录
2024-10-28
 楼主| 发表于 2008-7-30 23:53  ·  四川 | 显示全部楼层
常规语句简单解释
本楼看不懂可以无视
LoadPlugin("xx")
载入插件语句

DirectShowSource("xx")
挂载媒体语句

textsub("xx")
字幕挂载语句

ConvertToYV12()
颜色环境转换语句,视频编码工具需要的语句

Crop(0,0,-0,-0)
切边语句,针对碟源视频进行rip时,切掉视频周围黑边用(左,上,右,下),后面两个取负值

AddBorders(0,0,0,0)
加黑语句,针对视频输出对应比例加黑(左,上,右,下)

LanczosResize(480,272)
重编码时缩放比例尺寸语句,(横,纵)

Gradfun2db()
除分层语句,针对大范围同色或暗画面多的视频用[动画],避免编码时这类画面出现过渡不够柔和现象

UnDot()
除噪点语句,针对碟源视频,胶片转录或厂商制作时故意加得有噪点

Sharpen(0.1)
锐化语句,推荐0.5以下。

DelayAudio(0.5)
声音延迟语句,声音画面不同步时可以尝试此语句

AmplifydB(10)
音量增益语句,嫌声音输出不够大可以用这个,30以下推荐,15就很大了,过大会出现爆音

GetChannel(1)
声道选取语句,左右声道语音不同型视频选用

Trim(0,1440)
段落截取语句,(起始帧,结束帧),当前时间是多少帧数算法是当前时间乘以该视频帧率大小

Levels(0,1.1,255,0,255)
level语句,可以改变画面背景亮度、画面的gramma色彩,不懂的不建议随便改

Tweak(0,1.1,0,1)
综合滤镜,(色度,饱和度,亮度,对比度)

精华
25
帖子
65375
威望
53 点
积分
76450 点
种子
13 点
注册时间
2003-8-23
最后登录
2024-10-28
 楼主| 发表于 2008-8-23 01:35  ·  四川 | 显示全部楼层

附上部分C++的源代码,程序是移到VB下的

[code]
#include "stdio.h"
#include
using namespace std;

void main()
{
     //来源基本参数相关变量
     int SourceType;                //媒体的类型判断,做简单的扩展名判断即可
     int SubType;                  //字幕的类型判断,做简单的扩展名判断即可
     double RSx;                        //媒体横向实际像素,可通过播放器获值,由用户输入值,width
     double RSy;                        //媒体纵向实际像素,可通过播放器获值,由用户输入值,height
     double ARx;                        //变形尺寸横向数值,可通过播放器获值,由用户输入值,ARx
     double ARy;                        //变形尺寸纵向数值,可通过播放器获值,由用户输入值,ARy
     double PLx;                        //源视频流播放横值,SourcePlaySizeX
     double PLy;                        //源视频流播放纵值,SourcePlaySizeY
     //压制基本参数相关变量
     int FPStype;                  //用户选择转换帧率类型
     int IVTCtype;                 //用户选择反交错的类型
     int ReSizeType;                //用户选择目标尺寸类型
     double ConvertFPS;              //帧率数值
     double ABx;                        //视频加黑横向数值,AddBorderX
     double ABy;                        //视频加黑纵向数值,AddBorderY
     int   TRx;                     //目标压制横向数值,TargetResizeX
     int   TRy;                     //目标压制纵向数值,TargetResizeY
     //使用其他常用语句
     bool UseGradfun2db;          //是否使用除分层语句
     bool UseUnDot;              //是否使用除躁点语句
     bool UseCrop;              //是否使用切边语句
     bool UseSharpen;              //是否使用锐化语句
     bool UseDelayAudio;          //是否使用声音延迟语句
     bool UseAmplifydB;          //是否使用音量增益语句
     bool UseGetChannel;          //是否使用声道选择语句
     bool UseTrim;              //是否使用段落选择语句
     bool UseLevels;              //是否使用levels选择语句
     bool UseTweak;              //是否使用综合滤镜语句
     //其他常用语句相关变量
     int Cpx,Cpy;              //Crop
     double Spv;                   //Sharpen
     int Ach;                   //AudioChannel
     int TrS,TrE;              //Trim Start&End
     double DlA;                   //DelayAudio
     int AdB;                   //AmplifydB
     double Lv2;                   //Levels
     int Lv1,Lv3,Lv4,Lv5;     //Levels
     double Tw1,Tw3,Tw2,Tw4;     //Tweak;
     //来源基本参数相关变量初始值
     SourceType = 1;
     SubType   = 1;
     RSx = 1280;
     RSy = 720;
     ARx = 0;
     ARy = 0;
     //压制基本参数相关变量初始值
     FPStype   = 1;
     IVTCtype  = 2;
     ConvertFPS = 23.976;
     ReSizeType = 2;
     //其他常规语句默认开启状态
     UseGradfun2db=true;
     UseUnDot=true;
     UseCrop=true;
     UseSharpen=true;
     UseGetChannel=true;
     UseDelayAudio=true;
     UseAmplifydB=true;
     UseTrim=true;
     UseLevels=true;
     UseTweak=true;
     //其他常规语句相关变量初始值     
     Cpx = 8;
     Cpy = 62;
     Spv = 0.1;
     Ach = 1;
     TrS = 0;
     TrE = 1440;
     DlA = 0.5;
     AdB = 10;
     Lv1 = 0;
     Lv2 = 1.2;
     Lv3 = 255;
     Lv4 = 0;
     Lv5 = 255;
     Tw1 = 0;
     Tw2 = 1.2;
     Tw3 = 0;
     Tw4 = 1;                        
     //来源视频的播放比例尺寸基本算法
     if(ARx==0||ARy==0)
     {
          //视频无AR值输入时,播放尺寸既是实际像素值
          PLx = RSx;
          PLy = RSx/1.7777;
     }
     else
     {
          //视频有AR值输入时,播放尺寸是纵向实际象素乘以AR比值
          PLx = ARx/ARy*RSy;
          PLy = PLx/1.7777;
     }
     ABy = (PLy-RSy)/2;
     ABx = 0;

     /***********************
     ***********************
     *以上是各个语句变量相关*
     *以下是各个语句输出方法*
     ***********************
     ***********************/

     //基本插件加载语句
     cout
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2024-11-25 18:47 , Processed in 0.147430 second(s), 11 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部