问题标签 [interleave]

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 投票
6 回答
68956 浏览

list - 在 Haskell 中合并两个列表

无法弄清楚如何在 Haskell中以下列方式合并两个列表:

0 投票
4 回答
6491 浏览

list - 在 Haskell 中交错列表列表

我想知道如何在 Haskell 中编写一个将列表列表交错为单个列表的函数,例如,如果我有一个名为的函数

interleavelists :: [[a]] -> [a]

它应该能够交错元素。

示例:[[1,2,3] [4,5,6] [7,8]] --> [1,4,7,2,5,8,3,6]

列表可以是有限的也可以是无限的......我可以使用foldr吗?

0 投票
4 回答
715 浏览

php - 转置和展平二维索引数组,其中行可能不等长

我想采用这样的数组并将其组合成 1 个单个数组。

但是我希望数组结果交错。

所以它最终看起来像

我想要它,这样不管传入多少初始键(这个有 2 个),它应该与 1、2 或 5 一起使用。此外,正如您从我的示例中看到的最有可能的元素数量不会匹配。

任何人都知道实现这一目标的最佳方法?

0 投票
1 回答
1801 浏览

web - 如何将 PCM 音频流转换为在线播放

我可以访问 PCM 音频缓冲区的音频流。我应该清楚我无权访问音频文件。我只能访问 4096 字节的音频数据流。

PCM 缓冲区采用以下格式:

  • PCM 诠释 16
  • 小端
  • 两个通道
  • 交错

要在标准浏览器上支持音频播放,我需要将音频转换为以下格式:

  • PCM 浮点数 32
  • 大端
  • 两个通道(最多)
  • 去交错

该音频来自 iOS 应用程序,因此我可以访问 Swift 和 Objective C(尽管我对 Objective C 不太满意......这使得 Apple 的音频转换器服务几乎无法使用,因为 Swift 真的不喜欢指针)。

此外,播放将在浏览器上进行,因此我可以在客户端 Javascript 或服务器端处理转换。我足够精通以下服务器端语言来进行转换:

  • Java(首选)
  • PHP
  • 节点.js
  • Python

如果有人知道以任何这些语言执行此操作的方法,请告诉我。我已经在这方面工作了足够长的时间,以至于我可能会理解如何做到这一点的非常技术性的描述。

我目前的计划是使用按位运算对左右声道进行去交错,然后使用Web Audio API将 Int 16 缓冲区转换为 Float 32 缓冲区。这看起来是个好计划吗?

任何帮助表示赞赏,谢谢。

0 投票
4 回答
6731 浏览

java - 交错立体声 PCM 线性 Int16 大端音频是什么样的?

我知道网上有很多资源解释如何解交织 PCM 数据。在我目前的项目过程中,我看过其中的大部分……但我没有音频处理方面的背景,而且我很难找到关于这种常见音频形式的存储方式的详细说明。

我确实知道我的音频将有两个通道,因此样本将以 [left][right][left][right] 的格式存储......我不明白这到底是什么意思。我还读到每个样本都以 [left MSB][left LSB][right MSB][right LSB] 格式存储。这是否意味着每个 16 位整数实际上编码了两个 8 位帧,或者每个 16 位整数都有其自己的帧用于左通道或右通道?

谢谢大家。任何帮助表示赞赏。

编辑:如果您选择给出示例,请参阅以下内容。

方法上下文

具体来说,我要做的是将交错的 short[] 转换为两个 float[],每个代表左声道或右声道。我将在 Java 中实现它。

我目前的实施

我试过播放由此产生的音频。它非常接近,足够接近,你可以理解一首歌的歌词,但显然仍然不是正确的方法。

格式

如果有人想了解有关音频格式的更多信息,以下就是我所拥有的一切。

  • 格式为 PCM 2 通道交错式大端线性 int16
  • 采样率为 44100
  • 每个 short[] 缓冲区的短裤数为 2048
  • 每个 short[] 缓冲区的帧数为 1024
  • 每个数据包的帧数为 1
0 投票
1 回答
835 浏览

rtsp - 使用 Ip 摄像头在 RTSP 中设置交错(Onvif 标准)

我正在使用基于 onvif 标准的 IP 摄像机。场景如下:

在此处输入图像描述

RTP端口和HTTP端口分别为22554 和 22280。我对此没有任何问题,我在这些端口中将流量从 A 重新路由到 B 以到达相机。事实上,RTP 会话是正确建立的。

问题出现在SETUP消息中。这里 A(它启动会话)为视频交换的 UDP 连接建立一个新端口(客户端端口)。同样的方法,摄像机也设置了一个新的端口(服务器端口)。由于服务器端口未在 B 中重定向,因此我无法接收任何内容。

我读到有可能使用交错模式,以便为视频数据包使用用于RTSP消息的相同端口(在本例中为 22554)。但我不知道该怎么做。例如,VLC 尝试第一个选项(新的客户端-服务器端口),但由于它不起作用,它成功地设置了另一个具有交错模式的 rtsp 会话。

我开始使用此代码 ( http://bit.ly/1Xvwqx9 ),它基于 Onvif 库。但我找不到任何关于交错这方面的信息。

任何人都可以给我一个提示?谢谢和亲切的问候。

0 投票
3 回答
967 浏览

python - 我需要有关 gstreamer-0.10 上的音频“交错”的帮助

我正在尝试编写视频/音频配音编辑器。尝试在 vala/genie 中混合多个音频文件。使用加法器或交错。

我需要将此 gst-launch 命令转换为 Genie 或 Vala 代码,但使用:1.- Gst.Element.link 2.- Gst.ElementFactory.make 3.- request_pad其他...请不要使用parse_launch()

我有这个精灵代码:

我不知道出了什么问题。

0 投票
3 回答
71 浏览

merge - 交织 SAS 数据集(按常见患者编号)

我需要交错到 SAS 数据集,但前提是它们都存在患者 ID。在合并语句中,我会使用“in”和“if”,但是,我需要堆叠数据。数据在变量方面是等价的。

有任何想法吗?

0 投票
4 回答
232 浏览

c - 如何对像素数据进行位条带化?

我有 3 个缓冲区,其中包含在 32 位处理器上运行的 R、G、B 位数据。

我需要按以下方式组合三个字节:

其中 xxxxxxxx 继续到缓冲区中的每个下一个字节。

我正在寻找一种将它们结合起来的最佳方式。我的方法绝对没有效率。

这是我的方法

0 投票
2 回答
337 浏览

clojure - clojure 中交错的扩展

我想编写一个函数来交错两个给定的序列。该功能应该像这样工作:

该过程将在达到更长的序列时结束。

我的代码是:

但是这段代码运行如下:

如何修复此代码?谢谢!