On this page:
query-media-renderers
get-media-renderer
media-renderer?
media-renderer-name
media-renderer-address
media-renderer-manufacturer
media-renderer-model
media-renderer-dlna?
3.1 Playback
media-renderer-play-uri!
media-renderer-play!
media-renderer-next-uri-supported?
media-renderer-set-next-uri!
media-renderer-pause!
media-renderer-stop!
media-renderer-seek!
media-renderer-status
media-renderer-position
transport-position-track
transport-position-seconds
transport-position-duration
transport-position-uri
3.2 Volume and mute
media-renderer-volume
media-renderer-set-volume!
media-renderer-muted?
media-renderer-set-muted!
9.2

3 Media Renderers🔗ℹ

 (require (file "../media-renderer.rkt")) package: base

This module provides a device-oriented interface for UPnP and DLNA media renderers. It hides the AVTransport and RenderingControl services used for common playback and volume operations.

procedure

(query-media-renderers [#:interface interface 
  #:dns? dns? 
  #:dlna-only? dlna-only?]) 
  (listof media-renderer?)
  interface : (or/c #f string?) = #f
  dns? : boolean? = #f
  dlna-only? : boolean? = #f
Discovers media renderers. When dlna-only? is true, only devices that advertise a DLNA document identifier are returned.

procedure

(get-media-renderer filter-name)  (or/c #f media-renderer?)

  filter-name : string?
Returns the first discovered renderer whose name contains filter-name, ignoring case, or #f when no renderer matches.

procedure

(media-renderer? value)  boolean?

  value : any/c
Returns #t, if the value is a media-renderer.

procedure

(media-renderer-name renderer)  string?

  renderer : media-renderer?
Returns the friendly name advertised by the media renderer.

procedure

(media-renderer-address renderer)  string?

  renderer : media-renderer?
Returns the network address from which the renderer was discovered.

procedure

(media-renderer-manufacturer renderer)  (or/c #f string?)

  renderer : media-renderer?
Returns the renderer manufacturer, or #f when it was not included in the UPnP device description.

procedure

(media-renderer-model renderer)  (or/c #f string?)

  renderer : media-renderer?
Returns the renderer model name, or #f when it was not included in the UPnP device description.

procedure

(media-renderer-dlna? renderer)  boolean?

  renderer : media-renderer?

3.1 Playback🔗ℹ

procedure

(media-renderer-play-uri! renderer    
  uri    
  [#:metadata metadata    
  #:next-uri next-uri    
  #:next-metadata next-metadata])  any
  renderer : media-renderer?
  uri : string?
  metadata : string? = ""
  next-uri : (or/c #f string?) = #f
  next-metadata : string? = ""
Sets uri as the current resource and starts playback.

When next-uri is supplied, it is installed with SetNextAVTransportURI before playback starts. A supporting renderer can open and buffer the next resource while the current resource is playing, allowing a gapless or near-gapless transition.

procedure

(media-renderer-play! renderer)  any

  renderer : media-renderer?
Resumes playback after it has been paused.

procedure

(media-renderer-next-uri-supported? renderer)  boolean?

  renderer : media-renderer?
Reports whether the renderer advertises the optional SetNextAVTransportURI action.

procedure

(media-renderer-set-next-uri! renderer    
  uri    
  [#:metadata metadata])  any
  renderer : media-renderer?
  uri : string?
  metadata : string? = ""
Sets the resource that follows the currently playing resource. The action describes one next resource, not a complete queue. After playback advances to that resource, call this function again to preload the following track.

procedure

(media-renderer-pause! renderer)  any

  renderer : media-renderer?

procedure

(media-renderer-stop! renderer)  any

  renderer : media-renderer?

procedure

(media-renderer-seek! renderer seconds)  any

  renderer : media-renderer?
  seconds : exact-nonnegative-integer?

procedure

(media-renderer-status renderer)  symbol?

  renderer : media-renderer?

procedure

(media-renderer-position renderer)  transport-position?

  renderer : media-renderer?

procedure

(transport-position-track position)

  exact-nonnegative-integer?
  position : transport-position?

procedure

(transport-position-seconds position)  (or/c #f number?)

  position : transport-position?

procedure

(transport-position-duration position)  (or/c #f number?)

  position : transport-position?

procedure

(transport-position-uri position)  (or/c #f string?)

  position : transport-position?

3.2 Volume and mute🔗ℹ

procedure

(media-renderer-volume renderer)  exact-nonnegative-integer?

  renderer : media-renderer?

procedure

(media-renderer-set-volume! renderer    
  volume)  any
  renderer : media-renderer?
  volume : exact-nonnegative-integer?

procedure

(media-renderer-muted? renderer)  boolean?

  renderer : media-renderer?

procedure

(media-renderer-set-muted! renderer muted?)  any

  renderer : media-renderer?
  muted? : boolean?