2020-12-15 The David W. Niven Collection of Early Jazz Legends, 1921-1991

I think I want a copy of The David W. Niven Collection of Early Jazz Legends, 1921-1991 from the Internet Archive.

The David W. Niven Collection of Early Jazz Legends, 1921-1991

This is an extraordinary collection. It has been Mr. Niven’s life’s work. It represents the very finest American music of the twentieth century, and because Mr. Niven took the time and care to record these commentaries, he has produced a library that is accessible to everyone from jazz aficionados to jazz novices. – From the archivist’s notes by Kevin J. Powers

Here’s a list of links to the Ogg files prepared by @llimllib ¹:

@llimllib

¹

600 URLs to zip files

But… I think I found a way to get 625 torrent files. This is what bit torrent was made for! 😍

Get the 625 torrent files. This takes a while!

wget -r -H -nc -np -nH --cut-dirs=1 -A .torrent -e robots=off -l1 \
  -i ./itemlist.txt -B 'http://archive.org/download/'

If you’re happy to take them from my site:

625 torrents

Install the Transmission daemon, make sure it doesn’t run, edit settings and change the password, start it again.

sudo apt install transmission-daemon
sudo systemctl stop transmission-daemon
$EDITOR /etc/transmission-daemon/settings.json
sudo systemctl start transmission-daemon

Check it out via your web browser at localhost:9091.

Install the remote client and add all the torrent files, and list them again, just to be sure:

sudo apt install transmission-remote
for t in *.torrent; do transmission-remote --auth=transmission:PASSWORD --start-paused --add $t; done
transmission-remote --auth=transmission:PASSWORD --list

This should list 625 torrent files.

But first, make sure that we don’t get all the files! If you skip this step, you’ll get all the FLAC and WAV files, too. Your poor disk.

transmission-remote --auth=transmission:PASSWORD --torrent all --no-get all

Let’s find the files we care about using a little Perl script. What we need are the torrent numbers, and for each torrent we want the file numbers of the JPG and MP3 files. Not the filenames! If you use the filenames, there is no warning and you’re getting all the files…

#!/usr/bin/env perl
use Modern::Perl;
my $pwd = shift or die "No password provided\n";
for (qx(transmission-remote --auth=transmission:$pwd --torrent all --list)) {
  next unless /^ *(\d+)/;
  my $torrent = $1;
  for (qx(transmission-remote --auth=transmission:$pwd --torrent $torrent --files)) {
    chomp;
    next if /thumb\.jpg$/;
    next unless /\.(jpg|mp3)$/;
    next unless /^ *(\d+)/;
    say "transmission-remote --auth=transmission:$pwd --torrent $torrent --get $1";
  }
}

Then, verify that you like the result and pipe it into a shell in order to execute the commands:

./get-files.pl PASSWORD
./get-files.pl PASSWORD | sh

Verify the result using the web interface. Click on a torrent, click on the information icon in the top right corner, and in the new detail window, click on the right-most tab, the one with the two documents on it. You should see only the JPG and MP3 files checked.

If you’re happy, you could start all the torrents – but I soon ran into an error: “Unable to save torrent file: Too many open files (torrent.c:537)”.

So, don’t do this:

transmission-remote --auth=transmission:PASSWORD --torrent all --start

Instead, either use the web interface to select a hundred torrents at a time and resume them, or use your scripting-fu. Here’s how to start fifty stopped torrents:

for n in ${transmission-remote --auth=transmission:PASSWORD --list | grep Stopped | awk '{ print $1 }' | head -n 50}; do
  transmission-remote --auth=transmission:PASSWORD --torrent $n --start
done

Good luck!

On my system, the transmission daemon saves the files in `/var/lib/transmission-daemon/downloads`. I ended up with 84G according to `du -sh`.

The files all belong to the debian-transmission group, so if you want, you could add yourself to that group.

Somehow this isn’t working as expected but I think this is how it ought to work:

sudo usermod alex --append --groups debian-transmission

​#Music

Comments

(Please contact me if you want to remove your comment.)

Actually, you get a few files of the form foo_Corrected.mp3 for existing foo.mp3 files. I decided to just keep the corrected ones:

for c in */*_Corrected.mp3; do
  echo $c
  d=$(dirname $c)
  n=$(basename $c _Corrected.mp3)
  if test -f "$d/$n.mp3"; then
    rm "$d/$n.mp3"
  fi
done

– 2020-12-18 09:32 UTC

---

Related: 2023-01-04 Getting some 78rpm music

2023-01-04 Getting some 78rpm music

– Alex 2023-01-03 19:59 UTC

---

Awesome! I was able to successfully follow this even when using the WSL version of Debian under Windows 11.

Thanks!

– Frotz 2023-02-28 20:17 UTC

---

Prepare for 80 GiB of music!

– Alex 2023-02-28 23:12 UTC