美萍VOD是怎么实现不用网络共享而完成点播的呢?
就是不明白,视频文件是怎样传到客户端的。
就是不明白,视频文件是怎样传到客户端的。
解决方案 »
- 一个关于VB的小问题
- 急救:希伯来语在access中变成了问号???
- 修改控件的GUID的工具
- 如何得到字符串占的象素高度和象素宽度?
- 求:给出任意会员ID,计算出其下级人数,及包含的级数?SQL语句及实现?
- VB如何制作Service程序??高手不要错过!!高分请教
- 我的系统没了管理员身份,怎么添加?
- 怎样用VB通过FAX/MODEM接收、发送传真图象?各位高手帮帮忙了!!!
- 好了,我下了,机是没死,我快热死了.明天送分哦..
- 透明FORM如何使LABEL控件显示?
- 怎么同时选中窗口中的所有控件,和同类型的控件(如:选中所有的text控件)???
- 防火墙软件断开网络连接是怎么实现的?用VB+API可以实现吗?
· Standard Pull Model (exists in previous version of the driver) - Driver asks for data when it is needed. When no data is available, the drivers just wait until the application gives a new buffer.In the case of buffered streams, the user is responsible for providing valid data.
Use the open command (FMP_OPEN with the flag FMPF_BUFFERS, pg.Error! Book not defined.) to open a buffered stream.
If a callback function is installed for the driver, it will be called with the FMPF_BUF_CREATE message with the parameter you gave with FMP_OPEN. (If no callback function is defined for the stream initially, then FMPF_BUF_CREATE message will be sent once the callback function is installed .)A buffered stream will use a buffer in user’s application. No copy of buffer data will be made, so user should be careful not to overwrite data not yet read from the buffer. A buffer is a segment of linear memory anywhere in the physical memory space. You give the driver the address, the size, the mode of access of your buffer, by using FMP_SET command. You can use the FMP_GET command to get status as to how many bytes are left (or have not been read) in the buffer. The driver uses a message (see callback function) to tell the user when all of his buffer has been read (FMPM_BUF_EMPTY). At this time, you can use the FMP_SET command to give new buffer parameters to the driver. If the user decides to ignore the callback message, the buffer will be read again from the start if the flag FMPF_BUF_LOOP is set in FMPI_BUF_MODE.You can specify a position that will generate a FMPM_BUF_POS message. This can be used to implement a FIFO or to begin preparing data for a ping pong buffer. For example, your buffer has a size of 10kb. You can tell the driver to signal when there are less than 1kb left in the buffer ( pos=1024 ). The message FMPM_BUF_POS will be issued when the position is r7eached. (see Callback functions). If you write a zero value for the size, the driver will assume the stream has ended and will then set the size of the stream.The callback function can receive the message FMPM_BUF_SEEK indicating that your next packet of data will have to start at the given offset (specified in bytes) within your stream file.You don't need to pre-fill your buffers, because at the beginning, the FMPM_BUF_POS message (when you normally prepare the next buffer) will be sent before the FMPM_BUF_EMPTY (where you give a prepared buffer).With the messages defined, you can manage your buffers inside the callback function, without external initialization or destruction or pre-fill. Moreover, streams have a user information field FMPI_STM_USER that you can use to store information about the streams buffers, so you can use this and a single callback function for all your streams.
基本上可以分为编码端(服务器)和解码端(客户端),底层开发的话可以去他们官方网站上下载SDK
再推荐一个关于流媒体技术网站http://www.liumeiti.com (流媒体中国)
Mdeia System http://www.microsoft.com/windows/windowsmedia/default.aspx
Real http://www.real.com
QuickTime http://www.apple.com/quicktime
组播就是用来1对多进行播放的。
具体的你可以看计算机网络中关于组播的介绍和实现方法,或者看下面的地址
http://www1.baidu.com/baidu?tn=baidu&ct=0&ie=gb2312&bs=rm%B5%C4tag&sr=&z=&cl=3&f=8&word=%D7%E9%B2%A5%B5%C4%D4%AD%C0%ED