以编程方式转码 MPEG-2 视频

2023-12-01

我需要能够以编程方式将 mpeg-2 文件转码为 .mp4、.mp3、.wmv、.rm(可选)和 .flv(可选),并希望也能生成缩略图。我找到了 Java Media Framework,但坦率地说,它看起来相当糟糕。这将运行一个 Linux 服务器,所以我可以使用 Commons Exec 来处理 ffmpeg - ffmpeg 能完成我需要做的一切吗? FFmpeg 看起来相当令人畏惧,这就是为什么我很难找到这些信息,但它看起来绝对是万事通。有什么建议么?


FFmpeg 是最好和最简单的。输出/转换视频:

ffmpeg -i {input}.ext -r {target_frame_rate} -ar {target_audio_rate} -b {target_bitrate} -s {width}x{height} {target}.ext

还有你的截图:

ffmpeg -i {input}.ext -r 1 -ss 00:00:04:005 -t 00:00:01 -an -s {width}x{height} {target_name}%d.jpg

15 fps 是 flv 的标准,flv 的音频采样率应为 44100。使用选项:-r指定帧速率为 1 fps(一帧用作屏幕截图),-ss寻求您想要的职位hh:mm:ss:fff, -t是持续时间(一秒匹配你的一帧每秒),-an告诉 ffmpeg 忽略音频,并且-s是屏幕截图的大小。这%d是必要的,因为它将是您使用的屏幕截图数量增加的数字。有了上面的内容,%d永远是数字 1(一帧,一张截图)。祝你好运。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式转码 MPEG-2 视频 的相关文章

随机推荐

  • 获取 iOS 8 上的键盘尺寸,不适用于外部键盘

    现在一直在看几个SO帖子 但似乎没有一个对我有帮助 只是想要一个UITableView设置底部约束 以便键盘永远不会位于表格视图的顶部 在iOS 8中似乎不可能 使用普通软键盘时可以工作 但在模拟器中删除它或使用真实硬件键盘时 它仍然认为有
  • 如何在 C++ 中读取性能计数器

    C 中有哪些类用于读取性能计数器 如何读取这些计数器数据 在 C 中访问性能数据 性能计数器类
  • 如何强制单元格停止在 Excel 互操作中编辑?

    我有一个带有功能区的 Excel 2007 加载项 功能区中的按钮之一会触发对当前工作表的大量操作 我设置了各种Excel Application属性如Interactive and EnableEvents to false在出于速度和用
  • iOS 6 游戏中心身份验证崩溃

    我正在 Cocos2d iPhone 中构建游戏 当我更新到 iOS 6 时 我注意到 Apple 改变了 Game Center 身份验证的完成方式 使用authenticateHandler代替authenticateWithCompl
  • ElasticSearch 对字段的多次精确搜索未返回任何结果

    我正在努力解决这个问题 我觉得这应该有效 但也许我正在做一些愚蠢的事情 本次搜索 query bool must match Element sourceSystem name Source1 Source2 返回 Source1 和 So
  • 使用 Python 识别顺子、同花和其他类别(来自扑克)

    我是 python 的新手 我从书籍 论坛和开发人员那里学习它 最近 我尝试在扑克程序中实现各种手牌排名类别 目标是计算概率并看看它是否与理论扑克牌概率一致 Source https en wikipedia org wiki Poker
  • PHP 获取文件列表,包括子目录

    我正在尝试检索目录中的所有图像 包括所有子目录 我目前正在使用 images glob images portfolio jpg images portfolio jpg images portfolio jpg images portfo
  • 将矩阵重塑为列表列表

    我有一个清单如下 id value 4 600 4 899 7 19 13 4930 13 300 ID有多个重复 每个重复都有唯一的值 我想把它变成如下所示 id list 4 c 600 899 7 c 19 13 c 4930 300
  • 在发布功能中替换文档的属性

    我正在使用流星 我有一个关于发布功能 服务器端 的问题 Meteor publish users function 我现在将文档发送到浏览器 其中包含其他集合的 id 例如任务文档属于一个项目 title projectId KjbJHvJ
  • 应用程序在 UItableCellSection 长按时崩溃

    UIView tableView UITableView tableView viewForHeaderInSection NSInteger section static NSString simpleTableIdentifier ce
  • ListView 在 Metro 应用程序中添加更多项目?

    我有一个 Metro 应用程序 其中有一个列表视图 服务数据包含超过 100 个项目 最初 当我在我的页面中加载列表视图时 它必须仅显示 8 个项目加上 1 个更多相关项目 后来如果我单击更多项目 它需要向我的页面添加另外 9 个项目 总共
  • python Win32 保存

    我正在使用 python 打开一个 excel 文件并进行一些更改 然后需要保存它 除了保存部分之外 我可以完成所有事情 如何让 python 保存文件 如果我手动保存 我会收到弹出框 我可以单击 保存 但我不想手动单击 保存 我希望 py
  • 如何使用 go 1.11 和 Google App Engine 标准对私有 Go 模块进行身份验证

    我一直在更新我的整个 go gae 标准项目以使用 go 1 11 的模块 主目录结构 app yaml app go go mod go sum app go package main import bitbucket org myPri
  • 扩展 android:WindowTitle

    我希望延长android WindowTitle But parent android WindowTitle 不再适用于较新的 SDK 这是一种私人风格 有什么好的公共替代品parent android WindowTitle 读这篇文章
  • scala 中使用 App Trait 和 main 方法的区别

    有什么区别 object Application extends App println Hello World and object Application def main args Array String Unit println
  • Android 自定义选项菜单项

    每个人 我有一个问题要问 Android 的人 任何帮助或建议将不胜感激 所以我的问题是 我有 ActionBarCompat 的应用程序 在这个操作栏中我有很多不同的隐藏菜单项 只有当用户单击操作栏上的菜单按钮时才会出现 另外 我在操作栏
  • “IntVar”和“IntVar”实例之间不支持“>”

    我是一名新程序员 所以请对我宽容一些 我试图从用户那里获取 Entry 并将其转换为 int 然后假设用户输入一个数字 然后运行 while 循环 当我尝试在 while 循环 第 13 行 上运行此代码时 我收到以下错误代码 发生异常 I
  • 客户端证书和 NSURLSession

    好吧 我对 SSL 证书和身份验证的广泛奇迹还很陌生 所以我可能在这里做了一些非常明显错误的事情 但我正在尝试设置 NSURLSession 以从通过 SSL 网关代理的服务器下载文件 由于与我们正在构建的解决方案相关的原因 我们希望使用非
  • 如何解决无法将表名解析为 python sqlite 查询的问题?

    我正在制作一个 python3 程序 它使用带有多个表的 sqlite 数据库 我想创建一个选择器模块以允许我选择从哪个表中提取数据 我发现我无法使用表名的参数替换 如下所示 因此我正在寻找一些替代方法来完成此操作 c execute SE
  • 以编程方式转码 MPEG-2 视频

    我需要能够以编程方式将 mpeg 2 文件转码为 mp4 mp3 wmv rm 可选 和 flv 可选 并希望也能生成缩略图 我找到了 Java Media Framework 但坦率地说 它看起来相当糟糕 这将运行一个 Linux 服务器