librestreaming icon indicating copy to clipboard operation
librestreaming copied to clipboard

frame time interval

Open stevechyuan opened this issue 7 years ago • 5 comments

1.在使用hard模式下,比較複雜的filter(像是FacialUp),會導致回調onFrameAvailable每幀的時間間隔變得不穩定,這問題有解嗎? 2.要是設置的幀數與實際的幀數不同,有辦法動態調整嗎?一些手機常常實際運行起來,幀數都不足設置的數字

stevechyuan avatar Jun 05 '17 06:06 stevechyuan

1.如果幀率低到一定程度,是會導致onFrameAvailable的間隔不穩定,因爲如果不能及時把當前幀用掉,下一幀不會回調,但是這個應該沒影響,畢竟幀率已經不足了 2.可以用getDrawFrameRate獲取當前幀率,reSetVideoFPS修改目標幀率

lakeinchina avatar Jun 05 '17 08:06 lakeinchina

1.可是幀率也不是很不足,設置30可是會在14-26之間動盪,就算是靜止的畫面也一樣,為何同樣的畫面在draw上的回調這麼不穩定,有辦法穩定回調嗎? 2. 修改目標幀率之後,在碼率上的控制有辦法實現嗎?我設置 fps 30且碼率為800 *1024,開始運行後發現幀率不足使用reSetVideoFPS重新設置為10,但碼率也只會剩下 800/3,請問有好的解法嗎,感謝?

stevechyuan avatar Jun 05 '17 09:06 stevechyuan

1.我好像没碰到過这样的情况,可能是gpu限频了,所以一会高一会低 2.码率不管帧率多少都不变,运行中可以用reSetVideoBitrate修改码率

lakeinchina avatar Jun 05 '17 12:06 lakeinchina

用中階手機跑facial up很容易卡頓啊,細看每張回調時間也不一定,看似是無解了。 我將fps 30重新設置為10,碼率就下降了,此時要讓他回升到800kbps只能設置2400kbps嗎? 另外問下,如果要取消少draw一次offscreen那層的話,具體要怎麼修改,可否給個方向,感謝

stevechyuan avatar Jun 05 '17 17:06 stevechyuan

码率应该是保持不变,可能是不同手机的硬件编码器的问题? 具体怎么改没办法讲。。而且这个绘制不耗时,一般就几个毫秒,如果达不到30帧,说明滤镜的那次绘制花了30毫秒以上

lakeinchina avatar Jun 06 '17 09:06 lakeinchina