Skip to content

Commit

Permalink
- Fix DLNA Music container
Browse files Browse the repository at this point in the history
  • Loading branch information
KOL committed Mar 11, 2015
1 parent ebabd0d commit f2bc4a6
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 2 deletions.
27 changes: 26 additions & 1 deletion Contents/Code/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -375,6 +375,20 @@ def MusicList(uid, title, album_id=None, offset=0):
return oc


@route(PREFIX_M + '/play')
def MusicPlay(info):

item = JSON.ObjectFromString(info)

if not item:
raise Ex.MediaNotAvailable

return ObjectContainer(
objects=[GetTrackObject(item)],
content=ContainerContent.Tracks
)


def AddMusicAlbums(oc, uid, offset=0):

albums = ApiRequest('audio.getAlbums', {
Expand Down Expand Up @@ -426,16 +440,27 @@ def AddMusicAlbums(oc, uid, offset=0):

return oc


def GetTrackObject(item):
return TrackObject(
key=item['url'],
key=Callback(MusicPlay, info=JSON.StringFromObject(item)),
# rating_key='%s.%s' % (Plugin.Identifier, item['id']),
# Rating key must be integer because PHT and PlexConnect
# does not support playing queue with string rating key
rating_key=item['id'],
title=u'%s' % item['title'],
artist=u'%s' % item['artist'],
duration=int(item['duration'])*1000,
items=[
MediaObject(
parts=[PartObject(key=item['url'])],
container=Container.MP3,
audio_codec=AudioCodec.MP3,
audio_channels=2,
video_codec='', # Crutch for disable generate parts,
optimized_for_streaming=True,
)
]
)


Expand Down
2 changes: 1 addition & 1 deletion Contents/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<key>CFBundleSignature</key>
<string>hook</string>
<key>CFBundleVersion</key>
<string>2.3</string>
<string>2.4</string>

<key>PlexClientPlatforms</key>
<string>*</string>
Expand Down

0 comments on commit f2bc4a6

Please sign in to comment.