<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic MJPEG streaming with Android 5.1 Extended Media Codec package (i.MX6) in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832274#M127827</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;I'm having some trouble using the&amp;nbsp;&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=https://www.nxp.com/webapp/Download?colCode%3DIMX6_L5.1_2.1.0_ANDROID-DOCS&amp;amp;source=gmail&amp;amp;ust=1532106166161000&amp;amp;usg=AFQjCNED_wTTdj-4EkMjbaV7hG_MJ-Ltwg" href="https://www.nxp.com/webapp/Download?colCode=IMX6_L5.1_2.1.0_ANDROID-DOCS" style="color: #1155cc;" target="_blank"&gt;android 5.1 extended multimedia codec&lt;/A&gt;&amp;nbsp;package with our AOSP 5.1 build. I've very closely followed the instructions in the release notes to install, build, and test the added components without error. I've even been able to verify certain added components are working as intended, such as the added AAC audio support.&amp;nbsp;&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;My problem begins with attempting to use MJPEG video sources (originally failed to play a camera mjpeg video stream and am now trying to simplify). I've attempted using the instructions in the release notes to test using a network video stream, but Android's gallery3d app fails to play the video. I've tried using various incarnations of the following commands to no avail:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;# stream from host&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;vlc -vvv stream_file_name --sout udp://&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://224.0.1.1:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGGkgIJx-L3Zk8Lw891lBeF0Qvgmw" href="http://224.0.1.1:1234/" style="color: #1155cc;" target="_blank"&gt;224.0.1.1:1234&lt;/A&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;&lt;DIV&gt;# play on android device&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;&lt;DIV&gt;am start -n com.android.gallery3d/com.android.gallery3d.app.MovieActivity -d udp://&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://224.0.1.1:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGGkgIJx-L3Zk8Lw891lBeF0Qvgmw" href="http://224.0.1.1:1234/" style="color: #1155cc;" target="_blank"&gt;224.0.1.1:1234&lt;/A&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;Here is a snippet from the logcat of the device after failing to play the video stream:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #222222; background-color: #ffffff; border-left: 1px solid #cccccc; font-size: 12.8px; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;D/AndroidRuntime( 8810): &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; START com.android.internal.os.RuntimeInit uid 0 &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&lt;BR /&gt;D/AndroidRuntime( 8810): CheckJNI is ON&lt;BR /&gt;E/cutils-trace( 8810): Error opening trace file: No such file or directory (2)&lt;BR /&gt;E/memtrack( 8810): Couldn't load memtrack module (No such file or directory)&lt;BR /&gt;E/android.os.Debug( 8810): failed to load memtrack module: -2&lt;BR /&gt;D/AndroidRuntime( 8810): Calling main entry &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://com.android.commands.am.Am&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGbhvL4mdLvIZp_iMhqmdAYZnOQlA" href="http://com.android.commands.am.am/" style="color: #1155cc;" target="_blank"&gt;com.android.commands.am.Am&lt;/A&gt;&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): START u0 {dat=&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt; flg=0x10000000 cmp=com.android.gallery3d/.app.MovieActivity} from uid 0 on display 0&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): addAppToken: AppWindowToken{33ffeeab token=Token{241ac8fa ActivityRecord{3a306f25 u0 com.android.gallery3d/.app.MovieActivity t8}}} to stack=1 task=8 at 0&lt;BR /&gt;D/AndroidRuntime( 8810): Shutting down VM&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{9176377 u0 Starting com.android.gallery3d} at 3 of 8 (after Window{fbaaa9 u0 com.android.launcher3/com.android.launcher3.Launcher})&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): Start proc 8830:com.android.gallery3d/u0a29 for activity com.android.gallery3d/.app.MovieActivity&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/extsd/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/extsd/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/extsd1/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/extsd1/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/udisk/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/udisk/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/udisk1/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/udisk1/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/sata/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/sata/Android/data/com.android.gallery3d/cache&lt;BR /&gt;I/MediaFocusControl( &amp;nbsp;532): &amp;nbsp;AudioFocus &amp;nbsp;requestAudioFocus() from android.media.AudioManager@2e4f24b9 req=2flags=0x0&lt;BR /&gt;D/OpenGLRenderer( 8830): Use EGL_SWAP_BEHAVIOR_PRESERVED: true&lt;BR /&gt;I/imx6.gralloc( 8830): open gpu gralloc module!&lt;BR /&gt;D/Atlas &amp;nbsp; ( 8830): Validating map...&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{f721867 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity} at 3 of 9 (before Window{9176377 u0 Starting com.android.gallery3d})&lt;BR /&gt;I/OpenGLRenderer( 8830): Initialized EGL, version 1.4&lt;BR /&gt;D/OpenGLRenderer( 8830): Enabling debug mode 0&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;187): [com.android.gallery3d/com.android.gallery3d.app.MovieActivity] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{b840ebd u0 SurfaceView} at 3 of 10 (before Window{f721867 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity})&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): Displayed com.android.gallery3d/.app.MovieActivity: +1s396ms&lt;BR /&gt;I/MediaFocusControl( &amp;nbsp;532): &amp;nbsp;AudioFocus &amp;nbsp;requestAudioFocus() from android.media.AudioManager@2e4f24b9 req=1flags=0x0&lt;BR /&gt;D/MediaPlayer( 8830): Couldn't open file on client side, trying server side&lt;BR /&gt;I/art &amp;nbsp; &amp;nbsp; ( &amp;nbsp;532): Background partial concurrent mark sweep GC freed 7759(595KB) AllocSpace objects, 31(5MB) LOS objects, 33% free, 6MB/10MB, paused 3.032ms total 142.274ms&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Loading content: &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspect media content type by subfix.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentTypeByPipeHandle, uri &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt;&lt;BR /&gt;W/InputMethodManager( 8830): Ignoring onBind: cur seq=14, given seq=13&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: GetContentLength LINE: 115&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentLength url_seek AVSEEK_SIZE fail&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): server seekable: 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): file size: 0, buffer size : 0&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentTypeAndPipeHandle ok, type 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1973&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspect media content type.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: Load LINE: 823&lt;BR /&gt;&lt;STRONG&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspec content format&lt;/STRONG&gt;.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GMPlayer Stop&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GMPlayer Stop from wrong state 6&lt;BR /&gt;E/MediaPlayer( 8830): error (-2147483648, 0)&lt;BR /&gt;E/MediaPlayer( 8830): Error (-2147483648,0)&lt;BR /&gt;D/VideoView( 8830): Error: -2147483648,0&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): not Base app: Adding window Window{3a60e74 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity} at 5 of 10&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;187): [com.android.gallery3d/com.android.gallery3d.app.MovieActivity] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;/BLOCKQUOTE&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;I've also attempted to use the added cactus player app included with the codecs to do the video stream playing. Logcat snippet:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/ActivityManager( &amp;nbsp;538): START u0 {dat=/data/download (2) flg=0x10000000 cmp=com.freescale.cactusplayer/.VideoPlayer} from uid 0 on display 0&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): addAppToken: AppWindowToken{28d1cfdc token=Token{2f099c4f ActivityRecord{4d5d6ae u0 com.freescale.cactusplayer/.VideoPlayer t64}}} to stack=1 task=64 at 3&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): Adding window Window{377afe61 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer} at 9 of 14 (after Window{af6b624 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer})&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;186): [com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): Adding window Window{db6c647 u0 SurfaceView} at 9 of 15 (before Window{377afe61 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer})&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): file size: 8573588, buffer size : 131072&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): it is a MPEG2 content&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Loading content: sharedfd://23:0:8573588:0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Can't inspect media content type by subfix.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): file size: 8573588, buffer size : 131072&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): it is a MPEG2 content&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): MediaTypeInspectByContent role: parser.mpg2&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Core parser BLN_MAD-MMLAYER_MPG2PARSER_04.04.37 &amp;nbsp;build on Aug 12 2015 17:15:05&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Mpeg2CreateParser:parser created successfully&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ExportIndexTable LINE: 175&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Fail to open index file to export index: sharedfd://.idx&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): nPreCacheSize = 186382&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): GetOneSample() send eos , track 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): SetupDecoder MP3 decoder Wrapper &amp;nbsp;build on Apr 10 2014 16:18:39&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;...&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: FilterOneBuffer LINE: 3081&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): FilterOneBuffer: vpu dec buf failure: ret=0x1&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Load LINE: 864&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): StartPipeline faint&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Load LINE: 877&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): Load faint and stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: StateTransDownWard LINE: 341&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_render.surface.sw-based Invalid state transitioin: 1 -&amp;gt; 4.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: SysEventHandler LINE: 1804&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_decoder.mpeg2.hw-based report Error 8000100b.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: FlushInputBuffer LINE: 3622&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): FlushInputBuffer: failure state transition, current state=2&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: StateTransDownWard LINE: 341&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_render.surface.sw-based Invalid state transitioin: 1 -&amp;gt; 2.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: DeInitFilterComponent LINE: 2530&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): invalid state: 2, close vpu manually&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop from wrong state 6&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/ActivityManager( &amp;nbsp;538): Displayed com.freescale.cactusplayer/.VideoPlayer: +1s618ms&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop from wrong state 6&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;Am I missing something here? Is there a better way to test MJPEG support while using these extended codecs?&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 19 Jul 2018 18:13:11 GMT</pubDate>
    <dc:creator>rljones</dc:creator>
    <dc:date>2018-07-19T18:13:11Z</dc:date>
    <item>
      <title>MJPEG streaming with Android 5.1 Extended Media Codec package (i.MX6)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832274#M127827</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;I'm having some trouble using the&amp;nbsp;&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=https://www.nxp.com/webapp/Download?colCode%3DIMX6_L5.1_2.1.0_ANDROID-DOCS&amp;amp;source=gmail&amp;amp;ust=1532106166161000&amp;amp;usg=AFQjCNED_wTTdj-4EkMjbaV7hG_MJ-Ltwg" href="https://www.nxp.com/webapp/Download?colCode=IMX6_L5.1_2.1.0_ANDROID-DOCS" style="color: #1155cc;" target="_blank"&gt;android 5.1 extended multimedia codec&lt;/A&gt;&amp;nbsp;package with our AOSP 5.1 build. I've very closely followed the instructions in the release notes to install, build, and test the added components without error. I've even been able to verify certain added components are working as intended, such as the added AAC audio support.&amp;nbsp;&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;My problem begins with attempting to use MJPEG video sources (originally failed to play a camera mjpeg video stream and am now trying to simplify). I've attempted using the instructions in the release notes to test using a network video stream, but Android's gallery3d app fails to play the video. I've tried using various incarnations of the following commands to no avail:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;# stream from host&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;vlc -vvv stream_file_name --sout udp://&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://224.0.1.1:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGGkgIJx-L3Zk8Lw891lBeF0Qvgmw" href="http://224.0.1.1:1234/" style="color: #1155cc;" target="_blank"&gt;224.0.1.1:1234&lt;/A&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;&lt;DIV&gt;# play on android device&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt;&lt;DIV&gt;am start -n com.android.gallery3d/com.android.gallery3d.app.MovieActivity -d udp://&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://224.0.1.1:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGGkgIJx-L3Zk8Lw891lBeF0Qvgmw" href="http://224.0.1.1:1234/" style="color: #1155cc;" target="_blank"&gt;224.0.1.1:1234&lt;/A&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;Here is a snippet from the logcat of the device after failing to play the video stream:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #222222; background-color: #ffffff; border-left: 1px solid #cccccc; font-size: 12.8px; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;D/AndroidRuntime( 8810): &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; START com.android.internal.os.RuntimeInit uid 0 &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&lt;BR /&gt;D/AndroidRuntime( 8810): CheckJNI is ON&lt;BR /&gt;E/cutils-trace( 8810): Error opening trace file: No such file or directory (2)&lt;BR /&gt;E/memtrack( 8810): Couldn't load memtrack module (No such file or directory)&lt;BR /&gt;E/android.os.Debug( 8810): failed to load memtrack module: -2&lt;BR /&gt;D/AndroidRuntime( 8810): Calling main entry &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://com.android.commands.am.Am&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGbhvL4mdLvIZp_iMhqmdAYZnOQlA" href="http://com.android.commands.am.am/" style="color: #1155cc;" target="_blank"&gt;com.android.commands.am.Am&lt;/A&gt;&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): START u0 {dat=&lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt; flg=0x10000000 cmp=com.android.gallery3d/.app.MovieActivity} from uid 0 on display 0&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): addAppToken: AppWindowToken{33ffeeab token=Token{241ac8fa ActivityRecord{3a306f25 u0 com.android.gallery3d/.app.MovieActivity t8}}} to stack=1 task=8 at 0&lt;BR /&gt;D/AndroidRuntime( 8810): Shutting down VM&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{9176377 u0 Starting com.android.gallery3d} at 3 of 8 (after Window{fbaaa9 u0 com.android.launcher3/com.android.launcher3.Launcher})&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): Start proc 8830:com.android.gallery3d/u0a29 for activity com.android.gallery3d/.app.MovieActivity&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/extsd/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/extsd/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/extsd1/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/extsd1/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/udisk/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/udisk/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/udisk1/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/udisk1/Android/data/com.android.gallery3d/cache&lt;BR /&gt;E/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Failed to find mounted volume for /storage/sata/Android/data/com.android.gallery3d/cache/&lt;BR /&gt;W/Vold &amp;nbsp; &amp;nbsp;( &amp;nbsp;186): Returning OperationFailed - no handler for errno 0&lt;BR /&gt;W/ContextImpl( 8830): Failed to ensure directory: /storage/sata/Android/data/com.android.gallery3d/cache&lt;BR /&gt;I/MediaFocusControl( &amp;nbsp;532): &amp;nbsp;AudioFocus &amp;nbsp;requestAudioFocus() from android.media.AudioManager@2e4f24b9 req=2flags=0x0&lt;BR /&gt;D/OpenGLRenderer( 8830): Use EGL_SWAP_BEHAVIOR_PRESERVED: true&lt;BR /&gt;I/imx6.gralloc( 8830): open gpu gralloc module!&lt;BR /&gt;D/Atlas &amp;nbsp; ( 8830): Validating map...&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{f721867 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity} at 3 of 9 (before Window{9176377 u0 Starting com.android.gallery3d})&lt;BR /&gt;I/OpenGLRenderer( 8830): Initialized EGL, version 1.4&lt;BR /&gt;D/OpenGLRenderer( 8830): Enabling debug mode 0&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;187): [com.android.gallery3d/com.android.gallery3d.app.MovieActivity] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): Adding window Window{b840ebd u0 SurfaceView} at 3 of 10 (before Window{f721867 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity})&lt;BR /&gt;I/ActivityManager( &amp;nbsp;532): Displayed com.android.gallery3d/.app.MovieActivity: +1s396ms&lt;BR /&gt;I/MediaFocusControl( &amp;nbsp;532): &amp;nbsp;AudioFocus &amp;nbsp;requestAudioFocus() from android.media.AudioManager@2e4f24b9 req=1flags=0x0&lt;BR /&gt;D/MediaPlayer( 8830): Couldn't open file on client side, trying server side&lt;BR /&gt;I/art &amp;nbsp; &amp;nbsp; ( &amp;nbsp;532): Background partial concurrent mark sweep GC freed 7759(595KB) AllocSpace objects, 31(5MB) LOS objects, 33% free, 6MB/10MB, paused 3.032ms total 142.274ms&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Loading content: &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspect media content type by subfix.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentTypeByPipeHandle, uri &lt;A data-saferedirecturl="https://www.google.com/url?hl=en&amp;amp;q=http://rjones:1234&amp;amp;source=gmail&amp;amp;ust=1532106166162000&amp;amp;usg=AFQjCNGxujP3kcvV-JuldbNett4P3x2CuQ" href="http://rjones:1234/" style="color: #1155cc;" target="_blank"&gt;http://rjones:1234&lt;/A&gt;&lt;BR /&gt;W/InputMethodManager( 8830): Ignoring onBind: cur seq=14, given seq=13&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: GetContentLength LINE: 115&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentLength url_seek AVSEEK_SIZE fail&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): server seekable: 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): file size: 0, buffer size : 0&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): DetectAudioTypeByFrame: server unseekable&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GetContentTypeAndPipeHandle ok, type 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1973&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspect media content type.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: Load LINE: 823&lt;BR /&gt;&lt;STRONG&gt;I/OMXPlayer( &amp;nbsp;192): Can't inspec content format&lt;/STRONG&gt;.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GMPlayer Stop&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;192): GMPlayer Stop from wrong state 6&lt;BR /&gt;E/MediaPlayer( 8830): error (-2147483648, 0)&lt;BR /&gt;E/MediaPlayer( 8830): Error (-2147483648,0)&lt;BR /&gt;D/VideoView( 8830): Error: -2147483648,0&lt;BR /&gt;V/WindowManager( &amp;nbsp;532): not Base app: Adding window Window{3a60e74 u0 com.android.gallery3d/com.android.gallery3d.app.MovieActivity} at 5 of 10&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;187): [com.android.gallery3d/com.android.gallery3d.app.MovieActivity] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;/BLOCKQUOTE&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;I've also attempted to use the added cactus player app included with the codecs to do the video stream playing. Logcat snippet:&lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt; &lt;/DIV&gt;&lt;DIV style="color: #222222; background-color: #ffffff; font-size: 12.8px;"&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/ActivityManager( &amp;nbsp;538): START u0 {dat=/data/download (2) flg=0x10000000 cmp=com.freescale.cactusplayer/.VideoPlayer} from uid 0 on display 0&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): addAppToken: AppWindowToken{28d1cfdc token=Token{2f099c4f ActivityRecord{4d5d6ae u0 com.freescale.cactusplayer/.VideoPlayer t64}}} to stack=1 task=64 at 3&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): Adding window Window{377afe61 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer} at 9 of 14 (after Window{af6b624 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer})&lt;BR /&gt;E/BufferQueueProducer( &amp;nbsp;186): [com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count&lt;BR /&gt;V/WindowManager( &amp;nbsp;538): Adding window Window{db6c647 u0 SurfaceView} at 9 of 15 (before Window{377afe61 u0 com.freescale.cactusplayer/com.freescale.cactusplayer.VideoPlayer})&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): file size: 8573588, buffer size : 131072&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): it is a MPEG2 content&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Loading content: sharedfd://23:0:8573588:0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: MediaTypeInspect LINE: 1965&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Can't inspect media content type by subfix.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): file size: 8573588, buffer size : 131072&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): it is a MPEG2 content&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): MediaTypeInspectByContent role: parser.mpg2&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Core parser BLN_MAD-MMLAYER_MPG2PARSER_04.04.37 &amp;nbsp;build on Aug 12 2015 17:15:05&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Mpeg2CreateParser:parser created successfully&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ExportIndexTable LINE: 175&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): Fail to open index file to export index: sharedfd://.idx&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): nPreCacheSize = 186382&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): GetOneSample() send eos , track 0&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): SetupDecoder MP3 decoder Wrapper &amp;nbsp;build on Apr 10 2014 16:18:39&amp;nbsp;&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;BR /&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;...&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: ProcessDataBuffer LINE: 232&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): AudioFilterCheckFrameHeader fail.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: FilterOneBuffer LINE: 3081&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): FilterOneBuffer: vpu dec buf failure: ret=0x1&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Load LINE: 864&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): StartPipeline faint&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Load LINE: 877&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): Load faint and stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: StateTransDownWard LINE: 341&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_render.surface.sw-based Invalid state transitioin: 1 -&amp;gt; 4.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: SysEventHandler LINE: 1804&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_decoder.mpeg2.hw-based report Error 8000100b.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: FlushInputBuffer LINE: 3622&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): FlushInputBuffer: failure state transition, current state=2&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: StateTransDownWard LINE: 341&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): OMX.Freescale.std.video_render.surface.sw-based Invalid state transitioin: 1 -&amp;gt; 2.&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: DeInitFilterComponent LINE: 2530&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): invalid state: 2, close vpu manually&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop from wrong state 6&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/ActivityManager( &amp;nbsp;538): Displayed com.freescale.cactusplayer/.VideoPlayer: +1s618ms&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): LEVEL: 1 FUNCTION: Stop LINE: 965&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border-left: 1px solid #cccccc; margin: 0px 0px 0px 0.8ex; padding-left: 1ex;"&gt;I/OMXPlayer( &amp;nbsp;191): GMPlayer Stop from wrong state 6&amp;nbsp;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive-quote" style="border: none; margin: 0px 0px 0px 40px;"&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;Am I missing something here? Is there a better way to test MJPEG support while using these extended codecs?&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2018 18:13:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832274#M127827</guid>
      <dc:creator>rljones</dc:creator>
      <dc:date>2018-07-19T18:13:11Z</dc:date>
    </item>
    <item>
      <title>Re: MJPEG streaming with Android 5.1 Extended Media Codec package (i.MX6)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832275#M127828</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Unfortunately, I get confirmed internally that we do not support the MJPEG protocol in our app. You will need to create an app that could support that protocol. I apologize for this inconvenient.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However, I found some related information that could help you. Please see the below web-pages:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://stackoverflow.com/questions/11274906/play-rtsp-streaming-in-an-android-application" title="https://stackoverflow.com/questions/11274906/play-rtsp-streaming-in-an-android-application"&gt;Play RTSP streaming in an Android application - Stack Overflow&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://gist.github.com/n3wtron/4624820" title="https://gist.github.com/n3wtron/4624820"&gt;Simple Python Motion Jpeg (mjpeg server) from webcam. Using: OpenCV,BaseHTTPServer · GitHub&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Unfortunately, this is as far as I can go.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this information could help you, and I apologize for the inconveniences this could cause you. Have a nice day!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Diego.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Jul 2018 21:47:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832275#M127828</guid>
      <dc:creator>diegoadrian</dc:creator>
      <dc:date>2018-07-27T21:47:57Z</dc:date>
    </item>
    <item>
      <title>Re: MJPEG streaming with Android 5.1 Extended Media Codec package (i.MX6)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832276#M127829</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ended up coming back to this and have a solution implemented that is using hardware decoding. I've done this by editing the extended codec source to include a custom parser I made that understands an mjpeg live stream, creates frames, and passes them to the decoder. If anyone needs some help doing this send me an email.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Oct 2018 18:06:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MJPEG-streaming-with-Android-5-1-Extended-Media-Codec-package-i/m-p/832276#M127829</guid>
      <dc:creator>rljones</dc:creator>
      <dc:date>2018-10-11T18:06:08Z</dc:date>
    </item>
  </channel>
</rss>

