Channel.h源代码分析

ChanInfo类:保存频道信息

::String name;
 GnuID id,bcID;
 int  bitrate;
 TYPE contentType;
 PROTOCOL srcProtocol;
 unsigned int lastPlayStart,lastPlayEnd;
 unsigned int numSkips;
 unsigned int createdTime;

 STATUS  status;

 TrackInfo track;
 ::String desc,genre,url,comment;

Channel类:管理具体的频道操作

THREAD_PROC Channel::stream(ThreadInfo *thread)

ChannelMgr类,它完成频道创建、管理、寻找、停止等操作

Channel *ChanMgr::createChannel(ChanInfo &info, const char *mount)

void ChanMgr::findAndPlayChannel(ChanInfo &info, bool keep)

ChannelSource负责具体的流传输工作,其中定义一个虚方法stream由子类PeercastSource、ICYSource、URLSource实现

virtual void stream(Channel *) = 0;

ChannelHit:维持一份与你收听同一个频道的节点的信息

void ChanHit::pickNearestIP(Host &h)

void ChanHit::initLocal(int numl,int numr,int,int uptm,bool connected,unsigned int oldp,unsigned int newp)

ChannelHitList:维持一份ChannelHit列表

ChanHit *ChanHitList::addHit(ChanHit &h)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值