什么是BBS?,第1张

  BBS的英文全称是Bulletin Board System,翻译为中文就是“电子公告板”。BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在苹果计算机上运行。早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。近些年来,由于爱好者们的努力,BBS的功能得到了很大的扩充。

  bbs目前,通过BBS系统可随时取得国际最新的软件及信息,也可以通过BBS系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及医学等等各种有趣的话题,更可以利用BBS系统来刊登一些“征友”、“廉价转让”及“公司产品”等启事,而且这个园地就在你我的身旁。只要您拥有1台计算机、1只调制解调器和1条电话线,就能够进入这个“超时代”的领域,进而去享用它无比的威力!

  BBS系统最初是为了给计算机爱好者提供一个互相交流的地方。70年代后期,计算机用户数目很少且用户之间相距很远。因此,BBS系统(当时全世界一共不到一百个站点)提供了一个简单方便的交流方式,用户通过 BBS可以交换软件和信息。到了今天,BBS的用户已经扩展到各行各业,除原先的计算机爱好者们外,商用BBS操作者、环境组织、宗教组织及其它利益团体也加入了这个行列。只要浏览一下世界各地的BBS系统,你就会发现它几乎就象地方电视台一样,花样非常多。

  起初的BBS系统是报文处理系统。系统的唯一目的是在用户之间提供电子报文。随着时间的推移,BBS系统的功能有了扩充,增加了文件共享功能。因此,目前的BBS用户还可以相互之间交换各种文件。只需简单地把文件置于BBS系统,其它用户就可以极其方便地下载这些文件。

  早期的BBS系统是一台配有调制解调器的普通PC机,上面运行了一个BBS程序。BBS程序有各种版本,包括单线路的简单系统到支持十几甚至上百条电话线路的复杂系统。最早的BBS系统系统把全部报文存放在一个地方,可现在的BBS软件却允许操作人员根据报文内容来组织报文。比方说,基于PC的 BBS软件很可能包括有专用于DOS、OS/2和Windows的报文部分。

  解释二:

  BBS的另一解释,德国汽车零部件生产厂商。BBS Kraftfahrzeugtechnik AG

  主要生产汽车轮毂。产品供应世界著名汽车厂商。同时也赞助F1,WRC,FIA GT等著名国际汽车赛事。其产品也深受汽车改装爱好者喜爱。

  [编辑本段]一、BBS的历史

  1978年在美国芝加哥开发出一套基于8080芯片的CBBS/Chicago(Computerized Bulletin Board System/Chicago),此乃最早的一套BBS系统。之后随着苹果机的问世,开发出基于苹果机的Bulletin Board System和大众信息系统(People,s Message System)2种BBS系统。1981年IBM个人计算机诞生时,并没有自己的BBS系统。直到1982年,Buss Lane 才用Basic语言为IBM个人计算机编写了一个原型程序。其后经过几番增修,终于在1983年通过Capital PC User Group(CPCUG)的Communication Special Interest Group会员的努力,改写出了个人计算机系统的BBS。经Thomas Mach整理后,终于完成了个人计算机的第1版BBS系统——RBBS-PC。这套BBS系统的最大特色是其源程序全部公开,有利于日后的修改和维护,因此后来在开发其他的BBS系统时都以此为框架,所以RBBS-PC赢得了BBS鼻祖的美称。

  但在当时,如何实现站与站之间的联系问题并未解决。1984年美国的Tom Jonning开发了一套具有电子功能的电子公告板程序FIDO。由于该软件具有站际连线和自动互传信息的功能,所以站际间彼此可以在一个共同的预定时间传送电子邮件,使得BBS网络化有了一线生机。

  BBS发展至今,目前世界上业余的BBS网络除了FidoNet(惠多网)以外,几个较具知名度的还有EggNet、AlterNet和RBBS-Net等等。由于这些网络和FidoNet之间的信息交流不成问题,这就实现了所谓的跨网。

  [编辑本段]二、BBS在中国

  大约是从1991年开始,国内开始了第一个BBS站。经过长时间的发展,直到1995年,随着计算机及其外设的大幅降价,BBS才逐渐被人们所认识。1996年更是以惊人的速度发展起来。国内的BBS站,按其性质划分,可以分为2种:一种是商业BBS站,如新华龙讯网;另一种是业余BBS站,如天堂资讯站。由于使用商业BBS站要交纳一笔费用,而商业站所能提供的服务与业余站相比,并没有什么优势,所以其用户数量不多。多数业余BBS站的站长,基于个人关系,每天都互相交换电子邮件,渐渐地形成了一个全国性的电子邮件网络China FidoNet(中国惠多网)。于是,各地的用户都可以通过本地的业余BBS站与远在异地的网友互通信息。这种跨地域电子邮件交流正是商业站无法与业余站相抗衡的根本因素。由于业余BBS站拥有这种优势,所以使用者都更乐意加入。这里“业余”2字,并不是代表这种类型的BBS站的服务和技术水平是业余的,而是指这类BBS站的性质。一般BBS站都是由志愿者开发的。他们付出的不仅是金钱,更多的是精力。其目的是为了推动中国计算机网络的健康发展,提高广大计算机用户的应用水平。

  [编辑本段]三、国内BBS的现状与展望

  国内的BBS站,单线站还占大多数。随着计算机的普及,特别是调制解调器的大量使用,BBS的活动将会进一步高涨。但是,随之而来的拨号难和抢线难的问题将会加剧。尽管BBS站台的数量在不断增长,但这种增长的幅度总也赶不上用户群的增长。许多人同时拨号一个站台,不可避免地发生冲突。每回要拨上几十次乃至上百次才能成功连上一个BBS站的状况已经成为困扰今日中国BBS用户的一个难题。随着BBS活动的深入,国内已经出现了一些多线站,一次可以允许2人以上同时访问。

  BBS的发展过程中,也出现了一些问题。由于国内使用的BBS架站软件,都是从国外引进的,因此没有必要的中文说明。虽然一些热心的站长翻译了一些资料,但是仅靠这些是远远不够的。另外,有些站台的设立是相互抄袭,所以在结构上难免有雷同之处。

  1999年是中国网络的发展年。但是,我们应该清醒地认识到,目前一些BBS站并没有走上“简单、易用”这一层次。包括一些厂商架设的BBS站,实用性还需要加强。今后,国内的BBS站将向着个性化和专业化的方向发展。

  其他定义

  电子公告栏(BBS)是一种交互性强、内容丰富而及时的Internet电子信息服务系统。用户可以通过Modem和电话线登录BBS站点,也可以通过Internet登录。用户在BBS站点上可以获得各种信息服务:下载软件、发布信息、进行讨论、聊天等。BBS站点的日常维护由BBS站长负责。

  [编辑本段]四、当前中国主要BBS 及简介

  1、水木社区 (http://wwwnewsmthnet): 源自清华大学,社会bbs,主要讨论技术类话题,面向社会开放注册;

  2、北邮人论坛BBS(http://bbsbyreducn): 北京邮电大学BBS,高校bbs,主要是该校生交流,面向社会开放注册;

  3、南大小百合BBS(http://bbsnjueducn): 南京大学BBS,高校bbs,主要是该校生交流,仅对该校生开放注册;

  4、日月光华BBS(http://bbsfudaneducn): 复旦大学官方 BBS,高校bbs,主要是该校生交流,仅对该校生开放注册;

  5、新一塌糊涂BBS(http://bbsnewythtnet): 源自北京大学,社会bbs,主要讨论人文社科、经验信息类话题,面向社会开放注册;

  6、观海听涛bbs(http://bbsghttnet):哈工大(威海),高校bbs,哈工大(威海)“观海听涛”BBS列2005全国高校社团人气排名第一

  其他在线较多的 BBS 还有:飘渺云水间(bbsfreecitycn)、饮水思源BBS(bbssjtueducn)、兵马俑BBS(bbsxjtueducn)、蓝色星空站(bbsscueducn)、五色土(bbscaueducn)、 大话西游BBS(bbszixianet)等。

  [编辑本段]五、BBS 管理人员简介

  一般 BBS 的管理人员由版务、站务组成,有些 BBS 还有区务。

  站务是“站级事务管理人员”的简称,负责一个 BBS 站点的管理工作。此外还有仲裁、立法会等站级事务协调或负责人员,他们不负责具体的管理事务,但也是站级负责人。在不同的 BBS,仲裁、立法会可能是站务的一部分,也可能是独立的职务。

  在大多数 BBS,都有一名站务是总负责的角色,被称作站长或站务总管等。

  版务是“版面事务管理人员”的简称,负责一个或多个版面的管理工作。此外,还有版主等说法,具体如下:

  斑竹/版主/板主/版务/板务(修订版)

  转载请注明出处:新一塌糊涂BBS(NewYTHTNet)

  版主和版务最初是有区别的。

  版务是指一个版面所有的“版面事务管理人员”。

  版主则是单指版面第一个版务,也就是版大。

  版大、版二、版三就是他们在版务中的排序,通常是按照任命时间。

  但现在一般不再做这个区分了。如无特别说明,版务等于版主。

  新糊涂还有小版主和大版主的区分:大版主能整理精华区,小版主不能。

  版主、斑竹、板主三者通用;版务、板务两者通用。斑竹是一种戏称。

  最早版面的称呼是“看板”(现在还有活动看板的说法)或“板面”,因此,其管理人员被称作板务或板主,后来看板变成了“版面”,相应地,板主也就成了版主了,板务变成版务了。

  有些 BBS 还有权限和职责介于站务和版务的区务,负责一个 BBS 内一个类别所有版面的管理。

  [编辑本段]国内主流论坛程序

  Discuz

  论坛软件系统亦称电子公告板(BBS)系统,它伴随社区BBS的流行而成为互联网最重要的应用之一,也逐渐成为网站核心竞争力的标志性体现。2006年7月 CNNIC 发布的最新统计表明,432% 的中国网民经常使用论坛/BBS/讨论组,论坛社区应用首次超过即时通讯 IM ,成为仅次于收发Email的互联网基本应用。

  Crossday Discuz! Board(以下简称 Discuz!,中国国家版权局著作权登记号 2006SR11895)是康盛创想(北京)科技有限公司(英文简称Comsenz)推出的一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的论坛服务。Discuz! 的基础架构采用世界上最流行的 web 编程组合 PHP+MySQL 实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。

  作为国内最大的社区软件及服务提供商,Comsenz旗下的 Discuz! 开发组具有丰富的 web 应用程序设计经验,尤其在论坛产品及相关领域,经过长期创新性开发,掌握了一整套从算法,数据结构到产品安全性方面的领先技术。使得 Discuz! 无论在稳定性,负载能力,安全保障等方面都居于国内外同类产品领先地位。

  自2001年6月面世以来,Discuz!已拥有八年以上的应用历史和三十多万网站用户案例,是全球成熟度最高、覆盖率最大的论坛软件系统之一。

  PHPwind

  PHPWind 是一套采用 php+mysql 数据库 方式运行并可生成 html 页面的全新且完善的强大系统 我们希望作为一个开源共享的软件,PHPWind 可以以其流畅的速度与高负载能力激起各位加入PHPWind阵营的热情!共同打造专业品牌PHPWindNet

  PHPWind 除了具备多重子版块和后台用户组权限可以自由组合外, 还具备分版块控制生成html页面、可选用的所见即所得编辑器、防止和附件防盗链、多附件上传下载、输入URL直接显示、版块主题分类、版块积分控制与版块内的用户组权限控制、主题与回复审核功能、自定义积分与自定义等级提升系统、论坛用户宣传接口、帖子加密隐藏出售、分论坛二级目录/域名等一些特色功能 从而减轻了大部分论坛程序中都必须要借助开发hack才能实现的诸多工作。

  Dvbbs

  动网ASP 82在以前版本的优点基础上,优化了程序核心,在速度和稳定性上取得了平衡点。在动网ASP 820的模板结构上,动网以文本文件的模式保存文件,实现了高速和稳定,文本文件模式的模板,修改更加方便,导入导出更加的轻松简易;在程序核心上,动网重构了核心,改善缓存机制,在速度和稳定性上取得了平衡;在风格界面方面,动网进行重新的整理,做到高速稳定,让用户能有一个更好的体验;无刷新更换皮肤,实现模板和CSS轻松切换;Ajax发帖/回帖模式,让用户体验有了一个新突破;全新的首页布局,实现自定义标签,站长可以轻松DIY;插入阿里妈妈广告出售插件,为站长论坛赢利,轻松运营网站;集成的财付通和全新的支付宝接口,满足站长网上交易的需求。这些功能和性能上的优化,将使得动网ASP 820有更强大的功能,在保证速度的同时,论坛也能稳定的运行。

  BBSMAX

  bbsmax是2007年最新出土的一款ASPNET论坛程序,拥有超高的负载、一流的速度、最强的安全后台!

  BBSXP

  BBSXP是目前互连网上公认速度最快、系统资源占用最小的论坛。在BBS3000时代,BBS3000独创了N多种技术和功能,从而使同类论坛纷纷效仿,现在BBSXP完善了技术,我们针对不同数据库采用了大量的优化算法,淋漓尽致的体现了采用数据库的高效和稳定优势。

  如果你的BBS正面临资源危机,CPU占用率频频超过90%,BBSXP将是你的当然之选,我们始终致力于开发最优化的算法和数据结构,并将独创的算法在BBSXP中体现,服务器只负责我读取数据库中的数据,而客户端进行判断显示,有效减少数据库资源占用,使得BBSXP可以轻松承受比其他类似产品更多的贴子数量和在线,成为目前最高效快速的论坛。

  BBSXP是目前唯一一套拥有数据结构、关系、索引的论坛,从字段到表的分配,索引的构建,都经过缜密的考虑,能最大限度的发挥快速数据库的效能经我们的测试,一台PIII 档次的 NT主机,使用BBSXP,在不需特别设置的情况下,即可以轻松承载千万以上贴子,千人在线的大型论坛。性能作为评判论坛好坏的一种因素,我们在这方面做了众多努力,致力于以最少的资源换取最有效的功能保障。

  YUZI Studios从开发了中国第一款BBS程序--YUZIBBS 到 BBS2000 到 BBS3000到现在的BBSXP在技术力量方面一直处于领先地位,从Perl语言到ASP语言,累计了8年的开发经验及历史,在性能方面的考量均是非常专业完善,对一些花俏的功能均不会出现在BBSXP。一套论坛系统该拥有的就是专业、快速、稳定。

  vBulletin

  vBulletin 是一个强大,灵活并可完全根据自己的需要定制的论坛程序套件。它使用目前发展速度最快的 Web 脚本语言编写: PHP,并且基于以高效和疾速著称的数据库引擎 MySQL。

  vBulletin 是世界上用户非常广泛的PHP论坛,很多大型论坛都选择vBulletin作为自己的社区。vBulletin高效,稳定,安全,在中国也有很多大型客户,比如蜂鸟网,51团购等在线上万人的论坛都用vBulletin。

  vBulletin都官方网站是 http://wwwvBulletincom 它不是免费软件,但价格很底。

  [编辑本段]BBS论坛做好如何推广?

  一、关系推广

  论坛建立之初,网站人气很少,怎么让更多的人聚集到论坛中来,这就需要动员你的亲朋好友,只能能上网会发帖的,统统叫过来,让他们一起帮你宣传,帮你的发发帖,维护论坛,人多力量大,很快就能聚集一些人,还能提高网站的贴子率、信息率。

  二、搜索引擎

  搜索引擎是网民常用的工具之一,每天都有各行各业的网民搜索各种各样的信息,把网站发布到搜索引擎是个不错的方法,不但可以把你的网站被搜索引擎收录,还能从搜索引擎获取流量

  三、资源合作

  通过网站交换广告、内容合作、交换友情链接、用户资源合作等方式,这等要锻炼你的交际能力了,与合作伙伴之间网站访问量资源合作,互为推广,是快速提高网站流量的方法之一。

  四、信息推广

  收集些同行类的网站论坛,可以采比较大,人气旺的论坛、博客,发些专业实用性的内容,在内容尾部写下自己网址的链接,喜欢你发内容的用户会主动点击你的网站,最终就要看你论坛,内容强不强大,专不专业,做好用户体验,提高网站转换率。

  五、网址推广

  不要就看网址推广,很多个人网址的流量是巨大的,目前hao123与265导航很少收录新站了,收录网站的标准极高,“一般站他不收”,所以就要考虑一些小的网址站,他们流量也不小,即使现在小,谁又知道这些网址以后不会不成为NO1呢,这样的网站可以在Baidu搜索“网址导航”收集,找到一些很强大的个人导航站,自己慢慢分析提交吧。

  六、口碑推广

  在网站怎么实现口碑推广,就要利用常用的通讯工具,如QQ、MSN、UC等,可以采取文字介绍加网址的形式,发送给朋友,聊天群等。还可以去一些相关的百度贴吧以交流信息的目的发些内容。

  七、网摘推广

  网摘推广最简便的推广方式之一,用户喜欢的文章会把它搜藏到一些网络收藏夹当中,无形之中,帮你推广了网站。你要做的只是每页代码中加入网摘插件代码,即可。如果你的网站还可以RSS格式,那加入RSS订阅代码,还能从一些RSS网站、RSS浏览器中获取流量。如大旗网、奇虎网等。还有种方法就是把信息发到一些顶客、奇客、极客类网站,相当于你网站内容免费放置了广告位,效果也不错。

最近小米的销量成绩喜人,超越苹果挤进全球第二,摸到三星的尾巴。

在欧洲市场,小米甚至拿下了销量第一,把三星和果子哥两大巨头压了下去。

而两天MIX 4的销售额又一秒破3亿。

再加上小米11 Ultra那台“影像新物种”的成功,仿佛小米的高端梦已经成了。

不过在小雷看来嘛,这高端路是成功了,但又没有完全成功。

一方面,小米10系列的推出让小米成功冲击高端,配置均衡水桶的小米10和影像拉满的小米10至尊纪念版都广受好评。

但另一方面,硬件堆满的手机却拖着个无比拉胯的MIUI 12,软件体验十分难顶。

掉帧卡顿和bug频出的问题,即使到了MIUI 125也没能解决。

这其实和如今小米社区混乱的氛围有很大关系。

大伙瞅一眼TOP建议就知道了,增加90Hz刷新率、超级壁纸息屏支持显示步数信息

MIUI连系统基本的稳定流畅都没搞定,用户还有心思提这些建议啊?

很显然,MIUI官方也意识到了社区的问题所在。

因为之前内测门槛太低,导致大量小白用户涌入,整个社区充斥着大量无效提议和反馈。

所以前段时间小米社区新版上线,就是为了解决这个问题。

伴随着新版而来的,还有极其严苛的内测机制。(点这里了解)

但现在看来,这个机制不仅没有解决问题,反而让MIUI的口碑更加崩坏。

前两天,一大批米粉突然被踢出开发版内测和公测,简直是大范围无差别杀伤。

小到新用户,大到十年米粉,无一幸免。

连小雷一个手握小米11至尊纪念版的朋友都被踢了,而且内测分从300分变成7分,场面极其残忍。

内测门槛高点很正常,毕竟更新频率快,系统并不稳定,适合会搞机的极客。

但每周五的开发版公测也要300以上内测分才能申请,未免有点过分了。

MIUI每周五的开发版可是祖传特色,从橙色星期五诞生开始,开发版公测就是大多数年轻米粉的第一选择。

毕竟稳定版更新太慢,新功能稀少,而开发版既能尝鲜,又不失系统稳定。

很多米粉都是拿到机子就升级开发版公测的,结果现在的一刀切操作,让很多米粉直接破防

在B站上甚至有个 八年米粉声泪俱下,控诉MIUI开发版踢人。

小雷看过完整视频,他不仅被踢出开发版公测和内测,连积攒了很久的内测分都被瞬间清空

这事儿发生后,米粉们自然忍不了,全跑去雷军和MIUI官方微博控诉。

有人脱口而出,直接表示小米社区完了。

还有人情绪激动,把816称为踢粉节,指责MIUI不修BUG,只顾着踢人。

这些话听起来听起来确实很伤人。

但说实话,被踢出开发版公测和内测,对于用户来说伤害更大。

没有开发版权限后,用户就再也不能收到升级了,只能自行回到稳定版等待更新。

而开发版和稳定版的互换是要清除数据的,这不是给用户徒增麻烦吗?

再说了,踢人归踢人,怎么顺便把用户原有的内测分给清了呢?

不管往哪个角度想,MIUI都很难作出合理的解释。

因为这次的做法实在是太唐突了,活生生给用户造成困扰。

好在经过用户一晚上的痛骂后,MIUI终于把内测机制进行新一轮修改。

用户失去的内测分和开发版公测权限,很快就被官方一并归还。

有一说一,内测分的损失可以弥补,但口碑是很难短时间挽回的。

至于最近的这一连串操作,在小雷看来也只是MIUI体验下滑和口碑崩坏的导火索。

真正的炸弹,在MIUI论坛被合并的时候就埋下了。

如果是这两年才开始使用小米手机的小伙伴,可能不知道miui以前是有两个社区的。

一个是 MIUI论坛,另一个则是小米社区。

两个社区面向的人群也有明确的区分,MIUI论坛主要面向具有刷机能力的搞机发烧友。

里面大佬云集,技术氛围浓厚,即使是小白用户也能快速学会刷机。

除此以外,MIUI论坛几乎没有水贴,帖子大多数是ROM体验报告、玩机教程、软件分享和BUG反馈建议。

因为里面搞机大神很多,对MIUI提出的建议往往也是一针见血的,对开发组价值特别高。

比如一些新硬件的动向和用户对新机的体验理解。

其实手机厂商一般只会运营一个社区,但小米比较特殊,因为小米最早是靠MIUI起家的。

所以MIUI在当时的地位和权重非常高。

为了不打扰MIUI论坛原有用户群,小米特意另外建立了小米社区。

给不搞机的广大用户提供一个讨论的地方。

不过,两个社区分开运营的做法,在小米的不断发展之下,显得有些割裂了。

一是因为MIUI不再适配第三方机型,很多“外来友人”就失去了逛MIUI论坛的动力。

二是随着小米的新机越来越多,小米社区就需要花费很多精力去维护,MIUI论坛反而显得不那么重要了。

后来的结果大家都知道了,MIUI社区合并到小米论坛,原有的帖子被大量屏蔽。

说是合并,其实从实际意义上来看更像是取代。

因为在大量小白用户的社区里,MIUI论坛那小部分刷机用户根本没啥空间继续搞机。

原来在MIUI论坛混的那批大神,自然也另找出处,转移到酷安、微博和QQ群安家。

嗯,现在的酷安还真有点像以前的MIUI论坛,同样搞机大佬云集,同样小米用户众多。

小米社区合并后,反馈建议很快就变得不灵通了,因为用户实在是太多了。

很多小白遇到的问题可能根本不是bug,但他们还是会提交反馈,滥用反馈渠道。

到了MIUI 12这个最拉胯版本,更是让小米社区的问题被无限放大。

小凡在发布会上把MIUI 12吹得太美好了,很多米粉看完发布会就去抢首发。

而且那时候的内测还是随便进的,导致了很多小白抱着满腔热情进入内测。

结果呢MIUI 12各种掉帧,动不动就搞点bug恶心用户,体验差的一批。

这还不是最糟糕的,因为稳定版更新实在太慢了,用户只能争相涌入内测,以求自己的系统问题能尽快被解决。

这大概就是MIUI“稳定版不如开发版稳定”的由来。

随着小白用户不断进入内测,小米社区的隐患也越来越大了。

每天都有成千上万个反馈和建议立案,但从来不见解决方法,今天立的案,下个月依然摆在那。

解答组每日奔波于各种奇葩问题,稳定版两个月才更新一次,能不被骂就怪了。

急切想解决这些问题的小米,在前段时间就推出了小米社区30版本。

说是社区,小雷觉得更像是小米商城+资讯App,只是刚好附带了内测申请和bug反馈功能。

内测机制、App排版都是满满的槽点,多的就不说了。

总之一个社区想要有良性发展,就不能没有那一小部分会搞机的大神。

光靠这些解答组去回答奇葩问题,效率真的会很高吗?

看看人家酷安是怎么玩的,根本不用官方控场,小白用户想刷机,自然会有大佬愿意引导。

有啥不懂的问题,也多的是热心用户解答,你甚至可以在酷安找到MIUI的官方工程师

MIUI本来就是互联网开发模式,它特别依赖发烧友的反馈和建议,但现在小米社区又有多少发烧友呢?

也许从MIUI论坛倒下的那一天,MIUI就注定会走下坡路。

至于啥时候能走出来,就要看MIUI接下来的改动了。

小米手机播放音乐时锁屏页面可以设置音频可视化效果,这是用OpenGL绘制出来的,我们来实现一下。

首先简单分析一下原理:

图形的每一行代表一个声音片段,它就是一个一维数组,按照数值大小绘制不同的高度,就形成了一条“山脉”;获取到下一个声音片段后,将它绘制到下面一行,然后画面整体向上滚动就可以了。整体类似于绘制一张游戏里常见的3D地形图。

创建一个MediaPlayer,它可以直接读取res/raw里面的音频文件,start()开始播放

Visualizer是Android SDK里面提供的音频分析工具,它可以直接获取播放的音频的波形和频谱。onWaveFormDataCapture回调方法里返回的是原始的PCM波形数组,onFftDataCapture回调方法里返回的是经过快速傅里叶方法转换后的声音频谱数组,数组的第一位是直流分量,后面是不同频率的数值。

每次获取到的是一组声音数据,将它传给Render绘制。

首先确定图形的长宽,宽度w其实是由每组音频的数组长度决定,可以由VisualizergetCaptureSizeRange()[0]获取,这里获取的是最小的数组,也可以用VisualizergetCaptureSizeRange()[1]获取最大的数组;长度h可以自己设置想展示多长。

绘制地形图也就是绘制w h 2个三角形,创建vao、vbo和ebo,由于顶点的位置都是固定的,可以在顶点着色器中用gl_VertexID获取,所以vbo里面不用传顶点数据,直接传声音数组。

由于图形是不断刷新最后一行并向上滚动的,那么需要使用一个队列,为了每一帧数据改变最小,不至于进行大量的数组复制和移动。我们 用ByteBuffer vertexBuffer模拟一个循环队列,使用一个行号int lineNum来标记队列的头部。每添加一行数据后,lineNum会加上w,这样ByteBuffer分成了两部分:lineNum w之后的是新旧数据,之前的是旧数据

现在我们需要将数据从主内存(vertexBuffer)复制到GPU显存(vbo)。vertexBuffer里是一个循环队列,而vbo里面只能顺序保存(因为ebo序号是顺序的,vbo不是顺序图形就会错乱),更新vbo数据缓存的glBufferSubData方法支持设置偏移位置部分更新。那么我们 先将vertexBuffer定位到lineNum w,将它后面的旧数据复制到vbo的前面;然后将vertexBuffer定位到0,将剩下的新数据复制到vbo的后面 。这样就保证了绘制时从上到下,从旧到新。

为了让颜色更丰富,这里用了地形图中常用的热度渐变色数组。

理论上音频数值是unsigned byte格式的,但是着色器不支持byte格式,我直接用int vPosition接收数据,然而数值范围不再是0~255了,这有点奇怪,我没有深入研究。简单测试了一下,发现取int的前8位,再进行一点比例缩放,用它去渐变色数组里取颜色,会取得较好的显示效果。

顶点着色器

shader_audio_vglsl

将颜色传给片段着色器显示

shader_audio_fglsl

最终效果如下图,录屏设置的码率比较低,实际上是很清晰的。

完整项目在 SurfacePaint 项目下的 opengles3 模块里的audio。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 什么是BBS?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情