commit 2ee430e28a55f8458c49b6e9905112bda5f251d4
Author: phantomjinx <p.g.richard...@phantomjinx.co.uk>
Date:   Wed Oct 26 22:25:00 2011 +0100

    Update the INSTALL and TODO files.
    
    Brings some of the information up to date.

 INSTALL         |  122 +++++++++----
 TODO            |  541 ++++++++++++++++++++++++++++++++++++++++++++-----------
 TODOandBUGS.txt |  446 ---------------------------------------------
 3 files changed, 517 insertions(+), 592 deletions(-)
---
diff --git a/INSTALL b/INSTALL
index 268bf09..70fee14 100644
--- a/INSTALL
+++ b/INSTALL
@@ -12,51 +12,96 @@ How to compile/install gtkpod:
    project (http://sourceforge.net/projects/mad/).
 
    Starting with version 0.96 gtkpod is using the gpod library.
-   libgpod should soon be available as a standard package for major
+   libgpod is available as a standard package for major
    Linux distributions. You can also install the library from source.
    Download instructions for the tarball or development snapshot can
    be found at http://www.gtkpod.org/libgpod.html
 
-   The libmp4v2 package is ONLY NEEDED if you need AAC support.  You
-   don't need libmp4v2 if you don't use AAC files. Download's
-   available at
-
-        http://downloads.sourceforge.net/mpeg4ip/
-        (http://downloads.sourceforge.net/mpeg4ip/mpeg4ip-1.6.tar.gz)
-
-   libid3tag was successfully compiled and installed with
-
-       ./configure ; make ; make install
-
-   libmp4v2 was successfully compiled and installed with
-
-       ./bootstrap --disable-server ; make ; make install
-
-
    The following packages are required for building gtkpod:
 
         autoconf (at least 2.55)
         flex (or lex)
         gettext
-        glib (at least 2.8.0)
-        gtk+ (at least 2.8.0)
-        libglade (at least 2.4.0)
+        glib
+        gtk+ (gtk2 for the 2.0.x stream / gtk3 for the 2.1.0+ stream)
         libgpod (at least 0.6.1)
+                               libgdl
+                               anjuta
         libid3tag (at least 0.15)
-        perl XML::Parser module
-        anjuta (at least 2.30)
-        pkgconfig
-
-   Optional packages:
-
-        libcurl (for coverart download support)
-        libflac (for FLAC support)
-        libgnome-vfs-2.0 >2.6 (for iPod autodetection under GNOME)
-        libhal >0.5 <0.6 (in combination with libgnome-vfs: better detection 
of iPods)
-        libmp4v2 (for AAC/M4A support)
-        libvorbis (for ogg libvorbis support)
-        libwebkit >=1.1 (for coverart web browse support)
-
+        libgnome-vfs-2.0 > 2.6 (for iPod autodetection under GNOME)
+        libhal > 0.5 < 0.6 (in combination with libgnome-vfs: better detection 
of iPods)
+
+                               Optional Packages
+
+                               For web browser plugin:
+                               webkitgtk (version 1 or 3 depending on version 
of gtk)
+
+                               For audio player plugin:
+                               gstreamer
+                               gstreamer-plugins (plugins to support mp3 / mp4 
playback)
+
+                               For filetype conversion:
+                               flac
+                               libogg
+                               libvorbis
+                               lame
+                               libmp4v2
+                               faad2
+
+                               For opengl coverart display (clarity) plugin:
+                               clutter-gtk
+
+                               For download of coverart:
+                               libcurl
+
+   The following can be used for installing the dependencies on ubuntu 11.10:
+
+             apt-get groupinstall Development\ Tools
+
+                               apt-get install \
+                                  libwebkitgtk-3.0-dev \
+                                  gstreamer0.10-plugins-base \
+                                  gstreamer0.10-plugins-good \
+                                  libgstreamer-plugins-base0.10-dev \
+                                  libgstreamer0.10-dev \
+                                  gstreamer0.10-plugins-bad-multiverse \
+                                  gstreamer0.10-ffmpeg \
+                                  gstreamer0.10-plugins-bad \
+                                  gstreamer0.10-plugins-ugly \
+                                  libflac-dev \
+                                  libogg-dev \
+                                  libvorbis-dev \
+                                  libmp3lame-dev \
+                                  libmp4v2-dev \
+                                  libclutter-gtk-1.0-dev \
+                                  libgpod-dev \
+                                  libanjuta-dev \
+                                  libgdl-3-dev \
+                                  libid3tag0-dev
+                                  faad \
+                                  libcurl3
+
+   The following can be used for installing the dependencies on fedora 15:
+
+        yum groupinstall Development\ Tools
+        yum install \
+            webkitgtk3-devel \
+            gstreamer-devel.i686 \
+            gstreamer-plugins-bad-free-devel.i686 \
+            gstreamer-plugins-base-devel.i686 \
+            gstreamer-plugins-good.i686 \
+            flac-devel.i686 \
+            libogg-devel.i686 \
+            libvorbis-devel.i686 \
+            lame-devel.i686 \
+            libmp4v2-devel.i686 \
+            clutter-gtk-devel.i686 \
+            libpod-devel \
+            anjuta-devel \
+            libgdl-devel \
+            libid3tag-devel \
+            faad2 \
+            curl
 
 2. If you install libraries to /usr/local/lib please don't forget to
    add the path to LD_LIBRARY_PATH and PKG_CONFIG_PATH
@@ -107,22 +152,21 @@ How to compile/install gtkpod:
 ** Note that you do not need to accept the default (usually
    /usr/local) install path when you compile and install the software.
    You may choose to install the software in a different location.
-   For example, with libid3tag and libmp4v2 in a non-standard
+   For example, with libid3tag in a non-standard
    location, outside the $PATH and the usual build environment, you
    need to configure the build of gtkpod appropriately.  You need to
    set a CFLAGS variable during the 'configure' that sets the -I and
    -L flags correctly.
 
-   As a practical example, let's say the libmp4v2 software was
-   installed in $HOME/Applications/mpeg4ip and the libid3tag software
+   As a practical example, let's say the libid3tag software
    was installed in $HOME/Applications/libid3tag, and you want to
    install gtkpod into $HOME/Applications/gtkpod.  Do this instead:
 
-    CFLAGS="-I$HOME/Applications/mpeg4ip/include 
-L$HOME/Applications/mpeg4ip/lib -I$HOME/Applications/libid3tag/include 
-L$HOME/Applications/libid3tag/lib" ./configure 
--prefix=$HOME/Applications/gtkpod ; make ; make install 
+    CFLAGS="-I$HOME/Applications/libid3tag/include 
-L$HOME/Applications/libid3tag/lib" ./configure 
--prefix=$HOME/Applications/gtkpod ; make ; make install 
 
 ------------------------------------------------------------------------
 
-Quick guide for Ubuntu/Debian
+Quick guide for older Ubuntu/Debian distros
 
 The following steps were necessary to install libgpod and gtkpod on a fairly 
virgin Ubuntu Hardy (LTS 8.04) installation.
 
diff --git a/TODO b/TODO
index f858a82..14d16ab 100644
--- a/TODO
+++ b/TODO
@@ -1,127 +1,454 @@
-Prospective Plugins:
-#      core
-#      coverart display
-#  track editor
-#      play tracks now
-#    info window
-       synchronizer
-#      download coverart plugin
-#      photo panel
-#    export plugin
-#      - provides window and export functions
-#      - other plugins simply emit a signal that tells the plugin to export the
-#          given tracks
-#      - means that the other plugins lack items on context menus of other 
views 
-
-Music Menu
-#- Load iPod
-# Save Changes
-# Add Files
-# Add Folder
-# Add Playlists
-# Update Tracks from file
-# Update mserv date from file
-# Sync Playlists with Dir
-# Export Tracks
-# Create Playlist
-# Init ipod Directories
-# Check ipod files
-
-Edit Menu
-# Edit Track Details
-# Edit Smart Playlist (? Not Including)
-# Delete
-# Create Playlists
-# Sorting
-# Randomize current playlist
-- Save Displayed track order
-# Repo iPod Options
-# Preferences
-
-View Menu
-# Info Window
-# More / Fewer filter tabs
-# Arrange Filter Tabs (Not creating)
-
-Tools Menu
-# Play Now
-- Enqueue
-- Normalize Volume
-- Synchronize All, Contacts, Calendar, Notes
+BUGS, TODO:
+
+In addition and duplicates of 
+  http://gtkpod.org/bugs/index.php
+       http://sourceforge.net/tracker/?group_id=67873&atid=519273
+
+- when auto-loading iPods: set backup path if not set.
+
+- move part of free-space-update to file_convert.c
+
+- when creating new repository: make sure backup repository filename isn't
+  already used.
+
+- don't keep iTunesDB on iPod when syncing (takes up valuable space)
+
+- fileselection_select_script(): display @additional_text.
+
+- modify "warning" when matching checksums: Send a patch that changes
+  the behavior from printing into the info window to opening a dialog
+  with the "never show this dialog again" button. Then add an option
+  to the preferences to get the dialog back.
+
+- save extended database when rehash was done, even if main database
+  is not changed.
+
+- handle missing .ext file more decently
+
+- Add tooltips back to the track attributes section of the prefs or find a
+  way to not need them.  Perhaps using shorter versions of the previous
+  tooltips in the lists would work.  That way, users wouldn't even need to
+  wait for the tooltip popup to know what the attribute was for.
+
+- unload iPods when exiting gtkpod (ask/option).
+
+- cddb lookup (http://freedb.freedb.org). See also
+  http://musicbrainz.org/doc/libmusicbrainzDownload
+
+- wildcards for filename templates (automatic setting of tags from
+  filename/cover art).
+
+- Actually, there is an option to see all the dirs that
+are going to be synced but it's impossible to change
+them.It would be nice to have a tree whit all the dirs
+and sub-dirs, like in the amarok colection maker, so we
+can have a full control of the sync dirs.
+
+- set flag3/4 automatically for podcasts.
+
+- support for www.last.fm
+
+  http://www.last.fm is a web site that you report your listening
+  habits to.  The site can then give you recommendations on other
+  music that you may also like. The site also has music charts for
+  users and also for the entire site.  You can tag music and they also
+  have a Radio that you can download and it plays songs for you. -
+  Joshua
+
+- retag tracks with database information
+
+- photo support
+
+- lyrics support (http://www.jcbsoft.net/podlyrics/)
+
+- itdb/misc_confirm.c: number of F?? directories should be determined
+  before starting copying files to the iPod. At the moment only 20
+  dirs are used no matter how many are present.
+  Creation of directories should be moved to itdb_*
+
+- more features for mserv
+
+- icons should be themable
+
+- Update calendar in special sort tab when changing category.
+
+- Give status when adjusting offline_playcount after import of
+  database (can take quite a while even for only 90 tracks).
+
+- Dangling/orphaned tracks
+    - Open a progress window to display information instead of the
+      statusbar messages.
+
+
+- "adjust volume by ...%" functionality
+
+- Pattern matching for tag extraction from filename should also work
+  from the beginning of the name towards the end, not only from the
+  end to the beginning (clear?)
+
+
+- multiple playlist delete, ctrl-d, wipe iPod.
+
+   Unless I'm missing something, I think it would be handy to have a
+   mulitple playlist delete capability, since it's quite tedious to
+   have to delete playlists one at a time.
+
+   Also I noticed ctrl-d didn't delete the playlists, which could be
+   my setup, I'm using Debian Unstable.
+
+   Finally in addition to mulitple playlist delete, how about a total
+   wipe of the ipod (with lots of 'are you sure?'s) thus making it
+   ready for a new setup.
+
+   HTH.
+
+- be able to select multiple genres, albums, etc. at the same
+  time. (should be possible -- difficulty is selecting several
+  playlists)
+
+
+Anton de Wet
+Feature Suggestion:
+  Also usefull would be able to set the "default" rating for all newly
+  added tracks.
+
+
+Satadru
+> It would be nice to have the ability to have some sort of shadow aac 
+> directory, that would have converted versions of all the songs in your 
+> library, if the song is a higher bitrate than 128kbps aac, so that you 
+> can get the most music onto your ipod.
+(+ recode to 128 kB when exporting)
+
+
+Torsten Curdt
+> * I love the type-and-filter-right-away search of iTunes!
+> * I miss the easy click-on-burn-audio-cd button
+>   (any way passing this over to the nautilus cdwriter?)
+  - doesn't DND work?
+> * the rating should be stars not a numbers. ...at least
+>   a control that is easier than entering a number
+> 
+
+kulenfuster@...
+> Not sure from the documentation but it looks like there's no way to
+> sync tunes in the iPod into the desktop database.
+ > 
+> For instance situation:
+> 
+> Bob has two desktop machines - one at work, one at home.  He has
+> tunes on both machines, ripped from his CD collection.  The tunes at
+> home are upbeat, the tunes at work are chilled.  He keeps these two
+> CD collections separate so that he can play them on regular CD
+> players in each location.  He loads his new iPod with the tunes on
+> his home computer and then take it to work and loads further tunes
+> from the work machine.  When he gets home he is able to update his
+> home tune database with the tunes from work to give him a backup in
+> a single place in case his iPod fails.  I know there are workarounds
+> but it'd be great if this was something you could do automatically
+> with gtkpod.  If it is already, please let me know (and Woo Ha!).
+
+
+I have the 20G model and I have more "f" directories
+than gtkpod recognises. So gtkpod only fills up through f19, when
+really I have through f29. Everything works fine on the iPod, it's
+just that gtkpod refuses to put music into any of the other
+directories.
+
+
+On Tue, Mar 08, 2005 at 05:37:29PM +0000, Andy wrote:   
+> Can gtkpod do any mangling of the files as it loads them on to an iPod?
+> In particular, I was wondering if there was a way to inject an album
+> cover into a file's id3 as it goes in so my drive files can remain
+> pristine.
+> 
+> That is, let's say I have cover.jpg in each folder, but not in the files
+> themselves.  Could gtkpod be made to pick that up and put it in the id3
+> field for cover (so the iPod Photo can show it).
+
+
+
+> 1) Ich erstelle beim Import von MP3 die ID3 Tags aus den Dateinamen. 
+> Dabei wuerde ich noch eine Vorschau ganz gut finden, in der man 
+> ggf. noch manuell eingreifen kann. (Stefan Onken)
 
-Help Menu
-# Help Contents
-# About box
+- Darren Zimerman
+> As for improvements to gtkpod, the only one I can think of off the top 
+> of my head would be to have a list of available playlists in the 
+> right-click menu.  So instead of just "Add selection to new playlist", 
+> there would actually be list of current playlists (perhaps in a sub-menu).
 
-#Playlists Plugin
-# popup menu
 
-#Tracks Plugin
-# popup menu
+- immediate copying of added tracks to the iPod (when reading tracks
+  over a slow network they will still be in the buffer memory and
+  won't have to read over the network twice if they are copied right
+  away) (request by Seth Arnold)
 
-#Sorttab Menu
-# popup menu
+- album support (normalize all tracks of an album with the same gain)
+   for volume normalization
 
-# Save on exit
+- gtkpod-like browse of file system contents
 
-- Tools plugin
+- upload text notes to iPod
 
-# Preference windows for each plugin - Should they add items to standard 
windows or contribute their own
-  # prefsdlg.c - Refactor preferences dialog to appear as pages anjuta 
preferences dialog
+- add more progress dialogues (in general!)
 
-# plugin remaining
-# display_photo.*
-# info.* / infodlg.*
-# help.*
+- add an option to let the user decide if all the gtkpod's
+  playlist must be updated on export.
 
-Notes on trial build using ubuntu 910
-1) Install git (git-core, gitk)
-2) Install libglade2-dev
-3) Install/build libgpod -> libgpod-dev
-4) Install flex
-5) Install id3tag
-7) Install anjuta-dev - not good enough as only 2.28. Need 2.30.0
-8) Build anjuta
-    - Install gnome-common
-               - Install gtk-doc-tools
-               - Install libunique-dev
-               - Install libdbus-glib-1-dev
-               - Install libvte-dev
-               - Install libgdl-1-dev
-               - Install libxslt-dev
-               - Install libgda-4.0-dev
+- on-the-fly resampling to a particular bit rate. I have 32 GB of
+  songs be cause some of them at at 192, but I only need them at 128
+  or so on the Ipod. Mus icmatch does this exact
+  thing. (zumpi...@verizon.net) JCS: this could be done along with an
+  arbitrary "conversion" on export: user provides a command line in
+  the prefs dialogue that is executed instead of the simple copy
+  command (should also support faac).
+> I think this could be implemented like this: (Juho Routakorpi)
+> 1. User adds a track (or a directory containing a track) in format X
+> 2. gtkpod notices this and adds this to conversion queue, starts conversion 
+> immediatelly in the background
+> 3. If all format X files aren't converted when user commits sync, then format
+> X songs are put to end of transfer queue
+> 4. Temporary files are deleted on exit (if user has chose so)
 
 
-# Investigate the lack of ltmain.sh
-# Change configure.in to signal at the bottom status of webkit
-#- pkconfig.pc for libgtkpod
 
-#Gstreamer
-#* display.c
-# * media player gui referenced in glade xml
 
-#* display_playlists / display_sorttabs
-# * context menu trips tools_play_tracks (selected_tracks);
+-- John Pedersen
+> I have an Ipod mini, which stores roughly 4GB.  My music collection
+> is roughly 18GB.
+>
+> ITunes has a nice feature: each song has a checkbox in front of the
+> song name.  And in the ipod preferences, there's a setting called
+> "Only Update Checked Songs".
+>
+> So the checkmarks are a nice simple way to create a subset of my
+> collection.
+>
+> Usage: by default, the songs are all checked, so my first task was
+> to uncheck all these thousands of songs.  Solution: get a listing
+> view of ALL songs, and hold down the CTRL key while I uncheck a
+> song.  ALL songs in the list now become unchecked (takes a little
+> while of course).
+> 
+> Next, I want to re-check the individual albums and/or songs that I 
+> want to put back in the mini ipod selection.  For the most part, I 
+> select an artist, show ALL their songs, and CTRL-click a single  
+> checkbox.  Alternatively, I can select a single album, or even a 
+> single song.
 
-#* player.c / player.h
-# * thing that does all the work
+> I have a question: (Will Richey)
+>  - Could Offline mode be modified such that it handles the unmounting /
+>    remounting of the iPod?  I'd like to be able to leave gtkpod running,
+>    detach the iPod and see the changes, then reattach and reconnect.
+This would also include that gtkpod.in and gtkpod.out are called only
+if not in offline mode. When switching from offline to online, mount
+and gtkpod.in should be called. When switching from online to offline
+gtkpod.out should be called. Further, the README file should be edited
+to reflect the change.
 
-#Fix anjuta about icon
+(Michael)
+> Second issue - when I delete a playlist and add a playlist with many of  
+> the same identical songs, it looks like gtkpod does in fact delete the   
+> files from the iPod and recopy them to the iPod.
+Yes -- once they are removed, they are removed.
+> 
+> It would be nice if it did not do that.
+Could be done by checking against the "pending_deletion" list by md5 hash
+before adding a new track.
 
-Threading export of tracks - performance of tracks
+On Sun, Apr 24, 2005 at 11:59:00AM +0100, David Smith wrote:
+> Is there any way to reverse sync with directories on gtkpod, i.e press  
+> sync and it updates my directories FROM my ipod? At the moment all i can
+> do is manually add the files i know I have updated on my iPod to my
+> computer.
 
-Lucidfox: 
-GtkBuilder files, replace libmp4, move to GIO
- < LucidFox> ffmpeg libraries are not that well documented, though :/
- < LucidFox> In fact, I wonder if in 2.0 it would be possible to switch to
-             libavcodec/libavformat for all format conversions, and get rid of 
the
-                                                shell scripts
+Len Trigg:
+> > Another thing that confused me was the "sort tabs". Since they are
+> > used for filtering rather than sorting, they should really be named
+> > "filter tabs" or "filter panes". 
 
-< teuf> in the plugin-framework branch, did you rework how gtkpod handles 
ipods?
-                         ie the offline db stuff and things like that and the 
fact that the modelnumber iS
-                               used everywhere?
-                               basically, it would be really helpful if gtkpod 
stopped using the model number
-                               everywhere, and if it stopped using 
itdb_parse_file (and used itdb_parse + 
-                               mountpoint instead)
 
 
+
+Please feel free to submit further features.
+
+
+BUGLIST:
+
+- segfault when sorting the playlists (0.99.2)
+
+drag playlist to track view: (JCS)
+(gtkpod:19911): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion 
`g_utf8_validate (text, len, NULL)' failed
+
+(gtkpod:19911): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion 
`g_utf8_validate (text, len, NULL)' failed
+
+(gtkpod:19911): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion 
`g_utf8_validate (text, len, NULL)' failed
+
+
+
+- Eelco van Veldhuizen 
+> First all apoligise for my bad english, i'm from the neatherlands. I
+> have the following problem with my iPod when I select a playlist for
+> my wake up alarm. The iPod switches it back to "beep". This only
+> happens with the playlists from gtkPod. When I sync with iTunes I
+> can select the playlist for my alarm. Maybe you already know this
+> problem.. I have searched on the internet and found a couple of
+> people that have the same problem. But no solutions found... Mabey
+> you know a solution for this problem :)
+
+
+- during a long operation (menues are blocked) the user can still edit
+  the track data. This could potentially crash gtkpod -> need a way to
+  block editing as well without blocking navigation.
+
+- when deleting an entry in the last sort tab (of 2) sometimes gtkpod
+  crashes
+
+
+stefano.brozzi
+> 1. on creating a smart playlist with a rule on title name,
+>   only exact case matching is considered
+> 
+> 2. adding options during creation of a smart playlist thru the button +
+>   there is no autoresize of the modal window to keep " Ok " and " cancel "
+>   buttons inside of the windows.
+> 3. another problem is that the field "date added" is overwritten by
+> gtkpod.  At this moment I've something like 30gb of mp3 with a "date
+> added" field at the same date and second.
+
+
+
+Please add/report bugs as you find them (jcsjcs at users dot
+sourceforge dot net).
+
+
+-----------------------------------------
+Coverart (JCS):
+Dragging tracks with coverart from Local to iPod may not work. It will
+definitely not work for coverart embedded in the MP3 file.
+
+
+Equalizer: (Julien Oster)
+As you certainly have noticed, the internal iPod equalizer is causing 
+ugly clipping (and thus horrible bass distortion) when using bass 
+booster settings with a lot of MP3s. Googling around quickly revealed a 
+forum posts (http://www5.head-fi.org/forums/showthread.php?t=84088) 
+which suggests using mp3gain to lower the level of MP3s. That way, 
+clipping no longer occurs. The forum thread also reports that doing so 
+unfortunately also lowers the volume the MP3 is played, but that isn't 
+necessarily the case.
+
+I just spent some hours doing a lot of tests on MP3s with mp3gain and 
+gtkpod and I finally came to a solution to avoid every clipping problems 
+AND keeping the original volume in every case.
+
+Before you say "but gtkpod already has support for mp3gain!", please 
+read on. The mp3gain feature as it is implemented in gtkpod right now 
+does not solve any equalizer bass distortion problems, it just 
+normalizes the volume of all tracks. However, what I am suggesting here 
+actually doesn't change the volume of the tracks at all, it just removes 
+possible clipping and thus possible bass distortion.
+
+While experimenting, dealing with all those different volumes, gains, 
+soundcheck values, mp3gain settings and whatever else got me quite 
+confused. I don't want you to get a headache, it's already enough that I 
+got one ;-) So I'll show you step by step what you have to do to remove 
+clipping from an MP3.
+
+First of all, we need an MP3 to test the whole thing. Just choose an MP3 
+which shows horrible and clearly hearable clipping distortion when using 
+the "Bass Booster" equalizer setting on your iPod.
+
+Let's assume that you have that track available as /tmp/foo.mp3 on your 
+workstation. Uploading it without any change to your iPod and listening 
+to it may be fine when the equalizer is disabled, but when choosing 
+"Bass Booster" or another bass intensive setting, the levels of some of 
+the lower frequencies are boosted beyond a limit so that that ugly 
+distortion occurs. Not good.
+
+We can easily solve this issue by using mp3gain on the track, giving the 
+following output:
+
+/tmp% mp3gain -r -o /tmp/foo.mp3
+File    MP3 gain        dB gain Max Amplitude   Max global_gain Min
+foo.mp3 -7      -10.690000      39675.560208    190     126
+
+Note that the "-r" switch has to be there! Otherwise it doesn't work. 
+I'm not entirely sure, but it looks like without the -r switch, only the 
+volume information in the ID3 tag is changed while with -r, the relative 
+volume of every single frame is changed (fortunately, also without 
+reducing quality). To avoid clipping you have to volume the frames down.
+
+As you know, the "-o" switch is just for a nicer output and doesn't 
+affect how the file is handled.
+
+Now, after doing this, you can already upload the file to your iPod 
+using gtkpod. Looking at the soundcheck value after importing it shows 
+that it isn't 0 anymore but something slightly off, like 0,3 or 0,75, 
+however it's always close to 0.
+
+Playing it reveals no clipping at all! You can try out every equalizer 
+setting you want, mp3gain lowered the volume of the individual frames 
+enough to not get any frequency boosted beyond any limit by the equalizer.
+
+Happy now? No, there's still a problem: the distortion is gone, but the 
+volume is way too low now. Of course, you can just increase the volume 
+on your iPod, but sometimes even the highest volume actually seems a bit 
+low (even on uncapped iPods). However, even that problem can be solved.
+
+Let's look at the mp3gain output again:
+
+File    MP3 gain        dB gain Max Amplitude   Max global_gain Min
+foo.mp3 -7      -10.690000      39675.560208    190     126
+
+So, it tells us the volume of every frame has been decreased by 10.69dB. 
+If you would use mp3gain without the -r switch, -10.69 would be exactly 
+the same value that would have got written in the "soundcheck" field.
+
+But since we want to *increase* the playing volume to get the track back 
+to its original volume, we do the opposite: we write "10.69dB" in the 
+soundcheck field. Not as a negative value, but as a positive value!
+
+Doing so, enabling "Sound Check" on the iPod and listening to the track 
+again shows that the track volume is obviously back to original. But 
+checking with the equalizer also proves... still no clipping!
+
+Yay! So we have got rid of the clipping while still keeping the original 
+volume and we're completely happy now.
+
+Now, what do you think about implementing this functionality in gtkpod, 
+similar to the already existing normalize functionality? That would 
+really be great.
+
+Of course, there's still one possible drawback, which depends on what 
+you would like to have: using that method, nothing is actually 
+normalized. The volume of the tracks is the same as before. But if my 
+aching head isn't mistaken, skipping the "set the soundcheck field to 
+the opposite value of the applied gain"-step will also result in 
+normalization (also I still think the volume may be too low then, but I 
+also think you could fix this by setting the Soundcheck field to a fixed 
+value for all tracks).
+-------------------------
+
+
+
+
+
+Doc sites:
+
+http://www.kgarner.com/blog/archives/2005/01/11/fc3-hal-ipod/
+http://mpeters.us/linux/linux_pod.php
+http://users.ameritech.net/djfake/linux3.htm
+
+Karlan Mitchell:
+The program searches for an ipod, and mounts it
+Check out a little C program I created to make iPod use with linux 
+easier, A GUI would be great, but I don't do that.  The tool can be 
+found at http://karlan.us.to/devel/ipod
+If you would like to merge the code, please feel free to, I'd do it if 
+you'd accept a patch.
+
+On the Tools Menu add the following options:
+- Normalize Volume
+- Synchronize All, Contacts, Calendar, Notes

------------------------------------------------------------------------------
The demand for IT networking professionals continues to grow, and the
demand for specialized networking skills is growing even more rapidly.
Take a complimentary Learning@Cisco Self-Assessment and learn 
about Cisco certifications, training, and career opportunities. 
http://p.sf.net/sfu/cisco-dev2dev
_______________________________________________
gtkpod-cvs2 mailing list
gtkpod-cvs2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2

Reply via email to