【发布时间】:2015-07-29 19:08:47
【问题描述】:
我正在尝试使用 RTSP 协议开发一个实时流媒体应用程序。
在带有 Wowza 服务器的 PC 上,我执行以下命令:
代码:
ffmpeg -f dshow -i video="Name_Of_My_Cam":audio="Name_Of_My_Microphone" -vcodec
h263p -f rtsp -muxdelay 0.1 rtsp://<Wowza_server_ip_adress>:1935/live/test
我正在尝试在我的 Samsung Galaxy Note 3 Lite 上的 VideoView 上播放此流。代码如下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView vv = (VideoView) findViewById(R.id.videoView);
// Receive RTSP video from Wowza Server
vv.setVideoURI(Uri.parse("rtsp://<Wowza_server_ip_adress>:1935/live/test"));
vv.requestFocus();
vv.start();
}
我设法阅读了视频和声音,但它需要 3 秒(或更多...)才能启动,并且我在所有流式传输期间都保持此延迟。这很烦人,因为我想开发一个通话会话。
有人知道如何减少这种延迟吗?是 Wowza 的问题吗?
【问题讨论】:
-
您是否尝试按照How to achieve the lowest latency from capture to playback上的说明进行操作
-
是的。我试图将 StreamType 更改为“live-lowlatency”并修改我的应用程序的属性。但它什么也没改变。
-
我尝试使用应用程序“XMTV Player”启动流并且它可以工作(我的延迟不到 1 秒)。所以我想问题出在 VideoView 的实现中。也许缓冲太低了??
-
显然 VideoView 缓冲区大小为hardcoded in the firmware。您可能需要一个自定义库。
-
我找到了这个:vitamio。我今天会测试
标签: ffmpeg streaming rtsp latency wowza