Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - mediafs playback directory update notification: (7 Items)
   
mediafs playback directory update notification  
We are implementing a mediafs driver that supports the optional .FS_info./playback directory.

We are also io_notify()-ing clients when the contents of the playback directory is updated, as per the spec.

The client application (HMI) is accessing the mediafs filesystem using the explorer API.

Our question:  what MME EVENT will be sent to to he client application when the contents of the .FS_info. directory have
 changed?  Does the client need to monitor OOB messages on the control file?  Monitoring OOB messages alone would cause 
a large number of redundant reads  because OOB-s from the control file are being used for many other purposes as well.
Re: mediafs playback directory update notification  
Sorry, the question should read:

what MME EVENT will be sent to the client application when the contents of the .FS_info./playback directory have changed
? 

--
We are implementing a mediafs driver that supports the optional .FS_info./playback directory.

We are also io_notify()-ing clients when the contents of the playback directory is updated, as per the spec.

The client application (HMI) is accessing the mediafs filesystem using the explorer API.

Our question:  what MME EVENT will be sent to to he client application when the contents of the .FS_info. directory have

 changed?  Does the client need to monitor OOB messages on the control file?  Monitoring OOB messages alone would cause 

a large number of redundant reads  because OOB-s from the control file are being used for many other purposes as well.
Re: mediafs playback directory update notification  
There is no event that the MME sends clients when the playback directory 
is updated.

We added MediaFS User Events to trunk io-media and MME (PR 74298).  This 
feature depends on MME user events (PR 72219).  This allowed customers 
to send a custom event from their MediaFS drivers to their MME clients 
to indicate things like this happening.

-- 
Ryan J. Allen
QNX Software Systems
Re: mediafs playback directory update notification  
I forgot to mention, this requires MediaFS events to be used.  If the MediaFS driver isn't implemented with MediaFS 
events then you cannot send user events.
RE: mediafs playback directory update notification  
Thanks Ryan, much appreciated.

So would this also mean that it's not possible to detect the same in the
caase of an iPod?
E.g., if the random settings of the iPod change we will not get a
notification about the change of the playback list (we can still infer
from the repeat change event though).

Maybe less relevant in the case of the iPod but our external device
(AVRCP 1.4 enabled players) permit concurrent control via either AVRCP
or manipulating the controls on the device, so the user can change the
random settings or even start playback from a different album anytime
without the MME knowing about it.

Have not been aware of MME user events; yet another reason to implement
MediaFS events (our driver does not implement this yet).

--
  Mate

-----Original Message-----
From: Ryan Allen [mailto:community-noreply@qnx.com] 
Sent: March 29, 2010 10:01 PM
To: general-multimedia
Subject: Re: mediafs playback directory update notification

I forgot to mention, this requires MediaFS events to be used.  If the
MediaFS driver isn't implemented with MediaFS events then you cannot
send user events.



_______________________________________________

General
http://community.qnx.com/sf/go/post50669
Re: mediafs playback directory update notification  
You are correct: it is not possible to detect playback engine changes in 
the case of an iPod.  With iPod the user controls are locked out while 
connected so you don't have the same danger of the playback engine 
spontaneously changing as you do with AVRCP devices.

One suggestion we had for another customer who was working with AVRCP 
devices was to send a trackchange event for any playback engine changes 
and use that as a trigger to indicate that the playback engine may have 
changed.  Unfortunately overloading the trackchange event could result 
in a number of unnecessary reads of the playback engine.

If you're looking for a workaround that doesn't require MediaFS events 
then maybe you could use the MEDIA_STATUS event.  If you look in 
services/io-media/graph/mediafs_2wire/mediafs.c you'll find one place 
where an IOM_EV_MEDIA_STATUS event is sent out.  This is sent when the 
total number of titles changes, or the chapter changes.  When io-media 
sends this to MME, MME will pass on an MME_EVENT_MEDIA_STATUS event to 
its clients.  It would be a bit of a hack (you'd have to fake total 
titles, or chapter information), but you could get MME to send you an 
event that you could react to.

-- 
Ryan J. Allen
QNX Software Systems
RE: mediafs playback directory update notification  
Likely we will just hack around it by interfacing directly to the
mediafs driver (with custom extensions) this time, perhaps io-notify OOB
on the playback directory itself, then investigate MME user events
later.  Not nice but at least fast.

--
  Mate

-----Original Message-----
From: Ryan Allen [mailto:community-noreply@qnx.com] 
Sent: March 29, 2010 10:44 PM
To: general-multimedia
Subject: Re: mediafs playback directory update notification

You are correct: it is not possible to detect playback engine changes in
the case of an iPod.  With iPod the user controls are locked out while
connected so you don't have the same danger of the playback engine
spontaneously changing as you do with AVRCP devices.

One suggestion we had for another customer who was working with AVRCP
devices was to send a trackchange event for any playback engine changes
and use that as a trigger to indicate that the playback engine may have
changed.  Unfortunately overloading the trackchange event could result
in a number of unnecessary reads of the playback engine.

If you're looking for a workaround that doesn't require MediaFS events
then maybe you could use the MEDIA_STATUS event.  If you look in
services/io-media/graph/mediafs_2wire/mediafs.c you'll find one place
where an IOM_EV_MEDIA_STATUS event is sent out.  This is sent when the
total number of titles changes, or the chapter changes.  When io-media
sends this to MME, MME will pass on an MME_EVENT_MEDIA_STATUS event to
its clients.  It would be a bit of a hack (you'd have to fake total
titles, or chapter information), but you could get MME to send you an
event that you could react to.

--
Ryan J. Allen
QNX Software Systems




_______________________________________________

General
http://community.qnx.com/sf/go/post50677