Better renderer and server support and higher level functions. Seek solutions.

This commit is contained in:
2026-08-08 14:27:29 +02:00
parent 91c6755bb1
commit 3fbcdb09d5
10 changed files with 324 additions and 5 deletions
+9 -3
View File
@@ -49,8 +49,9 @@
#:listen-ip "127.0.0.1"))
(media-file-server-publish! server file "track.flac"))
(lambda ()
(let ([head (http-request port "HEAD")]
[range (http-request port "GET" #:range "bytes=2-5")])
(let* ([head (http-request port "HEAD")]
[range (http-request port "GET" #:range "bytes=2-5")]
[uri (format "http://127.0.0.1:~a/media/track.flac" port)])
(check-regexp-match #rx#"HTTP/1[.]1 200" head)
(check-regexp-match #rx#"(?i:Accept-Ranges): bytes" head)
(check-regexp-match
@@ -59,7 +60,12 @@
(check-equal? (response-body head) #"")
(check-regexp-match #rx#"HTTP/1[.]1 206" range)
(check-regexp-match #rx#"(?i:Content-Range): bytes 2-5/10" range)
(check-equal? (response-body range) #"2345")))
(check-equal? (response-body range) #"2345")
(check-equal?
(resolve-dlna-resource-protocol-info
uri
#:protocol-info "http-get:*:audio/flac:*")
"http-get:*:audio/flac:DLNA.ORG_OP=01;DLNA.ORG_CI=0")))
(lambda ()
(when server
(media-file-server-stop! server))
+2
View File
@@ -29,6 +29,7 @@
"<upnp:album>String Quartet</upnp:album>"
"<upnp:genre>Classical</upnp:genre>"
"<dc:date>2026-07-15</dc:date>"
"<upnp:originalTrackNumber>7</upnp:originalTrackNumber>"
"<upnp:albumArtURI>/cover/100.jpg</upnp:albumArtURI>"
"<upnp:class>object.item.audioItem.musicTrack</upnp:class>"
"<res protocolInfo=\"http-get:*:audio/flac:DLNA.ORG_PN=FLAC\" "
@@ -120,6 +121,7 @@
(check-equal? (media-item-album track) "String Quartet")
(check-equal? (media-item-genres track) '("Classical"))
(check-equal? (media-item-date track) "2026-07-15")
(check-equal? (media-item-original-track-number track) 7)
(check-equal? (media-item-album-art-uri track)
(format "http://127.0.0.1:~a/cover/100.jpg" port))