Is there a way to make a video play, pause when it reaches frame 25, and then resume from that point? Ideally, it should work with StreamDeck.
It’s for some chyrons.
Thank you very much!
Programmatically it would probably be to play - listen for osc - pause at 25 frames - wait for play command.
If it is just a small number of clips you could render out the first 25 frames in one clip and then the rest in another.
Regards
Simon
Thank you very much for your comment, but there are a lot of clips. What I want to do is to set up my stream deck with 4 buttons to control CasparCG: two buttons to navigate through my rundown, one to move up and another to move down. Then, I want a button that, when clicked, plays the video I have selected in my rundown and automatically stops at frame 25. Lastly, I need a resume button that will resume the clip I have selected in my rundown.
I’m not sure if this is possible, and I would appreciate if someone could help me program or configure it.
Thank you very much in advance.
I still don’t get it: What is in this first 25 frames? Some kind of Slate?
Would it be possible to jump to the first frame for the slate and then setup a LOAD command, with a start on the 25th frame to play the actual story?
Is it that, what you try to do?
And by the way Chiron of is a brand of a character generator, so only Caspar‘s here
This is the video and frame 25. I want the entrance animation to be shown when I press play, and the exit animation to be shown when I press resume.
This is the frame 25
I see now. This sort off stuff is usually made in html and not as individual video clips.
Here is a very good webpage to get you started. Hope it helps.
As @ZimeX already said: That is not how Caspar usually is used. These kind of graphics are made as “Templates” in HTML. You only do one template for each design. Then CasparCG sends the text as dynamic values to the template on display. The good thing is, that you do not need to open After Effects (or the like) to change the text, for each typo. Just change the texts inside Caspar client and your good to go. That can happen a second before it goes on-air.
I did this for a project some years back, it was an awards show and we had time to pre-render everything a couple of days in advance.
For that I made a custom client that would play though the videos in order, each one replacing the last.
Some portions of this sequence could have been html, but other parts needed to be pre-rendered videos, so doing it all pre-rendered made it much easier.
I think that if you want to jump into sending amcp commands this might be possible now. In 2.4, if you send a play with a duration, after it has reached the end of the video it should be possible to send a CALL
that updates that duration. I don’t remember if a RESUME
would be needed to or not.
I’m not 100% sure of the syntax, or if it will work, but I think it should work.
That makes sense for an award show with all glitter and glamour added to the designs. But in this case there are not much more than two boxes of variable size containing a text each. So I would definitely go with a template. It does take less than an hour to build that.
Thank you all very much for your answers.
But when I add files to my templates folder, they don’t appear in my CasparCG client, and I see (0).
Thank you very much.
Did you add your video files to the templates folder or did you follow the guide to create html files with javascript and css?
In my templates folder, I placed the HTML, CSS, and JS files. I’m not sure if you have a template that you know works, which you could share with me, so I can test whether it’s a code issue or something else.
Thank you so much
You should atleast have some files show up in caspar client. Have you doublechecked the path in casparcg.config?
I have checked the path in casparcg.config, and it is this one (F:/CasparCG/template/).
Below, I am providing the entire casparcg.config code so you can verify that there are no errors.
Thank you so much
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<log-level>info</log-level>
<paths>
<media-path>media/</media-path>
<log-path>log/</log-path>
<data-path>data/</data-path>
<font-path>font/</font-path>
<template-path>F:/CasparCG/template/</template-path>
</paths>
<lock-clear-phrase>secret</lock-clear-phrase>
<channels>
<channel>
<video-mode>1080p3000</video-mode>
<consumers>
<ndi>
<name>Channel01</name>
<allow-fields>false</allow-fields>
</ndi>
</consumers>
</channel>
</channels>
<controllers>
<tcp>
<port>5250</port>
<protocol>AMCP</protocol>
</tcp>
</controllers>
<amcp>
<media-server>
<host>localhost</host>
<port>5250</port>
</media-server>
</amcp>
<flash>
<buffer-depth>auto</buffer-depth>
<enabled>false</enabled>
</flash>
<html>
<remote-debugging-port>0</remote-debugging-port>
<enable-gpu>false</enable-gpu>
</html>
<ffmpeg>
<producer>
<auto-deinterlace>interlaced</auto-deinterlace>
<threads>4</threads>
</producer>
</ffmpeg>
<ndi>
<auto-load>false</auto-load>
</ndi>
<osc>
<default-port>6250</default-port>
<disable-send-to-amcp-clients>false</disable-send-to-amcp-clients>
<predefined-clients />
</osc>
</configuration>
I think you have a configuration problem in the <amcp> block. By default the media scanner listens for requests from the CasparCG server on port 8000. Your configuration has told the server to use port 5250 - which is already used for the AMCP traffic. Try this block for the amcp part of casparcg.config:
<amcp>
<media-server>
<host>127.0.0.1</host>
<port>8000</port>
</media-server>
</amcp>
Using <host>localhost</host>
should work, but several users have reported issues with this. Using the explicit address seems the most reliable.
If your computer is using port 8000 for some other software, you can change the port used by the scanner. To use port 8121 start the scanner with the command:
scanner.exe --http.port 8121
and set the media server port in casparcg.config to the same port number.
The scanner reads the media paths from the server config file. One feature of the scanner is you can get media lists using an http connect. To see the list of templates type the command below into a browser on the server.
http://127.0.0.1:8000/tls
Entering /cls instead of /tls lists the video media.
I have made the changes, but nothing shows up in the templates section of the client. However, if I go to http://127.0.0.1:8000/tls, I do see:
(200 TLS OK
LOWERTHIRD
UNTITLED)
Do you know what I could do to fix this?
Thank you very much.
The startup order for the scanner and client is important:
- Start the scanner
- Start the server
If you then start the client it refreshes the media list when it starts. If the client is already running then you can tell it to refresh the libraries. See the client menu bar. There are shortcut keys - use R on windows client and command R on a MacOS client.
I’ve tried it and still nothing appears in templates