搜索 社区服务 统计排行 帮助
  • 8326阅读
  • 66回复

[原创]EP特效压制插件。。。

楼层直达
级别: 新手上路
注册时间:
2005-04-05
在线时间:
3小时
发帖:
216
只看该作者 60楼 发表于: 2009-02-16
BS+1
还是.net好。。。




级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 61楼 发表于: 2009-02-16
引用
最初由 SAPikachu 发布
BS+1
还是.net好。。。

.net写这种东西性能不行
还是C比较好,C++的话要避免用M$的东东
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 62楼 发表于: 2009-02-16
不太完美的解决方案,只是降低了内存泄漏的速度,楼主的那个14M的可以放了,但绿叶的那个180M的还是不行。我会在下次dshow2raw更新时加入修正的vsfilter。

附补丁(guliverkli2)

Index: src/subtitles/RTS.cpp
===================================================================
--- src/subtitles/RTS.cpp (revision 97)
+++ src/subtitles/RTS.cpp (working copy)
@@ -1386,18 +1386,20 @@

int nTags = 0, nUnrecognizedTags = 0;

+ CStringW cmd;
+ CAtlArray params;
+ CStringW param;
+ CStringW s;
+ CStringW p;
for(int i = 0, j; (j = str.Find('\\', i)) >= 0; i = j)
{
-CStringW cmd;
for(WCHAR c = str[++j]; c && c != '(' && c != '\\'; cmd += c, c = str[++j]);
cmd.Trim();
if(cmd.IsEmpty()) continue;

-CAtlArray params;

if(str[j] == '(')
{
- CStringW param;
for(WCHAR c = str[++j]; c && c != ')'; param += c, c = str[++j]);
param.Trim();

@@ -1407,7 +1409,7 @@

if(i >= 0 && (j < 0 || i < j))
{
- CStringW s = param.Left(i).Trim();
+ s = param.Left(i).Trim();
if(!s.IsEmpty()) params.Add(s);
param = i+1 < param.GetLength() ? param.Mid(i+1) : L"";
}
@@ -1442,7 +1444,7 @@
;
else if(!cmd.Find(L"c"))
params.Add(cmd.Mid(1).Trim(L"&H")), cmd = cmd.Left(1);
-else if(!cmd.Find(L"fade"))
+else if(!cmd.Find(L"fade"))
;
else if(!cmd.Find(L"fe"))
params.Add(cmd.Mid(2)), cmd = cmd.Left(2);
@@ -1507,7 +1509,7 @@

// TODO: call ParseStyleModifier(cmd, params, ..) and move the rest there

-CStringW p = params.GetCount() > 0 ? params[0] : L"";
+p = params.GetCount() > 0 ? params[0] : L"";

if(cmd == "1c" || cmd == L"2c" || cmd == L"3c" || cmd == L"4c")
{
级别: 新手上路
注册时间:
2005-04-05
在线时间:
3小时
发帖:
216
只看该作者 63楼 发表于: 2009-02-16
引用
最初由 roozhou 发布

.net写这种东西性能不行
还是C比较好,C++的话要避免用M$的东东


<---C苦手。。。

建议提交到sourceforge。。。造福万民啊。。。




级别: 骑士
注册时间:
2003-06-05
在线时间:
0小时
发帖:
1041
只看该作者 64楼 发表于: 2009-02-16
王牌大大SAPikachu翻开了EP压制历史上崭新的一页

继续保持队形
级别: 新手上路
注册时间:
2008-12-15
在线时间:
0小时
发帖:
59
只看该作者 65楼 发表于: 2009-02-17
不知道用了插件看到这个伟大的特效了么。。。。技术帖咱就不排队形了= =要是看到了记得给咱见识一下|||

今天好开心呀-->摘自表妹日记
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 66楼 发表于: 2009-02-17
引用
最初由 马克思没死 发布
不知道用了插件看到这个伟大的特效了么。。。。技术帖咱就不排队形了= =要是看到了记得给咱见识一下|||


不用那个插件我也看到了...算了还是不评论了
快速回复

限150 字节
上一个 下一个