http://www.imooo.com/kaifayuyan/vb/319517.htm
平台环境:
linux版本: ubuntu-10.04.4-desktop-i386
内核:2.6.32-38-generic,编译器:GNUMake 3.81
DVB-芯片:AF9015A-NI
目录:
一、概述
二、干线放大器发射信号软件使用简介
三、DVB-T模块驱动安装方法
四、dvblast软件安装与使用方法
五、使用VLC软件接收TS流的方法
六、其他测试DVB-T信号的软件的安装与使用简介
概述:
本文档介绍DVB-T信号接收并转为TS流以UDP组播方式发送的方法。
系统框架如下:
干线放大器发射信号软件使用简介
安装TSReader_2.8.46b软件
打开软件如下图
点击open打开需要发射的视频文件(好像只能打开.ts格式的文件)。
按照默认的设置即可。也可以根据自己的需要设置发送频率,和调制格式等,但是要和接收端的设置保持一致。
点最左下角的发送按钮,可以看到右下角的小框里面出现波浪线图形。
为了确认发送成功,可以在另一台电脑(也可以在本机)装上代理商提供的DVB-T的xp驱动与接收软件,检查是否能够成功接收。
DVB-T模块驱动安装方法
V4L_DVB软件源码下载与编译。
打开想要存放代码的文件目录
下载安装包
gitclone git://linuxtv.org/media_build.git
(或者把之前下载的安装包直接拷贝到指定位置media_build.tar,并解压)
cdmedia_build
./build
此时会提示缺少某些工具,根据提示使用apt-getinstall安装
可能出现无法安装工具的提示,可以先执行sudoapt-get update
或者先联网安装git软件包
sudoapt-get install git-core
sudoapt-get install patchutils libproc-processtable-perl
可以把以前成功安装过这个软件的系统里的/var/cache/apt/archives拷贝到新系统并替换同名文件夹,将会省去很多下载时间。
之后再执行./build
这一步会花费不少时间。
完成之后执行
sudomake
sudomake install
安装好之后,重启系统,插入DVB-T设备,此时系统会提示安装新设备驱动
Firmware for DVBcards。点击安装。
按照提示下载安装驱动。类似于xp下,插入新设备时提示的安装驱动。
之后执行
lsusb–tv
如果能识别到自己的设备,则驱动安装成功了。类似于以下信息
|__port 2:Dev 3If 0 ,Class=vend.,Drivers=dvb_usb_af9015,480M
并且自动出现目录/dev/dvb/adapter0/,目录下有
demux0 dvr0frontend0 net0
注:没有安装此驱动前,使用lsusb可以识别DVB-T模块,
但是使用lsusb–tv识别不到DVB-T模块
并且没有目录/dev/dvb/adapter0/。
dvblast软件安装与使用方法
1、安装
首先解压dvblast-2.2.tar.gz
进入dvblast-2.2
cddvblast-2.2
下载和编译依赖包bitstream
gitclone git://git.videolan.org/bitstream.git
(或者把带有bitstream的dvblast安装包直接拷贝进来)
cdbitstream
sudomake install
回到dvblast-2.2目录
cd../
sudomake
sudomake install
2、使用
在终端输入以下命令
sudo dvblast-i 1 -u -f 474000000 -s 14929412 -v 18 -b 8 -d 224.1.1.1:1234/udp
命令解释: -i1表示使用最高优先级,可以提高执行速度
-u不指定硬件PID
-f474000000表示DVB-T的频率,即发射端的电视信号发射频率
-s14929412符号速率,根据电视信号发射端确定
-v18调制电压
-b8表示是DVB-T信号,并且带宽8MHz
-d224.1.1.1:1234/udp表示以udp组播的方式发射ts流,
地址224.1.1.1,端口号1234
使用配置文件的方式发送
命令:sudodvblast -i 1 -u -f 474000000 -s 14929412 -v 18 -b 8 -c cctv-free.conf
配置文件cctv-free.conf制定组播地址,端口号,发送方式。内容格式如下
地址 端口号SID PID
224.1.1.1:1234/udp1 10750 1235,1236
在终端输入dvblast–help可以查看更多的命令选项和说明。
使用VLC软件接收TS流的方法
安装:
由于ubuntu10.04版本自带的vlc源太旧了,所以如果直接使用apt-getinstall vlc安装的话,
只能安装vlc-1.0.6版本,这个版本不支持DVB-T到TS的串流。
下面介绍ubuntu10.04安装vlc-1.1.13的方法。
1、添加新的apt源
sudoadd-apt-repository ppa:lucid-bleed/ppa
2、更新源
sudoapt-get update
3、安装vlc,由于下载速度较慢,安装时间大概在1-1.5小时
sudoapt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc
4、安装流处理插件
sudoapt-get install libavcodec-extra-52
使用:
1、接收DVB-T信号并播放
打开软件
点击,媒体-打开捕获设备-如下图设置
其中频率与带宽要根据发射端的实际值设置。然后点击播放即可。
2、接收DVB-T信号并转为TS流以UDP组播方式发送
打开软件,媒体-打开捕获设备,按照第一步设置好之后,点击播放旁边的下拉菜单,
选择串流,如下图
点击下一步,之后设置如下
点击UDP(legacy)旁边的添加按钮,并设置组播地址与端口号。
注意组播地址只能是224.1.1.1到239.255.255.255之间的值,
并且有些值可能已经被其他用户使用。
如果不需要改变转发码流,则可直接点下一步,。
如果想改变转发码流,可以点Video-MPEG-2+MPGA(TS)旁边的按钮,出现对话框如下:
修改位率里面的值,即可以达到修改发送码流的目的。
3、接收UDP发送过来的TS流并播放。
打开软件-媒体-打开网络串流
在对话框内输入组播地址与端口号,点击播放即可。
其他测试DVB-T信号的软件的安装与使用简介
除了VLC之外,还可以使用dvb-apps软件来扫描DVB-T信号,并使用mplayer软件播放
1、dvb-apps安装与使用,
安装dvb-apps
hgclone http://linuxtv.org/hg/dvb-apps //下载
cddvb-apps
make //编译
sudomake install //安装
安装mplayer
sudoapt-get install mplayer
2、扫描频道
cddvb-apps/util/scan/
mkdir~/.tzap
建立频道信息,假设以ylht命名,不可带后缀。放在scan目录下
sudogedit ylht
打开编辑界面输入
T474000000 8MHz 1/2 AUTO QAM64 8k 1/4 NONE
第二项表示发射频率是474Mhz,此处只是扫描一个已知发射频率的频道
如果还有其他频道可以继续加入。
开始扫频
scanylht > ~/.tzap/channels.conf
如果能成功扫描到频道,退出时会提示有几个频道。并
在channels.conf里面会看到相关信息。
3、播放
复制信息文件到播放器目录下
sudo cp ~/.tzap/channels.conf /etc/mplayer/channels.conf
这里/etc/mplayer/channels.conf是默认的播放器配置文件存放目录
开始播放
mplayerdvb://
执行完以上步骤后,播放器会被打开,并播出视频。