2014-01-23 60 views
1

即时通讯试图为rtmp(仅音频)写一个小客户端。到目前为止,我的通信工作(Red5服务器),但现在我卡在音频数据。rtmp音频信息(0x08)格式(mp3)

服务器正在发送MP3 44KHz 16位立体声。 让我的Audiomessage它由字节识别编解码器(0x2F)分别和这看起来例如像这样

ff:fb:92:64:eb:80:03:98:58:d2:e9:26:1b:7e:5d:e7:4a:1a:19:26:5c:8b:89:07:47:44:98:6b:91:2d:9c:28:b4:33:15:70:82:c9:29:87:8d:e4:8f:31:83:84:7b:e5:82:b5:57:62:00:02:e5:bb:f1:86:15:7a:8f:da:9e:ca:4f:83:9d:0a:c4:56:7b:b3:3d:56:43:ba:2b:28:b8:9d:0c:e1:82:0c:08:36:24:f3:39:67:54:b7:41:d9:8e:ef:36:96:56:22:d2:b9:9f:ae:40:43:8e:ea:39:52:0c:a4:48:25:02:54:91:c7:35:37:2d:be:f2:37:23:61:65:35:d9:0f:aa:18:b4:37:d9:d4:c8:68:21:3c:bd:ea:c1:d0:98:df:eb:96:59:99:88:09:37:36:c3:8b:47:80:64:84:41:ba:35:ea:a6:0a:d6:74:9e:09:f6:a5:d7:3f:1f:53:d8:fb:8d:d9:d3:f8:ee:c7:c1:68:25:25:8e:ae:6a:1c:08:52:9d:58:cf:cf:87:c1:ba:a4:f0:63:76:b0:b4:65:79:1b:3b:21:5f:2f:b5:7a:18:43:af:f7:fd:15:0c:87:c9:73:54:95:22:94:cc:cb:e3:da:4d:e0:f3:8a:95:69:69:eb:32:71:57:08:49:76:e0:f3:84:8c:4b:4c:84:6b:5d:7a:c8:c9:d7:df:d5:e2:68:bb:5f:6c:9f:ba:f4:0a:6c:6e:51:8a:b3:59:9a:07:0c:e4:2a:9d:ec:d1:99:53:48:f2:8b:22:b2:d3:bf:e1:5b:9f:ee:49:9f:2c:ee:63:1f:6f:da:90:e7:65:00:55:99:97:77:b9:e8:97:43:81:fd:32:e4:81:20:d0:78:f5:4f:59:47:39:f2:57:5d:f4:d5:91:48:c9:45:10:52:49:4d:04:87:6b:0e:a5:72:ed:34:74:08:93:5b:8a:54:3a:d9:7e:53:8f:c7:5e:b1:99:f3:55:63:72:49:99:55:3a:b8:0d:73:3b:2a:ea:9a:b5:32:d2:3b:61:c2:4e:e9:56:78:99:14:4a:a7:46:f4:ee:ae:6f:ff:c8:85:2d:07:68:ad:e2:84:dd:0a:bd:2e:93:12:43 

我不找到有关数据格式的小东西音频数据。因为第一个字节总是0xff我假设每个音频数据块都有一个描述其内容的小标题。 来自adobe的rtmp规范并没有对音频消息包的格式(只有两行说它是一个音频消息...哇)放松一个单词。

没有人知道音频信息的格式,或者至少有一个我发现的东西的来源?

回答

0

Adob​​e规范没有记录基本流格式,因为它们在自己的文档中被覆盖,并且通常很大。 MP3由ISO/IEC 11172-3覆盖。

有可用的良好破败这里: http://www.mpgedit.org/mpgedit/mpeg_format/mpeghdr.htm

+0

感谢。 rtmp在音频消息中使用mpeg帧。你的链接说一个文件具有相同的格式,所以如果我现在把所有的帧写在一个文件中它应该是一个有效的MP3? – fredlllll

+0

是的,它可以作为.mp3播放。注意这可能不适用于其他编解码器。例如,AAC会要求您将序列标题转换为ADTS标题,并在将其写入文件之前将其添加到每一帧。 – szatmary

+0

现在它有点不错。服务器给了我大约200 KB的数据,然后停止传输没有理由(我不知道为什么)。根据Windows资源管理器的文件长度应该是12秒,但不同的媒体播放器只能播放一秒钟。当删除文件的一部分时,声音会根据此改变(大胆度图显示变短)。我究竟做错了什么?我也可以发送mp3文件,如果这可以帮助别人帮我 – fredlllll