當前位置:首頁 » 雲伺服器 » 搭建rtsp伺服器

搭建rtsp伺服器

發布時間: 2022-03-01 18:51:50

『壹』 如何用vlc搭建rtsp伺服器

  1. 打開「媒體——流」選項

  2. 點擊「添加」按鈕選擇流媒體文件,然後點擊「串流」按鈕

  3. 點擊「下一個」後,在「目標設置」界面選擇「RTSP」,然後點擊添加 + 按鈕

  4. 填上目標ip地址,並在「轉碼選項」中選擇相應的編碼類型(這個視情況而定),目標IP地址就是PC機器本機的IP地址

  5. 客戶端, 點擊「媒體——打開網路串流」,在彈出的框中輸入「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」按鈕解鎖。

熱點內容
壓縮某個文件夾 發布:2024-11-15 09:03:11 瀏覽:891
網址能解壓嗎 發布:2024-11-15 08:54:09 瀏覽:933
python更改目錄 發布:2024-11-15 08:41:08 瀏覽:265
伺服器快閃記憶體可以裝在一般電腦上嗎 發布:2024-11-15 08:36:46 瀏覽:8
安卓手機怎麼查詢自己的路線軌跡 發布:2024-11-15 08:32:19 瀏覽:969
phpdatet 發布:2024-11-15 08:32:17 瀏覽:507
HDB3編解碼實驗 發布:2024-11-15 08:17:31 瀏覽:212
怪星球編程 發布:2024-11-15 08:15:55 瀏覽:844
慧編程價格 發布:2024-11-15 08:14:09 瀏覽:459
python多行注釋的快捷鍵 發布:2024-11-15 08:09:14 瀏覽:957