 Okay. Thank you. My name is Hueslipen. I'm a Debian developer and I'm talking about multimedia assets that are licensed under the new general public license. And why am I giving this talk today? Well as a Debian developer I package some software including a few games and there were two games called Blobars and Starfighter that I packaged for Debian and all as well for some time and then suddenly someone found out hey this game it's in the Debian main repository so it should be all free and open source and swan. But there's some music and images that are being used in the game and they are actually not free. And then you can talk about oh what is free and not free. Well it was so bad that there was some music for example that explicitly had a copyright headset all rights reserved nothing. So you didn't have any license to spread around the music for example. That's a big problem if you have this in a distribution because you are spreading it around so you're liable then. So I started walking together with my wife to replace music and sound for these games from free sources. Nowadays you can get many creative commons licensed multimedia from like OpenGameArts.org it's a nice website. But the game engines are usually written well they are licensed under the GPL it's very common. So I thought why not use the GPL for the multimedia as well. So in my outline of the talk I will talk a little bit about the GPL itself and then what do we have to think about when you GPL multimedia. I will give you an example of some GPL music and then we'll give some conclusions. But first I will tell you why do we want to use the GPL as a license. It's very nice because it ensures first that everybody can spread around your work and they can use it freely. It's a very basic thing. Second of all everybody is allowed to make changes and redistribute them so they can fix bugs they can add features they can help out in other ways and spread out their results. What's also very nice is that the GPL enforces people who do this to distribute their change sources under the same license. So it's not that these nice properties the first two are taken away. So there are other licenses for example BC license maybe even Creative Commons by license that allow you to take a work modify it and then give the result of that but not give the original sources back to the community. And the reason why we have these properties is what I already said is that the source code must be made available. Okay now you think okay your source code what is source code I know source code for programs but let's have a look at the GPL license and I've taken two small pieces out of it. The first is the definition of what is source code. So if you have a work then the source code is the preferred form of the work for making modifications to it. So if I'm making an image and I have I do it in Inkscape for example I have some vector graphics program then as the designer of some of the image the vector graphics is the source code whereas the object code or any non-source source form of the work is any results you create from this for example if you export your vector graphics as a bitmap image then that is a non-source form of the work. Later it says that you also have corresponding source code for work meaning everything that you need to generate install run modify the things that you do because if for example you make an image you have some vector graphics in this SVG but if Inkscape itself would not be free software then it's certainly very difficult for for me to pass this to someone else and have them have the ability to change your vector graphics. So everything you need to go from source code to end results should be free as well and preferably have this source code available for that. So okay now we have this definition of source code from a GPL how can we apply this to multimedia so it's actually very easy you just have to make the preferred form of modification available you have to ensure that the file final project product can be made with free and open source products. So you have to include all the scripts and tools that you use to make final products so that's it easy right? Well then you start thinking and I think well let's say I have an image I took with my camera from some scene outside what is the source of that is that the scene outside well no no no we we are only concerned with the digital world so once you take the image the the image file that your camera produces is the source the same thing with music for example if you make a recording of a live band and you get permission from them to redistribute your work under the GPL for example then the recording is the source and not the band themselves. We also don't require perfect fidelity if you think oh I have the source code it must be the the originals then you think well if I take an image with my camera should it be the raws or the JPEGs if you have music should it be the original WAF files or maybe the flag compressed the lossless compressed sound or can I just distribute an ORC for this file well we don't really care that much as long as you can still modify it in a very easy way we also don't require the whole history think if you you take some GPL to work for someone else like they made a movie for example and you just want one frame from this movie because you don't use this as the backdrop for your game for example do you have to include the whole movie as the source code for your game no it's it's fine to take an excerpt of a larger work you don't have to have the whole and do history for example of some file and because then it would quickly become unreasonable so use common sense in doubt you can look at how we do it for source code of programs because we have so much experience with that and then some things that you should not to do oh wait where is that one sorry sorry I first some examples of source code so for images if you have a vector art then for example the SVG files can be the source files if you have a pixel art then try if you use the GIMP for example you have the native GIMP file format XCF which preserves all the layers that you have and and things like that if you have a computer rendered art then for example if you make it in Blender or Poffrey then use all the source files for these programs if you have photographs then of course it's preferable if you have the raw files because you can do much more of them if this is the preferred way of working with it as you as an artist then yes this is definitely the source otherwise I mean there are cameras for example that cannot produce raw files and original JPEGs are fine as well for sound and music well if you have for example a band that is playing a number then you have different microphones and so on you do a multi track recording then you would say okay it's maybe all the original tracks that is the source because that is what you then work on you mix everything together you cut things as one but nowadays a lot of music is made on computers so you have software synthesizers you have sample libraries as one so this is what is the source if you have a digital Linux audio workstation setup there are some files that describe how all your components are linked together and how they view sound this is what is what should be included as source code but then you think okay for example you said I have a multi track audio recording well this can easily be many gigabytes of data if you have a movie this is even more so sometimes you think oh this is too big to distribute or sometimes it will take a very long time to for example render a movie this will take months on a computer cluster for example then try to find some reasonable solutions to solve this problem one of them for example is that you can make use of the written offer clause of the GPL that says oh you don't have to really always make the source available online but you can also make an offer available for someone to get the source from you for a reasonable cost so if you have gigabytes of data then you can say okay I can give you a cd via a post office post system for example maybe if it's computationally many can point them to the company or institute where you render the stuff so then they also have the ability to go there and do the same thing you did pay some money and have them render for example your files and now I will give an example oh oh what not to do yeah that's first so you should not provide source code in a proprietary format I have seen a documentation for example for an open source project where the documentation was written in a word well nowadays we have open office which can maybe read it but this is not really the preferred thing also don't do anything that requires proprietary programs to to process so you have maybe open standards file formats but then the tools actually make use of them are not free I avoid using commercial fonts for example or image and sound libraries for which we have to pay to get it and also what I've seen sometimes is that people say ah I made some music with some software synthesizers and I have the corpus file as a result and yeah no you want the original source files no because I say the corpus files are the source it's not the preferred form of modification so that's a bit strange so if you think about doing anything of the above then maybe the gpl is not for you but I will give you an example of how to write music that can be gpld because we have the source code available and also I made this myself and I'm more of a programmer so while you could perfectly do it with graphical user interfaces like the rose garden for example to write your score and to well render it via software synthesizer I decided well can you also write music completely with a text editor so I will give three slides and in these three slides I will show you the complete source code of a piece of music and I'll try to play it as well I use some components because well I have some compires I'm going from abc midi of a music notation format to a midi file I use c sound to as a software synthesizer to render the midi file I use the fluid synth library and a general midi sound font for samples I process the resulting WAF file to an old corpus file I use a make file script to automate everything and I have two resulting object codes from this source code it's the soundtrack itself but they also get a pdf with the sheet music so what does it look like well this is the score of a small song I made I don't have that much time but if you can look at it you see you have like bar notation more or less you have letters from a to through g for the note and some numbers they didn't are durations of notes so this is my music notation and then this is my c sound software what is it software synthesizer definition it's also very short because I cheat a little bit normally you can build complex instruments from scratch from this but actually I'm using the fluid sound font engine that just loads some samples and uses that to render the music and then I have a make file that automates everything and one of the products that the make file makes is the pdf files with the sheet music that's for example this but now I will try to give a demonstration so I have a directory with my make file actually I have two songs but let's just build it so let's see if the sound works so you can forward one in the background that's a much longer one but unfortunately the source code of that one was too big for the slides so so these this music was made for a game a space game where you fly around in a starfighter and have to shoot down the baddies so this was a nice example can you find more examples of this online well I'm afraid I couldn't find that much which is actually licensed under the gpl but there is a lot of multimedia around with source code so the bender projects for example organize this once in every few years they create a movie and they make available all the sources for this movie so you can recreate it yourself or you can make changes to it buffray is a ray tracer they have a gallery where people can submit their source code and you can see the rendered image there's a website called shader toys dot com I think where people program openGL shaders and have that produce nice images and everything runs in the browser I just have a look at it tracker modules so for music that is very interesting because tracker modules are their own source code it's basically a combination of the music score and some samples and some fixed set of rules to play it and I guess there are many more examples and hopefully this will inspire you to produce some gpl multimedia of your own and then I look forward to seeing it yeah so final words it's certainly possible and even if you're not a person who is used to multimedia the way artists make it then there are still ways to make them make music and images in the programmer style okay thank you time for questions yeah yeah this is the first time you've worked with music no no I so I've been playing keyboards and pianos since I was five years old or so I wrote programs to produce music on in basic when I was very young even so the question was is this the first time I wrote music uh so no but uh this is actually the first time I wrote it as a source code this way so yeah yeah so that's a good question what if my source code is very big I have this I can make use of this clause to make it only available upon request but then all my heart I this question and I lost all my sources yeah this has happened before there are examples out there of people who did this uh and then yeah you cannot fulfill your promise anymore uh but you're the copyright holder so you're a bit special um but anybody else who has your end results and want to redistribute them under the same license they now have a problem um in that case I would say okay go to the original author uh and uh yeah make the the result available under a different license I mean then it's maybe the cc by license or maybe a public domain because then there's not much else that you can do yeah so I have a question about the um is there a relationship between gpl and creative comments or are they completely separate yeah that's a good question is the is a relationship between a gpl and the creative commons uh I think uh well the gpl was very old already um but the cc by s a license the uh shared alike uh and attribution license is the most similar to the gpl and I think uh it is inspired by uh people who already know the gpl I wanted something similar in the creative commons the only problem with it is that it doesn't make a distinction between source code and object code so it's easy to make some music and publish the mp3 files under the cc by s a license but you cannot really modify it anymore maybe you can make cut something or change the pitch or that's it but you cannot change some chords in the middle of the song for some it's more related to intellectual property as such if the creative commons licenses are more related to intellectual property um no I I wouldn't say so at least not more or less than the gpl is okay so yeah um so if let's say our our artists and our content creators use some proprietary tools for maybe like tile sets they use Photoshop because they knew it and it was quicker whatever um short of extracting those assets and different repository like hide them is there any other way we can distribute them in some way yeah so the question is if you have artists who use proprietary libraries or software to to produce the end results is the is there a way to extract everything you need so as someone who receives the work that you can still do everything that the original artist did that's hard to say because there are many libraries with samples for example or images out there with clip art that say okay you you can use this in your work if you pay for it but you're not allowed to reduce with the the library itself without any changes and actually maybe you you really want to have the original library to be able to do the same thing that the original artist did um but maybe there are situations where indeed you can use excerpts from this library and make them available under the gpl I don't know this is a case by case thing I would say that particular instances it's it's a tad hard even if like you will have your your artists yes that's a good question and I want to say something about that as well so what if you have artists they are used to their proprietary tools how can you convince them to switch to some free tools um well some of them might want to do it but one thing is that it's not always the case that if they use proprietary tools that you cannot distribute it as under the gpl because maybe there are free tools that can do exactly the same thing and then it's not a problem I mean if someone somebody does something in Photoshop then someone else can most likely edit everything in a very nice convenient way in the game for example um maybe not everything but uh maybe it's good enough okay I think I have to stop there thank you so much