[Kde-hardware-devel] Identifying iPod and iPhone-like devices using	Solid (was: Amarok review request)
    Matěj Laitl 
    matej at laitl.cz
       
    Wed Oct 26 14:05:33 UTC 2011
    
    
  
On 25. 10. 2011 Bart Cerneels wrote:
> Looks like quite a few pretty ugly hacks are needed for proper iP* detection
> with the current mediadevice codebase. In the near future (post 2.5
> release) we should together try to find a simpler and easier to maintain
> solution.
Thanks for your review, Bart.
I've looked around a bit and the situation seems rather sad:
 * solid knows nothing about media-player-info or usbmuxd and its udev 
PortableMediaPlayer implementation is just a stub [1], furthermore it doesn't 
even currently attach PortableMediaPlayer interface to relevant devices as it 
checks udev env ID_MEDIA_PLAYER against numeric 1 (gphoto remnant) [2,3], but 
media-player-info attaches normalised player name there.
[1] 
http://quickgit.kde.org/?p=kdelibs.git&a=blob&f=solid/solid/backends/udev/udevportablemediaplayer.cpp
[2] 
http://quickgit.kde.org/?p=kdelibs.git&a=blob&f=solid/solid/backends/udev/udevdevice.cpp
[3] 
http://quickgit.kde.org/?p=kdelibs.git&a=blob&f=solid/solid/backends/udev/udevmanager.cpp
In an ideal world (in my opinion):
 * PortableMediaPlayer::supportedProtocols() would return a list containing 
"ipod" for all iPod-like devices (it should just parse /usr/share/media-
player-info/${ID_MEDIA_PLAYER}.mpi)
 * PortableMediaPlayer::supportedDrivers() would return a list containing 
"usb" for traditional iPods and something like "usbmuxd" for iPhone-like 
devices. (this would be more tricky, but could use udev env USBMUX_SUPPORTED)
Another question would be how to access iPhone-like devices the best way once 
identified, but let's first solve identification.
Regards,
						Matěj Laitl aka strohel
    
    
More information about the Kde-hardware-devel
mailing list