[Banshee-List] Mobile phone detected as portable audio player for Banshee



I'm trying to get a mobile phone recognised as a portable audio player
in Linux so that I can use it with Banshee. I'm using Banshee version
0.12.0.

The phone gets mounted as a Mass Storage Device at /media/PHONE and
/media/PHONE CARD (one is the phone memory itself and the other is the
expandable memory card). Gnome pops up with a message for each of these
"A photo card has been detected..." so it is seems to recognise the
phone's camera capabilities. Is it possible to get them detected as
portable music players as well as a camera? If not, I'm more interested
in having it detected as a music player for use with Banshee.

My /usr/share/hal/fdi/information/20thirdparty/phone.fdi file that I
have made:

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.bus" contains="usb">
      <!-- Sony Ericsson -->
      <match key="usb.vendor_id" int="0xfce">
        <!-- K800i mobile phone -->
        <match key="usb.product_id" int="0xe039">
          <append key="info.capabilities"
type="strlist">portable_audio_player</append>
          <merge key="info.category"
type="string">portable_audio_player</merge>
          <merge key="portable_audio_player.type"
type="string">generic</merge>
          <merge key="portable_audio_player.access_method"
type="string">storage</merge>
          <append key="portable_audio_player.output_formats"
type="strlist">audio/x-wav</append>
          <append key="portable_audio_player.output_formats"
type="strlist">audio/mpeg</append>
          <append key="portable_audio_player.input_formats"
type="strlist">audio/mpeg</append>
          <append key="portable_audio_player.audio_folders"
type="strlist">Music/</append>
        </match>
      </match>
    </match>
  </device>
</deviceinfo>

I can see these key value pairs when viewing them in hal-device-manager.
By the way, it took me hours of frustration to get this going because it
looks like if hal-device-manager is running when plugging the device in
it affects HAL such that the merges don't happen.

What I think is the relevant output from hal-device is below. Thanks in
advance for any help in getting this working within Banshee.

William



15: udi = '/org/freedesktop/Hal/devices/volume_uuid_463F_7539'
  volume.unmount.valid_options = { 'lazy' } (string list)
  volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime',
'nodiratime', 'noexec', 'quiet', 'utf8', 'shortname=', 'codepage=',
'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=' } (string list)
  org.freedesktop.Hal.Device.Volume.method_execpaths = {
'hal-system-storage-mount', 'hal-system-storage-unmount',
'hal-system-storage-eject' } (string list)
  org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as',
'as' } (string list)
  org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount',
'Eject' } (string list)
  info.interfaces = { 'org.freedesktop.Hal.Device.Volume' } (string list)
  volume.ignore = false  (bool)
  volume.policy.desired_mount_point = 'PHONE'  (string)
  volume.policy.mount_filesystem = 'vfat'  (string)
  volume.policy.should_mount = true  (bool)
  volume.policy.mount_option.quiet = true  (bool)
  volume.policy.mount_option.iocharset=utf8 = true  (bool)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_463F_7539'  (string)
  volume.partition.msdos_part_table_type = 4  (0x4)  (int)
  info.product = 'PHONE'  (string)
  volume.size = 70869504  (0x4396200)  (uint64)
  volume.num_blocks = 138417  (0x21cb1)  (int)
  volume.block_size = 512  (0x200)  (int)
  volume.partition.number = 1  (0x1)  (int)
  info.capabilities = { 'volume', 'block' } (string list)
  info.category = 'volume'  (string)
  volume.is_partition = true  (bool)
  volume.is_disc = false  (bool)
  volume.is_mounted_read_only = false  (bool)
  volume.is_mounted = true  (bool)
  volume.mount_point = '/media/PHONE'  (string)
  volume.label = 'PHONE'  (string)
  volume.uuid = '463F-7539'  (string)
  volume.fsversion = 'FAT16'  (string)
  volume.fsusage = 'filesystem'  (string)
  volume.fstype = 'vfat'  (string)
  storage.model = ''  (string)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200_0'
 (string)
  block.is_volume = true  (bool)
  block.minor = 1  (0x1)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sda1'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200_0'
 (string)
  linux.sysfs_path_device = '/sys/block/sda/sda1'  (string)
  linux.sysfs_path = '/sys/block/sda/sda1'  (string)

16: udi =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200_0'
  info.addons = { 'hald-addon-storage', 'hald-addon-storage' } (string list)
  storage.policy.should_mount = true  (bool)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200_0'
 (string)
  info.udi =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200_0'
 (string)
  storage.requires_eject = true  (bool)
  storage.hotpluggable = true  (bool)
  info.capabilities = { 'storage', 'block' } (string list)
  info.category = 'storage'  (string)
  info.product = 'Memory Stick'  (string)
  info.vendor = 'Sony Ericsson Mobile Communications AB'  (string)
  storage.removable = true  (bool)
  storage.physical_device =
'/org/freedesktop/Hal/devices/usb_device_fce_e039_3517070197682200_if0'
 (string)
  storage.lun = 0  (0x0)  (int)
  storage.firmware_version = '0000'  (string)
  storage.serial = 'Sony_Eri_Memory_Stick_3517070197682200'  (string)
  storage.vendor = 'Sony Ericsson Mobile Communications AB'  (string)
  storage.model = 'Memory Stick'  (string)
  storage.drive_type = 'memory_stick'  (string)
  storage.automount_enabled_hint = true  (bool)
  storage.media_check_enabled = true  (bool)
  storage.no_partitions_hint = false  (bool)
  storage.bus = 'usb'  (string)
  block.is_volume = false  (bool)
  block.minor = 0  (0x0)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sda'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent =
'/org/freedesktop/Hal/devices/usb_device_fce_e039_3517070197682200_if0_scsi_host_scsi_device_lun0'
 (string)
  linux.sysfs_path_device = '/sys/block/sda'  (string)
  linux.sysfs_path = '/sys/block/sda'  (string)

17: udi = '/org/freedesktop/Hal/devices/volume_uuid_463F_7532'
  volume.unmount.valid_options = { 'lazy' } (string list)
  volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime',
'nodiratime', 'noexec', 'quiet', 'utf8', 'shortname=', 'codepage=',
'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=' } (string list)
  org.freedesktop.Hal.Device.Volume.method_execpaths = {
'hal-system-storage-mount', 'hal-system-storage-unmount',
'hal-system-storage-eject' } (string list)
  org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as',
'as' } (string list)
  org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount',
'Eject' } (string list)
  info.interfaces = { 'org.freedesktop.Hal.Device.Volume' } (string list)
  volume.ignore = false  (bool)
  volume.policy.desired_mount_point = 'PHONE CARD'  (string)
  volume.policy.mount_filesystem = 'vfat'  (string)
  volume.policy.should_mount = true  (bool)
  volume.policy.mount_option.quiet = true  (bool)
  volume.policy.mount_option.iocharset=utf8 = true  (bool)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_463F_7532'  (string)
  volume.partition.msdos_part_table_type = 6  (0x6)  (int)
  info.product = 'PHONE CARD'  (string)
  volume.size = 956238336  (0x38ff0a00)  (uint64)
  volume.num_blocks = 1867653  (0x1c7f85)  (int)
  volume.block_size = 512  (0x200)  (int)
  volume.partition.number = 1  (0x1)  (int)
  info.capabilities = { 'volume', 'block' } (string list)
  info.category = 'volume'  (string)
  volume.is_partition = true  (bool)
  volume.is_disc = false  (bool)
  volume.is_mounted_read_only = false  (bool)
  volume.is_mounted = true  (bool)
  volume.mount_point = '/media/PHONE CARD'  (string)
  volume.label = 'PHONE CARD'  (string)
  volume.uuid = '463F-7532'  (string)
  volume.fsversion = 'FAT16'  (string)
  volume.fsusage = 'filesystem'  (string)
  volume.fstype = 'vfat'  (string)
  storage.model = ''  (string)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200'
 (string)
  block.is_volume = true  (bool)
  block.minor = 17  (0x11)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sdb1'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200'
 (string)
  linux.sysfs_path_device = '/sys/block/sdb/sdb1'  (string)
  linux.sysfs_path = '/sys/block/sdb/sdb1'  (string)

18: udi =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200'
  info.addons = { 'hald-addon-storage', 'hald-addon-storage' } (string list)
  storage.policy.should_mount = true  (bool)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200'
 (string)
  info.udi =
'/org/freedesktop/Hal/devices/storage_serial_Sony_Eri_Memory_Stick_3517070197682200'
 (string)
  storage.requires_eject = true  (bool)
  storage.hotpluggable = true  (bool)
  info.capabilities = { 'storage', 'block' } (string list)
  info.category = 'storage'  (string)
  info.product = 'Memory Stick'  (string)
  info.vendor = 'Sony Ericsson Mobile Communications AB'  (string)
  storage.removable = true  (bool)
  storage.physical_device =
'/org/freedesktop/Hal/devices/usb_device_fce_e039_3517070197682200_if1'
 (string)
  storage.lun = 0  (0x0)  (int)
  storage.firmware_version = '0000'  (string)
  storage.serial = 'Sony_Eri_Memory_Stick_3517070197682200'  (string)
  storage.vendor = 'Sony Ericsson Mobile Communications AB'  (string)
  storage.model = 'Memory Stick'  (string)
  storage.drive_type = 'memory_stick'  (string)
  storage.automount_enabled_hint = true  (bool)
  storage.media_check_enabled = true  (bool)
  storage.no_partitions_hint = false  (bool)
  storage.bus = 'usb'  (string)
  block.is_volume = false  (bool)
  block.minor = 16  (0x10)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sdb'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent =
'/org/freedesktop/Hal/devices/usb_device_fce_e039_3517070197682200_if1_scsi_host_scsi_device_lun0'
 (string)
  linux.sysfs_path_device = '/sys/block/sdb'  (string)
  linux.sysfs_path = '/sys/block/sdb'  (string)




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]