This document describes a problem that occurs when the Media Experience Engine (MXE) 3500 attempts to transcode some source videos which might contain flaws (or corruption). These flaws may cause the MXE to not process the video or may create output video files that contain the same flaws exhibited by the source video (pixelization or artifacts).
Several examples of this problem might occur. In one example, a user attempts to convert an MP4 file to Flash Video File (FLV) and the converted video show artifacts in the video. When you view the source video in VLC Media Player, no artifacts display. However, when the source video is played in Apple QuickTime, the artifacts are visible. Because MP4 files are transcoded with QuickTime by the MXE, the output file contained the same flaws that are seen when you play the source video with the QuickTime player. In another situation, the user is able to upload three of the five Audio Video Interleave (AVI) files through Cisco Show and Share, and have them process correctly by the MXE. However, two of the videos start through the MXE, and after some percentage of processing, it aborts and generates ECS error messages such as this:
2013-09-12 12:54:19,715 [ServiceWorker-TaskScheduler] ERROR
skSchedulerServiceWorker -[EC_COMPLETED] Task Execution
9078 is now complete. Reason = Failed.
2013-09-12 12:54:19,730 [ServiceWorker-LcsMessage] ERROR
Ecs.LcsMessageWorker - [AME_RESFAILED] [EC:9078]
[Node:localhost] Error, worker (24, prefilter) failed,
unexpectedly closed the connection while running.
In the LCS logs the following messages were seen:
2013-09-12 11:53:53 DBG MXE3500 prefilter 9078 Using reader timeout:  sec(s)
2013-09-12 11:53:59 STA MXE3500 prefilter 9078 0% complete, 6 seconds elapsed
2013-09-12 11:54:05 STA MXE3500 prefilter 9078 1% complete, 12 seconds elapsed
2013-09-12 11:54:11 STA MXE3500 prefilter 9078 2% complete, 18 seconds elapsed
2013-09-12 11:54:17 STA MXE3500 prefilter 9078 3% complete, 24 seconds elapsed
2013-09-12 11:54:19 ERR MXE3500 prefilter 9078 ------------------------------------
2013-09-12 11:54:19 ERR MXE3500 prefilter 9078
Exception code: C0000005 EXCEPTION_ACCESS_VIOLATION
2013-09-12 11:54:19 ERR MXE3500 prefilter 9078 Fault address: 737E3152 01:00002152
2013-09-12 11:54:19 ERR MXE3500 prefilter 9078 illegal read of address(0x0214A000)
When the affected video files are viewed in Windows Media Player, corruption in parts of the video are observed. In both cases, the problems occur in the prefilter stage of the MXE video conversion process.
A solution is to process the corrupted video file through a different pipeline. With an MP4 file, you can force the preprocessor to use DirectShow instead of QuickTime. With an AVI file, you force the preprocessor to use QuickTime.
- Create an XML file named 'manage_input_extensions.xml' with these parameters:
<extension input="ts" treat-as="mpg" />
<extension input="" treat-as="gxf" type="directshow" />
<extension input="mp4" type="directshow" />
<extension input="avi" type="quicktime" />
- Copy this file to the MXE.
- Remote Desktop into the MXE and copy the XML file in the C:\media directory.
- Login to the MXE user interface.
- Navigate to Profile Management, and choose Open Profile. Choose "Preprocessor" for Profile Class and open the appropriate preprocessor file (in the case of Show and Share, choose the DMS_SNS_PP file).
- Navigate to the Management Input Extensions section and check the Enabled checkbox. Browse to \\LOCALHOST\media and select the above copied XML file (manage_input_extensions.xml).
- Save the profile.
- Resubmit the problem video job through Show and Share. You may want to Delete any outstanding failed jobs, if you have not already.