Page 1 of 1

Panasonic 50GX810 stuttering when streaming 4k

Posted: Mon Apr 06, 2020 6:58 pm
by cristisor
Hi,

I have UMS installed on a PC with i5, 8 GB of RAM and SSD.
The PC is connected to the network over the wire. The TV is in the next room, connected wireless.

The TV is a Panasonic 50GX810 and supports 4K, HDR+/Dolby Vision.
When I play 4K without transcoding, the movies 4K movies are stuttering badly.
In order to see where the problem could be, I copied the same movie on an external SSD and connected it to the TV directly, via USB. The movie played ok, no issues, so the TV is not the problem.

Next, I opened the task manager and resource monitor on my PC. As you can see in the file
Taskmgr_CCbZ5wMp9n.png
Taskmgr_CCbZ5wMp9n.png (33.55 KiB) Viewed 10522 times
, the CPU is very low and the network upstream traffic goes up to 40 - 50 Mbps maximum.
The resource monitor also looks good.
perfmon_3c3hoQnfsQ.png
perfmon_3c3hoQnfsQ.png (48.77 KiB) Viewed 10522 times
In conclusion, all the resources of my PC are not used at maximum capacity or they don't look so.
The TV plays the video just fine from a direct USB device.
I suspect the network but I don't know how to investigate deeper.

One thing that caught my attention is the following lines of log:
DEBUG 2020-04-06 09:17:59.382 [Library Scanner] net.pms.dlna.DLNAResource File "Event Moments.mkv" will not be streamed because the resolution is incompatible with the renderer.
DEBUG 2020-04-06 09:17:59.382 [Library Scanner] net.pms.dlna.DLNAResource Final verdict: "Event Moments.mkv" will be transcoded with player "FFmpeg Video" with mime type "video/x-matroska"
TRACE 2020-04-06 09:17:59.382 [Library Scanner] net.pms.configuration.FormatConfiguration Matched support line f:.+
TRACE 2020-04-06 09:17:59.382 [Library Scanner] net.pms.configuration.FormatConfiguration Matched support line f:.+
TRACE 2020-04-06 09:17:59.382 [Library Scanner] net.pms.dlna.DLNAResource File "Event Moments.mkv" will be sent with MIME type "MIMETYPE_AUTO"
TRACE 2020-04-06 09:17:59.382 [Library Scanner] net.pms.dlna.DLNAResource Adding "Event Moments.mkv" to transcode folder for player: "FFmpeg Video"

The button to start playing this video was pushed later, so I guess that the logs above come from when the video was identified by UMS.
INFO 2020-04-06 09:34:08.234 [StartPlaying Event] net.pms.dlna.DLNAResource Started playing Event Moments.mkv on your 50GX800_Series

Now, since the video does play correctly from a USB device, it means that it's supported. I also select the option to play without transcoding, so why it doesn't get streamed?

Thanks for the patience to read this :)

Regards,
Cristian.

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Tue Apr 07, 2020 9:06 am
by cristisor
It seems that the problem was the wireless connection.
After connecting the TV with a network cable, 4K movies are playing as expected.
A 4K video, encoded with HEVC (h.265), can reach up to 80 - 90 Mbps.
Taskmgr_bihXog6HqM.png
Taskmgr_bihXog6HqM.png (33.58 KiB) Viewed 10513 times

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Tue Apr 07, 2020 11:56 am
by mik_s
Looks like UMS is transcoding because the config file says that it can only play 1080p files and the resolution is higher

Code: Select all

DEBUG 2020-04-06 09:17:59.382 [Library Scanner] net.pms.dlna.DLNAResource File "Event Moments.mkv" will not be streamed because the resolution is incompatible with the renderer.
If your TV can play without transcoding, change in the config

Code: Select all

MaxVideoWidth = 1920
MaxVideoHeight = 1080
to

Code: Select all

MaxVideoWidth = 4096
MaxVideoHeight = 2160

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Thu Apr 09, 2020 8:28 pm
by cristisor
The resolution of the TV is 3840 x 2160.
I thought that the parameters MaxVideoWidth and MaxVideoHeight are only for transcoding.
Are they used for streaming as well?

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Fri Apr 10, 2020 1:03 am
by mik_s
cristisor wrote: Thu Apr 09, 2020 8:28 pm The resolution of the TV is 3840 x 2160.
I thought that the parameters MaxVideoWidth and MaxVideoHeight are only for transcoding.
Are they used for streaming as well?
They are used to tell UMS what your device is capable of supporting, anything with a higher resolution is transcoded to that.
If your TV has a max resolution of 3840 x 2160, use that.

Just checking up on the resolutions and it appears 4K and UHD are not the same. 4K is 4096 while UHD is 3840

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Sat Apr 11, 2020 6:08 am
by cristisor
I modified the resolution to 3840 x 2160.
Something is still strange. Streaming works fine but transcoding stutters on an i7, 8GB of memory.
The CPU is at 75% max, so it has enough resource left. Any idea why?

This is the config file

Code: Select all

# TRANSCODING AND MUXING CAPABILITIES
TranscodeVideo = MPEGTS-H265-AC3
TranscodeAudio = MP3
MaxVideoBitrateMbps = 0
MaxVideoWidth = 3840
MaxVideoHeight = 2160
H264Level41Limited = false
TranscodeFastStart = true
KeepAspectRatioTranscoding = false
RescaleByRenderer = true
SendDateMetadata = false
ThumbnailPadding = true

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Sat Apr 11, 2020 6:20 am
by mik_s
Not sure. Transcoding 4k using h265 does take up a lot of CPU power, but there maybe other bottlenecks that are holding it back. could be that you are running out of ram :?
You could try try transcoding to h264 instead and see if that take some of the pressure off.

Code: Select all

TranscodeVideo = MPEGTS-H264-AC3

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Sat Apr 11, 2020 9:25 am
by cristisor
I switched to h264 and there's an improvement. The level of stuttering has decreased but it's still visible.
I'm seeing stuttering with really really high quality videos, so most probably the CPU is not capable of handling the transcoding process in real-time.
The other resources, like RAM, network bandwidth, disk I/O look good, so I don't think that there's any bottleneck besides the CPU.
It's an i7 but an older generation, bought years ago. Anyway, I will just look for movies supported by the TV and use transcoding only when there's no other option.

As for the configuration, this works just fine and could be integrated for the Panasonic GX800, GX810 and GX830 series. It relies on another configuration found here, but I tested it pretty much during the past two weeks.

Code: Select all

#----------------------------------------------------------------------------
# Custom Device profile
# See DefaultRenderer.conf for descriptions of all possible renderer options
# and UMS.conf for program options.

# Options in this file override the default settings for the specific 50GX800_Series device(s) listed below.
# Specify devices by uuid (or address if no uuid), separated by commas if more than one.

Device = uuid:4D454930-0100-1000-8001-80C755E29792

# RENDERER INFORMATION
RendererName = Panasonic GX810
RendererIcon = panasonic.png

# RENDERER RECOGNITION
UserAgentSearch = Panasonic MIL DLNA
UpnpDetailsSearch = Panasonic
LoadingPriority = 1

# DLNA SETTINGS
SeekByTime = exclusive
DLNALocalizationRequired = true

# MEDIAINFO
MediaInfo = true

# TRANSCODING AND MUXING CAPABILITIES
TranscodeVideo = MPEGTS-H264-AC3
TranscodeAudio = MP3
MaxVideoBitrateMbps = 0
MaxVideoWidth = 3840
MaxVideoHeight = 2160
H264Level41Limited = false
TranscodeFastStart = true
KeepAspectRatioTranscoding = false
RescaleByRenderer = true
SendDateMetadata = false
ThumbnailPadding = true

# Default settings for direct video transcoding
# MaxVideoWidth = 0
# MaxVideoHeight = 0
# CustomFFmpegOptions = -c:v copy -c:a ac3 -f mpegts

# SUPPORTED MEDIA FORMATS
#    GX800 supported formats according to manual
#    AVI (.avi)
#    Video codec:H.264, MPEG1, MPEG2, MPEG4, VC-1, WMV9
#    Audio codec:AAC, ADPCM, Dolby Audio (Dolby Digital, Dolby Digital Plus), HE-AAC, LPCM, MP3, WMA, WMA Pro
#    
#    MP4 (.f4v, .m4v, .mp4)
#    Video codec:H.264, H.265 (HEVC), MPEG1, MPEG2, MPEG4
#    Audio codec:AAC, Dolby Audio (Dolby Digital, Dolby Digital Plus, Dolby AC-4), Dolby Atmos, HE-AAC, MP3
#    
#    MKV (.mkv)
#    Video codec:H.264, H.265 (HEVC), MPEG1, MPEG2, MPEG4
#    Audio codec:AAC, Dolby Audio (Dolby Digital, Dolby Digital Plus), HE-AAC, MP3, Vorbis
#    
#    ASF (.asf, .wmv)
#    Video codec:MPEG4, VC-1, WMV9
#    Audio codec:AAC, Dolby Audio (Dolby Digital, Dolby Digital Plus), HE-AAC, LPCM, MP3, WMA, WMA Pro
#    
#    FLV (.flv)
#    Video codec:H.264
#    Audio codec:AAC, MP3
#    
#    3GPP (.3gp, .3g2)
#    Video codec:H.264, MPEG4
#    Audio codec:AAC, HE-AAC
#    
#    PS (.mod, .mpg, .mpeg, .vob, .vro)
#    Video codec:H.264, MPEG1, MPEG2, VC-1
#    Audio codec:AAC, Dolby Audio (Dolby Digital, Dolby Digital Plus), HE-AAC, LPCM, MP3
#    
#    TS (.mts, .m2ts, .tp, .trp, .ts, .tts)
#    Video codec:H.264, H.265 (HEVC), MPEG1, MPEG2, VC-1
#    Audio codec:AAC, Dolby Audio (Dolby Digital, Dolby Digital Plus, Dolby AC-4), Dolby Atmos, HE-AAC, MP3
#    
#    WebM (.webm)
#    Video codec:VP9
#    Audio codec:Vorbis
#    
#    Supported Subtitles formats
#    MicroDVD, SubRip, TMPlayer (.srt, .sub, .txt)
#
#
# ============================================================================
#
# ts mime types: application/metastream, video/avchd-stream, video/mts, video/vnd.dlna.mpeg-tts, video/mp2t

# Supported video formats:
Supported = f:avi   	 	  		          v:h264|vc1|mpeg1|mpeg2|mp4       	  a:aac-main|adcpm|ac3|eac3|he-aac|lpcm|mp3|wma|wmapro  	m:video/avi
Supported = f:f4v|m4v|mp4     		          v:h264|h265|mpeg1|mpeg2|mp4 		  a:aac-main|ac3|eac3|atmos|he-aac|mp3 					m:video/mp4
Supported = f:mkv 			  	          v:h264|h265|mpeg1|mpeg2|mp4   		  a:aac-main|ac3|eac3|he-aac|mp3|vorbis 				        m:video/x-matroska
Supported = f:asf 			  	          v:mp4|vc1 					          a:aac-main|ac3|eac3|he-aac|lpcm|mp3|wma|wmapro			m:video/x-ms-asf
Supported = f:wmv 			  	          v:mp4|vc1 					  	  a:aac-main|ac3|eac3|he-aac|lpcm|mp3|wma|wmapro			m:video/x-ms-wmv
Supported = f:flv 			  		  v:h264 						  	  a:aac-main|mp3										m:video/x-flv
Supported = f:3gp			  		  v:h264|mp4					  	  a:aac-main|he-aac										m:video/3gpp
Supported = f:3g2			  		  v:h264|mp4					  	  a:aac-main|he-aac										m:video/3gpp2
Supported = f:mod|mpg|mpeg|vob|vro	  v:h264|mpeg1|mpeg2|vc1		  	  a:aac-main|ac3|eac3|he-aac|lpcm|mp3						m:video/mpeg
Supported = f:tp|trp	 			          v:h264|h265|mpeg1|mpeg2|vc1  		  a:aac-main|ac3|eac3|atmos|he-aac|mp3					m:video/mts
Supported = f:mts|m2ts	 			  v:h264|h265|mpeg1|mpeg2|vc1  		  a:aac-main|ac3|eac3|atmos|he-aac|mp3					m:video/mp2t
Supported = f:mpegts|ts				  v:h264|h265|mpeg1|mpeg2|vc1  		  a:aac-main|ac3|eac3|atmos|he-aac|mp3					m:video/mpeg
Supported = f:tts					  v:h264|h265|mpeg1|mpeg2|vc1  		  a:aac-main|ac3|eac3|atmos|he-aac|mp3					m:video/vnd.dlna.mpeg-tts
Supported = f:webm					  v:vp9 						 	  a:vorbis												m:video/webm
    
# Supported audio formats:
Supported = f:mp3     m:audio/mpeg 
Supported = f:m4a     m:audio/x-m4a       a:(?!alac).+
Supported = f:flac      m:audio/x-flac 
Supported = f:wma     m:audio/x-ms-wma 
Supported = f:wav      m:audio/L16                       s:48000
Supported = f:wav      m:audio/L16         a:lpcm   		s:48000

# SUPPORTED SUBTITLES TAGS
SupportedExternalSubtitlesFormats = MICRODVD,SUBRIP,TEXT
SupportedInternalSubtitlesFormats = MICRODVD,SUBRIP,TEXT
StreamSubsForTranscodedVideo = true

SupportedVideoBitDepths = 8,10

Re: Panasonic 50GX810 stuttering when streaming 4k

Posted: Sat Apr 11, 2020 3:00 pm
by mik_s
Yeah looks like your CPU is not quite up to the task. Mine is a 2nd gen i5 and handles 1080p alright but is close to maxing it out, wouldn't be any good at higher resolutions.

One thing I used to do when I had to use my old laptop that only had a dual core CPU and wasn't keeping up with transcoding in HD, is pausing the file and go do something for 5-10 mins while it builds up a buffer, so when you resume you don't see any stuttering (until you catch up that is)

Obviously you want to minimise transcoding as much as possible. always worth trying the "No Transcoding" in the #-TRANSCODE-# folder and see if it plays.