Code Monkey home page Code Monkey logo

casparcg / server Goto Github PK

View Code? Open in Web Editor NEW
868.0 104.0 268.0 257.22 MB

CasparCG Server is a Windows and Linux software used to play out professional graphics, audio and video to multiple outputs. It has been in 24/7 broadcast production since 2006. Ready-to-use downloads are available under the Releases tab https://casparcg.com.

License: GNU General Public License v3.0

Shell 0.14% C++ 62.00% C 34.22% CMake 2.86% Batchfile 0.07% Dockerfile 0.03% GLSL 0.68%
casparcg casparcg-server c-plus-plus professional broadcast broadcasting video-player video-recording video-streaming streaming-video

server's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

server's Issues

LOAD sometimes doesn't display first frame still

Converted from SourceForge issue 3597876, submitted by tk-3

Upon a LOAD # FILE. Sometimes the first frame of the video clip is not displayed as a still on the layer.

The behavior is random. I have seen it happen with H.264 and MPEG2 files, although codec may not have an affect on the issue. In my experience the first frame decode "miss" happens 5-10% of the time.

data retrieve new_line server-version 203.3590

Converted from SourceForge issue 3599247, submitted by None

For V203.3590 I found out that in the server log the send messages (as reply on DATA RETRIEVE) are the same containing \n (for new line). But tracing the ip contents (wireshark) these \n ('x5C6E as in V202.2592) is missing and replaced by LF ('x0A).

caspar-log (both versions log the same!)
[12/21/12 12:13:29] [0C882BD8] [info] Sent message to 192.168.178.26: #\n#c:info\nc:version\n#f:news\n\n\r\n

wireshark trace 203.3590
0000 00 16 0a 07 d3 7d 84 8f 69 b0 bb 32 08 00 45 00 .....}.. i..2..E.
0010 00 53 18 ed 40 00 80 06 fc 25 c0 a8 b2 26 c0 a8 .S..@... .%...&..
0020 b2 1a 14 82 b3 84 bc 40 d9 6a 62 fa ce 43 80 18 .......@ .jb..C..
0030 01 04 f6 d2 00 00 01 01 08 0a 00 02 28 0d 00 2c ........ ....(..,
0040 15 ca 23 0a 23 63 3a 69 6e 66 6f 0a 63 3a 76 65 ..#.#c:i nfo.c:ve
0050 72 73 69 6f 6e 0a 23 66 3a 6e 65 77 73 0a 0a 0d rsion.#f :news...
0060 0a

wireshark trace 202
0000 00 16 0a 07 d3 7d 84 8f 69 b0 bb 32 08 00 45 00 .....}.. i..2..E.
0010 00 56 16 99 40 00 80 06 fe 76 c0 a8 b2 26 c0 a8 .V..@... .v...&..
0020 b2 1a 14 82 b3 5e 87 dc 15 16 69 b9 4e ad 80 18 .....^.. ..i.N...
0030 01 04 07 b7 00 00 01 01 08 0a 00 01 cd e5 00 2b ........ .......+
0040 34 66 23 5c 6e 23 63 3a 69 6e 66 6f 5c 6e 63 3a 4f#\n#c: info\nc:
0050 76 65 72 73 69 6f 6e 5c 6e 23 66 3a 6e 65 77 73 version\ n#f:news
0060 5c 6e 0d 0a \n..

Latin1 characters caused stop in logging

Converted from SourceForge issue 3529446, submitted by hummelstrand

I accidentally sent latin1 characters in otherwise UTF-8-encoded XML to caspar 2.0.2.1853 beta 3, which caused it to stop logging to the terminal window, but otherwise lives happily.

The template data I'm sending looks like this in the server log (here with only ASCII characters, which is also valid UTF-8):
[code]
[03/02/12 22:26:09] [039465C8] [info] Ready for a new command
[03/02/12 22:26:09] [0AADB798] [info] CG 1 ADD 0 "NAME-AND-ROLE" 0 "<componentData id="f0"><data id="text" value="Berge" /><componentData id="f1"><data id="text" value="" />"
[03/02/12 22:26:10] [03946778] [info] flash[cg20.fth.720p5000] Successfully initialized with template-host: C:/CasparCG 2.0 Beta 3/server/templates/\cg20.fth.720p5000 width: 1280 height: 720.
[03/02/12 22:26:10] [039465C8] [info] flash[cg20.fth.720p5000|0] Invoking add-command: 0NAME-AND-ROLE.ft]]>
[03/02/12 22:26:10] [039465C8] [info] Executed command: CGCommand
[03/02/12 22:26:10] [039465C8] [info] Sent 202 CG OK
[/code]

When sending a latin1 character (here the word "Bø" in f0), the server log truncates the data just before the ø. Notice the value attribute to the data tag:
[code]
[03/02/12 22:27:31] [04BD6658] [info] Ready for a new command
[03/02/12 22:27:31] [08532758] [info] CG 1 ADD 0 "NAME-AND-ROLE" 0 "<componentData id="f0"><data id="text" value="B[03/02/12 22:27:31] [04BD6778] [info] flash[cg20.fth.720p5000] Successfully initialized with template-host: C:/CasparCG 2.0 Beta 3/server/templates/\cg20.fth.720p5000 width: 1280 height: 720.
[03/02/12 22:27:31] [04BD6658] [info] flash[cg20.fth.720p5000|0] Invoking add-command: 0NAME-AND-ROLE.ft<![CDATA[<data id="text" value="B[03/02/12 22:27:31] [04BD6658] [info] Executed command: CGCommand
[03/02/12 22:27:31] [04BD6658] [info] Sent 202 CG OK
[/code]

The cmd.exe terminal window just stops printing anything at all at the ø for the rest of the session. The flash template is however shown on the output, just without the latin1 character(s).

From: http://casparcg.com/forum/posting.php?mode=edit&f=10&p=3088

Cb offset on Decklink output

Converted from SourceForge issue 3603756, submitted by avanier

YCbCr values are offset by -4Cb for all non-black pixels that should be white on SDI output of Decklink SDI.

Bug found on system running
Windows 7 x64
Core i3-540
GeForce GTX 460 (Drv. V. 8.17.13.142)
Blackmagic Design Decklink SDI (Drv. V. 9.7.0.0) (It was confirmed other applications such as Adobe Premiere output correct levels for same source files)
Tested on CasparCG 2.0.3.3590 / 2.0.3.3760 / 2.1.0.3385 with identical results

Bug exhibited on material originating from original material provided in TGA, flash templates, and pictured alpha masks part of the CasparCG demo file library.

PRINT no Alpha

Converted from SourceForge issue 3596921, submitted by didikunz

The PRINT command creates a PNG-graphic in the Data server path. Under Server 2.0 Stable the PNG has a alpha channel, that is the alpha of the template, or whatever is on that channel at that moment. Under 2.1.0 there is no alpha channel. Is this by design or by error?

I would want to use it to render lower-thirds and the like for using in non-linear-editing. (Need to use 2.1.0 because there is no OpenGL capable GPU).

Didi

CasparCG Client fails to launch

Converted from SourceForge issue 3559879, submitted by james2432

The casparCG fails to launch as the flashcontrol on the form is never initialized. The error:
NullReferenceException at line 396 in FlashTemplateHostControl.cs

I've fixed this by initializing the control in the framework (as the variable is private)
Attached is the patched source
framework\csharp\trunk\Svt.Caspar.Controls\FlashTemplateHostControl.Designer.cs

in the InitializeComponent() method I've added:
shockwaveFlashControl1 = new ShockwaveFlashControl();

Which enables the client to be run

Choppy audio in 720p5000 Channel

Converted from SourceForge issue 3576058, submitted by aircooled76

I think have found a bug in the Server 2.0...

When I play a BMD Intensity Pro input at 1080i5000 into a Caspar Channel using the command: "play 1 decklink 1 format 1080i5000"

I do not get the problem when I play a 1080i50 clip from my HDD, I have also tested a few other file formats with no issues.

I am unsure if this bug is connected to another bug relating to choppy audio in 720p60000 and 720p5997 clips https://sourceforge.net/tracker/?func=detail&aid=3574060&group_id=224232&atid=1061033

attached excerpt from log file

Flexible field order handling

Converted from SourceForge issue 3014286, submitted by hummelstrand

Enable per-clip command for setting for field dominance of pre-rendered videos played by the FFmpeg Producer, making it possible to switch the field dominance of interlaced videos. This would trigger the field dominance switcher function.

Expose the list of interpretation rules used for such things as the field dominance switcher function, in a user-editable text file.
[
Enable a per-session setting of the field dominance render setting in the Flash Producer so that lower/even field rendering is supported.

Disk Consumer

Converted from SourceForge issue 3592756, submitted by nickehallgren

In build 3548 when recording to h264 the recorded video gets corrupted (visible on playback). DNxHD works perfectly but sometimes h264 would be more convenient to use. Log attached

Incorrect cadence run semantics

Converted from SourceForge issue 3532321, submitted by ronag

CasparCG counts audio cadence runs in nb_samples * nb_channels (see video_format.cpp), however it should be counted as nb_samples, and then multiplied by correct nb_channels inside producers/mixers/consumers.

Can't add more than one fullscreen Screen Consumer

Converted from SourceForge issue 3529444, submitted by hummelstrand

I cannot get Caspar CG to output more than 1 screen consumer. This issue came about when I was playing with key channel. ([url=http://casparcg.com/forum/viewtopic.php?f=6&t=661]Previous Conversations[/url]).

Robert suggested that in the config file, the following should work fine:

1 2

CasparCG seems to only pay attention to the second entry, in this case device two.

Robert's suggested work-a-round successfully adds new screens, but windowed:
ADD 1-1 SCREEN DEVICE 1

From: http://casparcg.com/forum/posting.php?mode=edit&f=10&p=3445

CLK server component can't handle more than one connection

Converted from SourceForge issue 3568865, submitted by hellgore

The CLK server component is not safe when multiple connections is in use, because it has a global parser. If the CLK server will potentially handle more than one client at a time, this must be fixed. Probably a refactoring of the ProtocolStrategy API is needed where each AsyncEventServer has a ProtocolStrategyFactory instead -- resulting in each connection having its own ProtocolStrategy instance for stateful parsing of a single client input.

CG OK sent even when command failed

Converted from SourceForge issue 3601966, submitted by hummelstrand

Verify that a template is playing before acknowledging CG Command (via AMCP)
CasparCG Server acknowledges a CG Command (by 202 CG OK) although not being able to perform the command. Failure is because there is no template playing on corresponding layer, which is detected by the template host as "ReferenceError: No template playing on layer 3".

Feature Request: The module handling the command should somehow acquire info from the template host for validation of templates before giving an acknowledge on the command.

Example from the log:
...
"[12/20/12 15:14:25] [07A43C60] [debug] Executed command: CGCommand
[12/20/12 15:14:25] [07A43C60] [info] Sent message to 10.23.19.107: 202 CG OK\r\n
[12/20/12 15:14:25] [07A43D80] [debug] flash-player[cg20.fth.720p5000|1280x720] [command] Command recieved @getinfo@?@
[12/20/12 15:14:25] [07A43D80] [info] flash-player[cg20.fth.720p5000|1280x720] Initialized.
[12/20/12 15:14:25] [07A43D80] [debug] flash-player[cg20.fth.720p5000|1280x720] [command] Command recieved @setdata@3@
[12/20/12 15:14:25] [07A43D80] [error] flash-player[cg20.fth.720p5000|1280x720] [error] @setdata@3@ReferenceError: No template playing on layer 3@
[12/20/12 15:14:25] [07A43D80] [info] flash-player[cg20.fth.720p5000|1280x720] Uninitialized.
...

Originally posted by Magnus Hagström, SVT Teknik

video name

Converted from SourceForge issue 3600381, submitted by ncsmedia

Hi I am new here in casparCG and I think I found a little "bug".
When you forget to instance a name in a video imported in Flash and try to compile an error message is generate.

_Error_
If you want to optimize embedded video instances they need to have instance names.

But when you go back and fix it the error message is still generate. You have to shutdown Flash to compile succesfully.

Transparency issues with tga and png stills

Converted from SourceForge issue 3574455, submitted by nickehallgren

I tested build 3364 RC and noticed that the image scroller is now working but that there are issues with transparency (same issues with stills also). If I have a transparent png I get a box cutout around the object that is transparent but everything else is white. Same png and add alpha in separate still it seesm to work until the first page has scrolled past then is goes wierd. A 32bit tga with alpha get inverted alpha (white were it should be transparent) but if I add a black layer below everything the same tga now works perfectly. Images used for testing (made with Photoshop CS6) are attached in .zipfile

Demo video here: http://www.youtube.com/watch?v=v8_KR2DKEeA&feature=youtu.be

"JavaScript error(s) occurred " Bug on Template Generation

Converted from SourceForge issue 3560692, submitted by None

On attempting to generate a template the error "The following JavaScript error(s) occurred" appears in the Flash Console.

After this occurs no more templates can be generated until Flash is closed and reopened.

It didn't happen to begin with, but now happens on every first generation.

Mac OS X 10.8
Flash CS6
Caspar Template Generator 2.0.0

[code]||Generating CasparCG Flash template, version 2.0.0||

 +-----------------------------------------------------

 +Verbose tracing is activated (+), this can be turned off in the Settings tab.

 +Scanning the main timeline for keyframes with labels...

 +Scanning elements...

 +Scanning elements...

 +Scanning elements...

 +Scanning elements...

 +Scanning elements...

 +Scanning elements...

 +Scanning the library for movie clips and bitmaps...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...

 +Scanning elements...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...

 +Scanning elements...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...

 +Scanning elements...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...

 +Scanning elements...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...

 +Scanning elements...

 + >Found a movie clip, scan it's timeline...

 +Scanning a timeline for caspar components...
The following JavaScript error(s) occurred:

The following JavaScript error(s) occurred:[/code]

Flash Console Log file also attached

Mixer properties are not sent via OSC

Converted from SourceForge issue 3599710, submitted by duncanbarnes

When Mixer commands are sent to Ccaspar CG v2.1.0.3385 the properties associated with the mixer are not relayed via OSC.

The example in the log file attached was regrettably done from a laptop so there are performance warnings in the trace output but the bug is the same on a higher performance machine, this example adds a layer with an image on it and then lowers the opacity by 50%, the CasparCG log and screen output show this happening but no mixer data is passed via OSC. This was tested using Macey's OSC monitor as well as my own.

Character infront of command causes crash

Converted from SourceForge issue 3606130, submitted by hreinnbeck

Sending a command like "xPlay 1-1 FILE LOOP" causes the server to crash with the following message:

[02/26/13 22:09:04] [03BF6608] [error] Throw location unknown (consider using BOOST_THROW_EXCEPTION)
Dynamic exception type: class boost::exception_detail::clone_impl<struct boost::exception_detail::error_info_injector >
std::exception::what: bad lexical cast: source type value could not be interpreted as target

[02/26/13 22:09:04] [03BF6608] [fatal] Unhandled exception in main thread. Please report this error on the CasparCG forums (www.casparcg.com/forum).

Tested on 2.0.3.3963. Tested a few other characters, but didn't result in crash. X in front of other commands, like xPause, causes crash.

Steps to reproduce:
Send a valid command but prefix with the character x.

LOAD still image 2.0 vs 2.1

Converted from SourceForge issue 3601803, submitted by kaosconman

Previously, on 2.0, when a still image, PNG, was loaded, it would display automatically. Now, on the alpha release of 2.1, the PLAY command must be sent before it displays.

Server: 2.1.0.3385 UNSTABLE x64

Code masking fails occasionally

Converted from SourceForge issue 3587098, submitted by snakemastr508

Two objects: a mask and an animated object

Code:
maskThis.cacheAsBitmap = true;
msk.cacheAsBitmap = true;
maskThis.mask = msk;

When I build several instances of this template, some of them don\'t apply the masking and show the mask onscreen.
Regenerating the template fixes the problem eventually but makes it unreliable.

Everything else works as it should, no errors and the problem exists in the template once its created.

Template Generator: 2.0.0;
Flash CS4;
The attached file was resaved in CS6 due to software upgrades. This was after the masking problem.

Files are attached. Code in the files is partially Dutch (my apologies for the incovenience)
The masked image has been removed due to filesize

Spelling error: "recieved"

Converted from SourceForge issue 3607245, submitted by hummelstrand

Just debugged a log from 2.0.3.3590 STABLE and found that "recieved" is misspelt.

Here's a sample:
[03/07/13 07:50:26] [062BC578] [debug] flash-player[cg20.fth.pal|1024x576] [command] Command recieved @getinfo@?@

The devil is in the details... :)

720p Audio Choppy

Converted from SourceForge issue 3574060, submitted by hummelstrand

http://casparcg.com/forum/viewtopic.php?f=10&t=833&p=5325

I believe I've discovered an audio bug when outputting clips with the mode set to 720p5994 or 720p6000. Using a Decklink Extreme 3D+, when I'm playing a clip with any audio, it's choppy. If I tell it to set MODE to any other standard, it smooths out. This is with multiple audio clips.

[07/18/12 08:36:24] [05810F68] [info] Starting CasparCG Video and Graphics Playout Server 2.0.2.2592 STABLE
[07/18/12 08:36:24] [05810F68] [info] on Windows 7 Professional
[07/18/12 08:36:24] [05810F68] [info] Intel(R) Xeon(R) CPU E5620 @ 2.40GHz Physical Threads: 16
[07/18/12 08:36:24] [05810F68] [info] empty
[07/18/12 08:36:24] [05810F68] [info] Decklink 9.5.3
[07/18/12 08:36:24] [05810F68] [info] - DeckLink HD Extreme 3D+ [1]
[07/18/12 08:36:24] [05810F68] [info] - DeckLink HD Extreme 3D+ [2]
[07/18/12 08:36:24] [05810F68] [info] Bluefish Not found
[07/18/12 08:36:24] [05810F68] [info] FreeImage 3.13.1
[07/18/12 08:36:24] [05810F68] [info] FFMPEG-avcodec 53.36.0
[07/18/12 08:36:24] [05810F68] [info] FFMPEG-avformat 53.21.0
[07/18/12 08:36:24] [05810F68] [info] FFMPEG-avfilter 2.49.0
[07/18/12 08:36:24] [05810F68] [info] FFMPEG-avutil 51.26.0

Imagescroller start delayed by several seconds

Converted from SourceForge issue 3592748, submitted by nickehallgren

I tried build 3548 and I noticed the there is a long delay (almost 5s) before the image starts scrolling after the start command is issued (used a 19200 wide image). The same image starts immediately in the stable version (where the images scroller starts in the wrong place). If I try to play the same file without SPEED its tells me that the file is not found. Log attached

Interlaced output assumes Upper field order

Converted from SourceForge issue 3014283, submitted by hummelstrand

Flash Producer and FFmpeg Producer needs to be able to render lower field material.
FFmpeg Producer assumes that all DV files are lower-field and automatically field-shift them.
Flash producer renders upper field if Flash frame rate is set to 50.

mixer fill / clip fails or misbehaves on negative values

Converted from SourceForge issue 3603117, submitted by deti

For example:

mixer 1-1 fill 0 -1 0 -1

In my understanding this should flip the image around the x axis. So that
every y value should become its opposite (0 -> 1080, 1 -> 1079, ...
1079 -> 1, 1080 -> 0).

What happens in reality is a pictures that is somehow shifted having a
height of 50%.

Incorrect upsampling of interlaced x:x:0 chroma.

Converted from SourceForge issue 3601847, submitted by ronag

The GPU accelerated chroma upsampling of e.g. YUV420 is currently incorrect. We should probably let ffmpeg convert YUV420 to YUV422 and YUVA420 to YUVA422 before handing frames of to the caspar pipeline. See make_frame in util.cop.

e.g.

if(frame->pix_fmt == YUV420 && frame->interlaced)
convert to YUV422

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.