Device Details
Overview
Name | Version: | Audio Routes 1.5.1 |
Author: | cycling74 |
Device Type: | Audio Effect |
Description: | A set of Max for Live devices and example sets that greatly enhance the audio routing capability of Ableton Live. Created by Manuel Poletti and Cycling '74, this system allows users to create new effects routings, side-chain effects, and even support surround systems with up to 32 channels. Using the new routing functions in Live and Max for Live, users can create additional aux busses (beyond Live's 12 sends), complex switching matrices, or step-sequenced multi-channel panning, and now fully functional inside Live Racks. New in Audio Routes v1.5 • Audio Routes devices now work inside Live Racks • Racks allow parallel routing chains and spatialization • Snapshot a complex chain into Live presets (although, in the case of multichannel routing, routings won't necessarily be retained in the context of another Live set with different outputs) • Audio Routes device automation transfers to other tracks when copying/pasting • Copy/Paste/Share routings where added to Rand Panner and Step Panner For technical support, email support@cycling74.com. Learn more about Audio Routes v1.5: https://youtu.be/tHBD50BWE0k https://cycling74.com/articles/audio-routings-a-new-system-for-multi-channel-routing-in-ableton-live |
Details
Live Version Used: | 11 |
Max Version Used: | 8.5 |
Date Added: | Nov 12 2019 16:33:49 |
Date Last Updated: | Sep 04 2024 18:51:52 |
Downloads: | 0 |
Website: | https://c74devices.s3.amazonaws.com/AudioRoutes-v1.5.0b.zip |
ⓘ License: | None |
Average Rating
Log in to rate this device |
-n/a- |
Comments
That's really great ! Thanks a lot Manuel.
Posted on November 12 2019 by madlab |
Report Issue
wahou !! Thanks
very useful
very useful
Posted on November 13 2019 by spiralune |
Report Issue
yeah! fantastic ! this is what I've looking implemented for since ages. Thanx !
Posted on November 13 2019 by akninganng |
Report Issue
thanks c74, ableton, and manuel, so much to enjoy here.
Posted on November 13 2019 by merchant |
Report Issue
A must-have, the perfect tool box for audio routing. Thanks.
Posted on November 15 2019 by chapelierfou |
Report Issue
This kit once more reveals the behind the scenes power of M4L within Live. Great! Many thanx to the developers!
Posted on November 16 2019 by tonwelle |
Report Issue
BAM! Very cool.
Posted on November 16 2019 by ntxr |
Report Issue
Very cool,using Audio Send Receive is there a way to have the receiving track solo with the original?
Posted on November 17 2019 by brodiem |
Report Issue
thanks so much everyone for the kind words and warm welcome for this toolkit!
@brodiem, if I'm understanding you correctly, you can use the Audio Sender and Audio Receiver devices to send your signal on one track to any number of destinations, from anywhere in the track's signal chain. please email support@cycling74.com if you have any further questions!
@brodiem, if I'm understanding you correctly, you can use the Audio Sender and Audio Receiver devices to send your signal on one track to any number of destinations, from anywhere in the track's signal chain. please email support@cycling74.com if you have any further questions!
Posted on November 21 2019 by cycling74 |
Report Issue
Unfortunately the devices appear to crash Live when loading an .als file or a Live Clip that was saved with one of them in it. I tested Audio Sender and Audio Routing Example. This occurs even when saved in their default state i.e. no routing assigned.
Recalling a Rack containing the devices seems okay.
OS X 10.13.6
Live 10.1.3
Recalling a Rack containing the devices seems okay.
OS X 10.13.6
Live 10.1.3
Posted on December 17 2019 by asymptote |
Report Issue
I just discovered all the Ableton CV Tools, which use "routing_manager1.58.maxpat" suffer the same problem as Audio Routes which uses "BrowseRouting.maxpat".
Posted on December 17 2019 by asymptote |
Report Issue
I've been playing with the pack for a bit, and there's a use case that I haven't quite been able to make work with these devices. I'm looking for a way to make audio tracks that would output individual IEM mixes for different members of a live band, or perhaps just to mix signals per output. The closest workaround I could put together was to lay out several Audio Receivers and use their gain knobs to mix, but I envision something far more integrated. Maybe you could add as many lanes in your "bus" as you wanted, use a dropdown for each lane to choose your input signal, mix the levels of each lane with a meter, solo/mute/pan, etc. Would you consider adding a device like this to the pack, maybe call it something like "Receiving Bus"? I've been searching for something like this for a long time, and it would make running and mixing a live set entirely in Live far more practical.
Posted on January 02 2020 by jquyatt |
Report Issue
Amazing devices! However, any/all of the .als files crash my live set if I drag/drop them from the Ableton Browser onto the top of the tracks area (where the mouse allows you to load an als inside another set). Tried on 10.1.9 Suite and 10.1.13b Beta.
The .als files load fine if you do not have Ableton running and you just load them by double clicking them to invoke Ableton Live to start up.
The .amxd's will load just fine on their own within an existing set.
Pointing this out in case anyone else ran into this issue!
The .als files load fine if you do not have Ableton running and you just load them by double clicking them to invoke Ableton Live to start up.
The .amxd's will load just fine on their own within an existing set.
Pointing this out in case anyone else ran into this issue!
Posted on April 02 2020 by JZ1978 |
Report Issue
Hi.
These devices are great ! Thank you very much for posting...
It will be priceless regarding to live performing for theater and dance shows...
Anyway, I wanted to know if inside the "audio matrix" it would be possible to make routing changes on the fly automatable and then recordable.
Actually for live purposes it's great to change the routing content of a preset on the fly but theses changes are not midi recorded in the arrangement view (at least it's possible to record receiving tracks in audio but then the timings and routing actions are fixed...)
Or maybe there's a trick to somehow do the same with another technique ?
This is a great plugin anyway, I'l make good use of it !!
Cheers.
These devices are great ! Thank you very much for posting...
It will be priceless regarding to live performing for theater and dance shows...
Anyway, I wanted to know if inside the "audio matrix" it would be possible to make routing changes on the fly automatable and then recordable.
Actually for live purposes it's great to change the routing content of a preset on the fly but theses changes are not midi recorded in the arrangement view (at least it's possible to record receiving tracks in audio but then the timings and routing actions are fixed...)
Or maybe there's a trick to somehow do the same with another technique ?
This is a great plugin anyway, I'l make good use of it !!
Cheers.
Posted on June 08 2020 by Krabmi |
Report Issue
@Krabmi : save presets in the audio matrix, then automate them. If 10 are not enough, edit the device to add some more.
Posted on June 25 2020 by madlab |
Report Issue
Iv tried using the audio sender on group tracks but there isnt any signal recieved.im sure the group tracks are more complicated compared to regular tracks some how this might just be me?
just sending from a group to an audio track. I use the device as sends, it works perfect to solo the return signals and treat them independantly.
just sending from a group to an audio track. I use the device as sends, it works perfect to solo the return signals and treat them independantly.
Posted on October 12 2020 by brodiem |
Report Issue
@brodiem, there are some limitations to the way the devices use the Live API where certain configurations render them inoperable. Instrument Racks were identified by another user -- could you please send a Live set that shows the routing you're having trouble with to support@cycling74.com so we can log it for the dev?
Posted on October 13 2020 by dndrks |
Report Issue
Hi there is anyone else having problems printing Track Mixer Automation when routing through Panner "Speaker" on/off and "Track Volume." The Mixer section seems to work but any changes in automation for the entire mixer automation section plays fine through Live but doesn't print when exporting. I'm able to get around this by automating the "Gain" in the Audio Routes Panner. I also see the same issue when automating Group Mixer Automation, using Audio Matrix to route the group. What's strange is playing back trough Live is fine, it's just when exporting.
Posted on December 13 2020 by KamranV |
Report Issue
If you're a user of Audio Matrix to be able to group spatial tracks, have you noticed that Group effects don't work? My work around it just to put the same effect on each track. It eats CPU but it's better than nothing... alternative is to do some funny routing with returns but that can effect soloing, depending on what you got going on. Sigh...
Posted on December 13 2020 by KamranV |
Report Issue
I love these tools. I love them so much that I made a video about setting up a basic session for using these for quadraphonic sound. With dublab and the NEA I also made a plugin that allows you to make quad vinyl (and a lot more) as well as a grant opportunity to #MakeMusicInSpace. I'm sure a lot of you will do some mind-blowing stuff. http://QUARK.CyKiK.com
Posted on January 14 2021 by KamranV |
Report Issue
Love this, but it isn't respecting the chain in effects racks.
For example, let's say I want input 1 on chain 1, input 2 on chain 2, input 3 on chain 3.
When I flip between the different chains, all of the inputs remain active.
If I work with two inputs, without using Audio Routes 1.0.4
I typically work with just two inputs, and use a Utility on each channel panned hard left and right, followed by another Utility to make it back into mono again. It's a bit of a hack, but it works great, I just need 3 inputs instead of 2.
it would be awesome if I could get this to work.
Any suggestions, would be great!
Thank you
For example, let's say I want input 1 on chain 1, input 2 on chain 2, input 3 on chain 3.
When I flip between the different chains, all of the inputs remain active.
If I work with two inputs, without using Audio Routes 1.0.4
I typically work with just two inputs, and use a Utility on each channel panned hard left and right, followed by another Utility to make it back into mono again. It's a bit of a hack, but it works great, I just need 3 inputs instead of 2.
it would be awesome if I could get this to work.
Any suggestions, would be great!
Thank you
Posted on February 09 2021 by mcrocklin |
Report Issue
The sender is super buggy. Can't count on it for a live set unfortunately. Does anybody know of a stable device that is similar?
Posted on April 01 2021 by bern |
Report Issue
@bern it was working when i edited on Live 10.
https://drive.google.com/file/d/1qcGLejm3_9Z9Meqq8Zms392wlM0jStbE/view?usp=sharing
https://drive.google.com/file/d/1qcGLejm3_9Z9Meqq8Zms392wlM0jStbE/view?usp=sharing
Posted on April 05 2021 by brodiem |
Report Issue
@dndrks sent over a proj file with a clearer explanation thanks for responding 🤟
Posted on April 05 2021 by brodiem |
Report Issue
*emot
Posted on April 05 2021 by brodiem |
Report Issue
I am creating and audio fx rack on a track, inserting audio senders into chains, and mapping those to macros so I can use it as a live performance Send/Insert control.(mapping also the thru volume)
However, the Senders do not load properly when re-opening the project.
There is no signal when sending...
you have to remove the devices from the rack to get them to work, then reinsert it them the rack and re-map everything.
Doing this for 40 tracks every time I open a Live set is totally impractical.
PLEAS PLEASE PLEASE fix this issue, it would truly revolutionise my live set performance.
But as it is ... unfortunately unusable.
If I don't use instrument fx rack, I the serial nature of the audio transmission means you can't have thru in paralel and affect the different senders.
The Audio Senders different gains do not appear properly on Push either, si its impossible to automate them on the fly without a rack.
I IMPLORE you, please update with a fix!
Thanks!!!
However, the Senders do not load properly when re-opening the project.
There is no signal when sending...
you have to remove the devices from the rack to get them to work, then reinsert it them the rack and re-map everything.
Doing this for 40 tracks every time I open a Live set is totally impractical.
PLEAS PLEASE PLEASE fix this issue, it would truly revolutionise my live set performance.
But as it is ... unfortunately unusable.
If I don't use instrument fx rack, I the serial nature of the audio transmission means you can't have thru in paralel and affect the different senders.
The Audio Senders different gains do not appear properly on Push either, si its impossible to automate them on the fly without a rack.
I IMPLORE you, please update with a fix!
Thanks!!!
Posted on June 02 2021 by Alfonrock |
Report Issue
The same issue exists when Copying one instance of an fx rack with sender into other tracks.
:`(
:`(
Posted on June 02 2021 by Alfonrock |
Report Issue
I found a device called Outist/Insist which does the same as Audio Sender and works perfectly with FX Racks.
It works when reloading project and pasting from one track to the other.
It is PERFECT :)
This makes me think its a bug in the Cycling 74 version.
It works when reloading project and pasting from one track to the other.
It is PERFECT :)
This makes me think its a bug in the Cycling 74 version.
Posted on June 02 2021 by Alfonrock |
Report Issue
Same goes for the Panner device, it just doesn't play well with Groups or Effects Rack.
Posted on July 04 2021 by juanverdaguer |
Report Issue
Hi I can't get the LFO Panner device to work ~ is there an issue with Ableton Live 11
Posted on July 23 2021 by dazzadome |
Report Issue
@dazzadome If you're having issues with the LFO Panner, please contact support@cycling74.com so we can troubleshoot. Please send along a Live set that illustrates your issue.
As a side note to others on this thread, these devices were not designed to work within racks. Please reference the device creator's comment in our original article: https://cycling74.com/articles/audio-routings-a-new-system-for-multi-channel-routing-in-ableton-live
"Thanks for the report. Well, not really a bug, rather a missing feature - the devices were not initially designed to work within racks. The "bug" has to do with the way the devices interact with the Live mixer device, which differs whether the device is loaded inside a track or inside a rack. This feature should be added in a future version, though."
As a side note to others on this thread, these devices were not designed to work within racks. Please reference the device creator's comment in our original article: https://cycling74.com/articles/audio-routings-a-new-system-for-multi-channel-routing-in-ableton-live
"Thanks for the report. Well, not really a bug, rather a missing feature - the devices were not initially designed to work within racks. The "bug" has to do with the way the devices interact with the Live mixer device, which differs whether the device is loaded inside a track or inside a rack. This feature should be added in a future version, though."
Posted on July 23 2021 by bellouin |
Report Issue
Wow this is dope!
Posted on January 20 2022 by eyeala |
Report Issue
Amazing, thank you
Posted on June 21 2022 by losgallos |
Report Issue
These devices are super!!! I couldnt help but notice that when i route channels in series in the audio matrix, there is a delay even with no processing on those channels as well as significant gain reduction. is there a reason for this? how can i get audio to flow through audio tracks in series without the latency? how can I get around the loss of gain besides turning every channel up by how much is lost each session?
Posted on July 24 2022 by esotericabstraction |
Report Issue
@esotericabstraction Could you send a simple Live set that illustrates your issue to support@cycling74.com? Please also include the version of Live you're using, the version of Max you're using as the Max for Live editor, and your OS. Thank you!
Posted on July 25 2022 by bellouin |
Report Issue
I'm experiencing some issues on live11 and browseroute abstraction. seems that ableton 11 (11.1.6) are sending bang from live.thisdevice BEFORE the entire liveset is created.
For a small number of tracks/devices no problem... but if you have a lot of tracks (just try with 64 tracks on which is loaded "Audio Routing Example") on reloading the song on max for live console you get the error "live.observer: Can't obtain live set at this time" (and a huge number of warning also). any idea? is someone having this issues. I'm in more than one computer and same problem on MACs and PCs
For a small number of tracks/devices no problem... but if you have a lot of tracks (just try with 64 tracks on which is loaded "Audio Routing Example") on reloading the song on max for live console you get the error "live.observer: Can't obtain live set at this time" (and a huge number of warning also). any idea? is someone having this issues. I'm in more than one computer and same problem on MACs and PCs
Posted on August 07 2022 by fcana |
Report Issue
@fcana, please send the simplest Live set possible that illustrates this issue to support@cycling74.com, along with steps to reproduce. Please also include the version of Live you're using, the version of Max you're using as the Max for Live editor, and your OS. Thank you!
Posted on August 08 2022 by bellouin |
Report Issue
Hi guys, I'm having an issue where Audio Sender doesn't work when saved in a group. I load the group in with Audio Sender on one chain and a separate 'Dry' chain, allowing me to pre filter or otherwise affect a sound before it goes to a separate FX channel.
When I do this however, Audio Sender doesn't work. It has to be loaded in individually, then placed in a group to work. Very annoying as I nearly always use it in this context.
Is there a fix for this in the pipeline?
Tom
When I do this however, Audio Sender doesn't work. It has to be loaded in individually, then placed in a group to work. Very annoying as I nearly always use it in this context.
Is there a fix for this in the pipeline?
Tom
Posted on August 30 2022 by tomheist |
Report Issue
@tomheist Are you referring to a rack? Audio Sender was not designed to work within racks. Please reference the device creator's comment in our original article: https://cycling74.com/articles/audio-routings-a-new-system-for-multi-channel-routing-in-ableton-live
"Thanks for the report. Well, not really a bug, rather a missing feature - the devices were not initially designed to work within racks. The "bug" has to do with the way the devices interact with the Live mixer device, which differs whether the device is loaded inside a track or inside a rack. This feature should be added in a future version, though."
"Thanks for the report. Well, not really a bug, rather a missing feature - the devices were not initially designed to work within racks. The "bug" has to do with the way the devices interact with the Live mixer device, which differs whether the device is loaded inside a track or inside a rack. This feature should be added in a future version, though."
Posted on August 30 2022 by bellouin |
Report Issue
Thanks for getting back to me bellouin, I look forward to a future update
Posted on September 13 2022 by tomheist |
Report Issue
Hey. Maybe someone can help out with my situation. I have a Panner LFO in my tracks and when exporting the selected tracks (my return tracks A-B-C-D (5.1 set up)), the exported tracks don't read the panner. It exports an static position of the sound in the surround field. Does anyone know why?
Posted on April 07 2023 by gastibarroule |
Report Issue
Hey. Maybe someone can help out with my situation. I have a Panner LFO in my tracks and when exporting the selected tracks (my return tracks A-B-C-D (5.1 set up)), the exported tracks don't read the panner. It exports an static position of the sound in the surround field. Does anyone know why?
Posted on April 07 2023 by gastibarroule |
Report Issue
@gastibarroule Yes, panner LFO doesn't work when exporting files for me either, the only way to record lfo right now is to record realtime inside the project, which is very unfortunate(
Posted on May 26 2023 by BgBtz |
Report Issue
Hello gastibarroule and BgBtz, sorry to hear that you're having some issues exporting your spatial audio. We can't seem to be able to reproduce the problem. Did you select a portion of sound, then select the target Return tracks, then export Selected Tracks, then import those tracks back to Live? This just works fine on our machines - Mac OS, Live 11.2.11, Max 8.5.4.
Posted on May 26 2023 by ManuelC74 |
Report Issue
@ManuelC74 Hello, thanks for reply! Yes, sure, this is exactly how i did the export, I tested it on a bunch of machines - mac m1, mac intel, win 10&11, everywhere exporting doesn't work correctly. The things i found out - stock lfo device works just fine, sound movement is rendered in my exported return channels, with lfo panner it is not - the position of sound in exported files is the position where i paused the playhead when playing project. Somehow lfo panner movement doesn't restart when rendering.
Posted on May 30 2023 by BgBtz |
Report Issue
@ManuelC74 Just saw an update, now everything's working fine, thank you for great devices!
Posted on May 31 2023 by BgBtz |
Report Issue
This is amazing but I have Live 10 and can't open these files. Would it be possible to include a download file with Ableton Live 10 sessions? Please?
Posted on June 03 2023 by chart |
Report Issue
Hi @chart, thank you for the question. This is Alex from C74.
While the Live sets included here won't open in Live 10, as long as you are using Max 8.5.4 (available at cycling74.com/downloads), you should be able to use the .amxd files (Max for Live devices) included in this set in Live 10.
Download the .zip file linked here and navigate into Audio Routes/Presets/Audio Effects/Max Audio Effect/Imported, and drag one of the .amxd files onto a track in Live, or otherwise load the devices however you'd like.
While the Live sets included here won't open in Live 10, as long as you are using Max 8.5.4 (available at cycling74.com/downloads), you should be able to use the .amxd files (Max for Live devices) included in this set in Live 10.
Download the .zip file linked here and navigate into Audio Routes/Presets/Audio Effects/Max Audio Effect/Imported, and drag one of the .amxd files onto a track in Live, or otherwise load the devices however you'd like.
Posted on June 07 2023 by alexvangils |
Report Issue
Amazing thanks.
Posted on June 13 2023 by chart |
Report Issue
Very helpful! Thank you
Posted on September 08 2023 by TianKJ |
Report Issue
Is it possible to implement in the Audio Matrix device, that I can also select VST instrument channels? At this moment, only the master output of a VST instrument is selectable. All the other output channels a VST instrument might have, I can't use now. If I could select other output channels of a VST instrument in the Audio Matrix I can decrease my amount of recording tracks, when I use 2 or more Audio Matrix devices in my template.
Posted on October 03 2023 by Syntho |
Report Issue
Hi @Syntho, thank you for reaching out here, this is Alex from C74. I believe that what you are describing should be possible, so I'd love to take a closer look at your issue. Can you please send a message to support@cycling74.com so we can follow up there?
Posted on October 06 2023 by alexvangils |
Report Issue
Amazing ! thanks ! :)
Posted on October 21 2023 by denixx |
Report Issue
Is there a way to know the track ID of the selected routing?
I want the umenu to only display some tracks (some output routings) and not displaying the "Ext. Out" or the track the device is in, for example.
If I know the track ID associated with every output_routing, I could delete the one associated with its track from the umenu.
Thanks!
I want the umenu to only display some tracks (some output routings) and not displaying the "Ext. Out" or the track the device is in, for example.
If I know the track ID associated with every output_routing, I could delete the one associated with its track from the umenu.
Thanks!
Posted on January 23 2024 by UdoRBrauna |
Report Issue
Hi @UdoRBrauna -- this is not possible with the Audio Routes devices in their current form. However, this is something you could set up yourself. You'd want to hack the routing abstractions inside the devices -- in particular, BrowseRouting and RoutingObjects. I'd recommend consulting the Live Object Model docs to sort out your version of the abstractions: https://docs.cycling74.com/max8/vignettes/live_object_model
Posted on January 23 2024 by alexvangils |
Report Issue
Hey @alexvangils thanks for the response.
Yes, I did look the BrowseRouting and RoutingObjects and the LOM.
I know I can get any track/device input/output available/current routings, but I can't find a way to get the track associated with that routing.
When I get the routing information I get a dictionary with a display_name (the name of the track routed to) and an identifier (not the track id).
The display_name is not useful as it can be 2 tracks with the same name.
What I want to do is: if I have 2 tracks and the m4l device on the track 1, I want to populate a umenu with only the output routing to the track 2 (and not "track 1", "track 2", "No input", "Ext. Out").
I will appreciate if you could point me in the right direction.
Thanks! (and sorry for my english)
Yes, I did look the BrowseRouting and RoutingObjects and the LOM.
I know I can get any track/device input/output available/current routings, but I can't find a way to get the track associated with that routing.
When I get the routing information I get a dictionary with a display_name (the name of the track routed to) and an identifier (not the track id).
The display_name is not useful as it can be 2 tracks with the same name.
What I want to do is: if I have 2 tracks and the m4l device on the track 1, I want to populate a umenu with only the output routing to the track 2 (and not "track 1", "track 2", "No input", "Ext. Out").
I will appreciate if you could point me in the right direction.
Thanks! (and sorry for my english)
Posted on January 23 2024 by UdoRBrauna |
Report Issue
Hi @UdoRBrauna, thank you for this question -- I don't think there is currently a way to get the track ID from the available_output_routing, unless you do indeed use display_name and ensure that your tracks are given unique names, as you've suggested. I think it could be cool for this sort of information to be included in the dictionary of available routings, so I've filed a feature request for this with the Max for Live team.
In the meantime, to get the information you are imagining, you'd have to conceive of some different logic to place in these routing abstractions. This conversation is getting outside of the scope of these devices' comment section, though, I might recommend you check out the cycling74.com forums, or the #max-for-live channel on the Max Discord. I'm sure the folks there would be down to explore this quest with you! If you don't have the link, the Discord is here: https://discord.gg/WSMSf9N4wh
In the meantime, to get the information you are imagining, you'd have to conceive of some different logic to place in these routing abstractions. This conversation is getting outside of the scope of these devices' comment section, though, I might recommend you check out the cycling74.com forums, or the #max-for-live channel on the Max Discord. I'm sure the folks there would be down to explore this quest with you! If you don't have the link, the Discord is here: https://discord.gg/WSMSf9N4wh
Posted on January 30 2024 by alexvangils |
Report Issue
Would it technically be possible to choose an alternate audio interface as audio outputs, or to be able to choose a digital routing option like NDI audio. I believe this should work as one can use NDI for video with max. Obviously the plugin would have to be modified, but is there no option or package that does cater to this type of requirement?
Posted on March 26 2024 by ysanchez |
Report Issue
Hi ysanchez -- thank you for reaching out here. With these devices, you can route audio to the inputs/outputs made available to Live itself -- so if you choose your interface or software as the audio input / output device in Live's preferences, you should be able to use it with these devices.
If you have a more specific question or request, please feel free to email support@cycling74.com, and we'll be very grateful to hear about it.
If you have a more specific question or request, please feel free to email support@cycling74.com, and we'll be very grateful to hear about it.
Posted on September 04 2024 by alexvangils |
Report Issue
Login to comment on this device.
Browse the full library