Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

推流失败 #1

Closed
flyminiboy opened this issue Apr 26, 2016 · 33 comments
Closed

推流失败 #1

flyminiboy opened this issue Apr 26, 2016 · 33 comments

Comments

@flyminiboy
Copy link

修改了推流地址以后
运行成功以后,点击开始,屏幕没有反应,预览界面一直是黑屏

@lakeinchina
Copy link
Owner

如果推流成功预览黑屏的话可能是渲染预览的问题.
如果推流没成功可能是初始化的问题,resClient.prepare()成功了吗?可能是摄像头权限问题或者是格式不支持,手机型号是什么?

@flyminiboy
Copy link
Author

退出以后没有关闭操作,导致下次启动报错!

@flyminiboy
Copy link
Author

还有就是退出的时候回奔溃

@lakeinchina
Copy link
Owner

这个demo是手动操作start和stop的,按了start没按stop就退出是会出问题的
实际使用的时候可以放在onresume和onpause里面
至少在代码上保证成对调用start-stop,prepare-destroy就好

@flyminiboy
Copy link
Author

画面处理 有时候会花屏

@lakeinchina
Copy link
Owner

什么手机?有时候花屏指的是没有操作播着播着就花屏了么?

@flyminiboy
Copy link
Author

三星S4 使用了滤镜以后 然后就出现了虚影也不算是花屏

@lakeinchina
Copy link
Owner

具体什么样子?能贴张截图么? @fly518420

@flyminiboy
Copy link
Author

不是必现的 等出现的时候 截图发你
方便加个q吗?

@flyminiboy
Copy link
Author

那个 speed 这个是什么意思啊?

@lakeinchina
Copy link
Owner

你直接贴这里吧,加q的话可以发我邮箱

@lakeinchina
Copy link
Owner

speed是上传速度
speed is upload speed

@flyminiboy
Copy link
Author

可以添加一个实时的上传帧率吗?

@lakeinchina
Copy link
Owner

可以的,只需要在RESRtmpSender里面统计以下发送视频帧的速度就好了,不过我最近在搞用gles实现滤镜,后面有空再加这个东西了

@flyminiboy
Copy link
Author

魅蓝note 黑屏可以推流成功。

@flyminiboy
Copy link
Author

你好,你这个有没有就是在网络不佳的情况下,与服务器断开连接的回调呢?

@lakeinchina
Copy link
Owner

我找了个魅蓝note2,发现这个不能用nativeAPI渲染nv21,但是可以渲染yv12.问题的关键是好像没办法知道到底支持哪种格式...
向服务器写数据失败有onWriteError回调

@flyminiboy
Copy link
Author

还有一个问题 那个open是什么意思啊

@lakeinchina
Copy link
Owner

open=0是与服务器建立了连接,!=0是没有连上
sample里面写了注释

@flyminiboy
Copy link
Author

没有显示 open
senderQueue is full,abandon
04-28 15:35:44.188 24249-24249/me.lake.librestreaming.sample D/RESLog: queueVideo,accept ,targetIndex2
04-28 15:35:44.188 24249-29051/me.lake.librestreaming.sample D/RESLog: queueAudio,accept ,targetIndex3
04-28 15:35:44.193 24249-29065/me.lake.librestreaming.sample D/RESLog: AudioFilterHandler,ProcessTime:1
04-28 15:35:44.193 24249-29067/me.lake.librestreaming.sample D/RESLog: AudioSenderThread,MediaCode,eobIndex=2
log一直打印这些
可以预览 但是推流失败

@flyminiboy
Copy link
Author

那我可以修改一下不适用nativeAPI进行渲染吗?

@lakeinchina
Copy link
Owner

没有显示 open 的情况基本就是网速太慢,要么就是连接服务器半天不返回.
不用nativeAPI来渲染的话,那就剩用opengles了,其他的都太慢,我不知道gles这个兼容性有没有问题
渲染在ColorHelper.renderingSurface()
其实如果只有魅蓝note有这个问题的话,可以在渲染的时候改用yv12,nv21转yv12是很容易的

@flyminiboy
Copy link
Author

如果我想加一个超时的机制呢?这样就可以了解到当前的状态了

@lakeinchina
Copy link
Owner

不知道你指的是什么,我没有在jni中指定librtmp的超时,好像默认是120.
在上层算一下start之后几十秒内没有回调onOpenConnectionResult的话就算超时
或者给librtmp指定一个超时时间http://rtmpdump.mplayerhq.hu/librtmp.3.html.timeout

@flyminiboy
Copy link
Author

rmtp->link.timeout= 这个的单位是什么啊?而且我设置以后没有起作用

@lakeinchina
Copy link
Owner

timeout=num
Timeout the session after num seconds without receiving any data from the server. The default is 120.

@flyminiboy
Copy link
Author

频繁出现,启动应用,一点击start就奔溃的问题

@lakeinchina
Copy link
Owner

有日志吗?

@flyminiboy
Copy link
Author

捕获不到日志
04-28 17:38:41.476 9848-10023/me.lake.librestreaming.sample A/libc: Fatal signal 11 (SIGSEGV) at 0x7c8ac000 (code=1), thread 10023 (videoFilterHand)

@lakeinchina
Copy link
Owner

某些手机频繁出现?

@flyminiboy
Copy link
Author

三星 S4 频繁出现 比成功的概率高

@lakeinchina
Copy link
Owner

我这没有三星s4,你会用NDK-STACK调试吗?打印一下ndk崩溃日志看看

@lakeinchina
Copy link
Owner

@fly518420 我添加了gles渲染,你可以测下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants