首页 > 解决方案 > 如何在上传服务器之前在 Angular 中压缩视频?

问题描述

我有一个 Angular 应用程序,它通过 Spring Boot Server 将视频上传到 S3 存储桶。但是,我需要减小视频的大小,因为我需要从移动设备上传 30MB 的视频。

在这一点上,我想澄清一下,在将视频从我的 Angular 应用程序发送到 Spring Boot 服务器时,它是否会通过使用 Angular 的 POST 请求作为“MultipartFile”到达HTTPClient

认为在 Spring Boot 服务器上压缩视频的策略可以减少视频的加载时间是否有意义,因为从 Spring Boot 将视频加载到 S3?

有经验的人可以为我澄清一下吗?

标签: javascriptangulartypescriptspring-boothtml5-video

解决方案


有没有办法在将视频上传到我的服务器之前降低视频的质量?

请注意,压缩视频是一项繁重且耗时的操作,需要使用客户端编程语言 (javascript) 通过 Web 浏览器完成。您可能会发现像videoconverter.js这样的javascript 库似乎无法正常工作。但是,在发送到服务器之前通过网络浏览器对图像执行相同的操作是有意义的,您可以找到它的工作库。

或者您是否推荐其他一些可以减少等待时间的策略?了解视频最终将托管在 S3 存储桶中,也许在我的 Spring Boot 服务器上执行压缩?

即使在服务器端也不建议执行如此繁重的操作。一个可能的客户端解决方案是以秒为单位修剪视频文件以制作嵌套视频文件,然后将它们发送到服务器。之后,您可以部分使用它们或连接起来再次制作单个视频文件。

认为在 Spring Boot 服务器上压缩视频的策略可以减少视频的加载时间是否有意义,因为从 Spring Boot 将视频加载到 S3?

这取决于您如何执行操作。按需压缩不是一个好的选择。在服务之前使用后台工作进程生成新文件的压缩是一个不错的选择。


推荐阅读