Forum

FAQ: Text on top of video

Yury Udovichenko 2017-07-10 06:29:45 UTC in WMSPanel functionality

Q: How do I draw some text on top of any outgoing stream?

A: You need to use our Live Transcoder with
drawtext filter.

1. Install Live Transcoder and get a license to make it work: https://wmspanel.com/transcoder/install

2. Create a scenario with a decoder for your incoming stream. Check one of our videos as example: https://www.youtube.com/playlist?list=PLRDQWjeuSAkM6itDPes-r8HrN95ub36ue

3. Add custom filter. Specify its name as drawtext, and set its value to something like:

fontfile=/usr/share/fonts/dejavu/DejaVuSans-Bold.ttf: text='%{localtime\:%T}': fontcolor=white@0.8: x=7: y=700

or

fontsize=45: fontfile=/usr/share/nimble/fonts/VCR_OSD_MONO_1.001.ttf: text='%{localtime\:%F %T %Z}': fontcolor=white@0.8: x=15: y=1000: box=1: boxcolor=black@0.4

4. Add encoder for outgoing stream and save scenario.

That's it, your outgoing stream will now have text with local time of the server.

helin 2018-01-14 09:09:03 UTC 

This is an example of Linux.
How it works on Windows?

Alex Pokotilo 2018-01-14 13:30:30 UTC 

this is example for transcoder and it should work the same way for linux/windows

helin 2018-01-14 14:47:23 UTC 

There is no /usr/ share path in Windows how it works?

Alex Pokotilo 2018-01-14 22:14:07 UTC 

you need to specify windows path where font located

Ryan 2022-03-18 21:39:15 UTC 

how do i do text overlay in transcoder for windows? the draw text filter ruins the entire transcode scenario when testing

Sergei 2022-03-21 09:55:00 UTC 

Hello, Ryan.

Please open a ticket at wmspanel.com/help as we will ask you some sensitive details about your setup.
Just a guess, have you specified correct path to the font file for the drawtext filter?

Thank you.

Max 2022-04-06 21:20:26 UTC 

Also having problems running this on Windows.
Has anyone found a solution yet?

Thank you!

Sergei 2022-04-07 01:07:31 UTC 

Hello, Max.

Unfortunately the "drawtext" filter is currently not supported in the Transcoder for Windows, please use Linux version to make it work.

Thank you.

Max 2022-04-12 13:29:52 UTC 

Thank you, are there plans of supporting it in future update?

Sergei 2022-04-13 01:29:26 UTC 

Hello, Max.
Not at the moment, as it is heavily depends on linux dependencies.

Thank you.

Post a reply


Post a new question

Categories:

Tags:

nimbleNimble StreamerFAQHLSnimble streamerDVRRTMPhlsSRTsrtABRcachertmpNimblewmsauthAPItranscoderdvrffmpegapisldpudpVODaudioRTSPfailoverrtspDASHwmspanelSLDPUDPyoutubevodpaywallstreamingabrmp4subtitlesstreamerDispersaLarixmulticastsslliveNDIvideolivestreamingplaylistWMSAuthMPEG-DASHpay-per-viewerrorgeoMPEG-TSre-streamingdashcorsWMSPaneledgebandwidthandroidthumbnailfileWindowsFFMPEGhttpswhite labelconfigsmilencryptionCORSperformancechunksraspberry pimpeg-dashpublish controlcloudfrontDRMRepublishingvlcscte35AWSadvertisinguser agentadvertizerristlarix broadcasterrepublishingS3rules.confipv6MPEGTSFastSpringRecordingRAMwms panelFMLEVATcrossdomainSMILmpegtsaespushakamaiwowzamobilePullserversmanifestcodecchromecastSSLbalancedrmTranscodem3u8TranscoderbugWowzaIDconfigurationsnapshotdownloadreportingawstranscodeAndroidnimblestreamerdomainoutputraspianloopstreamroutesupdateipamazonBroadcastVidillionHttpsmpeg-tsplaylist_dvrVLCPIDscte-35limitCDNsecurityLarix BroadcasterIPthumbnailsEncoderoriginissuechunkUIRegistration Issuedirect link32-bit Windowstwitchcache_controlitworkmecudalive abr support mpeg-dashwmspanelapibeirutreloadWWDCdubaideep statsCentOS v6.4logIIS Smooth StreamingcloudmediaIPTVprofilelarix abrTSReaderAbrHTTPSHot-linking protectionHDSvaddioalertsMuxjwplayer websitewhmcsbaselinetimelineVaddioAV BridgePI3 Ubuntuview timeNimble Streamer APIAuthentication in HLSinterfacesPi4streamsencrytpionHLS Meta Tag editing.loadbalancingmetadatamod_rewritewmsattachmentHEVCwmsauthsignhighhds streampriceresourceciscolocalOld logsscreencastID3 tagsgbpsAxis.net hotlinkRTMP republishno internetInterlaceattaching domainssdpshoutcastdocumentationofflineNimble streamer upgradeMulticastcontainerconcurrent-connectionsTrancoder*recordingrtmp abrresumeanalisysniblerServer-sidehls restreamingstoppedrestreamNimble Streamer versionmainMPEG2TSdissapointmentWMSCONFIG_HOMEgentoo install server nimbledatmessagetranscoding using NvidiaPublic IpPaywall Authno WMSPanelwildcardobsTCOVideo Playertransocding republishingdecoderpay per viewAliaslost trafficdvr_archivesmpeg dashnginx rtmp nimbleRaspian Busterexportopensslicecast urllimuxamazon web servicenginxPlayReadydvr stream twicechangeAXVVGhot-linkIOSLarix GroveamfExpression EncoderblocknvencadaptiveAV1 codecJWPLAYERNGINX-RTMPHLS in UDP outHLS PlayerDASH PlayeronSteam stopped workingdvr export to mp4HLS vod7brandingtrialCablemicrosoft streamMP4analyticsapplicationpaywalerrorsrocksoftlog traffic statsscreen freezecan't registeraccuracyprivate networkLarge DVR filesjpegTelegramlive videoseekinginterleavingSLDP PLayermac osx installdebianwotermarknimblesessionidFFmpegmultiple originsvimeohelp errorlive video on demandbandwithload balancezabbixservercache expirylog nimble analysertmp playbackcdnvsomlive streamAdsvideojsViewer Statssourcebitrate#restreamMP4 not playedspaceServer-Side-Task-ControlLive Streamingaes encryptionvideo stoplebanonlocationsubscriptionstereo to monoscreen capturelive pull settingsWMSPanel settingsABR HLS Bitratesconcurrent connectionvod no soundrtmp for YouTubeconnectivitydvr streamunique visitorUbuntu 20 ARM - AWS4Kcrossdomain more then 1 domaincpuWidevineFairplaybuttAWS 3loggingnimble streamer vod hls transmuxingnot foundCPU LoadCross Domainpullicecast metadatainsert logoAS3DVRStreamsControl APIpremium featureinstall players setup ready to goDVRSettingstwitch larix broadcaster androidLive streamingProgressiveAppleDelete recordsadd_chunk failedPost processingfake extensionUbuntu artful 17.10Transcoder MPEG DASHinvalidMPEG DASHnimble streamer web server php script pageautomationstatus:errorvideo loopstarttime duration seekpointoutrateudp streamingrebooticecastMPEG-Dashdroppingmobile app live streamingmonitorapi accessDeep statsloadbalancerweb playerpaymentAVCaptureMovieFileOutputblock downloadstatscontent-dispositiondvr streamsrestartlivestreamavoid refreshABR DVR problemNimble CapacityNimble ServerduplicatingLive SwitchercontentRTMP Republishdemandnot to stealLive BroadcastMultiple Audio trackslarixHotlinking ProtectionStreaming routehotlinkfacebooksecure streaminglow_bandwidthSecurityvp9adwmsAuthSignnimble streamer mpeg-ts multiple inputsLoad-Balancingsounddisk migrationlearnernimble webcam html5Thumbnailsserver incorrect timessaiDVR Setting limitLIVELivepausemosaicrmtpRIST BondingplayoutHow to do live stream with multiple audio tracktranscoder nimblereportsraspberryPaywalldvr on wmspanelfpsVideo cant be playedS3 AWSstorage space availablediskcredentialsvbv-maxratelivestreamintransocderdvr to livewebhookautomateuser_agentdomain lockUsers limitcloudflareVOD HLS streaming on public IPscteInvalid frame headerno soundincoming streamSubtitleslivestream bitratedockerDVRRecordingAuthdelaympeg4Gopstoragealias route.movDVR SettingPORTubuntu 18Teradek Decoderruleshow-tomanage_dvrError when installingartifactsrtsp push androidmultiviewRAM Loadhttp serverLatencywirecasta recordaliasdata slicesplayer sldpmp2 audioNimble streamerfastspringVP9server ip21distributionNimble connectionsabr fallbackqataritworkscdnvideo.jsno audiolatencysoftware versionadjustSO_RCVBUFbuffering videobufferpay-per-minuteCentos 8compatibility protocolsmultiplexFallbackhelp3.6.1-1incomingmulti-viewerUDP MulticastMax connectionhls to multicast udpnoobSSL requestmultiple audio udphotlink protectionRaspberryPi4ultra low latencysha265aws amazonbroadcasterOSXmd5analyseStreamIDprerollnimble on cloudrtmp sldp nimblepluginConnections count limitNimble_Crushwebrtc4GfallbackLinuxtasks-controlRaspberryRTMP to SRTWowza AgentRemote StorageSSAItuningsrt-live-transmitgpu{stream}AmazonTVfireOBSvideo and audio not matchLarix broadcasterSnapshotsspeedup my videoiOSPerformanceSRT RTMPre-publishingletsencryptdvbLL-HLSHTML5 playerAddendamultiple audioABR DASHprogressive downloadeventnimble aliasesNimble StreamLL-HLS DVRav1 codecconnectionsNimbleStreamerIVSDelaympeg2tsbuildABR bitratesPacketizingcountrist set fecprogressivebindbroadcast videoWMSAUTHOBS StudioIIS Media Servicsrtmp republishing transcodenimble.confinterfacetrack multicastpcvideo audioSRT protocoldynamic linksTLSV 1.2 CertificatesubfolderbrowserurlrtmpsHLS StreamingGoogle DriveVR-360Failoverthumbnail dvr-thumbnailaudio languagewordpressrtpnimble dvrBandwidthdurationYadifportsRokuContinuityMPEG2 VideoPCRlogo in streamJetson NanoSecureLarix PlayerramfairplayNginxrepublishconcurrentvideo streamingQuickTimeCloud Storagepublish streamStream Delayhd25trafficAArch64Ristmultiplemultistreamingheadermemoryserver ssl erroractionscript 3dropped framesCSSmultipointrulell-hlscostnimble abr hlsgoogle cloud storagepricingoverlayhot linkingTRANSCODEFmp4Network hlsTonydowntranscodingFFMPEG;RTMP;I/O errorWordpress

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the Privacy Policy. If you want to know more or withdraw your consent to all or some of the cookies, please refer to the Privacy Policy.
By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to the use of cookies.