Ok, here's my effort. Since this player doesn't announce its model number I guess the DLNA client will be the same for all the BDP-Sx70 series. However, we want to be more specific in matching than just the string "UPnP/1.0 DLNADOC/1.50" which other devices may use.
I also went through the specs and built an appropriate mediainfo=true config:
- Code: Select all
# ps3mediaserver renderer profile for Sony Bluray Disc Players (2010 Bravia Internet Video-enabled models)
# Refer to PS3.conf for help
RendererName=Sony Bluray BDP-Sx70
RendererIcon=sony_bdp.png
UserAgentSearch=UPnP/1.0 DLNADOC/1.50
UserAgentAdditionalHeader=X-AV-Client-Info
UserAgentAdditionalHeaderSearch=(cn="Sony Corporation"; mn="Blu-ray Disc Player")
Video=true
Audio=true
Image=true
SeekByTime=true
TranscodeVideo=MPEGAC3
TranscodeAudio=MP3
DefaultVBVBufSize=true
MuxH264ToMpegTS=true
MuxDTSToMpeg=false
WrapDTSIntoPCM=false
MuxLPCMToMpeg=false
MaxVideoBitrateMbps=0
MaxVideoWidth=0
MaxVideoHeight=0
H264Level41Limited=true
#MimeTypesChanges=audio/wav=audio/L16|video/mp4=video/mpeg
DLNALocalizationRequired=true
#TranscodeExtensions=dvr-ms,dvr,mkv,dv,ty,mov,ogm,hdmov,hdm,rmv,rmvb,rm,asf,evo,asx,flv,m2v,mpe,mod,tivo,ty,tmf,ts,tp,m2p,m4v,wmv,wm,flac,mlp,fla,wma,m4a,aac,dts,mka,ape,ogg,shn,mpc,ra,mp2,wv,oma,aa3,gif,png,arw,cr2,crw,dng,raf,mrw,nef,pef,tif,tiff
#StreamExtensions=mp3,mp4,avi,mpeg
#specs taken from http://www.sony.co.uk/product/blu-ray-disc-player/bdp-s370#pageType=TechnicalSpecs
MediaInfo=true
Supported = f:mpegps|mpegts v:mpeg1|mpeg2|mp4|h264 a:ac3|lpcm|aac|mpa m:video/mpeg
Supported = f:avi|divx v:divx|mp4 a:ac3|lpcm|mpa|mp3 m:video/avi
Supported = f:mp4 v:mp4|h264 a:ac3|aac m:video/mp4
Supported = f:mp3 n:2 m:audio/mpeg
Supported = f:aac n:2 a:(?!alac).+ m:audio/x-m4a
Supported = f:wma n:2 m:audio/x-ms-wma
Supported = f:wav n:2 m:audio/L16
Supported = f:jpg m:image/jpeg
The DivX files are listed correctly but won't play, and I notice that no thumbnails are displayed. I have tried various permutations of options but I have given up testing video for the time being and decided to concentrate on JPEG images since there are fewer variables. I have compared a working JPEG request on my Bravia 5500 with a failing request on the BDP-S370. It looks to my untrained eye that the client is only requesting 16bytes of the file. This also fits with this blog post of a guy who looked at what an LG bluray player's DLNA client was doing (
http://demmer.ipax.at/blog/lg-bd390/):
I don’t know much about UPnP, but this process is rather ridiculous at times, eg in the following the player just requests the first 16 bytes, where it expects to find information about the media type... After that first few requests for media type and AVI index (which is at the end of the file btw) the player requests in packages of 256kb. With my sample file that results in around 20 HTTP GETs per second... The streaming plugin’s HTTP server ignores the Range parameter and answers with a HTTP 200 and begins streaming video unlimited. After about 5 seconds the player resets the TCP connection and shuts down.
With videos I see the same chunk request, then failure, although 1024 bytes are requested rather than 16. Here are the JPEG examples...
Working (Bravia 5500):
[New I/O server worker #1-1] INFO 22:11:37.166 HTTP: get/0$3$0$1$19/thumbnail0000Message+from+Myxi / 0-0
[New I/O server worker #1-1] DEBUG 22:11:37.166 Searching for objectId: 0$3$0$1$19 with children option: false
[New I/O server worker #1-1] DEBUG 22:11:37.167 Available Content-Length: 25115
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Accept-Ranges: bytes
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Connection: keep-alive
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Content-Length: 25115
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Content-Type: image/jpeg
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Expires: Thu, 07 Oct 2010 14:58:17 GMT
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: Server: Windows_Vista-x86-6.1, UPnP/1.0, PMS/1.20.409
[New I/O server worker #1-1] DEBUG 22:11:37.170 Sent to socket: TransferMode.DLNA.ORG: Interactive
[New I/O server worker #1-2] DEBUG 22:11:37.927 Opened handler on socket /192.168.1.64:62308 // Sony Bravia 5500 Series
[New I/O server worker #1-2] DEBUG 22:11:37.927 Handler infos: HTTP/1.1 : GET : get/0$3$0$1$19/Message+from+Myxi
[New I/O server worker #1-2] DEBUG 22:11:37.927 Received on socket: getcontentFeatures.dlna.org: 1
[New I/O server worker #1-2] DEBUG 22:11:37.927 Received on socket: Host: 192.168.1.69:5001
[New I/O server worker #1-2] DEBUG 22:11:37.927 Received on socket: Pragma: getIfoFileURI.dlna.org
[New I/O server worker #1-2] DEBUG 22:11:37.927 Received on socket: transferMode.dlna.org: Interactive
[New I/O server worker #1-2] INFO 22:11:37.927 HTTP: get/0$3$0$1$19/Message+from+Myxi / 0-0
[New I/O server worker #1-2] DEBUG 22:11:37.927 Searching for objectId: 0$3$0$1$19 with children option: false
[New I/O server worker #1-2] DEBUG 22:11:37.927 Asked stream chunk [0-0] timeseek: 0.0 of Message from Myxi and player null
[New I/O server worker #1-2] DEBUG 22:11:37.932 Sent to socket: Accept-Ranges: bytes
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: Connection: keep-alive
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: Content-Length: 2705306
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: Content-Type: image/jpeg
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: ContentFeatures.DLNA.ORG: DLNA.ORG_PN=JPEG_LRG;DLNA.ORG_OP=11;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: Server: Windows_Vista-x86-6.1, UPnP/1.0, PMS/1.20.409
[New I/O server worker #1-2] DEBUG 22:11:37.933 Sent to socket: TransferMode.DLNA.ORG: Interactive
Failed (BDP-S370):
[New I/O server worker #1-2] DEBUG 22:16:30.043 Opened handler on socket /192.168.1.68:55581 // Sony Bluray BDP-Sx70
[New I/O server worker #1-2] DEBUG 22:16:30.043 Handler infos: HTTP/1.1 : HEAD : get/0$3$0$1$19/Message+from+Myxi
[New I/O server worker #1-2] DEBUG 22:16:30.043 Received on socket: Accept: */*
[New I/O server worker #1-2] DEBUG 22:16:30.043 Received on socket: getcontentFeatures.dlna.org: 1
[New I/O server worker #1-2] DEBUG 22:16:30.043 Received on socket: Host: 192.168.1.69:5001
[New I/O server worker #1-2] DEBUG 22:16:30.043 Received on socket: X-AV-Client-Info: av=5.0; cn="Sony Corporation"; mn="Blu-ray Disc Player"; mv="2.0"
[New I/O server worker #1-2] DEBUG 22:16:30.043 Received on socket: X-AV-Physical-Unit-Info: pa="Blu-ray Disc Player"
[New I/O server worker #1-2] INFO 22:16:30.043 HTTP: get/0$3$0$1$19/Message+from+Myxi / 0-0
[New I/O server worker #1-2] DEBUG 22:16:30.044 Searching for objectId: 0$3$0$1$19 with children option: false
[New I/O server worker #1-2] DEBUG 22:16:30.044 Asked stream chunk [0-0] timeseek: 0.0 of Message from Myxi and player null
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: Accept-Ranges: bytes
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: Connection: keep-alive
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: Content-Length: 2705306
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: Content-Type: image/jpeg
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: ContentFeatures.DLNA.ORG: DLNA.ORG_PN=JPEG_LRG;DLNA.ORG_OP=11;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000
[New I/O server worker #1-2] DEBUG 22:16:30.045 Sent to socket: Server: Windows_Vista-x86-6.1, UPnP/1.0, PMS/1.20.409
[New I/O server worker #1-1] DEBUG 22:16:30.053 Opened handler on socket /192.168.1.68:55582 // Sony Bluray BDP-Sx70
[New I/O server worker #1-1] DEBUG 22:16:30.053 Handler infos: HTTP/1.1 : GET : get/0$3$0$1$19/Message+from+Myxi
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: Accept: */*
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: getcontentFeatures.dlna.org: 1
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: Host: 192.168.1.69:5001
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: Range: bytes=0-15
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: transferMode.dlna.org: Interactive
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: X-AV-Client-Info: av=5.0; cn="Sony Corporation"; mn="Blu-ray Disc Player"; mv="2.0"
[New I/O server worker #1-1] DEBUG 22:16:30.053 Received on socket: X-AV-Physical-Unit-Info: pa="Blu-ray Disc Player"
[New I/O server worker #1-1] INFO 22:16:30.053 HTTP: get/0$3$0$1$19/Message+from+Myxi / 0-15
[New I/O server worker #1-1] DEBUG 22:16:30.053 Searching for objectId: 0$3$0$1$19 with children option: false
[New I/O server worker #1-1] DEBUG 22:16:30.053 Asked stream chunk [0-15] timeseek: 0.0 of Message from Myxi and player null
[New I/O server worker #1-1] INFO 22:16:30.060 Calling SetThreadExecutionState ES_CONTINUOUS
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Accept-Ranges: bytes
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Connection: keep-alive
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Content-Length: 2705306
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Content-Range: bytes 0-15/2705306
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Content-Type: image/jpeg
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: ContentFeatures.DLNA.ORG: DLNA.ORG_PN=JPEG_LRG;DLNA.ORG_OP=11;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: Server: Windows_Vista-x86-6.1, UPnP/1.0, PMS/1.20.409
[New I/O server worker #1-1] DEBUG 22:16:30.060 Sent to socket: TransferMode.DLNA.ORG: Interactive
So, is the problem perhaps that PS3 Media Server is not expecting the DLNA client to request a small chunk in this way? I have read that Wild Media Server has a setting called "Chunked Transfer Mode" (
http://www.wildmediaserver.com/forum/vi ... 29&start=0). Perhaps this is mandatory for Sony BDP players.
However, this thread states that the chunk size must be set to zero to be compliant with DLNA:
https://forums.codegear.com/thread.jspa ... 9&tstart=0The industry association DLNA.ORG has defined a streaming mechanism over HTTP in which no Content-Length header is provided. (Indeed a Content-Length header must not be provided). The mechanism is similar to the Chunked transfer mode, (except that the data is just sent as a stream of data without any intervening end-of-chunk markers). And when the full music file has been streamed, the server closes the connection.
I have attached a Wireshark capture so that someone who doesn't have one of these bluray players might be able to fix the problem (removed. PM me if you need it).
Incidentally, my own Bravia 5500 config is also using the mediainfo settings, as follows:
MediaInfo=true
Supported = f:mpegps|mpegts v:mpeg2|mp4|h264 a:ac3|lpcm|aac|mpa m:video/mpeg
Supported = f:mp3 m:audio/mpeg
Supported = f:wav m:audio/L16
Supported = f:jpg m:image/jpeg
I also made a device icon with transparency for inclusion in pms.jar:

- Sony BDP device icon
- sony_bdp.png (6.11 KiB) Viewed 6926 times