您当前的位置: 首页 > 

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4642博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

音频格式G711转PCM的代码

柳鲲鹏 发布时间:2018-06-27 23:09:54 ,浏览量:0

  今天调试摄像头的音频格式,始终不对。原始音频为8000,16位,帧率50。每帧的数据应该是320字节。

  接收到手上,RTP包为171字节,数据为160,只有一半。这是怎么回事?一开始总是认为RTP接收有问题,反复核查确认代码及流程正确。那么就是格式进行了转换。什么格式?开始认为是AAC,后来发现不对,AAC压缩率更高。

  最后根据这个160、 320,搜索了一个,说G711会变成原来的一半。赶紧试试,果然成功。代码如下:

	public static byte[] convertG711ToPcm(byte[] g711Buffer, int length, byte[] pcmBuffer)
	{
		if (pcmBuffer == null)
		{
			pcmBuffer = new byte[length*2];
		}
		for (int i=0; i> 4;
            // 这个移位多此一举?结果应该一直是8
			int value    = (alaw & 0x0F) >> 4 + 8;
			if (exponent != 0)
			{
				value += 0x0100;
			}
			if (exponent > 1)
			{
				value  8 & 0xFF);
		}
		return pcmBuffer;
	}

 

 

 

关注
打赏
1665724893
查看更多评论
立即登录/注册

微信扫码登录

0.0511s