File: TODO

package info (click to toggle)
gnomad2 2.5.0-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 1,384 kB
  • ctags: 650
  • sloc: ansic: 8,784; sh: 3,240; makefile: 112
file content (128 lines) | stat: -rw-r--r-- 3,231 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
* Problems with GNOMAD:

  OUTSTANDING BUGS:
  -----------------

  Removing two files from a playlist fails :-P

  Trying to transfer protected files will end in misery.
  Warn and remove from transfer list.

  ENHANCEMENTS:
  -------------

  Full GTK+ 2.6 migration on checkboxes.

  RIFF-WAV metadata scanner? (from getid3())

  Make Gnomad create subdirectories when "/" or "\" appear
  in the format string.

  Add possibility to send a bitmap.

  Synch of songs in a harddisk directory, w/checksums?
  Put jukebox ID in ID3 tag?

  Add some stuff to the playlist view: sort playlist by 
  different criteria, remove playlist AND files, move files
  around by drag'n'drop etc. (Hard to do.)

  Add contents of a playlist to another playlist.

  Keybindings to all menus (including popups)

  Transfer queue showing -- even w/o full queue, 
  be able to queue things while trasferring.

  Player queue visible. Queueview widget builder?



STUFF TO BE DONE ELSEWHERE:

* Libnjb:

  NJB_Update_Playlist() should return the new playlist ID
   if it has changed, so that I don't have to rescan the
   playlist list everytime something is changed about a
   playlist.

* Problems with the USB protocol spec:

  The commands 0x29 and 0x2a are not documented.

  Request: C3
  Command: 29
  Name: Get time
  Description: Gets the time of the internal clock of
               the jukebox.

  Request: 43
  Command: 2a
  Name: Set time
  Description: Sets the time of the internal clock
               of the jukebox.

  Their datatypes can be documentet with a brief look at
  time.c

  (p 44)

  The data file tag size sent in the data phase includes
  the four padding zero bytes.

  --- Already sent to John: ---

  Status codes (p 15):

  Add for playback:
    0x40  NJB_ERR_QUEUE_ALREADY_EMPTY

  EAX block structure (p 13):

  The blocks named:
    number of spatializations, nspat
    active spatialization
    nspat x spatialization frames
  Is actually:
    number of headphone modes, nphone
    active headphone mode
    nphone x headphone frames

  Also it should be noted that effect, headphone,
  and rear frames are actually just a sequential 
  list of strings with the names of the mode at
  indexed position.

  Adjust sound (p 53):

  The table of effect bytes:
    0x01 -- Volume value is between 0 and 100
    0x08 -- Amount of current EAX effect a value between 0 
            and 100
            note that a change actually changes the
            amount of ALL effects, not just the current
            one. The EAX structure will hold the same
            value for all effects afterwards. (Atleast
            with Firmware 2.93.)
    0x0b, 0x0c -- these must have a meaning too, but I
            just cannot decipher it... Tried all kind of
            input I could think of.

* Problems with LIBNJB:

  These functions seem not to like if you (softwarewise) captures/opens and
  closes/releases the jukebox too much:

  * NJB_Delete_Track
  * NJB_Update_Playlist
  * NJB_Delete_Playlist

* Things that would be good in LIBNJB:

  If
  playlist_deltrack (playlist_t *pl, unsigned int pos);

  Took a track ID instead if a position, would be good:
  playlist_deltrack (playlist_t *pl, u_int32_t trackid);