This is the default location where the view-definitions.xml is located on windows
On other OS's and NAS devices the path would be similiar to /twonkymedia/resources/views
Note: As a reminder groupid does not exist anymore!
C:\Program Files\TwonkyMedia\resources\views
advanced.view.xml
classified.view.xml
folder.view.xml
ipodlike.view.xml
mobile.view.xml
playlists.view.xml
simple.view.xml
view-definitions.xml
The first thing the View-Definitions.xml does it define itself as the "base"
and to associate itself with a list of view files with viewlist
also to provide a string to display in the Web Setup Interface with guilist
<view name='base' viewlist='advanced,folder,ipodlike,simple,classified,playlists,mobile' guilist='advanceddefault,ipodlike,simpledefault,byfolder,mobile'>
By default the viewlist is associated with the default viewlists
1. If you modify your View-Definitions.xml it is possible to get a blank navtree
2. to get around having to edit all of the veiws, I just work off of one mylibrary.view file I create
3. if you needed to have more views, you could create additional views, and add them to the list
<view name='base' viewlist='mylibrary' guilist='mylibrary'>
By default the View-Definitions.xml has everything it needs and in the expected places which the views link to
1. the view-definitions.xml defines what id and idstring is associated with what container
2. the id's idstring must be a valid idstring (what the complete list is, is always a mystery)
3. the id's listed in a view.xml must exist in the the view-definitions.xml
4. the id's in the in the view-definitions.xml must all exist, you can not delete them, you can move them though
5. groupid no longer exists!, hance the valid idstring requirement
By default the view-definitions.xml contains 3 root containers
<navtree sortcriteria='+upnp:originalTrackNumber'>
<container name='music' id='music'
<container name='pictures' id='picture'
<container name='videos' id='video'
</navtree>
By default the following exist in the <container name='music' id='music'
<container name='music' id='music'
<container name='alltracks' id='music/all'
<container name='artist' id='music/artists'
<container name='artistindex' id='music/artistindex'
<container name='composer' id='music/composers'
<container name='rating' id='music/rating'
<container name='artistalbum' id='music/artistalbum'
<container name='genre' id='music/genre'
<container name='genrealbum' id='music/genrealbum'
<container name='genreartist' id='music/genreartistalbum'
<container name='album' id='music/albums'
<container name='byfolder' id='music/folders'
<container name='playlists' id='music/playlists'
<container name='mytwonky' id='music/mytwonky'
</container>
By default the following exist in the <container name='pictures' id='picture'
<container name='pictures' id='picture'
<container name='allpictures' id='picture/all'
<container name='byfolder' id='picture/folders'
<container name='bydate' id='picture/date'
<container name='keywords' id='picture/keywords'
<container name='album' id='picture/albums'
<container name='rating' id='picture/rating'
<container name='slideshows' id='picture/playlists'
<container name='geo' id='picture/geo'
<container name='mytwonky' id='picture/mytwonky'
</container>
By default the following exist in the <container name='videos' id='video'.
Note: <container name='genre' id='video/genre' does not, but it is valid, so I added it
<container name='videos' id='video'.
<container name='allvideos' id='video/all'
<container name='byfolder' id='video/folders'
<container name='title' id='video/titleindex'
<container name='bydate' id='video/date'
<container name='album' id='video/albums'
<container name='genre' id='video/genre'
<container name='rating' id='video/rating'
<container name='playlists' id='video/playlists'
<container name='classifiedvideos' id='video/classified'
<container name='mytwonky' id='video/mytwonky'
</container>
As I stated earlier, all items from the default mus exist, but they can be moved around
You can also have sub/child containers that have no id, inside of root/parent containers
1. The below examples are a valid navtree's
2. Viewing them is reliant on a valid view.xml
3. From a DLNA client, they would see all of those at the root of the navigation tree
4. From Web Interface they would only see the Music, Photo, Video container contents
5. From a MPV hard code client (for ex: xbox) they would only see the Music, Photo, Video container contents
Note: The below two examples, do rely on an Custom View.xml that is appropriate
The following is an example of all of the sub containers with fixed idstrings
Existing outside of the default root containers of Music, Photo, Video
Yes, the below example would have a lot of containers at the root of the navtree
<navtree sortcriteria='+upnp:originalTrackNumber'>
<container name='alltracks' id='music/all'
<container name='artist' id='music/artists'
<container name='artistindex' id='music/artistindex'
<container name='composer' id='music/composers'
<container name='rating' id='music/rating'
<container name='artistalbum' id='music/artistalbum'
<container name='genre' id='music/genre'
<container name='genrealbum' id='music/genrealbum'
<container name='genreartist' id='music/genreartistalbum'
<container name='album' id='music/albums'
<container name='byfolder' id='music/folders'
<container name='playlists' id='music/playlists'
<container name='mytwonky' id='music/mytwonky'
<container name='allpictures' id='picture/all'
<container name='byfolder' id='picture/folders'
<container name='bydate' id='picture/date'
<container name='keywords' id='picture/keywords'
<container name='album' id='picture/albums'
<container name='rating' id='picture/rating'
<container name='slideshows' id='picture/playlists'
<container name='geo' id='picture/geo'
<container name='mytwonky' id='picture/mytwonky'
<container name='allvideos' id='video/all'
<container name='byfolder' id='video/folders'
<container name='title' id='video/titleindex'
<container name='bydate' id='video/date'
<container name='album' id='video/albums'
<container name='genre' id='video/genre'
<container name='rating' id='video/rating'
<container name='playlists' id='video/playlists'
<container name='classifiedvideos' id='video/classified'
<container name='mytwonky' id='video/mytwonky'
<container name='music' id='music'
<container name='pictures' id='picture'
<container name='videos' id='video'
</navtree>
The following is an example of sub/child containers that have no id, inside of root/parent containers
<navtree sortcriteria='+upnp:originalTrackNumber'>
<container name='alltracks' id='music/all'
<container name='artist' id='music/artists'
<container name='artistindex' id='music/artistindex'
<container name='composer' id='music/composers'
<container name='rating' id='music/rating'
<container name='artistalbum' id='music/artistalbum'
<container name='genre' id='music/genre'
<container name='genrealbum' id='music/genrealbum'
<container name='genreartist' id='music/genreartistalbum'
<container name='album' id='music/albums'
<container name='byfolder' id='music/folders'
<container name='playlists' id='music/playlists'
<container name='mytwonky' id='music/mytwonky'
<container name='allpictures' id='picture/all'
<container name='byfolder' id='picture/folders'
<container name='bydate' id='picture/date'
<container name='keywords' id='picture/keywords'
<container name='album' id='picture/albums'
<container name='rating' id='picture/rating'
<container name='slideshows' id='picture/playlists'
<container name='geo' id='picture/geo'
<container name='mytwonky' id='picture/mytwonky'
<container name='allvideos' id='video/all'
<container name='byfolder' id='video/folders'
<container name='title' id='video/titleindex'
<container name='bydate' id='video/date'
<container name='album' id='video/albums'
<container name='genre' id='video/genre'
<container name='rating' id='video/rating'
<container name='playlists' id='video/playlists'
<container name='classifiedvideos' id='video/classified'
<container name='mytwonky' id='video/mytwonky'
<container name='music' id='music'
<container name='container with no id' />
</container>
<container name='pictures' id='picture'
<container name='container with no id' />
</container>
<container name='videos' id='video'
<container name='container with no id' />
</container>
</navtree>
.