Verify how Transcoder is running in Wowza Streaming Engine

The Transcoder in Wowza Streaming Engine™ media server software supports Intel Quick Sync and NVIDIA NVENC accelerated encoding on Windows and Linux. When Transcoder runs for the first time, it checks to see if any hardware acceleration resources are available and logs this information in the Wowza Streaming Engine access log file ([install-dir]/logs/wowzastreamingengine_access.log). This article describes what to look for in the logs to determine if hardware acceleration is available and if it's being used.

Note: If you're running Wowza Streaming Engine in standalone mode, you can also look for the following statements in real-time in the console window that you used to start the server. For more information, see Start and stop Wowza Streaming Engine.

Contents


Intel Quick Sync acceleration
NVIDIA NVENC acceleration
MainConcept or Beamr software
Notes

Intel Quick Sync acceleration


Wowza Streaming Engine uses the Intel Media SDK to provide accelerated transcoding using Quick Sync technology. To determine if Quick Sync hardware acceleration is available, look for the following log statements:

Quick Sync is available

JNI:TranscoderSession.isQuickSyncAvailable[streamName]: Intel Quick Sync hardware acceleration is available

Quick Sync isn't available

JNI:TranscoderSession.isQuickSyncAvailable[streamName]: Intel Quick Sync hardware acceleration is NOT available

To use the Quick Sync encoder, in [install-dir]/transcoder/templates/[template].xml, set the Encode/Video/Implementation property to QuickSync. If you choose the QuickSync encoder but hardware acceleration isn't available, Transcoder will use the default MainConcept software encoder.

NVIDIA NVENC acceleration


Wowza Streaming Engine supports NVIDIA NVENC accelerated encoding. To determine if NVIDIA NVENC hardware acceleration is available, look for the following log statements:

NVENC is available

JNI:TranscoderSession.isCUDAAvailable[streamName]: NVidia NVENC hardware acceleration is available

NVENC isn't available

JNI:TranscoderSession.isCUDAAvailable[streamName]: NVidia NVENC hardware acceleration is NOT available

To use the NVENC encoder, in [install-dir]/transcoder/templates/[template].xml, set the Encode/Video/Implementation property to NVENC. If you choose the NVENC encoder but NVENC hardware acceleration isn't available, Transcoder uses the default MainConcept software encoder.
 
Note: Older graphics drivers for your NVIDIA hardware may limit NVENC-based video encoding to approximately 30 simultaneous encoding sessions. Update your graphics driver to the latest version to avoid this limitation.

MainConcept or Beamr software


If your hardware doesn't support acceleration technologies, you can use the default MainConcept or Beamr software encoders, which don't use hardware acceleration. To use a software encoder, in [install-dir]/transcoder/templates/[template].xml, set the Encode/Video/Implementation property to default for MainConcept or beamr for Beamr.

Notes


  • You can configure the Implementation setting in Wowza Streaming Engine for encoding presets and the decoding preset in Wowza Streaming Engine Manager. For more information, see Set up and run Transcoder in Wowza Streaming Engine.
     
  • You'll only experience accelerated transcoding performance if you have the required hardware and drivers. Make sure that you're always running the latest driver for your hardware:
  • On more recent Windows operating systems, Intel Quick Sync hardware acceleration may not be available when running Wowza Streaming Engine as a system service due to a security measure called Session 0 Isolation. For information about how to work around this issue, see Enable hardware-accelerated transcoding for Wowza Streaming Engine when running as a Windows service.
  • You can log the results of the Transcoder hardware inspection that occurs when the Transcoder is invoked for the first time using the transcoderLogHardwareInspection property. To add this property, do the following:
     
    1. In Wowza Streaming Engine Manager, click the Server tab.
       
    2. On the Server Setup page Properties tab, click Custom in the Quick Links bar.
       
      Note: Access to the Properties tab is limited to administrators with advanced permissions. For more information, see Manager credentials.
    3. In the Custom area, click Edit.
       
    4. Click Add Custom Property, specify the following settings in the Add Custom Property dialog box, and then click Add:
       
      • Path - Select /Root/Server.
         
      • Name - Enter transcoderLogHardwareInspection.
         
      • Type - Select Boolean.
         
      • Value - Enter true.
    5. Click Save, and then restart the live application to apply the changes.

    The logs captured when the transcoderLogHardwareInspection property is enabled are similar to the following. In this example, Intel Quick Sync hardware was found during the inspection:
     
    {
        "infoQuickSync":{
          "availabe":true,
          "availableFlags":523,
          "versionMajor":1,
          "versionMinor":16,
          "isQuickSyncH264EncodeAvailable":true,
          "isQuickSyncH265EncodeAvailable":false,
          "isQuickSyncVP8EncodeAvailable":false,
          "isQuickSyncVP9EncodeAvailable":false,
          "isQuickSyncH264DecodeAvailable":true,
          "isQuickSyncH265DecodeAvailable":false,
          "isQuickSyncMP2DecodeAvailable":true,
          "isQuickSyncVP8DecodeAvailable":false,
          "isQuickSyncVP9DecodeAvailable":false
        },
        "infoVAAPI":{
          "available":false
        },
        "infoX264":{
          "available":false
        },
        "infoX265":{
          "available":false
        }
        "infoAdvantechVega": {
           "available": false
        },
        "infoIntrinsicScaler": {
           "available": true
        }
    }