libraryofcongress / citizen-dj Goto Github PK
View Code? Open in Web Editor NEWLicense: The Unlicense
License: The Unlicense
Hi Brian,
I'm loving the Citizen DJ project! Thanks for the great work. I'd like to suggest an enhancement to consider for a future iteration.
User story: As a hip hop producer, I want the ability to search for a particular word or phrase across the collection of audio files, in order to find samples containing the word/phrase to use in a beat
Example: something like this: https://getyarn.io/
Not sure whether this is feasible, but if there were a way to perhaps use an open source speech recognition engine with support for keyword spotting, it would be nice to have this ability as a producer.
I'm working through the README.md file, and attempting to run the following 3 steps:
Next we will download metadata for each item in the query results:
python3 ingesters/loc/download_metadata.py \
-in "output/variety-stage/pages/page_*.json" \
-out "output/variety-stage/items/%s.json"
And compile the items into a .csv file:
python3 ingesters/loc/collect_metadata.py \
-in "output/variety-stage/items/%s.json" \
-out "output/variety-stage/items.csv"
Then download the media assets for each item (this can take a while for large collections or collections with large media files):
python3 ingesters/loc/download_media.py \
-in "output/variety-stage/items.csv" \
-out "output/variety-stage/media/"
The first step worked:
$ python3 ingesters/loc/download_metadata.py \
> -in "output/variety-stage/pages/page_*.json" \
> -out "output/variety-stage/items/%s.json"
Found 1 files
Reading query data...
Read 11 items
(it downloaded a bunch of files and wrote them to my folder):
But the 2nd step can't find any metadata:
python3 ingesters/loc/collect_metadata.py \
> -in "output/variety-stage/items/%s.json" \
> -out "output/variety-stage/items.csv"
Found 1 files
Reading metadata...
No item meta in output/variety-stage/items/%s.json
Found 0 valid items with assets
Wrote 0 rows to output/variety-stage/items.csv
Subsequent runs try to read from the csv as well:
python3 ingesters/loc/collect_metadata.py \
> -in "output/variety-stage/items/%s.json" \
> -out "output/variety-stage/items.csv"
Found 1 files
Existing file found.
Read 0 rows from output/variety-stage/items.csv
Reading metadata...
No item meta in output/variety-stage/items/%s.json
Found 0 valid items with assets
Wrote 0 rows to output/variety-stage/items.csv
Perhaps I should ask @beefoo for help in https://github.com/beefoo/media-tools , but I'm following the README from this repo, so figured I'd post here.
Great work by the way!!! The site is amazing. I'm making a little editor for it and will post my work when I'm done.
Let me know if you need anything!
Make it prettier and add collection thumbnails
Would love it if you could hit "space" or something to play a sample instead of having to navigate to the "play in context" button in the bottom right hand corner. It wouldn't be a lot, but would make searching for sounds so much easier.
Just a small suggestion, but I think it would make all the difference.
Thanks for your work on this project, one of my favorite things I've seen on the Internet lately!!
Hi. I'm a fan of Citizen DJ, and I had a question about it that prompted me to make a GitHub account just to ask this one question. There's a lot of really cool samples to explore and use in music projects of various genres. The acoustical era recordings from the Variety Stage and Inventing Entertainment collections for example are full of vintage lo-fi character and are practically tailor-made for lo-fi music.
Which is why I was excited for 2022, as at the bottom of the Citizen DJ homepage, there is a teaser for new samples arriving in 2022. Clicking on "Learn more" shows an explanation of what is coming in 2022, namely over 10000 sound recordings from a collection called the "National Jukebox Collection" that will become public domain due to copyright expiration. The thing is though, as of writing this (January 4th, 2022), those samples are in the public domain, but the page is still written like this hasn't happened yet, as the page asks you to "Check back here on January 1, 2022!"
I figured that maybe the 1922 and earlier recordings would be available for download on the Library of Congress website, as they weren't available before presumably due to them still being copyrighted, but the Jukebox samples that are from 1922 and earlier aren't available for download either, even though they are now in the public domain. To be clear, I used the link provided on the Citizen DJ webpage that automatically filters out recordings from after 1922 to make sure I wasn't trying to download recordings from 1923 onwards.
I decided to check the Citizen DJ GitHub to see what was going on, and on the thread titled "Search for a particular spoken word or phrase" (I'm not using a link because I'm not sure if GitHub will permit me posting links), Brian stated that Citizen DJ is currently frozen due to him departing from the project in October 2020, I assume this is why Citizen DJ wasn't updated in 2022 with the National Jukebox samples. If it's okay for me to ask, I'd love some clarification as to the status of Citizen DJ and whether the National Jukebox samples will be added to Citizen DJ.
In addition to a rights statement, provide simple explanations about how/why the collections are free to use
Is there an obvious mousing guide on how to zoom in and out of the sound explore window? In Safari, it defaults to a zoom in and it's annoying to not be able first drag through all the sounds quickly. on the video demo, zooming in and out happens constantly, but there was nothing obvious that told me Command+scroll-up/down is how I can navigate it. I would strongly consider making that front and center and default to zoom out.
Links to policies, branding, copy, etc
Video, document, or both
Perhaps up to about 2 seconds
Hello,
Just discovering your appz, (thanks to Joo Won Park) lots of fun and cool sample collection !
I know Chrome support MIDI, but not sure about MIDI learn,
Do you have any plans for this?
Thanks
"Download pattern" and "Record" functions do not work properly on iOS devices
When using the Clip Duration slider in the Remix mode, the value changes the size of the window as well as the placement of the word "duration" in relation to the word "clip" which causes a visual jittery effect.
If the value has zero, one or two decimal places (3, 1.3, 0.78), the word "duration" is next to the word "clip"
But if the value has 3 decimal places, the word "duration" moves below the word "clip" which causes all the other elements below that word to move as well (particularly the waveform).
All those elements are constantly moving up and down as you change the slider value as a result of this. Perhaps just have the slider value always read with 3 decimals regardless (1.000, 1.010, 1.100 etc)
I noticed a similar issue with the clip start slider, but that only affects the slider track moving back and forth as the decimal values change.
I would also like to suggest reducing the amount of time for the clip duration slider to allow for easier fine tuning of samples. It seems unlikely someone would want to have a 10-20 second sample when they only have 4 beats to work with. Maybe 5 seconds at most to allow for easier fine tuning with the slider. It seems more likely someone would prefer to be able to easily shave a couple decimal points off of the duration with the slider. I realize this can be done with the keyboard arrows but that may not be obvious to everyone.
Love the project!!!
This is awesome! I couldn't figure out if it was possible to make something longer than 16 beats. A slider or ability to add additional "groups" would be great.
Hi there,
I would really benefit from being able to download a remix as-is. Just getting a .wav file would be extremely helpful!
Today I exported a loop by recording my headphone output via Audacity, and then chopped it up the best I could but it took a while and I couldn't get a perfect loop.
Fantastic project you've got here. Great work!
make it very clear of what the tools can and cannot do (and why)
Remix this, Play In Context, Download, and View on Loc.gov buttons overlap with spectrogram samples when zoomed in.
E.g. songs, spoken word, etc
Reports that this function does not work on certain browsers and devices.
Also include BPM and sequence edits
I find the Explore tab of each collection so inspiring and, especially with the musical note filter engaged, I’ve started to see it as an XY pad-like instrument that can be played by scrubbing with my mouse. I’ve started to route the system audio from the Explore tab to virtual channels that then get routed/re-sampled into Logic Pro X. This allows me the flexibility of capturing all the live tweaks, rhythms, and changes I do in Explore (or Remix) sessions, for as long a duration I want, which can be further manipulated in my DAW. With this in mind, here are some features that would facilitate this kind of resampling workflow:
a volume/output knob on the Explore and Remix interfaces would help with properly gain staging the system sound. Right now, it seems like the audio is clipping when quickly scrubbing through the snippets. (I lowered the volume of the virtual channels in my audio interface, but still hear the clipping with quick scrubbing. Single, slow clicks seem fine.)
Adding an option for multiple filters in the Explore tab, if even just one more, would take its musical potential to another level. This way, you can have multiple filtered notes/subjects in your pool of sounds.
A filter for drum sounds—kick, snare, hi-hat, ride, tom, percussion—would be great.
I figure this is complicated, but while I’m dreaming: an option to download just the snippets of sounds from a filtered Explore tab would be great (e.g. a tab filtered to display only snippets of an A note would provide an option to download just these A note sounds.) This would give folks the flexibility to use a focused set of sounds (in a specific key or texture) in their DAW.
Pardon the length and thank you for gifting the world with this project. It has inspired me to not only explore sampling, but also the LOC’s collections!
make buttons and actions more obvious
As a DJ or music producer browsing the sound samples, I want to know the length of a sample so that I can anticipate how long of a sample I might hear when I press play.
Gosh that was hard to write as a user story. If all the samples are the same length, you could add a note at the top of the page. Also I'm very curious if you'll share somewhere on the pages (it's highly likely I missed it, or you'll share when the project is "complete") how the samples were generated.
Acceptance criteria:
A person can create a groove but is unable to save their work.
Or maybe I just didn't see the option.
I'm using a smart phone...
Ensure app works on most mobile devices. Need to test:
When attempting to import any audio sample into Ableton Live 10, the wavelengths are completely distorted like above. This might be caused by some frequency compression either on the site or the original export of the files. I attempted this on multiple samples from different audio collections. You can see the exact sample for the image above in the bottom left corner.
Acceptance Criteria:
Save a list of sequences in local storage
Hello,
I love this project! However, when I downloaded the audio, and import it into Ableton Live, the audio is heavily distorted. Usually, Ableton is really good at handling all types of audio, so I am stumped. It plays great in iTunes, but sounds broken in Ableton. I even changed the bit and sample rates of the Ableton file to match those of the audio content, and it still did not help. Any ideas?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.