PS4 now support DLNA!

For help and support with Universal Media Server
Forum rules
Please make sure you follow the Problem Reporting Guidelines before posting if you want a reply
Post Reply
AlGrenadine
Posts: 51
Joined: Wed Jun 24, 2015 7:21 pm

Re: PS4 now support DLNA!

Post by AlGrenadine »

I've tested many files and most play ok here but i always get a/v sync issues with every file.
Am i the only one with this problem ?
User avatar
SubJunk
Lead Developer
Posts: 3707
Joined: Sun May 27, 2012 4:12 pm

Re: PS4 now support DLNA!

Post by SubJunk »

New version to test: http://www.spirton.com/uploads/UMS/UMS-87d0375.exe
Logs would be very helpful, and if you want files to test, here's a pack: http://sourceforge.net/projects/unimedi ... z/download
creighton
Posts: 15
Joined: Fri Jun 19, 2015 8:35 am

Re: PS4 now support DLNA!

Post by creighton »

SubJunk wrote:New version to test
I'm sure this will take some time to comb through.

87d037531-my_files

Code: Select all

flv1 - played outright! Manual FFmpeg worked as well.
transcode1 - did not play outright, nor with manual FFmpeg
webm - played audio outright, but no video. the PS4 showed a loading symbol while audio played, never seen this before (same with manual FFmpeg)
87d037531-video_test_suite

Code: Select all

AVI:
All only played audio (except the MP2 one, which didn't play at all). No video was displayed, instead the PS4 continued to show the loading symbol while playing the audio.

MKV (H264):
Most of these streamed fine. Those that needed transcoding, failed (DTS, FLAC, MP2, Opus, Vorbis)

MKV (H265):
Didn't test every single one, but the ones I did, did not play.

MKV (XviD):
Didn't test every single one, but the ones I did, did not play.

MP4:
Lots of issues with these, including some things that probably shouldn't
MP4-H264-AACHE-2ch - UMS thought it needed to trancode this, it didn't ("no encoding" worked)
MP4-H264-AACHE-6ch - transcoding failed ("no encoding" played the video very fast, and I didn't hear any audio)
MP4-H264-MP2-2ch - transcoding failed ("no encoding" showed video, but PS4 said audio was not supported)
MP4-H264-MP3-2ch - transcoding failed ("no encoding" showed video, but PS4 said audio was not supported) - ???
Also saw a bunch of this in the log: "java.lang.OutOfMemoryError: unable to create new native thread"
Attachments
87d037531-video_test_suite.zip
(1.06 MiB) Downloaded 815 times
87d037531-my_files.zip
(73.02 KiB) Downloaded 828 times
Last edited by creighton on Fri Jul 03, 2015 3:59 pm, edited 1 time in total.
cmckendry
Posts: 1
Joined: Fri Jul 03, 2015 9:56 am

Re: PS4 now support DLNA!

Post by cmckendry »

Hey guys. I've been trying to get this to work as well, with not-great results so far. Some things will play, but I'm definitely still relying on my PS3 as my go-to for any real viewing.

I would love to help with testing, but I don't have access to a Windows machine. Would it be a huge pain to upload test builds for other platforms, or is it not worth the added effort?

Alternatively, is there a reliable way that I could extract the necessary resources from the .exe myself?
User avatar
SubJunk
Lead Developer
Posts: 3707
Joined: Sun May 27, 2012 4:12 pm

Re: PS4 now support DLNA!

Post by SubJunk »

creighton wrote:
SubJunk wrote:New version to test
I'm sure this will take some time to comb through.

87d037531-my_files

Code: Select all

flv1 - played outright! Manual FFmpeg worked as well.
transcode1 - did not play outright, nor with manual FFmpeg
webm - played audio outright, but no video. the PS4 showed a loading symbol while audio played, never seen this before (same with manual FFmpeg)
87d037531-video_test_suite

Code: Select all

AVI:
All only played audio (except the MP2 one, which didn't play at all). No video was displayed, instead the PS4 continued to show the loading symbol while playing the audio.

MKV (H264):
Most of these streamed fine. Those that needed transcoding, failed (DTS, FLAC, MP2, Opus, Vorbis)

MKV (H265):
Didn't test every single one, but the ones I did, did not play.

MKV (XviD):
Didn't test every single one, but the ones I did, did not play.

MP4:
Lots of issues with these, including some things that probably shouldn't
MP4-H264-AACHE-2ch - UMS thought it needed to trancode this, it didn't ("no encoding" worked)
MP4-H264-AACHE-6ch - transcoding failed ("no encoding" played the video very fast, and I didn't hear any audio)
MP4-H264-MP2-2ch - transcoding failed ("no encoding" showed video, but PS4 said audio was not supported)
MP4-H264-MP3-2ch - transcoding failed ("no encoding" showed video, but PS4 said audio was not supported) - ???
Also saw a bunch of this in the log: "java.lang.OutOfMemoryError: unable to create new native thread"
Thanks for the extensive testing! I'm very interested in the flv1 file now, because it played successfully with transcoding. Can you please try muxing it to a MKV container and playing that via the FFmpeg option in the #-TRANSCODE-# folder? I can run you through how to do it if you want, or I can do it for you if you upload it somewhere
mero27
Posts: 2
Joined: Sun Jul 05, 2015 1:32 am

Re: PS4 now support DLNA!

Post by mero27 »

Code: Select all

07-04 16:53:45  Exception in thread "mencoder.exe-25-Timer" java.lang.ArithmeticException: / by zero
07-04 16:53:45  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:53:45  	at net.pms.io.BufferedOutputFileImpl$1.run(BufferedOutputFileImpl.java:813)
07-04 16:53:45  	at java.util.TimerThread.mainLoop(Unknown Source)
07-04 16:53:45  	at java.util.TimerThread.run(Unknown Source)
07-04 16:53:48  Exception in thread "StartPlaying Event" java.lang.ArithmeticException: / by zero
07-04 16:53:48  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration.setPlayingRes(RendererConfiguration.java:2485)
07-04 16:53:48  	at net.pms.dlna.DLNAResource$1.run(DLNAResource.java:2593)
07-04 16:53:48  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:07  Exception in thread "mencoder.exe-25-Cleanup" java.lang.ArithmeticException: / by zero
07-04 16:54:07  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl.reset(BufferedOutputFileImpl.java:879)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl$2.run(BufferedOutputFileImpl.java:850)
07-04 16:54:07  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:07  Exception in thread "mencoder.exe-25-Cleanup" java.lang.ArithmeticException: / by zero
07-04 16:54:07  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl.reset(BufferedOutputFileImpl.java:879)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl$2.run(BufferedOutputFileImpl.java:850)
07-04 16:54:07  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:08  Exception in thread "StopPlaying Event" java.lang.ArithmeticException: / by zero
07-04 16:54:08  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration.setPlayingRes(RendererConfiguration.java:2485)
07-04 16:54:08  	at net.pms.dlna.DLNAResource$2$1.run(DLNAResource.java:2677)
07-04 16:54:08  	at java.lang.Thread.run(Unknown Source)
User avatar
SubJunk
Lead Developer
Posts: 3707
Joined: Sun May 27, 2012 4:12 pm

Re: PS4 now support DLNA!

Post by SubJunk »

mero27 wrote:

Code: Select all

07-04 16:53:45  Exception in thread "mencoder.exe-25-Timer" java.lang.ArithmeticException: / by zero
07-04 16:53:45  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:53:45  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:53:45  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:53:45  	at net.pms.io.BufferedOutputFileImpl$1.run(BufferedOutputFileImpl.java:813)
07-04 16:53:45  	at java.util.TimerThread.mainLoop(Unknown Source)
07-04 16:53:45  	at java.util.TimerThread.run(Unknown Source)
07-04 16:53:48  Exception in thread "StartPlaying Event" java.lang.ArithmeticException: / by zero
07-04 16:53:48  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:53:48  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:53:48  	at net.pms.configuration.RendererConfiguration.setPlayingRes(RendererConfiguration.java:2485)
07-04 16:53:48  	at net.pms.dlna.DLNAResource$1.run(DLNAResource.java:2593)
07-04 16:53:48  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:07  Exception in thread "mencoder.exe-25-Cleanup" java.lang.ArithmeticException: / by zero
07-04 16:54:07  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl.reset(BufferedOutputFileImpl.java:879)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl$2.run(BufferedOutputFileImpl.java:850)
07-04 16:54:07  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:07  Exception in thread "mencoder.exe-25-Cleanup" java.lang.ArithmeticException: / by zero
07-04 16:54:07  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:07  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:07  	at net.pms.configuration.RendererConfiguration.setBuffer(RendererConfiguration.java:2498)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl.reset(BufferedOutputFileImpl.java:879)
07-04 16:54:07  	at net.pms.io.BufferedOutputFileImpl$2.run(BufferedOutputFileImpl.java:850)
07-04 16:54:07  	at java.lang.Thread.run(Unknown Source)
07-04 16:54:08  Exception in thread "StopPlaying Event" java.lang.ArithmeticException: / by zero
07-04 16:54:08  	at net.pms.newgui.StatusTab$RendererItem.actionPerformed(StatusTab.java:92)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.alert(BasicPlayer.java:137)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.reset(BasicPlayer.java:116)
07-04 16:54:08  	at net.pms.util.BasicPlayer$Minimal.<init>(BasicPlayer.java:102)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration$PlaybackTimer.<init>(RendererConfiguration.java:2512)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration.getPlayer(RendererConfiguration.java:1504)
07-04 16:54:08  	at net.pms.configuration.RendererConfiguration.setPlayingRes(RendererConfiguration.java:2485)
07-04 16:54:08  	at net.pms.dlna.DLNAResource$2$1.run(DLNAResource.java:2677)
07-04 16:54:08  	at java.lang.Thread.run(Unknown Source)
That's just a display bug, has nothing to do with PS4 :)
creighton
Posts: 15
Joined: Fri Jun 19, 2015 8:35 am

Re: PS4 now support DLNA!

Post by creighton »

SubJunk wrote:Thanks for the extensive testing! I'm very interested in the flv1 file now, because it played successfully with transcoding. Can you please try muxing it to a MKV container and playing that via the FFmpeg option in the #-TRANSCODE-# folder? I can run you through how to do it if you want, or I can do it for you if you upload it somewhere
Sorry for the delay, 4th of July and all...

I did this in command line and it appeared to do what you asked:

Code: Select all

C:\Program Files (x86)\Universal Media Server\win32>ffmpeg -i "Z:\test\flv1.flv" -vcodec copy -acodec copy "Z:\test\flv1.mkv"
Tried manual transcode with FFmpeg, but it eventually timed out on the PS4 like usual and failed unfortunately. Same with Mencoder. No encoding worked of course. Trace logs are attached, let me know if you need something different done with the file, or need more info on it.
Attachments
87d037531-flv1-mkv.zip
(41.45 KiB) Downloaded 833 times
User avatar
SubJunk
Lead Developer
Posts: 3707
Joined: Sun May 27, 2012 4:12 pm

Re: PS4 now support DLNA!

Post by SubJunk »

Thanks for the logs :) I'm very confused now since it seems to me that we are doing the exact same thing in both cases, but the PS4 only likes one. I've made a new build with extra logging to try to uncover what the difference is. Can you please try both files the same way with this version?
http://www.spirton.com/uploads/UMS/UMS-3b723fa.exe
creighton
Posts: 15
Joined: Fri Jun 19, 2015 8:35 am

Re: PS4 now support DLNA!

Post by creighton »

SubJunk wrote:Thanks for the logs :) I'm very confused now since it seems to me that we are doing the exact same thing in both cases, but the PS4 only likes one. I've made a new build with extra logging to try to uncover what the difference is. Can you please try both files the same way with this version?
http://www.spirton.com/uploads/UMS/UMS-3b723fa.exe
Tried both under forced transcoding with FFmpeg, the .flv worked and the .mkv failed as expected.

From taking a peek into the log, it seems the command for the .mkv is missing some pipe information? Obviously I know nothing about the underlying code here, just taking a stab in the dark.

Code: Select all

C:\Program Files (x86)\Universal Media Server\win32\ffmpeg.exe -fflags +genpts -y -loglevel info -i Z:\test\flv1.flv -ab 384k -c:a ac3 -c:v copy -bsf:v h264_mp4toannexb -f mpegts \\.\pipe\ffmpegvideo_48_1436194527665

C:\Program Files (x86)\Universal Media Server\win32\ffmpeg.exe -i Z:\test\flv1.mkv -vframes 1 -c:v copy -f h264 -bsf h264_mp4toannexb -an -y pipe:
Attachments
3b723fa1a.zip
(47.49 KiB) Downloaded 818 times
Post Reply