问题标签 [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.
list - 在 Haskell 中合并两个列表
无法弄清楚如何在 Haskell中以下列方式合并两个列表:
list - 在 Haskell 中交错列表列表
我想知道如何在 Haskell 中编写一个将列表列表交错为单个列表的函数,例如,如果我有一个名为的函数
interleavelists :: [[a]] -> [a]
它应该能够交错元素。
示例:[[1,2,3] [4,5,6] [7,8]] --> [1,4,7,2,5,8,3,6]
。
列表可以是有限的也可以是无限的......我可以使用foldr
吗?
php - 转置和展平二维索引数组,其中行可能不等长
我想采用这样的数组并将其组合成 1 个单个数组。
但是我希望数组结果交错。
所以它最终看起来像
我想要它,这样不管传入多少初始键(这个有 2 个),它应该与 1、2 或 5 一起使用。此外,正如您从我的示例中看到的最有可能的元素数量不会匹配。
任何人都知道实现这一目标的最佳方法?
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 缓冲区。这看起来是个好计划吗?
任何帮助表示赞赏,谢谢。
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
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 库。但我找不到任何关于交错这方面的信息。
任何人都可以给我一个提示?谢谢和亲切的问候。
python - 我需要有关 gstreamer-0.10 上的音频“交错”的帮助
我正在尝试编写视频/音频配音编辑器。尝试在 vala/genie 中混合多个音频文件。使用加法器或交错。
我需要将此 gst-launch 命令转换为 Genie 或 Vala 代码,但使用:1.- Gst.Element.link 2.- Gst.ElementFactory.make 3.- request_pad和其他...请不要使用parse_launch()
我有这个精灵代码:
我不知道出了什么问题。
merge - 交织 SAS 数据集(按常见患者编号)
我需要交错到 SAS 数据集,但前提是它们都存在患者 ID。在合并语句中,我会使用“in”和“if”,但是,我需要堆叠数据。数据在变量方面是等价的。
有任何想法吗?
c - 如何对像素数据进行位条带化?
我有 3 个缓冲区,其中包含在 32 位处理器上运行的 R、G、B 位数据。
我需要按以下方式组合三个字节:
其中 xxxxxxxx 继续到缓冲区中的每个下一个字节。
我正在寻找一种将它们结合起来的最佳方式。我的方法绝对没有效率。
这是我的方法
clojure - clojure 中交错的扩展
我想编写一个函数来交错两个给定的序列。该功能应该像这样工作:
该过程将在达到更长的序列时结束。
我的代码是:
但是这段代码运行如下:
如何修复此代码?谢谢!