| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1756 人关注过本帖, 1 人收藏
标题:编写一个读取avi文件并添加字幕的代码
只看楼主 加入收藏
颜寻
Rank: 2
来 自:ccnu
等 级:论坛游民
帖 子:74
专家分:32
注 册:2014-12-27
结帖率:100%
收藏(1)
已结贴  问题点数:100 回复次数:20 
编写一个读取avi文件并添加字幕的代码
还没学过老师就出了这种题,完全木有头绪啊,求指点
2015-01-12 15:08
颜寻
Rank: 2
来 自:ccnu
等 级:论坛游民
帖 子:74
专家分:32
注 册:2014-12-27
收藏
得分:0 
主要是读取这种avi或者wav文件一头雾水,百度上查的代码也运行不出来

......................................既然琴瑟起,何以笙箫默
2015-01-12 15:11
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:30 
Avisynth

楼主可以搜一下这个关键字
并找源码(C++)读一下

Only the Code Tells the Truth             K.I.S.S
2015-01-12 15:34
颜寻
Rank: 2
来 自:ccnu
等 级:论坛游民
帖 子:74
专家分:32
注 册:2014-12-27
收藏
得分:0 
回复 3楼 longwu9t
可是我还没学c++,现在只懂C语言

......................................既然琴瑟起,何以笙箫默
2015-01-12 16:28
颜寻
Rank: 2
来 自:ccnu
等 级:论坛游民
帖 子:74
专家分:32
注 册:2014-12-27
收藏
得分:0 

......................................既然琴瑟起,何以笙箫默
2015-01-12 19:27
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
回复 5楼 颜寻
你也可以换个思路
只要把字幕文件封装进AVI格式的文件里就行
AVI只是容器
里面是索引、音频流、视频流
你打开容器
不用读取音视频流
也就不用解码了
只添加srt字幕文件就行了

Only the Code Tells the Truth             K.I.S.S
2015-01-12 19:39
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:10 
你找到在avi上嵌入字幕的原理资料就行,不需要抄别人的代码。不知道原理,抄来了也不会用,也不会改,更不知道对与错。写程序的基础,是对解决问题的过程有完整的认识,这即所谓专业。不是这个专业的,无法写出能用的程序。比如那个求定积分的程序,不知道定积分的原理,自然写不出来,知道原理,就知道那不过是最简单的循环求和累加,小学生都懂的,这就是我常说的“专业”。写程序没什么难的,难在你对问题有多了解,所以,我也说过,只懂写程序,实际上没啥用,因为你未必懂专业,全要人家用户给你写需求、写详细的实现过程,但那样一来,他要是懂这些,自己也会写了,用得着找你么,所以不懂专业的程序员不值钱,这是真的。现在社会大多数的程序员和搞IT的,都是这类,他们除了弄计算机本身的东西,就不会给生产企业带来什么效益,工资不高正常得很,你就是被人当机器人用。

授人以渔,不授人以鱼。
2015-01-12 19:40
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 6楼 longwu9t
的确是这样的。比如我处理过给MP3文件读写信息的程序,修改封面图片、演唱者名字、歌曲序号等等,都不用实际播放音乐,只是文件数据处理罢了。做这些东西,关键是知道MP3格式的数据布局,什么数据放在什么地方、如何解读、起什么作用等等,不同的MP3或AVI制式的文档,数据储存位置和解读格式未必一样,就如BMP和JPG图像有各种各样格式,AVI也有很多种格式,不是这个专业的,不清楚都有什么,就无法写程序了。

授人以渔,不授人以鱼。
2015-01-12 19:47
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
回复 楼主 颜寻
http://bbs.
这里有个现成的软件就是做AVI字幕封装

我最开始给你介绍的Avisynth是个流媒体服务软件
是用来解码的
辅助以解码器 编码器 封装工具
可以把字幕硬嵌到AVI的视频画面里
实现起来比单纯的封装字幕复杂

也不知道你要求的是AVI里封装一个软字幕
还是硬字幕

二者如果你用C来写 都不是件小工程

Only the Code Tells the Truth             K.I.S.S
2015-01-12 19:48
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:10 
这应该是个高大上的项目啊。你老师大概是故意刁难你吧。
应用directshow可以调用别人写好的字幕filter可以轻松实现软字幕,如非要影像合成为硬字幕怕是要用DMOs了,它都可以实现视频非线性编辑、解码编码视频文件了,那好遥远哦,于我来说,怕是有需要才会去啃相关内容吧,否则是不会为这个去烧脑子的。
还有一个愚弄人的做法,在vc++6里使用窗口类mfc做透明窗口叠加应该也可以的,不知道闪烁不。

[ 本帖最后由 wmf2014 于 2015-1-12 20:16 编辑 ]

能编个毛线衣吗?
2015-01-12 20:15
快速回复:编写一个读取avi文件并添加字幕的代码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017896 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved