搭建rtsp服务器
‘壹’ 如何用vlc搭建rtsp服务器
打开“媒体——流”选项
点击“添加”按钮选择流媒体文件,然后点击“串流”按钮
点击“下一个”后,在“目标设置”界面选择“RTSP”,然后点击添加 + 按钮
填上目标ip地址,并在“转码选项”中选择相应的编码类型(这个视情况而定),目标IP地址就是PC机器本机的IP地址
客户端, 点击“媒体——打开网络串流”,在弹出的框中输入“rtsp://192.168.1.2:1234/tcp1”,点击“播放”按钮即可。
‘贰’ 如何在win2008中搭建rtsp流媒体服务器
用Helix Server做流媒体服务器,搭建过程先参考下http://wenku..com/link?url=uWcq___,如果不成功,后期我会在csdn上写篇博客,到时候把链接发给你。我搭过很多流媒体服务器,这个就是专门支持rtsp协议的,视频格式为rmvb或rm,音频格式为ra,就是用helix server做流媒体服务器,helix procer plus做视音频编码器,realplayer做客户端播放器,这三个组合起来使用,配置通畅就好了,那么都和你说了用哪些软件了,其实网上都能搜到相关软件的使用说明了,不懂的再问我吧!
‘叁’ 怎么实现最小的RTSP服务器
亲 很高兴为你解答 以下答案有道友提供
//////rtsp.c//////
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <memory.h>
#include <errno.h>
#include <netdb.h>
#include <time.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h> //close()
#include "h264.h"
//#define DEST_PORT 8888
typedef struct
{
int startcodeprefix_len; //! 4 for parameter sets and first slice in picture, 3 for everything else (suggested)
unsigned len; //! Length of the NAL unit (Excluding the start code, which does not belong to the NALU)
unsigned max_size; //! Nal Unit Buffer size
int forbidden_bit; //! should be always FALSE
int nal_reference_idc; //! NALU_PRIORITY_xxxx
int nal_unit_type; //! NALU_TYPE_xxxx
char *buf; //! contains the first byte followed by the EBSP
unsigned short lost_packets; //! true, if packet loss is detected
} NALU_t;
FILE *bits = NULL; //!< the bit stream file
static int FindStartCode2 (unsigned char *Buf);//查找开始字符0x000001
static int FindStartCode3 (unsigned char *Buf);//查找开始字符0x00000001
//static bool flag = true;
static int info2=0, info3=0;
RTP_FIXED_HEADER *rtp_hdr;
NALU_HEADER *nalu_hdr;
FU_INDICATOR *fu_ind;
FU_HEADER *fu_hdr;
/**
int sock_init(int sockfd,struct sockaddr_in addr,int SERVER_PORT)
{
sockfd=socket(AF_INET,SOCK_DGRAM,0);
if(sockfd<0)
{
fprintf(stderr,"Socket Error:%s\n",strerror(errno));
exit(1);
}
printf("sockfd is %d\n",sockfd);
bzero(&addr,sizeof(struct sockaddr_in));
addr.sin_family=AF_INET;
addr.sin_addr.s_addr=htonl(INADDR_ANY);
addr.sin_port=htons(SERVER_PORT);
if(bind(sockfd,(struct sockaddr *)&addr,sizeof(struct sockaddr_in))<0)
{
fprintf(stderr,"Bind Error:%s\n",strerror(errno));
exit(1);
}
printf("init successfel!!\nport is %dsockfd is %d\n",SERVER_PORT,sockfd);
return 0;
}
*/
char* sock_recv(int sockfd,struct sockaddr *addr_client,int *addrlen)
{
//int *tem_len = &addrlen;
socklen_t len;
printf("sock_recv sockfd is %d\n",sockfd);
char *recv_buffer = malloc (sizeof (char));
//printf("sock_recv sockfd is88888888888888 %d\n",sockfd);
int n;
n=recvfrom(sockfd,recv_buffer,256,0,addr_client,&len);
//printf("recv number is %d\n",n);
if(0)
{
printf("recvfrom error!\n");
exit (1);
}
if(-1==n)
{
perror("recv error:");
}
else
{
addrlen=(int *)len;
printf("sock recv success!!\n");
/** char IPdotdec[20]; //存放点分十进制IP地址
struct in_addr s =
inet_ntop(AF_INET, (void *)&s, IPdotdec, 16);
printf("addr_client.data=%s\n",IPdotdec);
*/ printf("addr_len=%ld\n",addrlen);
}
return recv_buffer;
}
//为NALU_t结构体分配内存空间
NALU_t *AllocNALU(int buffersize)
{
NALU_t *n;
if ((n = (NALU_t*)calloc (1, sizeof (NALU_t))) == NULL)
{
printf("AllocNALU: n");
exit(0);
}
n->max_size=buffersize;
if ((n->buf = (char*)calloc (buffersize, sizeof (char))) == NULL)
{
free (n);
printf ("AllocNALU: n->buf");
exit(0);
}
return n;
}
//释放
void FreeNALU(NALU_t *n)
{
if (n)
{
if (n->buf)
{
free(n->buf);
n->buf=NULL;
}
free (n);
}
}
void OpenBitstreamFile (char *fn)
{
if (NULL == (bits=fopen(fn, "rb")))
{
printf("open file error\n");
exit(0);
}
printf("test264 open successful!\n");
}
//这个函数输入为一个NAL结构体,主要功能为得到一个完整的NALU并保存在NALU_t的buf中,获取他的长度,填充F,IDC,TYPE位。
//并且返回两个开始字符之间间隔的字节数,即包含有前缀的NALU的长度
int GetAnnexbNALU (NALU_t *nalu)
{
int pos = 0;
int StartCodeFound, rewind;
unsigned char *Buf;
if ((Buf = (unsigned char*)calloc (nalu->max_size , sizeof(char))) == NULL)
printf ("GetAnnexbNALU: Could not allocate Buf memory\n");
nalu->startcodeprefix_len=3;//初始化码流序列的开始字符为3个字节
if (3 != fread (Buf, 1, 3, bits))//从码流中读3个字节
{
free(Buf);
return 0;
}
info2 = FindStartCode2 (Buf);//判断是否为0x000001
if(info2 != 1)
{
//如果不是,再读一个字节
if(1 != fread(Buf+3, 1, 1, bits))//读一个字节
{
free(Buf);
return 0;
}
info3 = FindStartCode3 (Buf);//判断是否为0x00000001
if (info3 != 1)//如果不是,返回-1
{
free(Buf);
return -1;
}
else
{
//如果是0x00000001,得到开始前缀为4个字节
pos = 4;
nalu->startcodeprefix_len = 4;
}
}
else
{
//如果是0x000001,得到开始前缀为3个字节
nalu->startcodeprefix_len = 3;
pos = 3;
}
//查找下一个开始字符的标志位
StartCodeFound = 0;
info2 = 0;
info3 = 0;
while (!StartCodeFound)
{
if (feof (bits))//判断是否到了文件尾
{
nalu->len = (pos-1)-nalu->startcodeprefix_len;
memcpy (nalu->buf, &Buf[nalu->startcodeprefix_len], nalu->len);
nalu->forbidden_bit = nalu->buf[0] & 0x80; //1 bit
nalu->nal_reference_idc = nalu->buf[0] & 0x60; // 2 bit
nalu->nal_unit_type = (nalu->buf[0]) & 0x1f;// 5 bit
free(Buf);
return pos-1;
}
Buf[pos++] = fgetc (bits);//读一个字节到BUF中
info3 = FindStartCode3(&Buf[pos-4]);//判断是否为0x00000001
if(info3 != 1)
info2 = FindStartCode2(&Buf[pos-3]);//判断是否为0x000001
StartCodeFound = (info2 == 1 || info3 == 1);
}
// Here, we have found another start code (and read length of startcode bytes more than we should
// have. Hence, go back in the file
rewind = (info3 == 1)? -4 : -3;
if (0 != fseek (bits, rewind, SEEK_CUR))//把文件指针指向前一个NALU的末尾
{
free(Buf);
printf("GetAnnexbNALU: Cannot fseek in the bit stream file");
}
// Here the Start code, the complete NALU, and the next start code is in the Buf.
// The size of Buf is pos, pos+rewind are the number of bytes excluding the next
// start code, and (pos+rewind)-startcodeprefix_len is the size of the NALU excluding the start code
// 不管有没有再次读到 头 ,其主要 关心的还是 nalu->len
nalu->len = (pos+rewind)-nalu->startcodeprefix_len;
memcpy (nalu->buf, &Buf[nalu->startcodeprefix_len], nalu->len);//拷贝一个完整NALU,不拷贝起始前缀0x000001或0x00000001
nalu->forbidden_bit = nalu->buf[0] & 0x80; //1 bit
nalu->nal_reference_idc = nalu->buf[0] & 0x60; // 2 bit
nalu->nal_unit_type = (nalu->buf[0]) & 0x1f;// 5 bit
free(Buf);
return (pos+rewind);//返回两个开始字符之间间隔的字节数,即包含有前缀的NALU的长度
}
//输出NALU长度和TYPE
void mp(NALU_t *n)
{
if (!n)return;
//printf("a new nal:");
printf(" len: %d ", n->len);
printf("nal_unit_type: %x\n", n->nal_unit_type);
}
希望能帮助你
‘肆’ 如何在win10中搭建流媒体服务器搭建
使用IIS在win 2003 sever上配置免费流媒体服务器第一步:通过任务栏的“开始->管理工具->internet信息服务管理器”第二步:启动INTERNET信息服务管理器设置窗口后在“网站”下将默认网站删除。然后在“网站”上点右键选择“新建->网站”。第三步:启动网站创建向导,开始建立一个新的网站。第四步:网站描述处输入softer给站点起一个名,当然你也可以随便起一个。第五步:IP地址和端口设置窗口中的“网站IP地址”处设置为“全部未分配”,网站TCP端口默认为80,我们可以对其进行修改,例如设置为554。(HELIX使用的是554,这样可以迷惑非法入侵者以为该流媒体服务器使用HELIX建立的,从而降低被攻击的可能性。)网站主机头为空后“下一步”继续。 第六步:在设置网站主目录处通过“浏览”按钮修改路径,这个路径就是我们开放视频文件的目录。第七步:网站访问权限设置为“读取”后下一步继续。第八步:完成网站创建向导。第九步:完毕后我们就可以看到在“网站”下出现了一个名为softer的虚拟目录了,该目录下文件都出现在IIS设置窗口的右边。通过上面九步建立完流媒体服务器后就可以访问了。访问的方法有四种。(1)直接文件下载法:和以往的方法类似,通过“ 10.91.30.45:554/文件名.rm”来下载该文件。对应的文件会保存到本地计算机,下载完毕后我们再运行视频工具查看。这个方法等同于不建立流媒体服务器。(2)修改连接法:由于所有文件都是以“ 10.91.30.45:554/文件名.rm”的方式存放在服务器上的,所以当我们知道“ 10.91.30.45:554/文件名.rm”这个地址后对其进行修改,改为如下格式—“ rtsp://10.91.30.45:554/文件名.rm”。这样就会自动调用视频工具查看该文件了,边下载边浏览,省去了下载该文件的操作,这点相当于流媒体服务器的作用。 (3)地址直接访问法:我们知道了某文件的地址例如“ 10.91.30.45:554/文件名.rm”,那么直接在视频工具中“打开”该地址即可。输入“ 10.91.30.45:554/文件名.rm”后视频工具将自动边下载边浏览该文件。 (4)权限开启法:(不推荐) 在建立该网站设置权限处,将“浏览”和“运行”权限给普通用户,这样用户访问该站点就可以直接运行相应的文件了。不过此方法容易带来安全问题,一般用户都可以随便删除修改在服务器上的视频文件,甚至是其他系统必须文件。
‘伍’ nginx能建立rtsp服务器么
我没用过这个服务器,我用的是小鸟云服务器。
‘陆’ 如何实现最小的RTSP服务器
RTSPServer类用于构建一个RTSP服务器,该类同时在其内部定义了一个RTSPClientSession类,用于处理单独的客户会话。
首先创建RTSP服务器(具体实现类是DynamicRTSPServer),在创建过程中,先建立Socket(ourSocket)在TCP的554 端口进行监听,然后把连接处理函数句柄(RTSPServer::incomingConnectionHandler)和socket句柄传给任务调度器(taskScheler)。
任务调度器把socket句柄放入后面select调用中用到的socket句柄集(fReadSet)中,同时将socket句柄和 incomingConnectionHandler句柄关联起来。 接着,主程序开始进入任务调度器的主循环(doEventLoop),在主循环中调用系统函数select阻塞,等待网络连接。
当RTSP客户端输入( rtsp://192.168.0.1/1.mpg)连接服务器时,select返回对应的scoket,进而根据前面保存的对应关系,可找到对应处理函数句柄,这里就是前面提到的incomingConnectionHandler了。在 incomingConnectionHandler中创建了RTSPClientSession,开始对这个客户端的会话进行处理。
‘柒’ linux怎么架设RTSP流媒体服务器
Linux下利用gnump3d架设流媒体服务器
库文件被安装到:/usr/lib/perl5/5.8.6/gnump3d目录
man被安装到:
/usr/man/man1/gnump3d.1
/usr/man/man1/gnump3d-index.1
/usr/man/man1/gnump3d-top.1
/usr/man/man1/gnump3d.conf.1
3、配置
gnump3d的配置文件被存放在/etc/gnump3d/gnump3d.conf ,我们可以对配置文件进行修改。
gnump3d的themes被存放在/usr/share/gnump3d/目录中,所以要想换theme,可以在 gnump3d.conf中指定。
媒体文件存放在目录gnump3d.conf中,是/home/mp3 ,您也可以改为您媒体文件的目录,或者在/home中建一个mp3目录,把所有的媒体文件拷过去。
4、运行gnump3d流媒体服务器
[root@localhost gnump3d-2.9.5]# gnump3d&
或
[root@localhost gnump3d-2.9.5]# gnump3d2&
5、访问gnump3d流媒体服务器
访问地址是:http://localhost:8888/ ,您也可以让局域网的其它电脑来访问,当然要把localhost改为您的机器的IP地址,举例来说,如果您的流媒体服务器所在电脑的IP是192.168.1.6 ,那么,局域网访问地址应该是:
http://192.168.1.6:8888
对属性的配置页面:
http://localhost:8888/prefs/
6、汉化theme让界面变成中文
‘捌’ live555中是怎样创建rtsp服务器的
可以保存下来的 你发的这个网址本身就是一个音乐的链接地址
直接在迅雷中 新建—普通/emule任务 然后把你的这个网址放进去就可以下载的
很简单的
‘玖’ 如何在手机内部搭建rtsp服务器
package org.zhangkai.postdata;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.URL;
import java.net.UnknownHostException;
import org.apache.http.protocol.HTTP;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
public class postActivity extends Activity implementsRunnable{
Button btn ;
final String SERVER = "127.0.0.1";
final int PORT = 1560;//在手机内部,端口号可以随便用,除了有固定用途的端口,比如80
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn = (Button)this.findViewById(R.id.send);
btn.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
try {
Socket socket = new Socket (SERVER,PORT);
OutputStream mOutput = socket.getOutputStream();
mOutput.write("test".getBytes());
mOutput.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
});
new Thread (this).start();
}
public void run() {
try {
ServerSocket server = new ServerSocket (PORT);
System.out.println("start accept....");
Socket socket = server.accept();
InputStream mInput = socket.getInputStream();
byte[] data = new byte[1400];
int length = mInput.read(data);
System.out.println("data:"+new String (data,0,length));
} catch (IOException e) {
e.printStackTrace();
}
}
}
‘拾’ 请问如何架设Windows Media Play 流媒体服务器啊
所谓流媒体技术,是指将连续的影像和声音信息经过压缩处理后放在网站服务器上,让用户能够一边下载一边观看、收听(即所谓的“在线欣赏”),而不需要等整个压缩文件下载到自己的机器上才可以欣赏的网络传输技术。目前,在这个领域中的竞争者主要有微软、RealNetworks、Apple三家公司,例如微软新近发布了Windows Media Services 9、RealNetworks公司新近发布的Helix Platform、Apple新近发布的Darwin streaming server 4.1,意图在流媒体领域大干一场。
一般来说,一个完整的流媒体服务系统需要三个部分组成:编码器、流服务器和播放器。编码器通过对内容来源(如MP3文件或者麦克风输入)进行编码,并将编码过的内容发送到流服务器;流服务器再将它们发布到Internet,这样客户端的播放器只要连接到流服务器就可以进行在线播放了。
利用Winamp架设MP3网络电台
当我们静静地在欣赏美妙的MP3音乐时,你是否曾经考虑过将这些原本属于个人的MP3音乐通过网络在局域网内进行发布,甚至还可以通过Internet进行发布?这样就可以让遍布世界的朋友们与你一起共享MP3音乐之旅。其实,要做到这一点并不难,你只要将本机创建为一台MP3流媒体服务器,将自己所喜爱的MP3音乐不停播放,然后通知朋友们访问你的这台MP3服务器就可以了。
说起MP3的播放,使用最广泛的莫过于Winamp了。对于MP3流媒体服务这个领域,Winamp的开发者Nullsoft公司当然不会放弃,专门发布了面向MP3的流服务器SHOUTcast Server。虽然它的功能没有Windows Media Server和Real Server强大,但它不仅对硬件的要求极低,更关键的是完全免费,使用起来没有后顾之忧。另外你还需要下载一个名为SHOUTcast DSP Plug-in的插件,只有安装了这个不起眼的插件,Winamp才能支持流媒体服务。
首先打开Winamp(请注意版本号必须在2.22以上),切换到“Options” | “Preferences”| “DSP/Effect”标签页,选中“Nullsoft SHOUTcast Source DSP v1.8.2a[dsp_sc.dll]”下的“Configure”按钮。打开“SHOUTcast Source”窗口,选择“Output”标签页,如图1所示,在“Address”栏内填入本机的IP地址。如果你想在Internet上广播MP3音乐,则必须键入本机的外部IP地址,然后就可以从程序组中运行SHOUTcast DAAS(GUI)程序以启动SHOUTcast服务。这时系统会自动连接到http://yp.shoutcast.com服务器,接下来请返回图1窗口点击“Connect”按钮。如果连接成功,该按钮会变为“disconnect”字样,这样我们就完成了在本机架设MP3流服务器的全部过程。
架设REAL格式的视频点播中心
如果是架设视频点播服务器,那么选择Real格式是非常明智的。因为RealProcer Plus这款功能强大的软件操作相当简单,每次使用时会弹出一个向导对话框进行操作提示。目前最新版本是10.0,我们只要选择8.5.1以上的版本即可。
从“工具”菜单下选择“创建网页”命令,此时会弹出一个如图2所示的向导式对话框,点击“前进”按钮选择你希望用于创建Web页面的Real多媒体文件。随后RealProcer会询问是创建“弹出式播放器”还是“嵌入式播放器”,一般建议选择后者,因为这样所需要的系统资源更低,当然启动速度也更快。至于播放器的界面,可以选择“标准播放器”,很快就可以创建成功。
最后,RM文件对象所在的目录会增加一些文件,请将这些文件与RM对象一起上传,不过要注意保证RM文件与HTML文件在同一目录下,否则播放器可能无法找到播放对象。
架设WMP流媒体服务器
微软的手伸得很长,什么领域都要插足一下。凭借着Windows操作系统的影响力,Windows Media Player市场占有率越来越高,而微软的*.asf、*.wmv、*.wma、*.avi等格式也开始被越来越多的用户所接受。
架设WMP流媒体服务器,你需要安装Windows Media Encoder才行,目前最新版本是9.0简体中文版。如图3所示,我们应该在这里选择“广播实况事件”,接着选择用来编码的音频和视频设备。注意请事先将音频和视频设备与计算机正确连接,否则会无法检测到。接着你还需要指定服务和发布点,当然也可以使用现有的发布点。然后Windows Media Encoder会自动创建服务器,并给出HTTP连接地址与局域网内部地址,请记住这些内容,最后点击“开始”按钮正式启动WMP流媒体服务器。
接下来,我们就可以将刚才记下的HTTP连接地址与局域网内部地址告诉给朋友们。他们只要打开IE,输入正确的IP地址和端口号,很快就可以访问WMP流媒体服务器。
架设QT流媒体服务器
平时,我们见到的大多是打造MWF(矢量地图窗口文件,Map Window File)或RM流服务器,可是你可知道QuickTime(以下简称QT)流媒体服务器应该如何来打造吗?其实,借助苹果的QuickTime Streaming Server工具,我们可以在短时间内快速打造出一台QT流服务器。
首先我们要准备一些工具,QuickTime媒体播放工具当然是必不可少的。目前最新版本是6.5简体中文版,到处都可以找到,或者直接到苹果公司的网站下载,并且需要在服务器和客户端同时安装。Perl语言解析器,最低版本要求是5.0以上。QuickTime Streaming Server与用户见面最早是在1999年,当时以其开放源代码和基于标准的实时传输协议/实时流协议(RTP/RTSP)引擎深深地动摇了流媒体工业的基础,目前的最新版本是5.0,下载文件共9.2MB。
从http://developer.apple.com/darwin/projects/streaming/地址可以免费下载,但你必须拥有Apple的注册用户名才能登录(注册是免费的),这里有Mac OS X、Red Hat、Solaris、Windows NT/2000/XP等版本可供选择。下载回来的是一个自解压文件,释放后执行Install.bat运行安装程序,运行过程在命令提示符窗口中完成,最后还需要设置登录用户名、密码,如图4所示,当看到“Setup Complete!”的提示信息时即大功告成。QT流媒体服务器建设过程和RM类似,在这里就不再赘述。
如何共享音频和视频
共享音频
前面,我们利用Winamp、SHOUTcast Server将本机架设为一台MP3流服务器,那么该如何让遍布天南海北的朋友或局域网中的同事欣赏这些美妙音乐呢?
这有两种方法:一种是打开Winamp,从“Play”菜单下选择“Location”命令,或者直接键入“Ctrl-L”组合键打开一个对话框,然后在这里键入MP3流服务器的URL地址或者IP地址、端口号(缺省为8000),例如“http://192.168.0.1:8000”或者“http://61.277.1.24:8000”即可收听;另一种方法则更为简单,从IE中打开“http://192.168.0.1:8000”进入Web管理页面,如图5所示,然后点击“收听”按钮就可以在线收听MP3流音乐。
共享视频
虽然苹果的QuickTime Player的市场占有率远远不如Real或Windows Media Player,但忠实的用户依然不少。而且苹果毕竟是网络流媒体的开山鼻祖,因此许多最新大片都是采用QT格式。
首先必须在机器上启动QT服务,然后通知朋友们在远程计算机中打开QuickTime。从“文件”菜单中选择“在新的播放窗口中打开URL”命令,键入“rtsp://server/file.mov”来访问QT流服务器以实现远程播放。这里的“server”是服务器的IP地址,“file.mov”是媒体文件名,默认的RTSP传输端口是554端口。如果网络连接没有什么问题的话,如图6所示,那么你很快就可以连接成功。
建立播放列表或点播系统
辛辛苦苦架设了一台流媒体服务器,我们还可以建立播放列表或点播系统,甚至可以进行网络直播,反正已经用上了宽带,不用也是浪费。
配置QT流媒体服务器
打开IE,在地址栏中输入“http://server:1220”,这里的“server”代表服务器的IP地址。如果前面的配置没有什么问题的话,很快就会进入如图7所示的管理页面,这里以列表形式显示了当前的系统资源占用情况和相关的服务器信息。我们可以在这里查看连接到服务器的用户类型、IP地址、数据速率、数据传输量、包丢失比例、连接时间、连接文件等内容,也可以在这里设置映射文件夹、加密传输、最大连接用户数、分配带宽、重置密码、更改端口,如果你需要的话,还可以查看错误日志和操作日志。
创建播放列表
点击图7窗口右侧的“New MP3 Playlist”或“New Movie Playlist”按钮,我们可以创建一个MP3或影片的播放列表。不过这里需要说明的是,你需要将相关的媒体文件复制到C:\Program Files\Darwin Streaming Server\Movies文件夹中才行。
如图8所示,我们可以在这里通过“Weight”旁边的小三角箭头重新调整播放列表的播放顺序,可惜的是QuickTime Streaming Server对简体中文的支持十分差劲,显示的竟然是一些乱码字符。最后,点击窗口右下角的“Save Changes”按钮就可以将这份新建的播放列表保存下来,以后如果需要更改的话可以选择“Edit Playlist”重新配置。
不过,如果你希望其他用户也能访问这份播放列表文件,还必须点击“Avaliable Playlists”列表框中的“Status”下的播放按钮,也就是让“Status”列的“Stopped”变为“Playing”才行。
实现网络直播
如果你还想在播放完MP3歌曲后说上一段话,那么简单的很,只要一个话筒就行了。不过,还需要在Winamp中进行一些设置,如图9所示,在“Input Device”下拉列表框中选择“Soundcard Input”项,这样才会出现图中的SoundCard Mixer设置项。如果使用默认的设置“Winamp(Recommended)”的话就只有Input Levels一项了,下面还有“Music Level”、“BGMusic Level”、“Mic Level”几个滑块可以调节音量的大小,而“Fade Time”是用来设
置移出时间值。
现在,你无需进行其它设置,准备一番后,清清嗓子,点击“Push to Talk”按钮,然后再按下“Lock”按钮锁定当前话音输入模式。接下来就可以对着麦克风开始你的网络直播之旅了,结束请再次按下“Lock”按钮解锁。