请教有直播 App 开发经验的朋友两个问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
XinPingQiHe
V2EX    程序员

请教有直播 App 开发经验的朋友两个问题

  •  
  •   XinPingQiHe 2024-09-02 10:24:08 +08:00 1945 次点击
    这是一个创建于 403 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1, 直播 App 上线非常复杂吗?客户刚刚新注册的公司,能否申请下来相关资质?

    2 ,是否有开源产品可以替代的,私有化部署的直播 App ,自己搭建服务器,内部人员使用。

    **说明,不涉及违法的事情,就是客户方不希望走公共直播平台。

    希望有经验的朋友 给指点一二,谢谢!

    14 条回复    2024-09-04 09:56:33 +08:00
    Amant
        1
    Amant  
       2024-09-02 10:51:03 +08:00   1
    1. 如果采集、推、拉流都自己开发的确很复杂,但目前市场上都有成熟的解决方案了;相关资质可以找"代办公司"
    2.开源产品:( https://github.com/ossrs/srs)、( https://github.com/ant-media/Ant-Media-Server?tab=readme-ov-file
    XinPingQiHe
        2
    XinPingQiHe  
    OP
       2024-09-02 11:58:40 +08:00
    @Amant 非常感谢!
    wxw752
        3
    wxw752  
       2024-09-02 13:14:19 +08:00
    我们公司是做医疗会议直播的,资质申请非常复杂。全自研问题很多,我们到现在还是三条线路互相备份,没有完全切到自研的线路提供服务。

    如果肯氪金,用阿里云推拉流的云服务就行了,随便套个网页播放 m3u8
    Ranhao
        4
    Ranhao  
       2024-09-02 15:15:11 +08:00
    1 、资质申请非常复杂,部分资质证件在某些省甚至不开放申请了
    2 、如果就内部人员自己用,https://github.com/ossrs/srs 是个好方案

    ps:直播如果自己搭建,不走内网,要考虑带宽问题
    XinPingQiHe
        5
    XinPingQiHe  
    OP
       2024-09-02 15:37:34 +08:00
    @wxw752 @Ranhao 谢谢提供帮助!
    CNCN666
        6
    CNCN666  
       2024-09-02 15:38:59 +08:00
    资质找中介代办就行了。
    或者直接买资质齐全的壳公司。
    XinPingQiHe
        7
    XinPingQiHe  
    OP
       2024-09-02 17:25:06 +08:00
    @CNCN666 是啊,资质的事情 已跟上面汇报
    andyskaura
        8
    andyskaura  
       2024-09-03 09:27:32 +08:00
    技术方案可以走 webrtc+SFU 服务器+cdn 的模式
    XinPingQiHe
        9
    XinPingQiHe  
    OP
       2024-09-03 10:24:33 +08:00
    @andyskaura 谢谢 说的很具体
    LLaMA2
        10
    LLaMA2  
       2024-09-03 10:32:04 +08:00
    请列出你需要支持的端,实际直播场景,画质,延时等要求

    我看看没有有用的建议给你
    XinPingQiHe
        11
    XinPingQiHe  
    OP
       2024-09-03 16:47:17 +08:00
    @LLaMA2 谢谢,目前大致这么个情况:
    合作伙伴的目前设想:
    1 、App ,主要是安卓。后期考虑也做 ios 平台。
    2 、主播需要后台做资格审核,审核通过后,可以发起直播。
    3 、直播后的 n 个月内用户可以看录像。( n 可以设置)
    4 、直播和观看过程中低延迟、高稳定性。
    5 、用户关注或者购买主播的课程后,有直播列表,可以观看直播。直播时,在主播控制下,可以与观众问答/视频等互动。
    6 、后台提供必要手段,用于审核、监控、数据分析,所有正在进行的直播,后台也可以紧急介入(如出现状况,可切断对应直播)。
    7 、目前场景 规模不大,每个主播面对人数在数百人(不过千),所有未来主播人数也就几百个人。
    XinPingQiHe
        12
    XinPingQiHe  
    OP
       2024-09-03 16:49:30 +08:00
    总管理后台,是 pc 端 web 管理; 主播及观看用户,都是在 app 里操作。
    LLaMA2
        13
    LLaMA2  
       2024-09-03 18:40:44 +08:00   1
    明白了,你这个直播属于商业行为,
    需要备案,谁运营谁备案,不过即便你是开发者,你们也要对资质有所准备,避免法律的铁锤!

    直播摄像头比较容易,以我做过的 android 来说就是摄像头 nv21(yuv420p)转 h264,声音 pcm 转 aac
    然后推流到服务器,服务器分发给观看一侧,观看一侧如果是 web 比较好处理,如果是移动端,你可能需要处理通知问题(主播开播,客户收到提醒进入观看)

    不过我不确定你是否需要通知,ios 你走苹果推送,android 也可以接各自厂家的推送,如果不想的话(各厂家要求不一,实在接不过来)就得上常驻通知栏的服务实现通知以满足尽可能高送达率

    服务器一侧自研成本比较高,接阿里\腾讯\等等都可以
    自研的服务器在运营时带宽是个大问题,每个观看人需求各 300KB/s 也不得了.


    审核、监控、数据分析必定要买阿里腾讯他们的服务实现.自研我是没试过,我自己有多大能力我很清楚

    切断直播很容易,主播必然要推流到你的服务,你在服务的地方可以中断推流,直播自然就中断了


    之前就使用直播的套路实现 2 个人打视频电话的功能,app 侧实现,所以了解一点.不过我由于 2 人互相直播,所以就不用推流服务器,直接手鲁的 websocket 实现,



    微信小程序的推流实现要资质(没有资质不能调用微信小程序的特定的直播组件 ).
    不过也可以使用微信小程序的 camera 和 app 的捕获摄像头->转码->推流的套路绕过资质问题
    测试过我的骁龙 845 只能实现 480*640 15 帧, 摄像头有 30fps, 但是 x264 的 wasm 实现解码超过 30ms,只能砍帧率才能做到
    不延时直播


    如果需要直播主播的桌面还需要更多的技术
    XinPingQiHe
        14
    XinPingQiHe  
    OP
       2024-09-04 09:56:33 +08:00
    @LLaMA2 谢谢,您确实实战经验满满的,大赞
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     906 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 22:18 PVG 06:18 LAX 15:18 JFK 18:18
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86