Results 1 to 8 of 8

Thread: Streaming 4K Video to ROKU

  1. #1
    Join Date
    Dec 2018
    Posts
    29

    Default Streaming 4K Video to ROKU

    Hello.

    I Have been using Mezzmo to stream video up to 1080p, (1920 X 1080), to my ROKU box for over a year with excellent results. Usually I capture the video in MPEG-2, (MPG), and pre-transcode the file to Matroska, (MKV). With 4K video, (3840 X 2160), I am capturing the video in MP4. When I attempt to play the video in MP4, Mezzmo wants to transcode the file on the fly to +hls(-h264,-aac). The playback then pauses, loading periodically, and skips. The picture is not nearly as clear as the source MP4 file.

    I Pre-transcoded the MP4 file to MKV. Mezzmo again wants to transcode on the fly the MKV file to +hls(-h264,-aac). The playback does similar glitches. It skips, pauses, and after about 5 minutes, freezes. The picture quality is not as good as MKV. During the transcoding on the fly, the CPU is running at 88%. It is executing 2 instances of FFmpeg.exe.

    The ROKU box is connected to the network via a wired connection. The base network is Cat6a copper at 10Gbps. The ROKU box is connected to the network via a 1Gbps network switch.

    The Mezzmo server is a HP Z8 G4 computer with dual Intel Xeon Gold 6144 processors at 3.5 GHz running Windows 10 Pro 64bit with 128GB memory.

    The Video Library is stored on a 48TB Thunderbolt external drive with a read speed of 790 MBps.

    The Mezzmo Server is connected to the network via a 10Gbps network card.

    I have setup the Media Devices==> Performance tab for the ROKU box to 800Mbps, and 4K preset to 3840,2160.

    Questions: Why does Mezzmo want to transcode on the fly the MP4 file?
    Why does Mezzmo want to transcode on the fly the already pre-transcoded MKV file?

    I would appreciate your help.

  2. #2
    Join Date
    Sep 2009
    Posts
    2,680

    Default

    Do you pre-transcode the file before browsing to the file on the Roku? When you browse to the file Mezzmo creates a URL for the file based upon the currently preferred transcoding format if the file is to be transcoded, so pre-transcoding the file after this will still use the hls transcoding format. If you browse to the file after pre-transcoding the file then Mezzmo will create a URL to deliver the pre-transcoded file for the device.

    Mezzmo Android: Install it on your tablet, smartphone, Android TV or Amazon Fire to browse and stream files from your Mezzmo library to all your devices. Full details at http://www.conceiva.com/products/mez...mo_android.asp
    Mezzmo for Kodi Add-on: Install it into Kodi to stream files from your Mezzmo library directly in Kodi. Full details at http://www.mezzmo.com/wiki/doku.php?...odi_user_guide
    Mezzmo for Roku App: Install it onto your Roku to stream files from your Mezzmo library. Full details at http://www.mezzmo.com/wiki/doku.php?...oku_user_guide
    Wiki: User Guides & Reference Manual at http://www.mezzmo.com/wiki
    Facebook: http://www.facebook.com/Mezzmo.DLNA.Server
    Twitter: https://twitter.com/conceiva_mezzmo
    Web: http://www.mezzmo.com

  3. #3
    Join Date
    Dec 2018
    Posts
    29

    Default

    Hi Peter.

    I'm not sure what you mean. Here is how I have been setting up the videos for streaming with Mezzmo:

    1st - I use Windows File Explorer to:
    -Create a new video folder in the Mezzmo Library
    -Copy the captured video file, (MPG), to the Mezzmo Library folder

    2nd - I use Mezzmo to:
    -Add the Metadata, Poster and Background Images to the captured video file
    -Pre-Transcode the captured video file to Matroska, (MKV)
    -Save the MKV file to the same Mezzmo Library Folder
    -Add the Metadata, Poster and Background Images to the MKV file

    3rd - I use Windows File Explorer:
    -Move the captured video file, (MPG), to a location outside the Mezzmo Library

    4th - I use the Roku Mezzmo App to select and stream the MKV video file.

    For the 4K video file I follow the same procedure except since the captured file is already MP4, I do not pre-transcode the file. I expect the MP4 file to stream without transcoding, since MP4 is one of the Roku transcoding objects.

    When Mezzmo began transcoding on the fly to -hls, I then pre-transcoded the MP4 file to MKV and moved the MP4 file away from the library.

    Mezzmo again began transcoding the MKV file to -hls.

    I don't attempt to browse the file with the Roku Mezzmo App until after the file has been pre-transcoded to MKV. Do I always have to pre-transcode even if the file is already MP4? Do I have to pre-transcode from MP4 to MP4 to stream MP4?

  4. #4
    Join Date
    Sep 2009
    Posts
    2,680

    Default

    Mezzmo will transcode a file if it does not match the device profile, can you please right-click on one of the mkv files that you have added to the library after pre-transcoding and select Get FFmpeg Information then copy and paste this into a post here.

    The device profile may be limiting the resolution to 1920x1080 so an mp4 that is 4k will be transcoded because it does not match the resolution limit. Try going to 'Media Devices' and double-click your Roku then on the Performance tab set the maximum resolution to 4k.

    Mezzmo Android: Install it on your tablet, smartphone, Android TV or Amazon Fire to browse and stream files from your Mezzmo library to all your devices. Full details at http://www.conceiva.com/products/mez...mo_android.asp
    Mezzmo for Kodi Add-on: Install it into Kodi to stream files from your Mezzmo library directly in Kodi. Full details at http://www.mezzmo.com/wiki/doku.php?...odi_user_guide
    Mezzmo for Roku App: Install it onto your Roku to stream files from your Mezzmo library. Full details at http://www.mezzmo.com/wiki/doku.php?...oku_user_guide
    Wiki: User Guides & Reference Manual at http://www.mezzmo.com/wiki
    Facebook: http://www.facebook.com/Mezzmo.DLNA.Server
    Twitter: https://twitter.com/conceiva_mezzmo
    Web: http://www.mezzmo.com

  5. #5
    Join Date
    Dec 2018
    Posts
    29

    Default

    Here is the Requested Information.

    Under Media Devices, Double Clicking the Roku box ==> General tab:

    Device Name: Roku Streaming Player
    IP Address: 192.168.1.128
    MAC Address: D8:31:34:5A1:47
    Network Adapter: [192.168.1.112] Intel(R) Ethernet 10G 2P X550-t Adapter #2
    Device Profile: Roku Streaming Player

    ==> Performance tab

    Device Settings:
    Maximum Bitrate - 800 Mbps
    Maximum video size - checkbox is checked
    Width: 3840 Height: 2160
    Deliver folder artwork - checkbox is checked

    FFmpeg Information for the MKV file:

    ffmpeg version N-78742-gf477849 Copyright (c) 2000-2017 the FFmpeg developers
    built with gcc 4.9.2 (GCC)
    configuration: --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --enable-static --disable-shared --enable-zlib --disable-postproc --prefix=/home/peter/ffmpeg/build/gpl64 --enable-libmp3lame --enable-libx264 --enable-gpl --extra-libs='-lx264 -lpthread -lstdc++' --enable-runtime-cpudetect --extra-cflags=-I/home/peter/cc32/include --extra-ldflags=-L/home/peter/cc64/lib --pkg-config=pkg-config --pkg-config-flags=--static --disable-w32threads --enable-libvpx --enable-libvorbis --enable-libtheora --enable-libx265 --enable-cuda --enable-cuvid --enable-dxva2 --enable-libmfx --enable-nvenc --enable-gnutls --extra-libs='-lz -lnettle -lhogweed -lgmp -lidn -lws2_32 -lcrypt32'
    libavutil 55. 74.100 / 55. 74.100
    libavcodec 57.103.100 / 57.103.100
    libavformat 57. 76.100 / 57. 76.100
    libavdevice 57. 7.100 / 57. 7.100
    libavfilter 6.100.100 / 6.100.100
    libswscale 4. 7.102 / 4. 7.102
    libswresample 2. 8.100 / 2. 8.100
    Input #0, matroska,webm, from 'E:\Chuck & Kathy\Home Video Projects\Movies\Mission Impossible - Fallout\Video\Mission Impossible - Fallout.mkv':
    Metadata:
    COMPATIBLE_BRANDS: isomiso2avc1mp41
    MAJOR_BRAND : isom
    MINOR_VERSION : 512
    ENCODER : Lavf57.76.100
    Duration: 02:27:32.15, start: 0.000000, bitrate: 13948 kb/s
    Stream #0:0: Video: h264 (High), yuv420p(progressive), 3840x2160 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 1k tbn, 119.88 tbc (default)
    Metadata:
    HANDLER_NAME : VideoHandler
    ENCODER : Lavc57.103.100 libx264
    DURATION : 02:27:32.150000000
    Stream #0:1: Audio: aac (LC), 44100 Hz, stereo, fltp (default)
    Metadata:
    HANDLER_NAME : SoundHandler
    DURATION : 02:27:32.080000000
    Stream #0:2: Audio: ac3, 44100 Hz, 5.1(side), fltp, 448 kb/s (default)
    Metadata:
    HANDLER_NAME : SoundHandler
    ENCODER : Lavc57.103.100 ac3_fixed
    DURATION : 02:27:32.097000000
    At least one output file must be specified

    <MEZZMO>: Child process ended with code: 109, ExitCode=1


    ---> DB Level Info: 41, 100
    ---> Frame rate: 59.94
    ---> Aspect ratio: 16:9 PAR=1:1
    ---> Duration: 02:27:32


    FFmpeg Information for the MP4 file:

    ffmpeg version N-78742-gf477849 Copyright (c) 2000-2017 the FFmpeg developers
    built with gcc 4.9.2 (GCC)
    configuration: --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --enable-static --disable-shared --enable-zlib --disable-postproc --prefix=/home/peter/ffmpeg/build/gpl64 --enable-libmp3lame --enable-libx264 --enable-gpl --extra-libs='-lx264 -lpthread -lstdc++' --enable-runtime-cpudetect --extra-cflags=-I/home/peter/cc32/include --extra-ldflags=-L/home/peter/cc64/lib --pkg-config=pkg-config --pkg-config-flags=--static --disable-w32threads --enable-libvpx --enable-libvorbis --enable-libtheora --enable-libx265 --enable-cuda --enable-cuvid --enable-dxva2 --enable-libmfx --enable-nvenc --enable-gnutls --extra-libs='-lz -lnettle -lhogweed -lgmp -lidn -lws2_32 -lcrypt32'
    libavutil 55. 74.100 / 55. 74.100
    libavcodec 57.103.100 / 57.103.100
    libavformat 57. 76.100 / 57. 76.100
    libavdevice 57. 7.100 / 57. 7.100
    libavfilter 6.100.100 / 6.100.100
    libswscale 4. 7.102 / 4. 7.102
    libswresample 2. 8.100 / 2. 8.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'E:\Chuck & Kathy\Home Video Projects\Movies\Mission Impossible - Fallout\Video\Mission Impossible - Fallout MP4.mp4':
    Metadata:
    major_brand : isom
    minor_version : 512
    compatible_brands: isomiso2avc1mp41
    encoder : Lavf58.12.100
    Duration: 02:27:32.13, start: 0.000000, bitrate: 115365 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], 115157 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)
    Metadata:
    handler_name : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 195 kb/s (default)
    Metadata:
    handler_name : SoundHandler
    At least one output file must be specified

    <MEZZMO>: Child process ended with code: 109, ExitCode=1


    ---> DB Level Info: 52, 77
    ---> Frame rate: 59.94
    ---> Aspect ratio: 16:9 PAR=1:1
    ---> Duration: 02:27:32

  6. #6
    Join Date
    Sep 2009
    Posts
    2,680

    Default

    The resolution of both files may trigger transcoding, if you change the max resolution to 4k in Performance Settings this should allow the files to play without triggering transcoding.

    Mezzmo Android: Install it on your tablet, smartphone, Android TV or Amazon Fire to browse and stream files from your Mezzmo library to all your devices. Full details at http://www.conceiva.com/products/mez...mo_android.asp
    Mezzmo for Kodi Add-on: Install it into Kodi to stream files from your Mezzmo library directly in Kodi. Full details at http://www.mezzmo.com/wiki/doku.php?...odi_user_guide
    Mezzmo for Roku App: Install it onto your Roku to stream files from your Mezzmo library. Full details at http://www.mezzmo.com/wiki/doku.php?...oku_user_guide
    Wiki: User Guides & Reference Manual at http://www.mezzmo.com/wiki
    Facebook: http://www.facebook.com/Mezzmo.DLNA.Server
    Twitter: https://twitter.com/conceiva_mezzmo
    Web: http://www.mezzmo.com

  7. #7
    Join Date
    Dec 2018
    Posts
    29

    Default

    Sorry for the delay in responding. A fencing crew digging post holes cut our internet cable and it took AT&T about 3 days to get us re-connected. During this time I was able to make some observations.

    The problem started when I started using a new capture device to support 4K video. The capture board only produces MP4 output. When I pre-transcode the MP4 file to Matroska, (MKV), Mezzmo still wants to transcode it again to hls. This not only happens with 4K, (2160p), video, it is now happening with 1080p video as well. It never used to do this when the capture device captured in AVI format. There must be something in the MP4 ‎that is causing Mezzmo to pass it through the pre-transcoding process, and trigger the on the fly transcoding.

    When I checked the checkbox for "Turn off transcoding for all connected devices" in the Transcoding Settings tab, the pre-transcoded MKV file streams OK. I can use this option because I really don't want any "on the fly" transcoding anyway, and it doesn't prevent pre-transcoding activity.

    I am curious, however, what is causing Mezzmo to trigger on the fly transcoding in this situation. We have 4 Roku Ultimate boxes connected to the server. After the network outage, I discovered that Mezzmo never refreshes the list of Roku devices. I wound up with 8 device entries. The old entries with the old IP, and MAC addresses were still there after we had reconnected the devices with new IP addresses. The Performance tab is located in the Media Devices tab, The device is selected from the list of Roku devices that contain these IP addresses. I take it that these Performance Settings must be set for the current active devices, so I deleted all of the Roku devices from the list and then re-entered the Performance Settings after they had reconnected. These settings include the network speed and resolution settings.

  8. #8
    Join Date
    Sep 2009
    Posts
    2,680

    Default

    Mezzmo never removes devices from the device list so if your network changes you will have stale devices that never get used. This is because there is no way to tell when a device is no longer going to connect to the server so we leave them there and if the IP address is used by another device we set it to 0.

    Mezzmo Android: Install it on your tablet, smartphone, Android TV or Amazon Fire to browse and stream files from your Mezzmo library to all your devices. Full details at http://www.conceiva.com/products/mez...mo_android.asp
    Mezzmo for Kodi Add-on: Install it into Kodi to stream files from your Mezzmo library directly in Kodi. Full details at http://www.mezzmo.com/wiki/doku.php?...odi_user_guide
    Mezzmo for Roku App: Install it onto your Roku to stream files from your Mezzmo library. Full details at http://www.mezzmo.com/wiki/doku.php?...oku_user_guide
    Wiki: User Guides & Reference Manual at http://www.mezzmo.com/wiki
    Facebook: http://www.facebook.com/Mezzmo.DLNA.Server
    Twitter: https://twitter.com/conceiva_mezzmo
    Web: http://www.mezzmo.com

Similar Threads

  1. Streaming to Roku Issues
    By Jeff in forum Mezzmo Questions and Support
    Replies: 17
    Last Post: 11-11-2021, 01:19 PM
  2. Roku Streaming Stick+ and Mezzmo App
    By GCardall in forum Mezzmo Questions and Support
    Replies: 2
    Last Post: 11-06-2017, 01:10 AM
  3. Early video stops using ROKU
    By Lifferds in forum Mezzmo Questions and Support
    Replies: 2
    Last Post: 01-03-2017, 04:02 PM
  4. Mezzmo 5.0.1.0 transcoding and Roku Streaming Stick
    By kickz28 in forum Mezzmo Questions and Support
    Replies: 4
    Last Post: 07-22-2016, 11:15 AM
  5. LG 42LE5500 Streaming video
    By Jason in forum Mezzmo Questions and Support
    Replies: 16
    Last Post: 08-08-2011, 09:54 AM

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •