dingyaguang117
V2EX  ›  问与答

关于手机设备的 P2P 打洞问题

  •  
  •   dingyaguang117 · Nov 11, 2014 · 4265 views
    This topic created in 4295 days ago, the information mentioned may be changed or developed.
    现在有多少设备支持P2P打洞呢? 有文章说82%的NAT设备已经支持UDP打洞了,这个在移动网络上是一样的?

    想做一个手机端(iOS + Android)的P2P语音通话,不知道是否可行?或者有其他解决方案
    9 replies    2014-11-11 20:00:02 +08:00
    TangMonk
        1
    TangMonk  
       Nov 11, 2014
    websocket可行不
    dingyaguang117
        2
    dingyaguang117  
    OP
       Nov 11, 2014
    @TangMonk websocket是应用层了, 会话层连接都还没连上呢
    mengskysama
        3
    mengskysama  
       Nov 11, 2014
    打洞按理说应该都能成功。不过算法很麻烦主要是语音压缩和传输,这套技术目前比较成熟的YY吧。用一台多线服务器来做中转要靠谱得多。
    dingyaguang117
        4
    dingyaguang117  
    OP
       Nov 11, 2014
    @mengskysama 服务器中转的话 语音还可以,如果做视频的话,太费带宽了
    mengskysama
        5
    mengskysama  
       Nov 11, 2014
    @dingyaguang117 视频质量和压缩率上面权衡下,移动QQ能做到一分钟2M都不到,效果勉强能接受。做到这个压缩比关键我认为还是要是有点技术
    dingyaguang117
        6
    dingyaguang117  
    OP
       Nov 11, 2014
    @mengskysama 感觉目前x264算法的不同库压缩出来都差不多,非开源的也不会压缩比高很多吧?
    dingyaguang117
        7
    dingyaguang117  
    OP
       Nov 11, 2014
    @mengskysama 视频聊天估计还行,要是拍啥运动画面,估计难做到2M
    mengskysama
        8
    mengskysama  
       Nov 11, 2014
    仔细想想其实也还好,早期的小屏幕手机的电影MPEG2封装的AVI都能做到1分钟2M这样。传输过程比较困难,之前我做过一个摄像头厂商的SDK的开发。要保持同步,有的时候会选择性放弃一部分帧。他们也是基于UDP的P2P的打洞。服务器本身不提供中转。
    wwqgtxx
        9
    wwqgtxx  
       Nov 11, 2014 via Android
    你可以截包看看手机qq/微信他们是怎么语音通话的,看看他们连接着哪些服务器ip即可
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2852 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 13:35 · PVG 21:35 · LAX 06:35 · JFK 09:35
    ♥ Do have faith in what you're doing.