导航:首页 > 操作系统 > g711aandroid

g711aandroid

发布时间:2023-06-05 12:39:23

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。

阅读全文

与g711aandroid相关的资料

热点内容
数电编译器的作用 浏览:335
时间算法与现在有什么区别 浏览:160
7zip解压后没文件夹 浏览:900
为什么安卓送玫瑰ios收不到 浏览:6
美篇文章加密是什么意思 浏览:80
ilasm编译dll 浏览:36
呼吸灯单片机程序 浏览:950
linux域socket 浏览:246
qq分身怎么样才能加密 浏览:453
windows打开linux 浏览:995
新建文件夹为什么不能发送微信 浏览:600
交警app怎么绑定本人几辆车 浏览:987
彩虹六号如何人工服务器 浏览:634
mc服务器地址怎么登入 浏览:557
苹果app怎么扫描二维码下载 浏览:961
css文件在线解压 浏览:156
36岁程序员近况 浏览:285
哪里可以下载不加密的歌 浏览:936
隐藏文件夹是什么梗 浏览:920
插件注册命令 浏览:498