1. 网络摄像机 音频编码 g.711alaw g.711ulaw 选择哪个好
G.711是语音模拟信号的一种非线性量化,细分有二种:G.711 A-law 和 G.711 u-law。不同的国家和地方都会选取一种作为自己的标准。G.711 bitrate 是64kbps。详细的资料可以在ITU 上下到相关的spec,下面主要列出一些性能参数:
G.711(PCM方式:PCM=脉码调制 :Pulse Code Molation)
采样率:8kHz
信息量:64kbps/channel
理论延迟:0.125msec
品质:MOS值4.10
2. g711a与g711u编码方式什么不同
带宽=包长度×每秒包数 =包长度×(1/打包周期) =(Ethernet头+IP头+UDP头+RTP头+有效载荷)×(1/打包周期) =(208bit +160bit+64bit+96bit +有效载荷)×(1/打包周期) =(528bit+(打包周期(秒)×每秒的比特数))×(1/打包周期) =( 528 / 打包周期 ) + 每秒比特数 按照上面的计算公式: G711:20ms打包!
3. android解码播放G711音频流该怎么做
java">这是很久的代码了,有点忘记了,给你参考下。
publicfinalstaticStringTAG="DefaultTalkBackSession";
TalkBackSessionsession;
CodecLibObjobj;
privateBlockingQueue<byte[]>inputQueue=newLinkedBlockingQueue<byte[]>();
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
try{
session=newDefaultTalkBackSession("192.168.78.65",15528);
obj=session.codecAbilityQuery();
if(obj!=null){
session.startLiveListening(newTalkBackSession.OnAudioDataReceiveListener(){
@Override
publicvoidonAudioDataReceived(byte[]data){
Log.d(TAG,"收到音频数据:"+Utils.toHex(data));
try{
inputQueue.put(data);
}catch(InterruptedExceptione){
}
}
},obj,1);
session.startCall(obj,1);
ulaw_play();
ulaw_recored();
}
}catch(Exceptione){
e.printStackTrace();//|Settings|FileTemplates.
}
}
protectedvoidonDestroy(){
super.onDestroy();
if(session!=null){
if(obj!=null){
session.stopLiveListening();
session.endCall();
}
((DefaultTalkBackSession)session).stop();
}
ulaw_stop();
}
privatevoilaw_stop(){
if(ulaw_decode_thread!=null){
ulaw_decode_thread.interrupt();
}
ulawRunning=false;
}
privatevoilaw_play(){
ulawRunning=true;
(ulaw_decode_thread=newThread(ulaw_decode)).start();
}
booleanulawRunning=false;
Threalaw_decode_thread;
/**
*解码线程
*/
Runnableulaw_decode=newRunnable(){
publicvoidrun(){
try{
Thread.sleep(200);
}catch(InterruptedExceptione){
e.printStackTrace();
}
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_AUDIO);
intsamp_rate=8000;
intmaxjitter=AudioTrack.getMinBufferSize(samp_rate,
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);
AudioTracktrack=newAudioTrack(AudioManager.STREAM_VOICE_CALL,samp_rate,AudioFormat.CHANNEL_CONFIGURATION_MONO,AudioFormat.ENCODING_PCM_16BIT,
maxjitter,AudioTrack.MODE_STREAM);
track.play();
try{
while(ulawRunning)
{
byte[]dataForDecode=newbyte[0];
try{
dataForDecode=inputQueue.take();
}catch(InterruptedExceptione){
}
short[]audioData=newshort[dataForDecode.length];
//decode
G711.ulaw2linear(dataForDecode,audioData,audioData.length);
Log.d(TAG,"audioData="+Utils.toHex(audioData));
//play
track.write(audioData,0,audioData.length);
}
}catch(Exceptione){
e.printStackTrace();
}finally{
track.release();
track=null;
}
}
};
Runnableulaw_encode=newRunnable(){
publicvoidrun(){
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_AUDIO);
AudioRecordrecord=getAudioRecord();
intframe_size=160;
// intframe_rate=8000/frame_size;
// longframe_period=1000/frame_rate;
short[]audioData=newshort[frame_size];
byte[]encodeData=newbyte[frame_size];
intnum=0;
try{
while(ulawRunning)
{
num=record.read(audioData,0,frame_size);
if(num<=0)continue;
calc2(audioData,0,num);
//进行pcmu编码
G711.linear2ulaw(audioData,0,encodeData,num);
//send
session.sendAudioData(encodeData);
}
}catch(Exceptione){
e.printStackTrace();
}finally{
record.release();
}
}
};
voidcalc2(short[]lin,intoff,intlen){
inti,j;
for(i=0;i<len;i++){
j=lin[i+off];
lin[i+off]=(short)(j>>1);
}
}
privatevoilaw_recored(){
newThread(ulaw_encode).start();
}
(){
intsamp_rate=8000;
intmin=AudioRecord.getMinBufferSize(samp_rate,
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);
Log.e(TAG,"minbuffersize:"+min);
AudioRecordrecord=null;
record=newAudioRecord(
MediaRecorder.AudioSource.MIC,//therecordingsource
samp_rate,//采样频率,一般为8000hz/s
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT,
min);
record.startRecording();
returnrecord;
}
4. 请问:数字解码器和数字编码器分别有什么作用,到底实现什么功能
一下文字引用长沙航天和一电子设备厂官网内容网页链接
什么是高清编码器?高清编码器的作用及高清编码器的技术指标
高清编码器也称为数字编码器、视频编码器、高清视频编码器、数字电视编码器、网络视频编码器、数字视频编码器,主要的作用就是将输入的数字视音频信号源进行数字编码处理(包括HDMI信号源、SD-SDI信号源、HD-SDI信号源),常用编码方式为MPEG-2、MPEG-4、H.264、H.265等,编码成为可以实时传输的TS流数据,然后把数据流封装为ASI形式或者IP形式输出给下一级设备使用,比如IPQAM调制器、数字电视调制器、数字调制器,DTMB调制器等设备;ASI形式一般为BNC接口输出,IP形式为1000M以太网接口RJ45,IP数据流一般会支持TS/HLS/RTSP/FLV/RTMP/UDP/RTP/单播/组播等协议。
高清编码器是数字高清电视系统、IPTV网络电视系统、网络视频直播系统中的重要设备。
常见的高清编码器有哪些?
输入信号源为HDMI的高清编码器被称为HDMI高清编码器(例如长沙航天和一公司生产的HY-8804BH型四路HDMI数字高清编码主机);
编码方式H.264的高清编码器被称为H.264高清编码器;
输出接口为IP形式的高清编码器被称为IP编码器或网络编码器、直播编码器;
高清编码器主要运用在哪里?
高清编码器可以广泛应用于各类广电有线高清数字电视系统、IPTV电视直播系统和网络直播、卫星数字电视系统、远程教学、运程医疗、高清监控等。
高清编码器正面图片:高清编码器技术指标:
输入接口
HDMI
4路HDMI 1.3(内嵌音频)
独立音频
2路立体声或双声道,3.5mm模拟音频接口
输出接口
IP
1000M以太网接口,RJ45,TS over TCPIP/UDP,
数据流支持TS/HLS/RTSP/FLV/RTMP/UDP/RTP/组播
音频编码
采样频率
44.1KHz、48KHz
码率
48-128Kbps可调(每个通道)
编码方法
AAC,AAC+,AAC++,MP3可选
RTSP流使用
G711A编码
禁用/启用,可选
视频编码
分辨率
1920×1080@60P,1920×1080@50P,
1920×1080@60i,1920×1080@50i,
1280×720@60P,1280×720@50P,
720×480@60i,720×576@50i,
与输入分辨率相同自适应等多种格式
编码模式
H.264/AVC
H.264级别
baseline profile/main profile/high profile
码流控制
cbr、vbr,可选(每个通道)
编码帧率
5-60可调(每个通道)
关键帧间隔(帧)
5-300可调(每个通道)
比特率(kbit)
32-32000可调(每个通道)
常规特性
尺寸
482mm×410mm×44mm,1U机箱
环境
0~45℃(工作);-20~80℃(储存)
电源
100VAC-240VAC,50/60Hz,支持外接2个12V直流电源适配器(DC/12V/3A)*2
重量
≤3KG
整机功耗
≤25W
5. 网络监控摄像头音频编码用aac好还是G.711A好。哪个编码类型的音质好
现在的海康已经支持MPEG格式,MP2是最佳录音格式,支持44100采样,16位单双通道,192K码流,录音质量十分接近CD效果,只是内置麦克风是单声道,外置是双通道就是CD音质。G711码流只有64K(最大值,通常是56K)音质压缩的太狠,损失太多。虽然有AAC选项,但不及MP2格式质量好。
6. android系统自带的网络电话(可以设置sip 或者iax2)用的默认编码是什么在哪儿可以设置编码
android系统自带的互联网电话用的是g711编码,可以到voipdoup网站下载csipsimple软件,设置使用729,gsm编码使用。
1、G.711:是一种由国际电信联盟(ITU-T)订定音频编码方式,又称为ITU-T G.711。
2、G.711使用64Kbps的带宽,可将14bits转换成8bits。目前G.711有两个编码方式:一种是u-law又称mu-law,主要运用于北美和日本;另一种是a-law,主要运用于欧洲和世界其他地区。其中,a-law编码方式是为方便计算机处理而特别设计的。2008年3月国际电信联盟正式发布了最新的宽带语音编译码标准G.711.1。