- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们有这个配置工作:
1- Display a JS Upload Form to the visitor
2- Upload file chosen direclty to Amazon S3
3- Transcode the Video in MP4 using Amazon Elastic Transcoder with options:
* resolution: auto
* thumbnails: on, every 2sec
一切正常。但是,出于两个原因,我需要获得原始视频分辨率/比率。第一个原因是能够为缩略图生成设置一个好的比例。 (有时是 16/9、4/3、iphone 视频...)第二个原因是要以完美的比例显示 HTML5 视频播放器,以避免播放器两侧出现空白。
由于 Amazon Elastic Transcoder
已经在自动检测视频分辨率,我想他们可能有办法返回检测到的分辨率,但是......它似乎不是!
谁能想出一种方法来获取视频的分辨率/比例?我目前的解决方案是从服务器上的 S3 下载视频,并使用 FFmpeg
或 FFprobe
检测分辨率。显然,这并不理想。
最佳答案
我有一个可能适合您的方法,但我只想提一下,无法直接访问有关上传视频的元数据会直接限制弹性转码器服务的实用性,我强烈建议您使用像 encoding.com 这样的替代方案(具有讽刺意味的是,他们自己的服务器是 hosted on AWS )。
所以我的解决方案是您可以使用预设来编码 creates thumbnail files that match the aspect ratio of the original uploaded video 的作业通过将其设置为“自动”:
The aspect ratio of thumbnails. If you want Elastic Transcoder to automatically detect the aspect ratio in the input file and use that value for thumbnails, select auto. If you want to specify the aspect ratio for thumbnails, select the applicable value.
此时,您现在有两种方法可以实际访问原始视频的纵横比(都涉及 JavaScript):
1.编写 JS 下载第一个缩略图文件,并显式解析图像尺寸并通过将宽度除以高度来计算纵横比。
或
2。指定一个 ThumbnailPattern
when you create the original job这将通过使用“{resolution}”占位符生成包含图像文件分辨率的缩略图文件名:
Thumbnail Filename Pattern
{resolution} (Optional): If you want Elastic Transcoder to include the resolution in the file name, include {resolution} in the field.
那么你就可以了,所以你只需要获取编码视频的第一个图像缩略图,然后使用 JS 解析文件名以获取分辨率并计算纵横比。
这两种方法都有点 hacky,但受益于不需要进行任何额外的视频处理,并且在未来当/如果 AWS 允许您访问元数据时,您应该有一个非常简单的升级路径来消除这种困惑。
根据 AWS 开发人员在亚马逊论坛上的回复,访问视频元数据可能会在不久的将来可用,所以我想您还有第三种选择等待,这个问题可能会自行解决。
关于javascript - 使用 Amazon Elastic Transcoder 获取视频文件的视频分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15514074/
我正在开发一个 JAVA Web 项目,并使用 liferay 作为后端在 S3 上上传媒体。现在我想使用 Elastic Transcoder 对这些视频进行转码,然后进行流式传输。我想创建一个脚本
TL;DR 我在以下 PowerShell 脚本中做错了什么?它没有按预期工作。 我正在用照相机记录我在大学里的一些讲座。尽管我必须将单个讲座分成三到四个部分,但这效果很好,因为相机一次只能录制 29
我似乎不明白 XMLString::transcode(XMLCh*) 和 XMLString::transcode(char*) 的目的,因为显然我不明白不理解 XMLCh* 和 char* 之间的
本文整理了Java中net.spy.memcached.transcoders.WhalinV1Transcoder类的一些代码示例,展示了WhalinV1Transcoder类的具体用法。这些代码示
本文整理了Java中net.spy.memcached.transcoders.WhalinTranscoder类的一些代码示例,展示了WhalinTranscoder类的具体用法。这些代码示例主要来
https://github.com/derolf/transcoder 我需要在我的项目中本地转码和本地播放,没有其他外部连接到服务器。 它是 ffmpeg 进行动态转码的一个很好的来源。 就我而言
使用 ffmpeg 示例 transcoding.c。 (https://github.com/FFmpeg/FFmpeg/blob/release/4.1/doc/examples/transcod
我们正在开发的硬件不支持播放 mkv 文件。 所以我需要将 Matroska (mkv) 视频文件转码为 mp4 视频文件。 正如我从转码在线可用 Material 中了解到的那样,我需要执行以下操作
也就是说,获取 foo.mp4 和 bar.mp4 并生成 foobar.mp4,这只是 foo.mp4 后跟 bar.mp4? (额外的功劳,如果它能做到这一点,它也能结合 foo.mp4 和 ba
我正在尝试对一些视频进行转码,但我的连接方式出了点问题。 这是我的代码: transcode = layer1.ElasticTranscoderConnection() transcode.Defa
我正在研究 C++ 中的 ffmpeg,以查看 ffmpeg 的示例 但我不知道如何解决 transcoding.c 中的这个问题 这是我的问题 这是代码 static int open_output
我正在使用 batik transcoder for svgs ,每次我转换 SVG 图像时,它都会在标准输出上产生输出。我假设它正在使用某种日志记录包。如何禁用此输出? 最佳答案 您可以设置自定义
我需要从列表 ( System Presets ) 中获取预设。如果我得到名称如下所示的预设,它将返回第一个预设。但我需要获取名称为“系统预设:通用 320x240”的 PresetId。 Basic
我正在使用 AWS SDK PHP。 使用 ->createJob( 一切都很好,但是当我添加时 'Composition' => array( 'TimeSp
我需要使用 Xamarin.MP4Transcoder.Transcoder 将视频转码为 640*480 分辨率。目前有 2 种可用的分辨率 720pFormat 和 960x540Format。有
是否可以在 Amazon Elastic Transcoder 上自动执行转码作业?我正在使用 Django 框架。如果是,我该如何开始。我没有遇到过任何这样的话题,所以我不得不在这里问。您的帮助和建
我对通过 html5 捕获视频很感兴趣。问题是视频是与音频分开捕获的。因此,要制作带音频的视频,必须将它们合并在一起。看来ffmpeg可以解决问题。 有谁知道 AWS Transcoder 是否也会执
我尝试从 AWS Elastic Transcoder 获取所有预设,但以下代码仅返回 62 个预设中的 50 个 List presets = amazonElasticTranscoder.lis
我是 Xercesc 的新手。我在我的项目属性->链接器附加库中包含了 xerces 静态库 xerces-c_static_3D.lib。使用 xerces 的其他一切都很好,但是当我添加这一行时,
我们有这个配置工作: 1- Display a JS Upload Form to the visitor 2- Upload file chosen direclty to Amazon S3 3-
我是一名优秀的程序员,十分优秀!