dms
dms copied to clipboard
Samsung TV: Video found but cannot be played (works on minidnla, trace attached)
Thanks for this useful piece of software.
UE46F... Series 6 Samsung TV shows icons for the videos served by dms in the DNLA browser, but trying to play the videos results in a black screen followed by an error message that the format is not supported "at this time". (So I think that this is different from https://github.com/anacrolix/dms/issues/56 where not even the icons can be seen.)
However, minidnla can serve the exact same video files to the same Samsung TV just fine.
Attached are pcap traces of good (minidnla) and bad (dms) attempts to play the video on the Samsung TV.
I noticed that minidnla sends quite some more DNLA-related HTTP headers than dms when serving the video, but there are other differences as well.
Please let me know how I can help further to test/debug this.
@probonopd thanks for the pcap! It looks like dms
returns HTTP 500 errors for the SOAPACTION "urn:schemas-upnp-org:service:ContentDirectory:1#X_GetFeatureList". I expect there could be a more appropriate error to return for this unsupported request, that may have the Samsung handle the results better. It may be aborting whatever it was attempting, rather than trying to proceed with an unsupported action. The other choice would be to implement the action.
I won't look into that just now, I'm not active on this project at the moment.
Thanks @anacrolix for your analysis. Searching for X_GetFeatureList
in Golang code, I found the rclone project which, among many other features, can also serve directories on the local filesystem to DLNA devices. I can confirm that the Samsung TV can play the same video using rclone indeed.
Looking at the rclone code, the solution may be rather easy:
https://github.com/rclone/rclone/blob/66e08e0cc8972000d84a61f262286f5644d9fdee/cmd/serve/dlna/cds.go#L325-L341
Where would this need to be plugged into the dms code?
@probonopd Thanks for finding this. I've submitted an issue to rclone, hopefully they are interesting in contributing their improvements on this. As for plugging it in, it would go alongside the code that was copied there in the first place 😆 .
@probonopd can you try #86?
I have a Samsung UE46D6300 (so similar but not identical), and I can confirm this problem with v.1.6.0
I have a Samsung UE46D6300 (so similar but not identical), and I can confirm this problem with v.1.6.0
@claes Did you try #86 ?
@anacrolix No, but since it was merged I assumed it was part of 1.6.0, but perhaps it isn't?
You are quite right. I'll leave the issue open.