Articles

  • Record Stream on-demand

    The following code snippet allows you to record streams on demand.

  • Nvidia commands to monitor gpu usage

    When using NVENC as the implementation for the transcoder, there are a few built-in nvidia commands that you can use to monitor GPU usage plus some.

  • HTTP Provider to serve up VOD assets

    This module allows you to pass in a path to a file name and it’ll serve it up for download. You essentially define a default content path/directory or the content/ folder is the default. Then any file that exists within it, is game for download. 1. Place the following provider under you 8086 HostPort within your VHost.xml: <HTTPProvider> <BaseClass>com.example.videolist.DirectFileDownload</BaseClass> <RequestFilters>download*</RequestFilters> <AuthenticationMethod>none</AuthenticationMethod> </HTTPProvider> 2. Optionally define the fileDownloadContentPath property that will act as your root directory (in your VHost.xml general properties section): <Property> <Name>fileDownloadContentPath</Name> <Type>String</Type> </Property> 3. Put the jar file below into your /lib directory. 4. Restart Wowza and go to the http provider: localhost:8086/download?filename=sample.mp4 Direct Download

  • nDVR convert to VOD

    This article will demonstrate how to use the REST API to convert a nDVR store to a VOD recording leveraging start & end times or duration to clip the conversion as needed.

  • Use ffmpeg for RTSP output

    A simple example of how to publish RTSP to your wowza server using ffmpeg.

  • IPtables reject repeated requests

    You can leverage iptables to reject repeated requests that may be seen as DDOS or rogue players.

  • Create custom authentication file for HTTP Provider

    Below is some instructions on how you can create a completely separate password file on a per HTTP Provider basis. This may be useful if you want some people to have access to Live stream record or to connection counts etc. In this example, we will be using LSR as our test. You will need to add the Authentication.xml file to your Wowza’s conf/ directory (get this from support or from a previous sub 4.x install). Then modify the LSR entry in the VHost.xml file and change the HTTPLiveStreamRecord HTTPProvider entry to the following: Alter your VHost.xml file and change the livestreamrecord http provider as follows: <HTTPProvider> <BaseClass>com.wowza.wms.livestreamrecord.http.HTTPLiveStreamRecord</BaseClass> <RequestFilters>livestreamrecord*</RequestFilters> <AuthenticationMethod>example-digest</AuthenticationMethod> </HTTPProvider> You will then use “example-digest” in your Authentication.xml file and include the following in that: <Method> <Name>example-digest</Name> <Description>Test Digest Authentication</Description> <Class>com.wowza.wms.authentication.AuthenticateDigest</Class> <Properties> <Property> <Name>passwordFile</Name> <Value>${com.wowza.wms.ConfigHome}/conf/example.password</Value> </Property> <Property> <Name>realm</Name> <Value>Live Stream Record Realm</Value> </Property> </Properties> </Method> Thereafter create an example.password and add your username & password to it as you would the typical admin.password file. Then just simply restart Wowza and test it out.  

  • Use the API to push publish hls to Akamai

    This code snippet can be used to programmatically send a stream to the Akamai via HLS.

  • Use JWPlayer to failover your streams

    If you’d like a more client-side way to failover your streams you can define an onError event handler within JWPlayer to handle this event.

  • Detect dropped network packets on your linux system

    A couple of quick ways to determine if there is dropped network packets causing problems with your stream connectivity/playback.