实时流媒体Feng server 安装

2025-10-21 11:21:58

1、此编译依赖如下工具:

glib-2 >= 2.10 

gcc    (my gcc 4.6.3)

g++    (my g++ 4.6.3)

make   (my make 3.81)

libtool (my libtool 2.4.2)

autotools(automake >= 1.9, autoconf >= 2.61) (my automake = 1.11.3, my autoconf = 2.68)

ragel >= 6.6   (my ragel = 6.7)

xsltproc

docbook-xsl-ns

yasm   (my yasm = 1.1.0.2352 )

2、安装AAC 的编解码:

a. install faac-1.28

1. aclocal---->生成 aclocal.m4

2. autoconf---> 生成 configure

5. automake --add-missing

3. autoheader ---> 生成 config.h.in

4. libtoolize --automake --copy --debug --force -----> 生成 ltmain.sh

5. automake --add-missing

6. automake ------> 生成 makefile.in

7. ./configure --prefix=/usr

8. make

9. sudo make install

Note: 如果出现 ".infig.status: error: cannot find input file" 这种错误, 是因为文件格式可能是window, 将其转化一下:

> vim configure.in  

> :set fileformat=unix  

> :wq  

b. install faad2-2.7

同faac安装

3、安装 ffmpeg:

1. > git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg

2. 使用vim打开进行转换,命令模式下输入:set ff=unix

3. > sudo apt-get install yasm

4. > chmod +x configure  

4. > ./configure --prefix=/usr --enable-libfaac --enable-gpl --enable-nonfree

   > chmod +x version.sh

   > vim version.sh

     :set ff=unix

   > make version.h

   生成 version.h

(-bash: *.sh: /bin/sh^M: bad interpreter: 没有那个文件或目录

原因:脚本的编码问题,脚本文件保存时使用了DOS格式

解决:使用vim打开进行转换,命令模式下输入:set ff=unix)

5. make

6. sudo make install 

7. ffmpeg -v 

4、安装 libav >= 0.7:

1. mkdir libav

2. cd libav

3. tar zxvf ../libav-0.8.9.tar.gz

4. ./configure --prefix=/usr --enable-libfaac --enable-gpl --enable-nonfree

5. make

6. sudo make install

7. ffmpeg -version 

5、安装 libev >= 3.48:

1. mkdir libev

2. cd libev

3. tar zxvf ../libev-4.15.tar.gz

4. ./configure --prefix=/usr

5. make

6. sudo make install

7. ls /usr/lib/libev

6、安装 json-c:

1. mkdir json-c

2. cd json-c 

3. tar zxvf ../json-c-0.11.tar.gz 

4. ./configure --prefix=/usr --disable-static

5. make

6. sudo make install

7. ls /usr/lib/libjson

7、安装 flex , GNU bison:

sudo apt-get install flex

sudo apt-get install bison

sudo apt-get install glib2.0*

8、安装 feng 并配置:

a. chmod +x git-version-gen

  vim git-version-gen  

  :set ff=unix

b. aclocal

c. autoreconf -vif

d. automake

e. modify src/media/resource_avformat.c

AV_CODEC_ID_MPEG1VIDEO

AV_CODEC_ID_MPEG2VIDEO

AV_CODEC_ID_H264

AV_CODEC_ID_MP2

AV_CODEC_ID_MP3

AV_CODEC_ID_VORBIS

AV_CODEC_ID_THEORA

AV_CODEC_ID_SPEEX

AV_CODEC_ID_AAC

AV_CODEC_ID_MPEG4

AV_CODEC_ID_H263

AV_CODEC_ID_AMR_NB

AV_CODEC_ID_VP8

chang to :

CODEC_ID_MPEG1VIDEO

CODEC_ID_MPEG2VIDEO

CODEC_ID_H264

CODEC_ID_MP2

CODEC_ID_MP3

CODEC_ID_VORBIS

CODEC_ID_THEORA

CODEC_ID_SPEEX

CODEC_ID_AAC

CODEC_ID_MPEG4

CODEC_ID_H263

CODEC_ID_AMR_NB

CODEC_ID_VP8

f. ./configure --prefix=/usr

g. make

h. sudo make install

i. sudo feng -v   启动feng.

j. sudo adduser feng

(feng server 的源码好久没有更新了, 因此这里需要手动改一下,见步骤e )

更改配置文件:

修改配置文件  /usr/etc/feng.conf

If permission denied, you need chang the file own /usr/var/ 

> sudo chown -hR feng:feng /usr/var

9、启动feng server:

copy 一些码流到 /usr/var/feng/avroot

> ifconfig

> sudo feng -v

10、测试:

现在你可以用 VLC media player 远播放你的server 上的码流.

打开VLC

media -> Open Network Stream -> Network -> rtsp://<IP>/MP3.wav -> play

(此处ip 为你server 的ip,  如  rtsp://192.168.1.1/MP3.mp3)

另: 安装 ffmpeg 后会有个ffserver, 此server 可以配置 http 流媒体. 读者可以自己研究, 有问题可以留言跟我一起探讨. 

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢