CasparCG.Config for multiple Devices


#1

Hi Guys,

I am pretty sure, that this should be possible, but with my Trials I did not achieve both Channels working.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <paths>
    <media-path>media\</media-path>
    <log-path>log\</log-path>
    <data-path>data\</data-path>
    <template-path>templates\</template-path>
    <thumbnails-path>thumbnails\</thumbnails-path>
  </paths>
  <channels>
    <channel>
        <video-mode>1080i5000</video-mode>
        <consumers>
          <screen>
            <device>1</device>
          </screen>
          <system-audio />
        </consumers>
    </channel>
    <channel>
		<video-mode>1080i5000</video-mode>
		<consumers>
			<decklink>
				<device>1</device>
				<key-device>device + 1</key-device>
				<embedded-audio>true</embedded-audio>
				<latency>default</latency>
				<keyer>external</keyer>
				<key-only>false</key-only>
				<buffer-depth>4</buffer-depth>
			</decklink>
		</consumers>
    </channel>
  </channels>
  <controllers>
    <tcp>
        <port>5250</port>
        <protocol>AMCP</protocol>
    </tcp>
  </controllers>
</configuration>

I would like to use testwise the Screen-Consumer as a Preview-Monitor and the Decklink-Consumer as final Output.
What I am doing wrong? The code looks quite ok to me.

And as additional question. Would the 1st Channel (Screen-Consumer) in config be the VideoChannel 1?
I am asking because I thought I could load the template only on Preview

CG 1 ADD 10 svtnews/info 1

and if the Client confirms the preview I would show the Template on Channel 2 (Decklink-Consumer)

CG 2 ADD 10 svtnews/info 1

Would that be the correct way?


#2

Have you tried without the keydevice line? It is obsolete with keyer external and I don‘t know if it is simply ignored. What is working and what not? What does the log say? On startup it first logs the config and then it logs the channels on creating it. That shows sometimes what went wrong.


#3

I have changed it into this:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <paths>
    <media-path>media\</media-path>
    <log-path>log\</log-path>
    <data-path>data\</data-path>
    <template-path>templates\</template-path>
    <thumbnails-path>thumbnails\</thumbnails-path>
  </paths>
  <channels>
    <channel>
        <video-mode>1080i5000</video-mode>
        <consumers>
          <screen>
            <device>1</device>
          </screen>
          <system-audio />
        </consumers>
    </channel>
    <channel>
		<video-mode>1080i5000</video-mode>
    	<consumers>
		  <decklink>
		  	<device>1</device>
		  	<embedded-audio>true</embedded-audio>
		  	<latency>default</latency>
		  	<keyer>external</keyer>
		  	<key-only>false</key-only>
		  	<buffer-depth>4</buffer-depth>
		  </decklink>
		</consumers>
    </channel>
  </channels>
  <controllers>
    <tcp>
        <port>5250</port>
        <protocol>AMCP</protocol>
    </tcp>
  </controllers>
</configuration>

Only the Screen-Consumer is working.
The Log contains this:

[2019-03-11 14:05:46.627] [1320] [info]    ############################################################################
[2019-03-11 14:05:46.627] [1320] [info]    CasparCG Server is distributed by the Swedish Broadcasting Corporation (SVT)
[2019-03-11 14:05:46.627] [1320] [info]    under the GNU General Public License GPLv3 or higher.
[2019-03-11 14:05:46.627] [1320] [info]    Please see LICENSE.TXT for details.
[2019-03-11 14:05:46.628] [1320] [info]    http://www.casparcg.com/
[2019-03-11 14:05:46.628] [1320] [info]    ############################################################################
[2019-03-11 14:05:46.628] [1320] [info]    Starting CasparCG Video and Graphics Playout Server 2.0.7.e9fc25a Stable
[2019-03-11 14:05:46.628] [1320] [info]    on Windows 10 Enterprise 
[2019-03-11 14:05:46.628] [1320] [info]    Intel(R) Core(TM) i7-8809G CPU @ 3.10GHz Physical Threads: 8
[2019-03-11 14:05:46.628] [1320] [info]    NUC8i7HVK
[2019-03-11 14:05:46.634] [1320] [info]    Decklink 10.9.3
[2019-03-11 14:05:46.639] [1320] [info]     - UltraStudio HD Mini [1]
[2019-03-11 14:05:46.639] [1320] [info]    Bluefish Not found
[2019-03-11 14:05:46.639] [1320] [info]    FreeImage 3.15.4
[2019-03-11 14:05:46.639] [1320] [info]    FFMPEG-avcodec 55.52.102
[2019-03-11 14:05:46.639] [1320] [info]    FFMPEG-avformat 55.33.100
[2019-03-11 14:05:46.640] [1320] [info]    FFMPEG-avfilter 4.2.100
[2019-03-11 14:05:46.640] [1320] [info]    FFMPEG-avutil 52.66.100
[2019-03-11 14:05:46.640] [1320] [info]    FFMPEG-swscale 2.5.102
[2019-03-11 14:05:46.640] [1320] [info]    Flash $(build.FlashMajorVersion).$(build.FlashMinorVersion).$(build.FlashBuildVersion).$(build.FlashPrivateVersion)
[2019-03-11 14:05:46.641] [1320] [info]    flash[cg20.fth.pal|0] Initialized.
[2019-03-11 14:05:46.641] [1320] [info]    flash[cg20.fth.pal|0] Invoking info-command: <invoke name="GetInfo" returntype="xml"><arguments></arguments></invoke>
[2019-03-11 14:05:46.727] [2804] [debug]   flash-player[cg20.fth.pal|1024x576] [command]      <invoke name="OnCommand" returntype="xml"><arguments><string>Command recieved @GetInfo@?@</string></arguments></invoke>
[2019-03-11 14:05:46.777] [2804] [info]    flash-player[cg20.fth.pal|1024x576] Initialized.
[2019-03-11 14:05:46.778] [2804] [debug]   flash-player[cg20.fth.pal|1024x576] [command]      <invoke name="OnCommand" returntype="xml"><arguments><string>Command recieved @GetInfo@?@</string></arguments></invoke>
[2019-03-11 14:05:46.855] [1320] [trace]   Template-Host 2.0.4.3803 RC
[2019-03-11 14:05:46.855] [1320] [info]    NewTek iVGA unavailable (Processing.AirSend.x86.dll)
[2019-03-11 14:05:46.856] [1320] [info]    casparcg.config:
-----------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <paths>
      <media-path>media\</media-path>
      <log-path>log\</log-path>
      <data-path>data\</data-path>
      <template-path>templates\</template-path>
      <thumbnails-path>thumbnails\</thumbnails-path>
   </paths>
   <channels>
      <channel>
         <video-mode>1080i5000</video-mode>
         <consumers>
            <screen>
               <device>1</device>
            </screen>
            <system-audio/>
         </consumers>
      </channel>
      <channel>
         <video-mode>1080i5000</video-mode>
         <consumers>
            <decklink>
               <device>1</device>
               <embedded-audio>true</embedded-audio>
               <latency>default</latency>
               <keyer>external</keyer>
               <key-only>false</key-only>
               <buffer-depth>4</buffer-depth>
            </decklink>
         </consumers>
      </channel>
   </channels>
   <controllers>
      <tcp>
         <port>5250</port>
         <protocol>AMCP</protocol>
      </tcp>
   </controllers>
</configuration>
-----------------------------------------
[2019-03-11 14:05:46.856] [1320] [info]    Initialized html module.
[2019-03-11 14:05:46.856] [1320] [info]    Initializing OpenGL Device.
[2019-03-11 14:05:47.016] [9224] [info]    OpenGL 4.5.13542 Compatibility Profile Context 25.20.14011.1003 ATI Technologies Inc.
[2019-03-11 14:05:47.019] [9224] [info]    Successfully initialized OpenGL Device.
[2019-03-11 14:05:47.028] [1320] [info]    Initialized ffmpeg module.
[2019-03-11 14:05:47.031] [1320] [info]    Initialized bluefish module.
[2019-03-11 14:05:47.040] [1320] [info]    Initialized decklink module.
[2019-03-11 14:05:47.040] [1320] [info]    Initialized oal module.
[2019-03-11 14:05:47.041] [1320] [info]    Initialized newtek module.
[2019-03-11 14:05:47.041] [1320] [info]    Initialized ogl module.
[2019-03-11 14:05:47.041] [1320] [info]    Initialized flash module.
[2019-03-11 14:05:47.041] [1320] [info]    Initialized image module.
[2019-03-11 14:05:47.058] [9224] [info]    [shader] Blend-modes are disabled.
[2019-03-11 14:05:47.059] [1320] [info]    video_channel[1|1080i5000] Successfully Initialized.
[2019-03-11 14:05:47.100] [1320] [info]    
+---------------+
| filter_buffer |default--[1920x1080 1:1 bgra]--auto-inserted scaler 1:default
|   (buffer)    |
+---------------+

                                                             +-------------------+
auto-inserted scaler 0:default--[1920x1080 1:1 bgra]--default| filter_buffersink |
                                                             |   (buffersink)    |
                                                             +-------------------+

                                                             +-----------------+
auto-inserted scaler 1:default--[1920x1080 1:1 gbrp]--default| Parsed_format_0 |default--[1920x1080 1:1 gbrp]--Parsed_yadif_1:default
                                                             |    (format)     |
                                                             +-----------------+

                                                      +----------------+
Parsed_format_0:default--[1920x1080 1:1 gbrp]--default| Parsed_yadif_1 |default--[1920x1080 1:1 gbrp]--auto-inserted scaler 0:default
                                                      |    (yadif)     |
                                                      +----------------+

                                                     +------------------------+
Parsed_yadif_1:default--[1920x1080 1:1 gbrp]--default| auto-inserted scaler 0 |default--[1920x1080 1:1 bgra]--filter_buffersink:default
                                                     |        (scale)         |
                                                     +------------------------+

                                                    +------------------------+
filter_buffer:default--[1920x1080 1:1 bgra]--default| auto-inserted scaler 1 |default--[1920x1080 1:1 gbrp]--Parsed_format_0:default
                                                    |        (scale)         |
                                                    +------------------------+


[2019-03-11 14:05:47.103] [1320] [info]    Screen consumer [1|1080i5000] Successfully Initialized.
[2019-03-11 14:05:47.103] [10456] [info]    output[1] Screen consumer [1|1080i5000] Added.
[2019-03-11 14:05:47.338] [1320]  [info]    oal[1|1080i5000] Sucessfully Initialized.
[2019-03-11 14:05:47.377] [10456] [info]    output[1] oal[1|1080i5000] Added.
[2019-03-11 14:05:47.383] [1320]  [info]    video_channel[2|1080i5000] Successfully Initialized.
[2019-03-11 14:05:47.392] [2796]  [info]    Screen consumer [1|1080i5000] Successfully Initialized.
[2019-03-11 14:05:47.477] [7496]  [info]    UltraStudio HD Mini [2-1|1080i5000] Using custom allocator.
[2019-03-11 14:05:47.486] [7496]  [info]    UltraStudio HD Mini [2-1|1080i5000] Enabled embedded-audio.
[2019-03-11 14:05:47.486] [7496]  [info]    UltraStudio HD Mini [2-1|1080i5000] Enabled external keyer.
[2019-03-11 14:05:47.497] [7496]  [info]    UltraStudio HD Mini [2-1|1080i5000] Reference signal: not detected.
[2019-03-11 14:05:47.548] [1320]  [info]    UltraStudio HD Mini [2-1|1080i5000] Successfully Initialized.
[2019-03-11 14:05:47.552] [1496]  [info]    output[2] UltraStudio HD Mini [2-1|1080i5000] Added.
[2019-03-11 14:05:47.552] [1320]  [info]    Initialized channels.
[2019-03-11 14:05:47.557] [1320]  [info]    Initialized thumbnail generator.
[2019-03-11 14:05:47.557] [1320]  [info]    WinSock2 Initialized.
[2019-03-11 14:05:47.561] [1320]  [info]    Listener successfully initialized
[2019-03-11 14:05:47.561] [1320]  [info]    Initialized controllers.
[2019-03-11 14:05:47.561] [1320]  [info]    Initialized osc.
[2019-03-11 14:05:47.561] [1320]  [info]    Started initial media information retrieval.
[2019-03-11 14:05:47.688] [8088]  [debug]   Thumbnail producer failed to create thumbnail for html_template/fonts/OFL
[2019-03-11 14:05:48.006] [9408]  [info]    Accepted connection from 172.16.100.101 2
[2019-03-11 14:05:48.006] [9408]  [info]    Received message from 172.16.100.101: VERSION SERVER\r\n
[2019-03-11 14:05:48.006] [11108] [debug]   Executed command: VersionCommand
[2019-03-11 14:05:48.006] [11108] [info]    Sent message to 172.16.100.101: 201 VERSION OK\r\n2.0.7.e9fc25a Stable\r\n
[2019-03-11 14:05:48.007] [9408]  [info]    Received message from 172.16.100.101: INFO\r\n
[2019-03-11 14:05:48.007] [11108] [debug]   Executed command: InfoCommand
[2019-03-11 14:05:48.007] [11108] [info]    Sent message to 172.16.100.101: 200 INFO OK\r\n1 1080i5000 PLAYING\r\n2 1080i5000 PLAYING\r\n\r\n
[2019-03-11 14:05:48.007] [9408]  [info]    Received message from 172.16.100.101: CLS\r\n
[2019-03-11 14:05:48.048] [9408]  [info]    Received message from 172.16.100.101: TLS\r\n
[2019-03-11 14:05:48.048] [9408]  [info]    Received message from 172.16.100.101: DATA LIST\r\n
[2019-03-11 14:05:48.048] [9408]  [info]    Received message from 172.16.100.101: THUMBNAIL LIST\r\n
[2019-03-11 14:05:48.209] [8640]  [info]    Initial media information retrieval finished.
[2019-03-11 14:05:48.214] [11108] [debug]   Executed command: ClsCommand
[2019-03-11 14:05:48.214] [11108] [info]    Sent more than 512 bytes to 172.16.100.101
[2019-03-11 14:05:48.233] [11108] [debug]   Executed command: TlsCommand
[2019-03-11 14:05:48.233] [11108] [info]    Sent more than 512 bytes to 172.16.100.101
[2019-03-11 14:05:48.234] [11108] [debug]   Executed command: DataCommand
[2019-03-11 14:05:48.234] [11108] [info]    Sent message to 172.16.100.101: 200 DATA LIST OK\r\n\r\n
[2019-03-11 14:05:48.242] [11108] [debug]   Executed command: ThumbnailCommand
[2019-03-11 14:05:48.242] [11108] [info]    Sent more than 512 bytes to 172.16.100.101
[2019-03-11 14:06:08.980] [2804]  [info]    flash-player[cg20.fth.pal|1024x576] Uninitialized.
[2019-03-11 14:06:08.984] [5620]  [info]    flash[cg20.fth.pal|5000] Uninitialized.

#4

Are you sure, that your monitor can display 1080i? As it sais, that it has initialized it correctly. Computer monitors seldom work with interlaced content.


#5

Hm, actually yes, cause I am using an SDI2HDMI-Converter and if I disable the Screen-Consumer the SDI-Output works intermeditatly.


#7

I will recheck everything tomorrow,
Changing the code 2 output Preview and Live onto 2 Screen-Consumers, was working fine.
So it seems to work.
I will also check the stuff by using a real SDI-Monitor.


#8

Ok, after checking it all I found out, that the SDI-2-HDMI-Converter became to hot and did not work properly anymore!
After plugging the output directly to the SDI-Monitor everything was fine.

Preview was on Screen-Consumer and Live was on Decklink-Consumer.

I only struggle with the timing of the Preview. It should appear immediately, but of course it plays its animation. Is there a chance to get the Flash-Templates jumping directly to a specific frame to get the preview immediately and avoid to display the whole animation?
I guess I need to add an additional Label call preview and call this by Invoke-Command?!