『漫游』酷论坛>『影音数码技术学习交流』>已解决 用ffmpegsource2写 ..

已解决 用ffmpegsource2写的avs文件打开巨慢

sammysui@2010-02-14 12:21

首先,借此机会向论坛里的朋友们拜年,祝大家在新的一年里,事事顺心 如意,家庭幸福 人生快乐,走好运 发大财。。。

另外,还有个问题,如题,经过无数日夜和重重困难,外加努力。终于可以使用ffmpegsource2打开文件进行压缩了,这要感谢曾经帮助过我的朋友们,有你的参与,帮助,才会有今天论坛的人气,繁荣。论坛是大家有缘相聚的地方,也是大家共同成长的地方。来到这里感觉真好。。。超级喜欢。。。

啊呀跑题了,回主题,每次打开megui添加avs,然后就发现megui停止响应,大约有2-3个小时,才可以看到预览图片。怎么这么久啊?

硬盘灯一直亮着,为了防止开头有马赛克,我把7个文件合并成一个大文件,大约29.7g的ts文件。然后就开始了超级巨慢的识别过程,可能是做index吧。这个文件比较大,我采取用trim分段压缩方法,主要是怕中途停电,前功尽弃,所以分段压缩比较保险,成功后再合并成为一个完整文件。就是这个思路,问题来了,就是每次都要用2-3个小时去做index,然后才可以进行压缩。

我想问的是,有没有其他方法稍微快一点?
引用

roozhou@2010-02-14 12:33

因为ffms2需要先做索引才能压,30G的文件做索引当然是比较慢的

还是一句话,你既然是要一起压,那索引这个过程就是不需要的,直接走dshow就行了
引用

sammysui@2010-02-14 12:43

1,关键是索引文件再内存里,不能保存下来,每次trim都要用2-3个小时重复index这件事情。

2,学识有限,试过很多次,直接走dshow,不能打开这个vc1文件。方便的话能否指点一,二
引用

alphaa@2010-02-14 13:49

合并之后也不能用DirectShowSource开么?错误代码提示什么?
再不行你去下GraphEdit,把视频文件拖进去看看解码流程。
引用

ssnake@2010-02-14 15:38

先做好了Index的话,后面应该不用再做啊。
引用

sammysui@2010-02-14 18:40

引用
最初由 alphaa 发布
合并之后也不能用DirectShowSource开么?错误代码提示什么?
再不行你去下GraphEdit,把视频文件拖进去看看解码流程。


用DirectShowSource开后没有图像只有声音,用GraphEdit看解码流程是Microsoft WMVideo Decoder DMO+Video Renderer
引用

sammysui@2010-02-14 19:04

引用
最初由 ssnake 发布
先做好了Index的话,后面应该不用再做啊。


1,用kmp播放器可以做index,做出来的是ffindex文件,King.Kong4.ts_new.ts.ffindex

但是megui不能打开King.Kong4.ts_new.ts.ffindex文件,说是不合法的avs描述,所以只能打开King.Kong4.ts_new.avs仍然巨慢,我猜想可能是megui不认kmp播放器做好的.ffindex

2,经过kmp先做好了King.Kong4.ts_new.ts.ffindex

用kmp播放器再次打开King.Kong4.ts_new.avs文件很快,因为有King.Kong4.ts_new.ts.ffindex文件在。
引用

alphaa@2010-02-14 19:48

视频正确解码就可以直接压了,音轨可能是因为DTSHDMA解码器问题没声音,可以压完视频之后再处理。
引用

sammysui@2010-02-14 20:12

引用
最初由 alphaa 发布
视频正确解码就可以直接压了,音轨可能是因为DTSHDMA解码器问题没声音,可以压完视频之后再处理。


用megui直接压缩吗?
引用

roozhou@2010-02-15 13:42

你先用eac3to或者tsmuxer之类的把ts转成mkv,mkv是自带索引的,使用dshow不需要再做index也能精确定位
引用

sammysui@2010-02-15 22:02

引用
最初由 roozhou 发布
你先用eac3to或者tsmuxer之类的把ts转成mkv,mkv是自带索引的,使用dshow不需要再做index也能精确定位


用tsmuxer转换ts文件为vc1视频文件然后用mkvtoolnix转换为mkv文件可行。不用再index了,谢谢了,小文件测试通过,明天晚上试一试大文件,因为现在正在压缩大文件中不敢停。真的不错,非常感谢,人多力量大。大家的智慧是无穷的。。。
引用

雷鸣@2010-02-16 16:59

ffms2的ffvideosource和ffaudiosource可以指定cache文件的吧,有一个参数
不过我没有处理如此巨大文件的经验,不知道效果怎么样
引用

sammysui@2010-02-16 17:34

ffms2的ffvideosource指定cache文件有一个参数,可以稍微具体一点吗?
引用

ljwing@2010-02-16 18:02

FFIndex(string source, string cachefile = source + ".ffindex", int indexmask = 0, int dumpmask = 0, string audiofile = source, bool overwrite = false)

FFVideoSource(string source, int track, bool cache = true, string cachefile = source + ".ffindex", int fpsnum = -1, int fpsden = 1, string pp, int threads = -1, string timecodes, int seekmode = 1)

FFAudioSource(string source, int track, bool cache = true, string cachefile = source + ".ffindex")
引用

sammysui@2010-02-16 18:58

引用
最初由 ljwing 发布
FFIndex(string source, string cachefile = source + ".ffindex", int indexmask = 0, int dumpmask = 0, string audiofile = source, bool overwrite = false)

FFVideoSource(string source, int track, bool cache = true, string cachefile = source + ".ffindex", int fpsnum = -1, int fpsden = 1, string pp, int threads = -1, string timecodes, int seekmode = 1)

FFAudioSource(string source, int track, bool cache = true, string cachefile = source + ".ffindex")


非常感谢,学习了
引用

«12»共2页

| TOP