java - Java 视频流项目
问题描述
我必须在大学做一个视频流java程序作为一个项目,但是我不知道如何开始!
我必须同时做主服务器端和子服务器端,客户端将是 VLC。
所以我需要这点帮助:
- 在主服务器中,我必须将视频拆分为 10KB 部分,如何正确执行此操作?
- 如何正确地将视频从子服务器流式传输到客户端?
注意:我更喜欢使用 mp4 视频,但我可以使用我想要的任何内容。
谢谢
解决方案
您需要决定是构建真正的直播流(通常是 Apple HLS 或 MPEG DASH),还是只是构建伪直播流。某些格式,例如 MP4,可以在正确格式化后进行流式传输(请参阅此处的操作方法)。
在主服务器中,我必须将视频拆分为 10KB 部分,如何正确执行此操作?
听起来您想将 mp4 转换为 mpeg-ts。看看https://github.com/taktik/mpegts-streamer。其他选择是运行ffmpeg
如何正确地将视频从子服务器流式传输到客户端?
多源同步对于直播流来说是一件很重要的事情。根据您的实施:
MP4 伪直播:确保您的流媒体 API 支持搜索和重启。当客户端重新连接到另一个端点时,它可能会发送 HTTP 标头以指示从哪里继续(不确定 VLC 是否支持这一点)
真正的实时流:跟踪提供给客户端的块。主题或弹性疼痛听起来很合理。当客户端第一次连接子服务器时,分析订阅或查询 elasticache 以确定最佳块。
推荐阅读
- service-worker - 在使用 Workbox 预缓存资产时跟踪进度
- python - 从大字典中弹出 N 项的最快方法
- node.js - Express-Mongoose 请求-响应周期/错误处理与 exp
- memory-management - 访问进程内存部分
- r - 在 R 中使用数据框,什么是水平和因子
- svg - SVG animateTransform 平移和缩放同时失败
- c++ - 输入结构对象时出现运行时错误
- solr - Solr 服务器在使用 GraphDbAdminHandler 时未启动。从 CoreAdminHandler 类获取 ImmutableMap 类的 ClassNotFoundException
- sonarqube - sonar.sources 有错误,我该如何解决?
- css - 浮动向左移动错误的位置