问题标签 [transcode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
407 浏览

android - Glide v3 to V4: toBytes() and transcode

How can I convert this to Glide v4. Much of our previous code depends on this bytes, so we need to keep it backward compatible.

There does not seem to be a Glide v4 solution. This would be a shame because it means behavior was just deprecated without a way to move to v4 without a total rewrite for folks with dependency on previous functionalities.

I have tried .as(byte[].class) but get an error:

java.lang.IllegalArgumentException: Unhandled class: class [B, try .as*(Class).transcode(ResourceTranscoder)

And there's no easy solution on how to add custom transcoders in v4.

0 投票
0 回答
444 浏览

node.js - 使用 node.js 的 fluent-ffmpeg 库无法从 VP8 转码到 H264

我已经尝试使用命令行将流从 VP8 转码到 H264,它工作正常,但是当我使用 fluent-ffmpeg 尝试相同的事情时,它没有按预期工作。

版本信息

流利的 ffmpeg 版本:“2.1.2”

ffmpeg 版本:“3.4.4-1~16.04.york0”

操作系统:“Ubuntu”

从 VP8 到 H264 的转码正在使用命令工作

我的sdp是

从 VP8 到 H264 的转码无法使用库

使用库生成的命令

FFmpeg 日志

观察结果

我观察到输入的 VP8 流未使用 FFmpeg 库转码为 H264

预期成绩

输入的 VP8 流应使用库转码为 H264。

请帮忙,我该如何解决这个问题。

0 投票
1 回答
1699 浏览

node.js - 将视频+音频(通过 ffmpeg)分段和转码为按需 HLS 流的精确方法?

最近我一直在搞乱 FFMPEG 并通过 Nodejs 流式传输。我的最终目标是通过 HTTP 提供转码的视频流 - 来自任何输入文件类型 - 根据分段的需要实时生成。

我目前正在尝试使用 HLS 来处理这个问题。我使用输入视频的已知持续时间预先生成了一个虚拟 m3u8 清单。它包含一堆指向单个恒定持续时间段的 URL。然后,一旦客户端播放器开始请求各个 URL,我使用请求的路径来确定客户端需要哪个时间范围的视频。然后我对视频进行转码并将该片段流回给他们。

现在解决问题:这种方法大多有效,但有一个小的音频错误。目前,对于大多数测试输入文件,我的代码生成的视频 - 虽然可播放 - 在每个片段的开头似乎有一个非常小的(< .25 秒)音频跳过。

认为这可能是在 ffmpeg 中使用时间分割的问题,其中音频流可能无法在视频的确切帧处准确切片。到目前为止,我一直无法找到解决此问题的方法。

如果有人有任何方向,他们可以指导我 - 甚至是解决这个用例的现有库/服务器 - 我很感激指导。我对视频编码的了解相当有限。

我将在下面包含我相关当前代码的示例,以便其他人可以看到我卡在哪里。您应该能够将其作为 Nodejs Express 服务器运行,然后将任何 HLS 播放器指向 localhost:8080/master 以加载清单并开始播放。有关相关的转码位,请参见transcode.get('/segment/:seg.ts'末尾的行。

0 投票
0 回答
116 浏览

ffmpeg - ffmpeg 覆盖 v4l2-ctl 配置 -> 如何将真正的原始设备复制到网络?

我需要对 tcp 套接字副本做一个真实的设备,例如:

这个非常基本的命令行适用于我的情况。我想做同样的事情,但使用 ffmpeg 进程。目的是标准化流处理过程,在这种情况下,从设备到网络的基本原始副本,以及从任何源到网络的高级转码,始终使用相同的 ffmpeg 过程。

我在 ffmpeg 之前使用 v4l2-ctl 来进行很多我想保留的配置。

我试过了 :

这里的问题 ffmpeg 杀死了我的 v4l2 配置,我不想在我的代码中设置两次(v4l2-ctl 接口 + ffmpeg 接口)。

我也试过:

我总是得到这个 stderr + exit :

我也试过

上述所有组合的参数均未成功:(

如何使用 ffmpeg 将原始二进制副本(如使用 NetCat 的“cat”或“dd”)从设备到套接字(不杀死 v4l2 配置)?

帕斯卡

0 投票
1 回答
214 浏览

ffmpeg - 从 VLC 中获取未压缩的 h.264 视频剪辑的最快和最可靠的方法

我正在尝试设置一个管道来在我观看电影时录制视频剪辑(通常但不总是在 h.264 中)并准备它们以在 Premier 中进行编辑。我通常使用 VLC 观看视频,“录制”按钮非常完美。但是,为了编辑视频,它需要是 h.264 以外的格式。

我在转码方面运气不一。看来我必须反复试验才能找到可以转换为不会导致可怕伪影的编解码器。我认为最好解码视频并以未压缩格式保存,然后编辑,然后在我选择的编解码器中编码。

ffmpeg/handbrake 有没有办法解压缩视频,然后保存未压缩的视频而不是转码到不同的编解码器?或者更好的是,让 VLC 的“记录”按钮保存解码的流而不是编码的视频?

0 投票
0 回答
139 浏览

django - 在前端显示ffmpeg进程的进度条

我正在做一个 cms 项目,我必须使用 ffmpeg 对视频文件进行转码。转码过程已成功。但我必须在前端显示 ffmpeg 进程的进度。我尝试了 pytranscoder,但无法显示进度。任何帮助将不胜感激。

注意:我使用的是 Ubuntu 14.04

0 投票
1 回答
354 浏览

java - 我从 apache png transcoder 得到一个 org.apache.batik.bridge.BridgeException

我想使用以下代码从 svg 字符串生成 png:

但是,如果我运行代码,我会得到一个异常,因为 uri 无法打开,因为它已损坏或不受支持:

转换此 svg 时:https ://hastebin.com/mamudofira.xml

图片网址已被替换以保护隐私,但它可以正常工作!

0 投票
0 回答
479 浏览

ffmpeg - FFmpeg 原始 h.264 设置 pts 值

我目前正在使用 ffmpeg 将自定义容器媒体格式转换为 mp4。将所有 h.264 帧转储到一个文件并将 aac 音频转储到另一个文件很简单。然后我可以将两者结合起来,用 ffmpeg 创建一个 mp4 文件。

问题是视频源并不总是完美的。有时帧被丢弃或延迟等。这会导致 A/V 同步问题,因为 pts 是由 ffmpeg 使用恒定速率生成的。我使用的源格式具有 PTS 值,但我无法找到一种方法将其与原始 h.264 帧一起传递给 ffmpeg。

我想可以为自定义格式创建一个解复用器,但这似乎需要付出很多努力。我研究了 ffmpeg 的 .nut 容器格式,认为我可以先从自定义容器转换为 .nut 。不幸的是,它似乎比表面上看起来更复杂。

似乎应该有一种简单的方法可以将帧及其 PTS 值传递给 ffmpeg,但我还没有遇到过。任何帮助,将不胜感激。

这是我正在使用的 ffmpeg 命令

0 投票
1 回答
78 浏览

ffmpeg - 视频转码和编解码器问题

我正在通过 dlna 服务器将一些旧视频转换为在我的 Roku 上播放。我试图更好地了解 MP4 容器以优化转换。我有一个 ogm 视频:

据我了解,MP4 容器可以包含 MP4 视频和 aac 音频。我用了

它有效,但视频无法播放。显然有些不对劲。我不明白为什么,视频看起来像是 MP4 而音频是 aac。我猜是 Xvid 但为什么呢?

谢谢你。托德

0 投票
1 回答
88 浏览

java - 将图像转换为固定格式以丢弃所有额外的注释

我正在尝试在我的应用程序中实现附件,并且用户能够上传图像文件(png、jpg、jpeg)。我已经阅读了关于图像上传的 OWASP 建议,其中一个提示是 - 将输入图像转换为位图(仅保留位图数据,并丢弃所有额外的注释),然后将位图转换为您想要的输出格式。一种合理的方法是先转换为 PBM 格式,然后再转换为 PNG。

图像保存为字节数组。

我正在尝试使用 ImageIO 库中的 ImageTranscoder 重写上传的图像。但我不确定它在做什么,以及是否从图像中删除了所有可能的恶意代码,因为似乎只有元数据被重写。

是否有任何建议,最佳实践,应如何实现预期目标以删除图像文件中所有可能的恶意代码?