问题标签 [multiplexing]
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.
android - Multiplexing online audio and video streams in android
There are two media files hosted on external servers - audio and video. I need to mux them and play as online stream through Android MediaPlayer class.
The main problem, is that I don't know, if there is any possible solution for continuous download-mux-play process. I've seen examples of MediaMuxer class usage, but only with local files.
Currently, I just start two media players like this :
But, of course, this gives terrible synchronization between audio and video. So, the question is - is this even possible to mux online streams, and if yes - where do I start research?
video - 使用 ffmpeg 将多个单视频 MPEG-TS 多路复用到 MPTS
我试图找到一种解决方案,将不同的输入 (ts) 复用到一个 MPTS 中,以便可以用作 DVB-T 调制器的输入。基本上,我想要的是选择卫星接收器提供的某些 TS,将它们重新打包成一个 MPTS 并发送到调制器。目前,我已经设法用一个流来做到这一点,使用以下命令:
其中 videots 是由 mkfifo 命令生成的 fifo 管道。以下代码在接收方产生了结果:
http://i.stack.imgur.com/BZugM.jpg
ffmpeg 中有一个 -map 功能,我可以在其中添加多个音频通道/或视频通道,但它们不会在接收器端被检测为不同的服务电视频道,因为据我了解,必须创建足够的 PMT 表(iso13818)
我能找到的唯一开源是这个http://www.scara.com/~schirmer/o/mplex13818/,但我仍然想知道 ffmpeg 是否可以为我做这项工作?
java - websocket中的多路复用通道
我正在开发一个需要实时通信和文件上传的应用程序。我最好希望通过具有多路复用通道的单个连接来完成。我看到 websocket 协议有一个扩展以允许多路复用,但我认为还没有浏览器支持,如果有的话。我不知道如何使用它。
我想用java开发服务器。socketio 的节点服务器在命名空间上有一个奇怪的错误,并且它的 java 服务器不能在命名空间下正常工作。
我想要一个简单的多路复用系统,以便我可以同时发送一些 json 和二进制文件。是否存在为此而存在的东西,或者我是否需要自己创造一些东西,如果是这样......我从哪里开始?
flume - 水槽多路复用不起作用
我已经像下面这样配置了我的水槽代理。不知何故,水槽代理无法正常运行。它一直挂着,没有任何错误。下面的配置有没有问题。
仅供参考:我有一个名为“country”的文件,其中包含硬编码标题作为状态
谢谢,维诺特
python - 解析多组视频帧的原始二进制文件
我正在尝试在 Python 中解析具有已知标头和长度的原始二进制文件。
数据是6通道多路复用视频。
该文件遵循以下规则来分隔帧:
- 字节 1:表示通道号(例如 0xE0、0xE1、0xE2 ...)
- Bytes 4 & 5:代表图像数据的长度
- 字节 6:长度:图像数据
- 图像数据的末尾用 0xFF 填充,以便每个图像块从 16 字节行中的第一个字节开始。
图像数据的开始
图像数据结束
源文件有几 GB 大。将每个通道解析为单独文件的最佳方法是什么?另外,如何一次批处理多个文件,根据输入名称保存文件?
frame-rate - 时分复用:帧率和比特率
有人可以向我解释如何得到答案,我很迷茫。
Q1。多路复用器使用 2 位时隙组合四个 100-kbps 通道。什么是帧率和比特率?
答案是每秒 50,000 帧和400 kbps。
python - Python - 用于扩展的多个客户端服务器
对于我当前的设置,我有一个使用 Tornado 的客户端服务器、一个独立的数据库服务器和另一个用于我的网站的独立服务器。
我正在考虑在同一系统上运行第二个客户端服务器进程(以利用其多个内核),并且我想在定位我的“客户端”连接到哪个服务器时获得一些建议。每个客户端可以有多个连接(实例)。
我已经研究过使用 memcached 来保存用户标识符列表并将它们链接到他们连接到的服务器,但这似乎不会很好地扩展(例如,有六位数的连接用户) .
我在数据库查找中看到了同样的问题。我已经尽可能地优化了我的服务器,没有进行微优化,我个人对此不以为然。
当前服务器方法:
连接时: 接受连接,每个 IP 的最大连接速率限制。将客户端实例附加到名为“clientList”的列表中。
来自客户端的数据: 每秒最大消息的速率限制。将数据附加到客户端工作队列。如果客户端有一个专用于它的工作队列的线程:return,它的工作将被当前线程咀嚼,否则为这个用户工作队列创建一个新线程,启动它。
TLDR: 我如何有效地存储客户端连接到的服务器以便将消息转发给该用户。
android - Android 提取解码编码多路复用音频
我正在尝试调整在ExtractDecodeEditEncodeMuxTest.java中找到的代码,以便从通过 Cordova 的 device.capture.captureVideo 记录的 mp4 中提取音频和视频,解码音频,编辑解码的音频样本,编码音频,然后将音频混合回与视频并再次另存为 mp4。
我的第一次尝试只是简单地提取、解码、编码和复用音频,而不尝试编辑任何音频样本——如果我能做到这一点,我相当确定我可以根据需要编辑解码的样本。我不需要编辑视频,所以我假设我可以简单地使用 MediaExtractor 来提取和混合视频轨道。
但是,我遇到的问题是我似乎无法正确进行音频解码/编码过程。不断发生的事情是,复用器从提取的视频轨道和提取的 -> 解码 -> 编码的音轨创建 mp4,但是当视频播放正常时,音频以短暂的噪音开始,然后看起来像最后一个几秒钟的音频数据正常播放(但在视频的开头),然后在视频的其余部分静音。
一些相关领域:
配置解码器、编码器和复用器的代码:
怪物 doExtractDecodeEditEncodeMux 方法:
我在提取的前几百个音频帧中看到了这个 ACodec 错误:
这是整个logcat的 pastebin ,其中包括一些完整性检查日志,格式如下:
在出现那些 OMX_ErrorStreamCorrupt 消息时,编码和解码帧的presentationTime 似乎增加得太快了。当它们停止时,解码和编码帧的presentationTime似乎恢复到“正常”,并且似乎与我在视频开头听到的实际“好”音频相匹配——“好”音频来自原始音轨的结尾。
我希望对这些低级 Android 多媒体 API 有更多经验的人可以帮助我理解为什么会发生这种情况。请记住,我很清楚这段代码没有经过优化,在单独的线程中运行等。 - 一旦我有一个基本提取->解码->编辑->编码的工作示例,我将重构以清理内容- >多路复用过程。
谢谢!
c# - 实体框架和多路复用
我的公司有一个 Windows 应用程序,它调用“服务客户端”来从 SQL 中检索数据。该应用程序安装在 10 个用户的机器上。SQL 服务器有 1 个许可用户。服务客户端使用该许可用户帐户连接到 SQL 服务器。这样,多个用户只需 1 个 SQL Server 许可证即可通过服务客户端检索数据。
我知道这种方法是一个有争议的问题,这不是我可以决定的。我只需要知道,实体框架(比如说最新版本)可以以这种方式工作吗?
我有一种感觉,但我想获得更多信息,因为我是使用 EF 的新手。
提前致谢。
http - HTTP/1.1 流水线和 HTTP/2 多路复用有什么区别?
是不是因为它要求按照请求的顺序向客户端做出响应,导致 HTTP 1.1 中的行头阻塞问题?
如果每个请求所用的时间完全相同,那么就不会有行首阻塞和 HTTP 1.1 流水线,并且会像 HTTP/2 多路复用一样执行?
(假设 HTTP/2 请求中没有请求优先级,而忽略 HTTP/2 的其他更改,例如标头压缩、二进制等)