casparcg-connection
casparcg-connection copied to clipboard
Locks up if info() is given channel and/or layer
-
I'm submitting a ... [x] bug report [ ] feature request [ ] question about the decisions made in the repository [ ] question about how to use this project
-
Summary
Issuing simply info() works perfectly. But if I request info for layer or layer-channel, it will freeze indefinitely.
Code to reproduce:
const casparState = await connection.info(1);
Console debug in node app:
New command added, "InfoCommand". 1 command(s) in command queues.
Sending command, "InfoCommand" with priority "NORMAL". undefined command(s) in sentCommands, 0 command(s) in command queues.
REQ ekkwp8n INFO 1
Handling response, "InfoCommand" with token "ekkwp8n"
Caspar log:
[2021-02-03 20:09:22.712] [info] Received message from 192.168.3.1: REQ r56b26h INFO 1\r\n
[2021-02-03 20:09:22.713] [info] Sent more than 512 bytes to 192.168.3.1
This is the data returned if I replay the issued command in a telnet session:
REQ dbinhfr INFO 1\r\n
RES dbinhfr 201 INFO OK
<?xml version="1.0" encoding="utf-8"?>
<channel>
<framerate>50</framerate>
<framerate>1</framerate>
<mixer>
<audio>
<volume>5242880</volume>
<volume>5242880</volume>
<volume>0</volume>
<volume>0</volume>
<volume>0</volume>
<volume>0</volume>
<volume>0</volume>
<volume>0</volume>
</audio>
</mixer>
<stage>
<layer>
<layer_100>
<background>
<producer>empty</producer>
</background>
<foreground>
<file>
<path>media/stills/screenbug.png</path>
</file>
<paused>false</paused>
<producer>image</producer>
</foreground>
</layer_100>
<layer_50>
<background>
<producer>empty</producer>
</background>
<foreground>
<file>
<clip>370.27999999999997</clip>
<clip>1867</clip>
<name>625695/broadcast/Running_an_SME_on_Debian.dv</name>
<path>media//625695/broadcast/Running_an_SME_on_Debian.dv</path>
<streams>
<file>
<streams_0>
<fps>25</fps>
<fps>1</fps>
</streams_0>
<streams_1>
<fps>0</fps>
<fps>0</fps>
</streams_1>
</file>
</streams>
<time>1118.8</time>
<time>2237.2800000000002</time>
</file>
<loop>false</loop>
<paused>false</paused>
<producer>ffmpeg</producer>
</foreground>
</layer_50>
</layer>
</stage>
</channel>
- Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)
Caspar version is main branch HEAD built in docker image.
Hi @toresbe,
As you can find under readme#features this project only supports AMCP protocol 2.0 and 2.1, the response you listed was added in 2.2 (or maybe 2.3) and differs quite a lot from the 2.1 implementation therefore it unfortunately won't work.
Ahhh! My mistake, terribly sorry. Are there any plans for 2.3 support in the future?
This is fixed as of version 6.0.0