问题标签 [compositing]

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 投票
2 回答
613 浏览

frameworks - HTML5 视频像素跟踪

我知道,一般来说,将 HTML(甚至进行高级合成操作)叠加到 HTML5 原生视频上是没有问题的。例如,在浏览器中,我已经看到了实时锁定绿屏的很酷的技巧。

不过,我还没有看到可以跟踪视频内内容(可能是在像素级别)并相应地修改合成叠加层的东西。基本上,运动跟踪。一个很好的例子是增强现实类型的应用程序(尽管为了简单起见,我们假设在点播视频而不是实时视频上增加叠加层)。

有没有人见过这样的项目,甚至更好的 HTML5 视频覆盖框架(传输控件除外)?

0 投票
2 回答
730 浏览

video - 使用由脚本控制的高清素材进行实时视频合成

我被要求构建一个在高清屏幕上显示非线性艺术作品的系统,我需要能够将多个视频流实时混合在一起(即使用 alpha 映射),并且我还需要能够编写脚本序列,因此我可以根据情况混合和匹配不同的剪辑,并让它无休止地播放这个序列,而无需用户交互。

我看过各种 VJ 软件、Flash 视频、使用 FFMPEG 解码帧并自己混合它们、通过 vlc 流式传输视频和许多其他东西,但我觉得我没有找到完美的解决方案,所以我转向你们女士先生们建议我可能没有想到的任何软件/技术组合。

我确信某处有解决方案,也许这里有类似经验的人可以就他们遇到的解决方案和陷阱向我提供建议。

谢谢大家的时间。

0 投票
2 回答
692 浏览

feedback - 不要擦除 Quartz Composer 中视觉跟踪的背景

我可以不清除 Quartz Composer 中的背景吗?我想在屏幕上移动图像并使其在旧位置保持可见以产生某种跟踪效果。

谢谢和问候,
塞巴斯蒂安·梅克伦堡

0 投票
1 回答
1535 浏览

c++ - 在 C++ 中拉伸和覆盖位图

我正在与 Vis 合作。Std 2010 Cpp 和我一直试图弄清楚如何从两个现有位图创建位图。

我真的不想使用两个 gl_drawbitmap 函数,每个函数一个,而是创建第三个位图和 gl_drawbitmap 新的一个到我的窗口。我也试图将第二个位图(我们称之为 b2)放在第一个(b1)的中间,所以伪代码看起来有点像:(假设 b2 可以说是 80 乘 60)

我知道 glutGet(GLUT_WINDOW_WIDTH/HEIGHT) 可以找到当前窗口的特定测量值,但我不知道如何为位图找到它。我还没有找到证明它们可行的证据,但是 b1.getHeight() 和 b1.getWidth() 能解决问题吗?

总的来说,我在弄清楚如何将两者结合起来时遇到了很多麻烦。

功能相关,这就是我试图将代码放入的内容。

0 投票
2 回答
5623 浏览

java - Java - 在paintComponent中进行合成的圆角面板

从最初的问题(如下),我现在提供以下赏​​金:

AlphaComposite圆角的基于解决方案。

  • 请用JPanel.
  • 角落必须完全透明。
  • 必须能够支持JPG绘画,但仍然有圆角
  • 不得使用 setClip(或任何剪辑)
  • 必须有不错的表现

希望有人能快速解决这个问题,这似乎很容易。

如果有一个很好解释的理由说明为什么这永远不能完成,并且其他人同意,我也会奖励赏金。

这是我想到的示例图像(但使用AlphaComposite在此处输入图像描述


原始问题

我一直在试图找出一种使用合成来做圆角的方法,非常类似于How to make a rounded corner image in Javahttp://weblogs.java.net/blog/campbell/archive/2006/07/ java_2d_tricker.html

但是,我没有中间 BufferedImage 的尝试是行不通的——圆形的目标合成显然不会影响源。我尝试了不同的东西,但没有任何效果。应该得到一个圆形的红色矩形,而不是我得到一个方形的。

所以,我有两个问题,真的:

1)有没有办法使这项工作?

2)中间图像实际上会产生更好的性能吗?

SSCCE:

测试面板TPanel

及其沙盒

0 投票
2 回答
725 浏览

javascript - 用于产生类似 iOS 的滚动的线程合成?

什么是线程合成?

它在最近的Paul Irish Post中被称为产生类似 iOS 的滚动的一种手段:

我搜索了 chrome about:flags,但找不到 Paul 所指的内容。我认为它与元素的呈现方式有关,但我对是否/如何以编程方式处理合成感兴趣(在 JavaScript 中?)。

0 投票
1 回答
2759 浏览

graphics - 使用混合模式重新创建 HSV 颜色

我正在开发一个应用程序,该应用程序创建的图像的色调、饱和度和值会根据不同的参数而变化。出于性能原因,单独渲染色调、饱和度和值分量,然后使用 Photoshop 风格的混合模式(正片叠底、叠加、屏幕、色调等)将它们合成在一起是有意义的。

我已经知道如何对 RGB 图像执行此操作:将每个通道拆分为自己的红色、绿色或蓝色图像,其值范围从透明到该通道的颜色。将它们叠加在黑色之上并将它们的混合模式设置为屏幕,嘿,你有你的彩色图像:

由组件制成的 RGB 图像

我将如何使用由 HSV 值定义的图像来执行此操作?我的应用程序经常更改其中一个通道而不更改其他两个通道,如果我可以在 GPU 上合成现有图像而不是每次发生变化时都渲染一个全新的图像,它将加快我的渲染速度。

这是一个例子: 使用单独的 H、S 和 V 通道生成的图像

在此示例中,色调在圆周上从 0º 到 360º 变化,饱和度从中心到边缘从 0% 到 100% 变化,亮度 (V) 在圆周上从 0% 到 100% 变化。这是我的应用程序创建的典型图像类型。有没有可以用来分别创建这些通道并以数学上完美的方式合成它们的常见混合模式的组合?

0 投票
2 回答
883 浏览

html - Way to detect if WebGL viewport is on screen?

Is there any way to be able to query the GPU to tell me if my viewport in my webpage is currently on screen or not? For example, if I had a 3d scene rendering in a canvas in an iframe, is there a way to query the hardware (within my iframe and only the pixels or verts in the viewport) to say if I am on screen or scrolled off screen?

I'm curious as to whether this is something I can do at the vertex shader level. Does WebGL even perform the shader program on a viewport that is offscreen? Lets say if it is scrolled below the canvas, or the viewport is obstructed by another webpage browser window? Is there a way to query the compositing portion of webgl to see if it is even in view or Iterate through the "RenderObject" Tree to test if it is even onscreen and then return this value? I am trying to get much more performance out of a project I am working on and I am trying to only render what is visible on screen.

Any possible ideas? Is this even possible? Thanks!

0 投票
2 回答
3085 浏览

linux - 如何开始编写合成 WM?

我想写一个基本的硬件加速窗口管理器,所以我一直在寻找一些关于如何开始的文档,但我只找到了这个教程,它使用了一个过时版本的 Clutter 并且不会使用当前可用的任何版本构建。是否有任何其他好的资源可以做到这一点,或者,一个真正简单的合成 WM 来查看其来源?

0 投票
0 回答
740 浏览

android - Android:将多层视频合成为一个新视频

我在 Android 中使用 SurfaceViews、mediarecorder、VideoView 等对视频和图像有一些基本经验。但是我想做的是合成多层视频(通常顶层有一个 alpha 通道来暴露它后面的层)在缓冲区中并将结果保存到新的视频文件中。同样有用的是能够执行诸如“屏幕”、“乘法”或“叠加”之类的合成功能。

任何想法如何做到这一点?