Seekbar Question about TuneBrowser using DIDL-Lite

フォーラム TuneBrowser Seekbar Question about TuneBrowser using DIDL-Lite

  • このトピックには4件の返信、2人の参加者があり、最後にTikiにより1時間、 21分前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #17162
    storaid
    参加者

    Hi Tiki,

    I have question..

    Does TuneBrowser currently use the duration from DIDL-Lite metadata (<res duration=”…”>)?

    When I inspected the UPnP traffic, it seemed that TuneBrowser retrieves DIDL metadata returned in GetPositionInfo, and may be using the duration attribute from the <res> element. It’s right?

    Denon support responded to my inquiry and stated the following:

    The seekbar should be rely on AVTransport values such as TrackDuration and RelTime / AbsTime.
    DIDL metadata should not be used for seekbar calculation, because DIDL duration is only descriptive metadata and may not match the renderer’s actual playback behavior.

    This matches the UPnP AV, which classify DIDL <res> attributes (including duration) as optional descriptive metadata, while playback state and timeline information must come from AVTransport.

    https://upnp.org/specs/av/UPnP-av-ContentDirectory-v1-Service.pdf

    Page 9, res is not required, but multiple values is valid.

    #17171
    Tiki
    キーマスター

    Hello.

    Does TuneBrowser currently use the duration from DIDL-Lite metadata (<res duration=”…”>)?

    Yes, TuneBrowser is using it from AVTransport event and GetPositionInfo SOAP command.

    I found from your comment that res is not required. However, TuneBrowser requires DIDL res information when importing unknown musics. And you know, duration is a static information of music file, so it is stored in database. Elapsed time like RelTime is a dynamic information and it is checked and updated each time during playback. As app for managing music files in a database, these are different nature.

    #17172
    storaid
    参加者

    Hi Tiki,

    Thank you for your explanation.

    Elapsed time like RelTime is a dynamic information and it is checked and updated each time during playback.

    Yes, RelTime is dynamic, but TrackDuration is not, right?

    Actually, one reason I am concerned about relying on the DIDL-Lite metadata for seekbar duration is that, in practice, the content of DIDL from various vendors is not standardized.

    Each device or server can provide very different structures, attributes, or even omit certain metadata fields. For example, the <res duration> attribute is optional and often implemented inconsistently.

    Because DIDL is so flexible and open to vendor-specific extensions, using it for playback control (such as the seekbar’s total duration) can sometimes lead to compatibility problems—especially when there are multiple <res> tags or unexpected attribute values.

    That’s why I think using TrackDuration from the AVTransport, which is designed to provide the accurate total time of the currently playing track, is more robust and reliable for seekbar control.

    Is it possible to use TrackDuration as the total duration of the seekbar?

    Thanks..

    #17175
    Tiki
    キーマスター

    Thank you for sharing your thoughts.

    I’d like to consider what can I do.

    #17212
    Tiki
    キーマスター

    Hello storaid,

    I have tried using TrackDuration in 1817. Please try it when you have time.

    Thank you.

5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。