我对 Android 流式传输到 wowza 感到非常困惑。我正在使用rtmp跨平台进行视频会议,但是Android不吃RTMP。因此,我需要找到另一种方法来做到这一点。
在上游,我发现了一个名为 spydroid-ipcamera 的新开源应用程序。
它正在使用 rtp,将 udp 数据包发送到计算机,并使用以下 sdp 在 vlc 中打开它
v=0
s=Unnamed
m=video 5006 RTP/AVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=420016;sprop-parameter-sets=Z0IAFukBQHsg,aM4BDyA=;
但它行不通。然后我按照 wowza 教程进行流式传输,然后在 VLC 中再次播放。这样可行!我写在http://code.google.com/p/spydroid-ipcamera/issues/detail?id=2
但是,当我想在数据包中添加音频时,它无法工作。我更改为http://code.google.com/p/spydroid-ipcamera/source/browse/trunk/src/net/mkp/spydroid/CameraStreamer.java中的代码
mr.setAudioSource(MediaRecorder.AudioSource.MIC);
mr.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mr.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mr.setVideoFrameRate(20);
mr.setVideoSize(640, 480);
mr.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
mr.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
mr.setPreviewDisplay(holder.getSurface());
然后我认为问题应该在sdp,但我不知道如何与sdp有关。我正在使用 Mp4 流式传输 H.264/AAC
其次我不明白sdp。那么如何使用此应用程序制作视频会议上游部分。
Android ----(UDP Port:5006)----> PC (SDP file) and then Wowza read the SDP file ------> VLC
我认为这样系统不能处理超过 1 个客户端。sdp 只能容纳 1 个端口,有什么想法或者实际上它不会工作吗?
Wowza 还需要在我们流式传输之前设置流,所以这是否意味着我不应该按照这种方式来做呢?
对不起,我的英语很差,希望你们能理解。