PDA

View Full Version : Nvidia Shield & Mezzmo



martyd
11-19-2018, 10:14 AM
So I finally splashed out and bought an Nvidia Shield TV (without the game controller it falls within my budget). I'm very happy with my purchase, apart from the minor disappointment of it not yet having all the Australian Catchup TV apps, and another issue I'll explain further.

I installed Mezzmo For Android on the Shield. I love the interface and this was a big factor as to why I wanted an Android box. I also installed VLC and disabled the internal player in Mezzmo so I could use VLC. In the Mezzmo server I set the device profile for the Shield to Android To VLC.

Everything worked really fine, but after a couple of days I noticed that almost everything I played was being transcoded when it didn't need to be. For example, an MP4 with H264 and AAC was being transcoded to, would you believe it, H264 & AAC!

I then noticed in the Media Devices list a second entry for the Shield with a device profile of Mezzmo (Android) and an IP of 0.0.0.0. See attached image. Strangely, in the network settings of the Shield there are two MAC addresses - one just called MAC Address (EE:32) and the other Ethernet MAC Address (EE:34). I tried changing the profile in the 0.0.0.0 entry but Mezzmo would not allow it to be saved with a zero IP address and would not let me edit the IP.

If I set the 0.0.0.0 entry to Deny connection, nothing works. If I delete it it comes back with the next use.

I have disabled all unnecessary network options on the Shield including IPv6. All IPs on my network are static - I even allocated an address to the EE:32 MAC, but it doesn't pick it up.

Any advice appreciated.

1155

Peter
11-19-2018, 11:08 AM
Hi Marty,
it may be that the Nvidia Shield has wifi and wired network and Mezzmo is detecting both of them. The Mezzmo app will detect the ethernet adapter on the Nvidia and prioritize using this for streaming but the Mezzmo server may still detect both connections. You should be able to delete the device entry that has 0.0.0.0 for the IP and just use the other one which has the VLC profile set. Transcoding may be occuring due to subtitles or some other property of the file, the profile should support h264 and aac in mp4 files without any bitrate limit. Can you please right-click on the file in Mezzmo and select 'Get FFmpeg information...' then copy and paste this into a post here?

martyd
11-19-2018, 12:52 PM
Hi Peter,

I tried deleting the 0.0.0.0 device but it reappeared next time I used the Shield. I can't find anywhere to disable wifi in the Shield. I'm assuming that once it detects an ethernet connection it hide the wifi settings.

You're probably right about the subtitles (I didn't think of that). There is an srt file with the mp4. Here's the ffmpeg info:

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 '\\NAS-SG4TB-01\Public\TV Show\Drama\Dark Heart (2018)\Season 01\Dark Heart S01E06 (15 Nov 2018) Subs mp4.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.12.100
Duration: 00:46:10.52, start: 0.000000, bitrate: 1504 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 896x504 [SAR 1:1 DAR 16:9], 1399 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 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: 31, 100
---> Frame rate: 25.00
---> Aspect ratio: 16:9 PAR=1:1
---> Duration: 00:46:10

smitbret
11-19-2018, 01:17 PM
The same thing happens with Gen 1 & Gen 2 Amazon FireTVs with their wireless and Cat5 connections. You can't really get rid of or adjust the 0.0.0.0 device because Mezzmo says that every device has to have a legitimate IP Address. I just turned off transcoding for the other one (with the legit IP address) and Mezzmo doesn't transcode at all. I am not sure about which codecs and containers you are using but the nVidia Shield supports just about everything natively so turning off transcoding might fix the problem.



Hi Peter,

I tried deleting the 0.0.0.0 device but it reappeared next time I used the Shield. I can't find anywhere to disable wifi in the Shield. I'm assuming that once it detects an ethernet connection it hide the wifi settings.

You're probably right about the subtitles (I didn't think of that). There is an srt file with the mp4. Here's the ffmpeg info:

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 '\\NAS-SG4TB-01\Public\TV Show\Drama\Dark Heart (2018)\Season 01\Dark Heart S01E06 (15 Nov 2018) Subs mp4.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.12.100
Duration: 00:46:10.52, start: 0.000000, bitrate: 1504 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 896x504 [SAR 1:1 DAR 16:9], 1399 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 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: 31, 100
---> Frame rate: 25.00
---> Aspect ratio: 16:9 PAR=1:1
---> Duration: 00:46:10

Peter
11-19-2018, 01:38 PM
It is probably not going to cause a problem having the 0.0.0.0 device listed. The Android To VLC profile has no support for srt files specified so this will cause Mezzmo to burn the subtitles, to avoid this you can use the 'Conceiva Mezzmo (Android)' profile.

martyd
11-19-2018, 02:31 PM
Thanks Peter and Smitbret, I'll try both suggestions.

martyd
11-20-2018, 02:07 PM
Solved.

That other MAC address (EE:32) is the Wifi MAC. I unplugged the ethernet cable and connected the Shield via Wifi. Mezzmo detects this and now the device that was IP 0.0.0.0 has a legitimate IP. Now I am able to edit that device and save changes. Plug the ethernet back in and all's well.

I played around with a few different files and players and have settled on using Mezzmo's internal player, with transcoding disabled in the Media Device config, and everything works just as I expect it to.

Thanks for the help.

smitbret
11-21-2018, 12:18 AM
Solved.

That other MAC address (EE:32) is the Wifi MAC. I unplugged the ethernet cable and connected the Shield via Wifi. Mezzmo detects this and now the device that was IP 0.0.0.0 has a legitimate IP. Now I am able to edit that device and save changes. Plug the ethernet back in and all's well.

I played around with a few different files and players and have settled on using Mezzmo's internal player, with transcoding disabled in the Media Device config, and everything works just as I expect it to.

Thanks for the help.

If you like VLC, it works fine for playback even with the profile set to Concevia Mezzmo (Android) set as the device profile and with transcoding turned off. With my FireTVs it works better than the Mezzmo Media Player.

martyd
11-21-2018, 09:26 AM
Thanks Brett,

That's good to know. I'll give it a try.

hsbrown2
11-23-2018, 07:52 AM
Not to dis on the Mezzmo app, but you might want to give Kodi a try. I prefer the Kodi UI, and the performance is excellent with the Mezzmo plugin.