====== DLNA HTTP Requests ======
* [[DLNA]]
* [[DLNA HTTP]]
I'm examining the HTTP traffic sent back-and-forth between the DLNA server (minidlna in my case) and the DLNA client (Sony Blu-ray player).
Here's some of my notes on them.
Source for headers is playback of a file up until the first 60 seconds.
Logging the first run:
sudo tcpflow -p -c port 8200 > log.firstrun-60s
Clean up the data:
dos2unix log.firstrun-60s
Some PHP code to help me examine the content closely (which I'm not going to apologize for the quality, since I'm debugging). Requires the PECL http extension.
$http_headers) {
$arr_headers = http_parse_headers($http_headers);
if($arr_headers === false) {
$count++;
} else {
print_r($arr_headers);
}
}
if($count)
echo "$count failed\n";
And the first two HTTP requests:
Array
(
[Request Method] => HEAD
[Request Url] => /MediaItems/224.mkv
[User-Agent] => UPnP/1.0 DLNADOC/1.50
[Host] => 10.10.10.103:8200
[Accept] => */*
[X-Av-Physical-Unit-Info] => pa="Blu-ray Disc Player"
[X-Av-Client-Info] => av=5.0; cn="Sony Corporation"; mn="Blu-ray Disc Player"; mv="2.0"
[Getcontentfeatures.Dlna.Org] => 1
)
Array
(
[Response Code] => 200
[Response Status] => OK
[Content-Type] => video/x-matroska
[Content-Length] => 445063149
[Transfermode.Dlna.Org] => Streaming
[Accept-Ranges] => bytes
[Connection] => close
[Date] => Sat, 16 Aug 2014 02:15:10 GMT
[Ext] =>
[Realtimeinfo.Dlna.Org] => DLNA.ORG_TLAG=*
[Contentfeatures.Dlna.Org] => DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000
[Server] => 3.12.5-ck DLNADOC/1.50 UPnP/1.0 MiniDLNA/1.1.1
)