How do I get the ByFolder-Navigation as simple as possible?

General discussion about the media server. Feature requests. Hints, tips and tricks.
Post Reply
elho
Posts: 3
Joined: Wed Feb 09, 2011 11:32 pm
AV Hardware: Samsung TV, MusicPal, PCs

How do I get the ByFolder-Navigation as simple as possible?

Post by elho » Thu Feb 10, 2011 12:02 am

Hello!

I *always* use the ByFolder-navigation on my devices (Samsung TV, Samsung BluRay, Freecom MusicPal, several PCs).
So it nags me that I always have to enter one unneccessary nav-tree-level.

Let me explain (using "Audio" as example - same goes for Pictures and Videos, of course):

Step 1: normal ByFolder-NavTree

Audio
+-All Tracks
| <whatever...>
|
+-ByFolder
. +-Albums
. +-Audio Books
. +-Single Tracks
. +-etc.


But I *never* use the "All"-branch :-(


Step 2: Editing the folder.view.xml I stripped away the unused "All tracks"-branch

Audio
+-ByFolder
. +-Albums
. +-Audio Books
. +-Single Tracks
. +-etc.


But now there is a hierarchy-level that´s completely superfluous (and annoying!) because it has only one entry :-(


Step 3: promote the branches within the ByFolder-navigation to the main level

Audio
+-Albums
+-Audio Books
+-Single Tracks
+-etc.


Yet I seem to be unable to achieve Step 3 :-(


=> How can I get a NavTree looking like shown in step 3?

Is there a good manual for the NavTree-XML anywhere?

Thank you in advance!
elho

Wal
Posts: 9
Joined: Sat Oct 23, 2010 8:27 pm
AV Hardware: TV Panasonic Plasma 127cm TX-P50V20E
PC with XP pro

Re: How do I get the ByFolder-Navigation as simple as possib

Post by Wal » Mon Feb 14, 2011 3:59 pm

elho wrote: Is there a good manual for the NavTree-XML anywhere?
+1
oh yes! This manual are there?

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Mon Feb 14, 2011 7:39 pm

Here are the manuals that I know of, the following may help, but probably not...

How to Create Your Own Custom Navigation Trees
http://twonkyforum.com/viewtopic.php?f=24&t=6219

TMS-View-Configuration.zip
http://twonkyforum.com/download/file.php?id=78

TMS-View-Configuration addendum.zip
http://twonkyforum.com/download/file.php?id=404

I know what your trying to do, and it used to be possible up to the 5.0.x versions
anything past that hence 5.1.x or 6x it is not possible

However I have been doing some mucking around that almost worked, but it only accomplish's making twokyserver going into 100% cpu usage

First what I did as an example to see if I could fake things out, was to change the id on the view, it did NOT work

Code: Select all

<view name='advanceddefault' path='advanced.view'>
	<navtree>
		<container id='music/folders'>
		</container>

		<container id='picture' >
		</container>

		<container id='video' >
		</container>
	</navtree>
</view>
Second I tried to modify it the view-definitions.xml music/folders section
I changed the id='music/folders' to become id='music'
This actually worked, BUT, it then threw twonky into a 100% cpu load
My guess is that the parser is now in some sort of a loop

Code: Select all

<view name='base' viewlist='advanced,folder,ipodlike,simple,classified,playlists,mobile' guilist='advanceddefault,ipodlike,simpledefault,byfolder,mobile'>
	<navtree sortcriteria='+upnp:originalTrackNumber'>
		<container name='music' id='music' upnp:originalTrackNumber='1' createClass='object.item.audioItem.musicTrack,object.item.audioItem.online.musicTrack'>
			<container name='byfolder' id='music' class='object.container.storageFolder' createClass='object.item.audioItem.musicTrack'>
				<container buildon='res' createClass='object.item.audioItem.musicTrack' class='object.container.storageFolder' />
			</container>
		</container>
	</navtree>
</view>
So basically we have a double whammy and we are basically screwed!
What I have learned from all of the wasted countless hours of trying!

you can not have the navtree populated with containers that use buildon, also they can only be of the id music, picture, or video
you can not have a 4th root container in the navtree, as they can only be of the id music, picture, or video
You can not have a root container (music, picture, or video) populated with buildon, they can only be a container of containers

Post 5.0.x twonky has really limited what we can do at the root level

I wish someone would prove this wrong who is using 5.1.x and higher of twonky
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

elho
Posts: 3
Joined: Wed Feb 09, 2011 11:32 pm
AV Hardware: Samsung TV, MusicPal, PCs

Re: How do I get the ByFolder-Navigation as simple as possib

Post by elho » Mon Feb 14, 2011 7:54 pm

Hello!

Thank you very much for trying.

To learn that it is not possible still helps as it saves me a lot of effort for more fruitless attempts.

I hope this question didn´t cost you too much time!

Again: thanks a lot!

elho

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Mon Feb 14, 2011 7:59 pm

no problem, I too have been trying to figure it out for a while now since the days of 5.0.x
as have many others here in the forums

but dont let trying stop you maybe you'll find something we all missed
or just maybe, the twonky devs will see and understand what we are trying to do
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Tue Feb 22, 2011 11:53 pm

Victory!

I figured it out

http://twonkyforum.com/viewtopic.php?f=2&t=9353

I havent added it there yet on how to do it
but if you give a little infor on your folder share structure
I think we can do it =)

if the root of the actual share is like this

+-Albums
+-Audio Books
+-Single Tracks
+-etc.

then it can be done
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

elho
Posts: 3
Joined: Wed Feb 09, 2011 11:32 pm
AV Hardware: Samsung TV, MusicPal, PCs

Re: How do I get the ByFolder-Navigation as simple as possib

Post by elho » Wed Feb 23, 2011 12:07 pm

Hello!

Sadly it didn´t work for me :-(

I followed the instructions you linked to and changed the video-sections.
And as that didn´t work I varied around some settings a bit.

Either I don´t get a video-branch at all or I don´t get any contents within it.

I checked the results in Twonky-Servers own HTML-media-browser, a Samsung TV and a Samsung BD-player.

As for my physical media-folder-structure:

Z:\ "Collection" (a whole partition)
+- Audio
| +--- Albums
| +--- Audio Books
| +--- Podcasts
| +--- Single Tracks
| +--- (...)
|
+- Foto
| +--- Family
| +--- Vacations
| +--- (...)
|
+- Video
+--- Clips
+--- Movies
+--- Series
+--- (...)

So you see "video" is not my root-folder.
But if this was a prerequisite for an as-simple-as-possible nav-tree I could easily emulate it by introducing pseudo-driveletters via the subst-command.


Thanks for all your effort so far!
elho



P.S.: On a side-note:
My Freecom MusicPal seems to be clever enough to get it all right:
as it is only capable of playing Audio it doesn´t bother showing the main Video- or Foto-branch.
And as the Audio-branch of my Twonky-server contains but one entry ("by folder") it doesn´t bother showing me that but instantly enters it.

What this shows is that a playback-device could easily cope with the hierarchy as it is right now if it´s designed well...

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Wed Feb 23, 2011 5:21 pm

I posted the how to post dead tired, and pooches it, put the wrong revision =(

If you want ( i updated it) with these technical changes

1. <view name='base' viewlist='advanced' guilist='advanceddefault'>

this is at the moment mandatory for the extra sections to work
if I dont remove the other lists listed, then nuttin works, but once i do the above
all of the below works
but of course one now no longer has the other views

2. instead of removeing the name='videos' just remove the 'videos' so it looks like name=''

3. when creating the 4th section use groupid='myvideo' instead of id=video

4. when creating the link use <link groupid=my'video' /> instead of <link id='video' />

The below is working for me at the moment, with these understandings
- a browser, ps3 will see it correctly the myvideo section
- an xbox wil not see the myvideo section, it is seeing the structure of the actual video container
but it is working, just the old way
- win7 media player see what it wants, like the xbox, it relies on the video container
- as for other devices like a jukebox device, uknown

Code: Select all

<view name='advanceddefault' path='advanced.view'>
	<navtree>

		<container id='music'>
			<link id='music/all' />
			<link id='music/artists' />
			<link id='music/artistindex' />
			<link id='music/artistalbum' />
			<link id='music/genre' />
			<link id='music/genrealbum' />
			<link id='music/genreartistalbum' />
			<link id='music/rating' />
			<link id='music/albums' />
			<link id='music/folders' />
			<link id='music/playlists' />
			<link groupid='music/onlineservices' />
		</container>

		<container id='picture' >
			<link id='picture/all' />	
			<link id='picture/folders' />
			<link id='picture/year' />
			<link id='picture/date' />
			<link id='picture/keywords' />
			<link id='picture/albums' />
			<link id='picture/rating' />
			<link id='picture/playlists' />
			<link groupid='picture/onlineservices' />
		</container>

		<link groupid='myvideo' />

	</navtree>
</view>

Code: Select all

<view name='base' viewlist='advanced' guilist='advanceddefault'>
	<navtree sortcriteria='+upnp:originalTrackNumber'>

		<container name='music' id='music' upnp:originalTrackNumber='1' createClass='object.item.audioItem.musicTrack,object.item.audioItem.online.musicTrack'>
			<container name='alltracks' id='music/all' createClass='object.item.audioItem.musicTrack' class='object.container'/>
			<container name='artist' id='music/artists' class='object.container.person.musicArtist' createClass='object.item.audioItem.musicTrack'>
				<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
				<container buildon='upnp:artist' class='object.container.person.musicArtist' createClass='object.item.audioItem.musicTrack'/>
			</container>
			<container name='artistindex' id='music/artistindex' class='object.container' createClass='object.item.audioItem.musicTrack'>
				<container buildon='upnp:artist[3]' class='object.container' createClass='object.item.audioItem.musicTrack'>
					<container buildon='upnp:artist' class='object.container.person.musicArtist' createClass='object.item.audioItem.musicTrack'>
						<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
						<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
					</container>
				</container>
			</container>
			<container name='composer' id='music/composers' createClass='object.item.audioItem.musicTrack' class='object.container' >
				<container buildon='upnp:author@role' createClass='object.item.audioItem.musicTrack' class='object.container.person.musicArtist' />
			</container>
			<container name='rating' id='music/rating' createClass='object.item.audioItem.musicTrack' class='object.container' >
				<container buildon='pv:rating' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
			</container>
			<container name='artistalbum' id='music/artistalbum' class='object.container.person.musicArtist' createClass='object.item.audioItem.musicTrack'>
				<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' >
					<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
				</container>
				<container buildon='upnp:artist' class='object.container.person.musicArtist' createClass='object.item.audioItem.musicTrack'>
					<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
					<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
				</container>
			</container>
			<container name='genre' id='music/genre' class='object.container' createClass='object.item.audioItem.musicTrack'>
				<container buildon='upnp:genre' class='object.container.genre.musicGenre' createClass='object.item.audioItem.musicTrack' />
			</container>
			<container name='genrealbum' id='music/genrealbum' class='object.container' createClass='object.item.audioItem.musicTrack'>
				<container buildon='upnp:genre' class='object.container.genre.musicGenre' createClass='object.item.audioItem.musicTrack' >
					<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
				</container>
			</container>
			<container name='genreartist' id='music/genreartistalbum' class='object.container' createClass='object.item.audioItem.musicTrack'>
				<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' >
					<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' >
						<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
						<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
					</container>
					<container buildon='upnp:artist' class='object.container' createClass='object.item.audioItem.musicTrack'>
						<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
						<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
					</container>
				</container>
				<container buildon='upnp:genre' class='object.container.genre.musicGenre' createClass='object.item.audioItem.musicTrack'>
					<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' >
						<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
						<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
					</container>
					<container buildon='upnp:artist' class='object.container' createClass='object.item.audioItem.musicTrack'>
						<container name='allname' createClass='object.item.audioItem.musicTrack' class='object.container' />
						<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
					</container>
				</container>
			</container>

			<container name='album' id='music/albums' createClass='object.item.audioItem.musicTrack' class='object.container' >
				<container buildon='upnp:album' albumart='1' sortcriteria='+pv:numberOfThisDisc,+upnp:originalTrackNumber' createClass='object.item.audioItem.musicTrack' class='object.container.album.musicAlbum' />
			</container>
			<container name='byfolder' id='music/folders' class='object.container.storageFolder' createClass='object.item.audioItem.musicTrack'>
				<container buildon='res' createClass='object.item.audioItem.musicTrack' class='object.container.storageFolder' />
			</container>
			<container name='playlists' id='music/playlists' class='object.container' createClass='object.item.audioItem.musicTrack,object.item.audioItem.online.musicTrack' sortcriteria='+upnp:originalTrackNumber,+dc:title'   restricted='0' flags='pv:playlistRoot=Music' >
				<container name='playlistrecentlyadded' filteron='pv:addedLast60' sortcriteria='-pv:addedTime' createClass='object.item.audioItem.musicTrack' maxitems='500' upnp:originalTrackNumber='3' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlistmostplayed' filteron='pv:playcount' sortcriteria='-pv:playcount' createClass='object.item.audioItem.musicTrack' maxitems='500' upnp:originalTrackNumber='1'  restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlistlastplayed' filteron='pv:lastPlayedTime' sortcriteria='-pv:lastPlayedTime' createClass='object.item.audioItem.musicTrack' maxitems='500' upnp:originalTrackNumber='2' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlisthighlyrated' filteron='pv:highrated' sortcriteria='-pv:rating' createClass='object.item.audioItem.musicTrack' maxitems='500' upnp:originalTrackNumber='4' class='object.container.playlistContainer' restricted='1'  flags='pv:smartplaylist=1' />
				<container buildon='upnp:playlist' sortcriteria='+upnp:originalTrackNumber' upnp:originalTrackNumber='5' createClass='object.item.audioItem.musicTrack,object.item.audioItem.online.musicTrack' class='object.container.playlistContainer' />
			</container>
			<container buildon='pv:onlineServiceTitle'  groupid='music/onlineservices' createClass='object.item.audioItem.online.musicTrack' class='object.container'>
				<container name='allstations' createClass='object.item.audioItem.online.musicTrack' class='object.container' />
				<container name='genrestation' class='object.container' createClass='object.item.audioItem.online.musicTrack'>
					<container buildon='upnp:genre' class='object.container.genre.musicGenre' createClass='object.item.audioItem.online.musicTrack' />
				</container>
				<container name='stationindex' class='object.container' createClass='object.item.audioItem.online.musicTrack'>
					<container buildon='dc:title[3]' class='object.container' createClass='object.item.audioItem.online.musicTrack'>
						<container buildon='dc:title' class='object.container' createClass='object.item.audioItem.online.musicTrack'/>
					</container>
				</container>
			</container>
		</container>

		<container name='pictures' id='picture' upnp:originalTrackNumber='2' createClass='object.item.imageItem.photo,object.item.imageItem.online.photo' class='object.container'>
			<container name='allpictures' id='picture/all' createClass='object.item.imageItem.photo' class='object.container'/>
			<container name='byfolder' id='picture/folders' class='object.container.storageFolder' restricted='0' createClass='object.item.imageItem.photo'>
				<container buildon='res' createClass='object.item.imageItem.photo' class='object.container.storageFolder'/>
			</container>
			<container name='byyear' id='picture/year' createClass='object.item.imageItem.photo' class='object.container'>
				<container buildon='pv:year' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
			</container>
			<container name='bydate' id='picture/date' createClass='object.item.imageItem.photo' class='object.container'>
				<container name='allname' createClass='object.item.imageItem.photo' class='object.container'>
					<container name='allname' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
					<container buildon='pv:month' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
				</container>
				<container buildon='pv:year' createClass='object.item.imageItem.photo' class='object.container'>
					<container name='allname' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
					<container buildon='pv:month' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
				</container>
			</container>
			<container name='keywords' id='picture/keywords' createClass='object.item.imageItem.photo'  class='object.container' >
				<container buildon='pv:avKeywords' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
			</container>
			<container name='album' id='picture/albums' createClass='object.item.imageItem.photo'  class='object.container' >
				<container buildon='upnp:album' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
			</container>
			<container name='rating' id='picture/rating' createClass='object.item.imageItem.photo' class='object.container' >
				<container buildon='pv:rating' createClass='object.item.imageItem.photo' class='object.container.album.photoAlbum' />
			</container>
			<container name='slideshows' id='picture/playlists' class='object.container' createClass='object.item.imageItem.photo,object.item.imageItem.online.photo' sortcriteria='+upnp:originalTrackNumber,+dc:title' restricted='0' flags='pv:playlistRoot=Picture' >
				<container name='playlistrecentlyadded' filteron='pv:addedLast60' sortcriteria='-pv:addedTime' createClass='object.item.imageItem.photo' maxitems='500' upnp:originalTrackNumber='3' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlistmostviewed' filteron='pv:playcount' sortcriteria='-pv:playcount' createClass='object.item.imageItem.photo' maxitems='500' upnp:originalTrackNumber='1' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlistlastviewed' filteron='pv:lastPlayedTime' sortcriteria='-pv:lastPlayedTime' createClass='object.item.imageItem.photo' maxitems='500' upnp:originalTrackNumber='2' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlisthighlyrated' filteron='pv:highrated' sortcriteria='-pv:rating' createClass='object.item.imageItem.photo' maxitems='500' upnp:originalTrackNumber='4' class='object.container.playlistContainer' restricted='1' flags='pv:smartplaylist=1' />
				<container buildon='upnp:playlist' sortcriteria='+upnp:originalTrackNumber' createClass='object.item.imageItem.photo,object.item.imageItem.online.photo' upnp:originalTrackNumber='5' class='object.container.playlistContainer' />
			</container>
			<container buildon='pv:onlineServiceName'  groupid='picture/onlineservices' createClass='object.item.imageItem.online.photo' class='object.container'>
				<container name='allname' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
				<container buildon='pv:onlineServiceTitle' createClass='object.item.imageItem.online.photo' class='object.container'>
					<container name='allname' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
					<container name='keywords' createClass='object.item.imageItem.online.photo'  class='object.container' >
						<container buildon='pv:avKeywords' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
					</container>
					<container name='album' createClass='object.item.imageItem.online.photo'  class='object.container' >
						<container buildon='upnp:album' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
					</container>
					<container name='date' createClass='object.item.imageItem.online.photo' class='object.container'>
						<container buildon='pv:year' createClass='object.item.imageItem.online.photo' class='object.container'>
							<container name='allname' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
							<container buildon='pv:month' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum'/>
						</container>
					</container>
					<container name='author' createClass='object.item.imageItem.online.photo' class='object.container' >
						<container buildon='upnp:author' createClass='object.item.imageItem.online.photo' class='object.container.album.photoAlbum' />
					</container>
				</container>
			</container>

		</container>

		<container name='' id='video' upnp:originalTrackNumber='3' createClass='object.item.videoItem.movie,object.item.videoItem.classified.movie,object.item.videoItem.online.movie' class='object.container'>

			<container name='allvideos' id='video/all' createClass='object.item.videoItem.movie' class='object.container'/>

			<container name='byfolder' id='video/folders' class='object.container.storageFolder' restricted='0' createClass='object.item.videoItem.movie'>
				<container buildon='res' createClass='object.item.videoItem.movie' class='object.container.storageFolder'/>
			</container>
			<container name='title' id='video/titleindex' class='object.container' createClass='object.item.videoItem.movie'>
				<container buildon='dc:title[3]' class='object.container' createClass='object.item.videoItem.movie'>
					<container buildon='dc:title' class='object.container' createClass='object.item.videoItem.movie'/>
				</container>
			</container>
			<container name='byyear' id='video/year' createClass='object.item.videoItem.movie' class='object.container'>
				<container buildon='pv:year' createClass='object.item.videoItem.movie' class='object.container' />
			</container>
			<container name='bydate' id='video/date' createClass='object.item.videoItem.movie' class='object.container'>
				<container buildon='pv:year' createClass='object.item.videoItem.movie' class='object.container'>
					<container buildon='pv:month' createClass='object.item.videoItem.movie' class='object.container'/>
				</container>
			</container>
			<container name='album' id='video/albums' createClass='object.item.videoItem.movie' class='object.container' >
				<container buildon='upnp:album' createClass='object.item.videoItem.movie' class='object.container' />
			</container>
			<container name='rating' id='video/rating' createClass='object.item.videoItem.movie' class='object.container' >
				<container buildon='pv:rating' createClass='object.item.videoItem.movie' class='object.container' />
			</container>
			<container name='playlists' id='video/playlists' class='object.container' createClass='object.item.videoItem.movie,object.item.videoItem.online.movie' sortcriteria='+upnp:originalTrackNumber,+dc:title' restricted='0' flags='pv:playlistRoot=Video' >
				<container name='playlistrecentlyadded' filteron='pv:addedLast60' sortcriteria='-pv:addedTime' createClass='object.item.videoItem.movie' maxitems='500' upnp:originalTrackNumber='3' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlistmostviewed' filteron='pv:playcount' sortcriteria='-pv:playcount' createClass='object.item.videoItem.movie' maxitems='500' upnp:originalTrackNumber='1' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1'  />
				<container name='playlistlastviewed' filteron='pv:lastPlayedTime' sortcriteria='-pv:lastPlayedTime' createClass='object.item.videoItem.movie' maxitems='500' upnp:originalTrackNumber='2' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container name='playlisthighlyrated' filteron='pv:highrated' sortcriteria='-pv:rating' createClass='object.item.videoItem.movie' maxitems='500' upnp:originalTrackNumber='4' restricted='1' class='object.container.playlistContainer' flags='pv:smartplaylist=1' />
				<container buildon='upnp:playlist' sortcriteria='+upnp:originalTrackNumber' createClass='object.item.videoItem.movie,object.item.videoItem.online.movie' upnp:originalTrackNumber='5' class='object.container.playlistContainer'  />
			</container>
     		        <container name='classifiedvideos' id='video/classified' class='object.container'  createClass='object.item.videoItem.classified.movie'/>      
			<container buildon='pv:onlineServiceName' groupid='video/onlineservices' createClass='object.item.videoItem.online.movie' class='object.container'>
				<container buildon='pv:onlineServiceTitle' createClass='object.item.videoItem.online.movie' class='object.container'/>
			</container>

		</container>

		<container name='Videos' groupid='video' upnp:originalTrackNumber='4' sortcriteria='+upnp:originalTrackNumber' createClass='object.item.videoItem.movie,object.item.videoItem.classified.movie,object.item.videoItem.online.movie' class='object.container'>
			<container buildon='res' createClass='object.item.videoItem.movie' class='object.container.storageFolder'/>
		</container>

	</navtree>
</view>
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Wed Feb 23, 2011 5:28 pm

i mucked around with the audio section, to replicate what I can do with the video section
I want to test it a little more today, to see that I cant get it all working and not borking anything

let me know if my previous reply helps, I posted the exact xml files I used to get it work
if you try it again, please let us it know what the tv see's, im curious
i wish I could attach files, would be much easier =(

once we can get the folders in the roots of music,photo, video
Ill work on getting the other hack i went through to get a folders only view at the root root
but that menas sacrafice, in that well be at the mercy of the devices in that some rely on the existance
of a folder called music, phot video
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

User avatar
phibertron
Posts: 1566
Joined: Sun Jan 30, 2011 5:52 pm
AV Hardware: Hardware
========
WHS - HP Ex495
PS3
XBOX 360
iTouch - Gen 2 and Gen 3
PSP - 3000

Encoders
========
Handbrake
x264
ffmpeg
mencoder

Tagging
======
mp3tag

Re: How do I get the ByFolder-Navigation as simple as possib

Post by phibertron » Thu Feb 24, 2011 12:51 am

take a look at scenario 14

http://twonkyforum.com/viewtopic.php?f= ... 318#p34318

this one is the most device compliant one that I could figure out

scenario 15 is to have just one root of folders

scenario 16 will be where I make some additions to each of the root containers
so people can see the effect of how to add things etc.
viewtopic.php?f=2&t=10627
viewtopic.php?f=2&t=9353
viewtopic.php?f=2&t=9408
viewtopic.php?f=2&t=9416
viewtopic.php?f=2&t=9424
viewtopic.php?f=2&t=9364
viewtopic.php?f=2&t=9497

Post Reply