Replace dropped frame

百般思念 提交于 2020-12-14 13:14:22

问题


I'm doing a Cloud Gaming solution that works kind of "good".

At the moment our servers runs a game, encode the video using VCE (AMD hardware encoding), chunk the video frames and send it in UDP to the player. The player receives the packets, rebuid the data and decode it. So we have no problems if there is no packet loss.

In the case of a wired connexion everything is smooth, but people like to use Wifi (5ghz, we can't handle 2Ghz). Even if you have a good Wifi, you may experience packet loss. We have a redundancy plan that works "okish" but it will take too much network.

Here is a small explanation:

Original encoding (only P frames):

F1 - F2 - F3 - F4 - F5

What we do at the moment if we lose F2:

F1 - empty - F3(ugly) - F4(ugly) - F5(ugly)

What we want to do, replace F2:

F1 - F1' - F3 - F4 - F5

Would it work if the third frame refers to F1' (thinking it is F2)? At least I think it better than doing nothing. Is there a way to change the reference of F3 (so it refers to F1 and not F2), or creating F1' with the "header" of F2?


回答1:


Your solution would be largely ineffective. You should adopt the same solution as the others in your space. That being periodic intra refresh, reference frame invalidation and FEC.



来源:https://stackoverflow.com/questions/37395657/replace-dropped-frame

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!