from datetime import timedelta
import mixgen
from mixgen import Track

def ms(m, s):
    return timedelta(minutes=m, seconds=s)

name = "on the inside"
year = 2024
rootpath = "https://joshuawise.com/resources/eoy2024/v0/"
alttext = "the Milky Way with a silhouette of Bishop Pass, with text, on the inside: 2024, as heard by Joshua."
dreamwidth = "https://joshua0.dreamwidth.org/77629.html"
filename = "eoy2024-v0.mp3"
mp3_filesize = "145 MB"
cover_fullres_filesize = "1.8 MB"
cover_1024_filesize = "314 kB"
readme_filesize = "2.5 kB"

notes = """

I have spent much of this year in ways that are very different than I have
in the past.  One thing that hasn't changed, though, is that I have spent a
good bit of time listening to music.  Where I do it has changed -- walking,
rather than cycling; at home, rather than at the club.  But either way, it
has remained constant that bits and pieces of what I listen to have lodged
themselves in me.

Over the past few years, I have found myself more aware of the projections
that people around me cast on me -- and, occasionally, if I am so lucky, of
the projections that I cast on them.  I have a mixed relationship with these
projections: they often reveal things about me or others that I wouldn't
have had access to otherwise, but on the other hand, I sometimes find myself
frustrated that what is projected onto me can be so bright as to temporarily
blind the reality of who I am.

In each of these yearly mixes, I get to do more of the enjoyment of
projecting -- in both directions.  Whatever I hear in this mix is probably
not entirely what the artists of each song wrote; what I hear reflects me,
too.  And whatever you hear in this might or might not reflect the moments
that made up my year.  All three of us -- the original artists, me, and you
-- get to be in it together, though, whether we like it or not.  With some
luck, we'll each find something new in ourselves, and maybe even in each
other.

Please find below the soundtrack to my 2024.

""".strip()

technotes = """

<p>This mix was cut together and edited using Ableton Live.  I used to say how
long it took me to put all the pieces together, but the answer is basically
"this is why I'm not a DJ in a club".</p>

<p>This year, I experimentally wrote a script to generate a bunch of these
files.  I'm not sure if it actually saved me time or not, but hopefully it
should stop me from making more stupid cut-and-paste errors next year.  If
you want it, here's the source: <a href="mixgen.py">mixgen.py</a> (driver to
generate the things); <a href="info.py">info.py</a> (descriptor for this
year in particular); <a href="index.html.tpl">index.html.tpl</a>; <a
href="readme.tpl">readme.tpl</a>.</p>

""".strip()

previous = [
    ("https://joshuawise.com/resources/eoy2023/", "on the lookout: 2023, as heard by Joshua."),
    ("https://joshuawise.com/resources/eoy2022/", "on the run: 2022, as heard by Joshua."),
    ("https://joshuawise.com/resources/eoy2021/", "on the offchance: 2021, as heard by Joshua."),
    ("https://joshuawise.com/resources/eoy2020/", "on the front: 2020, as heard by Joshua."),
    ("https://joshuawise.com/resources/eoy2019/", "on the edge: 2019, as heard by Joshua."),
    ("https://joshuawise.com/resources/eoy2018/", "on the horizon: 2018, as heard by Joshua."),
]

tracks = [
    Track(ms(0, 0), "Murder by Death", "Brother", "In Bocca al Lupo", 2006, "https://murderbydeath.bandcamp.com/album/in-bocca-al-lupo"),
    Track(ms(3, 46), "Pom Pom Squad", "Downhill", "Mirror Starts Moving Without Me", 2024, "https://pompomsquad.bandcamp.com/album/mirror-starts-moving-without-me"),
    Track(ms(6, 49), "Then Comes Silence", "Ghost House", "Trickery", 2024, "https://thencomessilence.bandcamp.com/album/trickery"),
    Track(ms(12, 6), "TR/ST", "Soon", "Performance", 2024, "https://trst.bandcamp.com/album/performance"),
    Track(ms(16, 14), "Phantogram", "Running Through Colors", "Memory of a Day", 2024, "https://phantogrammusic.bandcamp.com/album/memory-of-a-day"),
    Track(ms(19, 48), "Delerium", "Dust In Gravity (ft. Kreesha Turner)", "Remixed: The Definitive Collection", 2010, "https://delerium-official.bandcamp.com/album/remixed-the-definitive-collection"),
    Track(ms(23, 47), "backpool", "i feel fine", None, 2024, "https://backpool.bandcamp.com/track/i-feel-fine"),
    Track(ms(26, 42), "Black Nail Cabaret", "Darkness is a Friend", "Chrysanthemum", 2024, "https://blacknailcabaret.bandcamp.com/album/chrysanthemum"),
    Track(ms(29, 56), "Radioaktivists", "Pieces Of Me", "Radioakt One", 2018, "https://radioaktivists.bandcamp.com/album/radioakt-one-luxus-2"),
    Track(ms(35, 24), "Covenant", "Brave New World", "Skyshaper", 2006, "https://covenant-swe.bandcamp.com/album/skyshaper"),
    Track(ms(40, 36), "Tiësto", "In The Dark (ft. Christian Burns)", "Elements of Life", 2007, "https://tijsverwest.bandcamp.com/album/elements-of-life"),
    Track(ms(44, 58), "Imogen Heap", "What Have You Done To Me?", None, 2024, None),
    Track(ms(51, 7), "Lauren Mayberry", "Something in the Air", "Vicious Creature", 2024, None),
    Track(ms(54, 49), "Phantogram", "Come Alive", "Memory of a Day", 2024, "https://phantogrammusic.bandcamp.com/album/memory-of-a-day"),
    Track(ms(58, 47), "Pendulum", "Colourfast", "Anima EP", 2023, None),
    Track(ms(62, 32), "Sub Focus", "I Found You (ft. Hayla)", "Evolve", 2023, None),
    Track(ms(65, 17), "Justice", "Neverender (with Tame Impala)", "Hyperdrama", 2024, "https://etjusticepourtous.bandcamp.com/album/hyperdrama"),
    Track(ms(69, 46), "Bad Religion", "Sorrow", "The Process of Belief", 2002, None),
    Track(ms(73, 0), "Something Corporate", "I Woke Up in a Car", "Leaving Through the Window", 2002, None),
    Track(ms(77, 7), "The Doors", "People Are Strange", "Strange Days", 1967, None),
    Track(ms(79, 16), "Murder by Death", "The Devil Drives", "In Bocca al Lupo", 2006, "https://murderbydeath.bandcamp.com/album/in-bocca-al-lupo"),
    Track(ms(85, 0), None, None, None, None, None),
]

if __name__ == "__main__":
    import sys
    mixgen.mixgen(sys.modules['__main__'])
