我正在开发一个用户可以上传和观看视频的网站。我从来没有做过这样的事情,需要一些指导。我希望视频能够存储在我的服务器上,用户可以通过我的网站上的视频播放器进行搜索和观看。什么是java库来实现这一点,以及我将需要的其他技术是什么。使用java在网站上进行视频流式传输
回答
以下是您可以考虑使用或学习的技术列表。
JSP + Servlet的 =你会实现自己的MVC 实现(虽然我不建议这一点,如果你正在建设 大规模的应用程序,除非你是在它真的很好。考虑 2号)
考虑使用一个MVC框架(如Struts2的,Spring MVC的等)或 像什么索恩表示,像新泽西州的REST框架(虽然我还没有 使用REST框架试过)。
数据库访问 - 我需要解释为什么吗?
的ORM库 - 使用ORM可以加快发展(这可能是 主观虽然),它使数据存取更为抽象和 便携,ORM实现类知道怎么写 供应商特定的SQL。
文件上传库 -如果您打算为Struts2的使用其depencies一旦你 框架是Apache共享库(只是 查看他们的文档)。
你说,用户会上传自己的视频,你将它们存储在您的服务器 ,你将在他们的网页浏览器,你需要做的文件convertions这些影片,为什么呢?
在HTML5中,因为不是所有的浏览器都支持所有的视频格式,所以如果你打算使用html5播放器,你需要考虑将视频转换为另一种格式。你可以检查出不同的文件格式,不同的浏览器支持here
对于文件转换检查这个Here
现在的客户端视频,你可以使用它有闪光灯回退,在MediaElement.js以防万一用户视频不支持HTML5。
与其开始您需要掌握的技术列表的项目,我会建议从您想要的外观大纲开始 - 用户将如何与网站交互?它将具有哪些功能以及如何让用户看到这些功能? 接下来我会考虑数据。它将如何存储?视频文件将如何成为名称并与用户相关联?我们需要存储哪些视频属性?例如,每个视频文件都可以有一个关联用户(发布者),一些属性,如日期,文件大小,分辨率,帧率。我们是否也会存储评论或评分?关键词?说明? 也许你会想要一个数据库来存储这些数据,但我只是将视频文件作为常规文件存储在目录中。
现在到选择一套工具来完成这件事......
- 的Java servlet或类似新泽西州的REST框架。 (如果使用Jersey框架可能不需要这个)
- 数据库访问
- HTML 5视频播放或Flash视频或JavaFX的2
随着HTML5(基于浏览器的视频播放,而无需使用an Apache commons library
搜索功能也可以在Java中完成。你在这里需要一些数据库技能,做好搜索并不是微不足道的。但是,在您为应用程序提供关键字并向您提供列出此关键字的所有视频的基本搜索应该很简单。
- 1. 从网站流式传输视频?
- 2. 在Android上使用Lighttpd进行视频流式传输
- 3. 如何在我的网站上流式传输视频?
- 4. 在android中使用webview进行视频流式传输
- 5. 您可以使用HTML 5在网站上24/7流式传输视频吗?
- 6. gstreamer appsrc通过网络进行视频流式传输
- 7. 是否在本地网络上使用TCP或UDP进行视频流传输?
- 8. 使用C#进行视频流式传输的最佳实践
- 9. 使用vlcj通过http进行实况视频流式传输
- 10. 使用WebRTC进行视频流式传输和广播
- 11. 使用WebView进行Rtmp视频流式传输
- 12. 使用Python进行视频流式传输
- 13. 在iPhone上流式传输视频
- 14. 在Safari上使用一帧视频服务器进行流式传输
- 15. 网站上的流式视频
- 16. 如何使用Java EE流式传输现场音频视频?
- 17. 使用Flash流式传输视频
- 18. 在我的网站上流式传输音频
- 19. 流式传输FLV视频
- 20. 用Cassandra进行Java Spark流式传输
- 21. 如何在网页上流式传输视频?
- 22. 在Android中进行视频流式传输
- 23. 流式传输视频并在其上绘制多边形Java
- 24. 无法在WebView上从视频流式传输视频
- 25. 将流式传输到网站上
- 26. 如何使用Appengine Blobstore上传和流式传输视频
- 27. 使用不同的音频和视频源进行流式传输
- 28. 在Windows上使用FFMPEG从图像流式传输视频
- 29. 使用AVPlayer在ios中进行音频流式传输
- 30. 使用vlc与rtsp流式传输网络摄像头视频
为什么你想用Java来做到这一点? – aly
那么,我在服务器端使用java,所以我假设我将需要它来实现这些功能[如果我错了,我不知道纠正我]。 –
使用网络摄像头创建的视频? Flash可以很好地与Java后端(如Red5或Wowza)结合使用。 –