 Okay, so I'm ready to start. So I'm Jean-Baptiste Mardel, I'm the maintainer of KDN Live, the video editing application using the KDN environment. And my talk is about rewriting the timeline. So first I'm going to give you some background information on why we had to rewrite the timeline. And what we did this year in 2017. So the KDN Live project started around 2005. This was the first KD3 release, so it was a very basic application at that time. Then in 2008 was the first KD port. So we switched to the KD4 libraries. In 2010, new contributors came in, before it was mostly me. And we added new features like stop motion widgets, color scopes, and many new features came in that year. Then in 2011 we came closer to the KD community. I went to my first random meeting where KD developers meet. And we switched the code from SourceForge to the KD servers. In 2007 there was a first rewrite attempt, because as you can see on the image, the code was just piling up and becoming a bit difficult to manage. In 2013 the project had a big growth, so it became more and more complex to manage. In 2014 there was a first discussions about rewriting part of KDN Live, because it became so complex that it was hard to manage. And that same year we started to port to KD frameworks 5. In 2015 we released the first KD frameworks 5 version. We also had a first UI review with a KDVDG group. And we started another very important thing for the community, the KDN Live Cafe. We started in December 2015 a monthly IRC cafe where users on developers meet. Ever since that every month we had this cafe. So that was 2015. In 2016 we focused on the community. We had some new people coming in, we redesigned the website. We also tried to refocus on our target user group. Because we wanted to make KDN Live useful for professional or semi-professional video auditors. So we tried to refocus on this and to really try to listen to our target users to improve the application. And also in the years before we added lots of stuff. Kind of we were trying to do everything in one application. So in 2016 we refocussed to try to do video editing only but try to do it good. And so in 2017 almost 5 years after thinking about rewriting large parts of KDN Live we finally started this big rewrite. Because it became obvious that if we wanted to add new features to also to make advanced features usable for professional editors it was impossible to continue like this. Adding new features only meant that we added new bugs and it was unfixable. So the first refactoring attempt in 2014 was mostly unsuccessful because we tried to rework a separate code. And it was later we realized it was almost impossible to merge the refactoring. So in 2017 we had the big chance of having a new developer who stepped in who is really interested in code architecture. So he did a lot of code cleanup and completely redesigned the architecture to make it better. So if we have a quick look at before the refactoring I'm going to show you. So the circles show you the files that constitute KDN Live timeline. So we had a custom track view class depending on another class, another class. And it was all a big mix. So it was very hard to change something without breaking other parts. And also in yellow you have the UI parts and in blue the core library parts. And you can see that it was very mixed up. So it was very problematic to make a change. And this was the timeline and there is also the project bin, the effects stack and the monitor stuff. And all that was completely mixed up. So we were really blocked and for a long time we postponed this rewrite because it was really not a fun thing to do. So now as of today the timeline looks a bit like this. It's rather simplified but you can see that there are much less interdependencies. And the UI code in yellow is much nicely separated from the other parts of the code. So for this refactoring first thing was that we redesigned the architecture. And also we switched the code responsible for the KDLive timeline to QML. So this also helped us as we switched to a model view structure. This also helped us to better separate parts of the code. So then you can see a quick comparison of what it was in January and what it is in July. It was simplified but it was really huge work that we did. So now in this switch to QML I'm going to show you... We switched several parts of the UI but not the whole application. So currently KDLive is a mixed application. We have parts with Q widgets and parts with QML. Mostly because it's a quite complex application. I don't think it would be completely feasible to completely switch to QML. So currently we're doing what we think is best for the application. So you see in highlighted in red are the parts that now use QML. So the effect list is using QML. The monitor view is also using a QML overlay. Now the timeline is composed of QML. Now I'm going to show you a quick video demonstration of the timeline in action. Sorry, just before. One of the advantages of switching to QML is that the display code for the timeline is completely separated in some QML files if some of you have already used it. You can easily customize the look of the timeline. So just by editing a few lines of the UI you can have a completely different look. This is just what I did yesterday night in my spare time to test. But it also means that in some future we might be able to move to, for example, touch UI or things like this. And after this I'm going to show you a quick video demonstration of the timeline. So this is the new version using QML. So basically for those of you who have used KDN Live you won't notice much changes. So this was one of the first goals was to try to get same features in the new code. So you will see, I will highlight you a few of the changes but it's not completely different. Now that we're reaching an almost stable status we also want to involve users in parts of changing the UI to improve the workflow. Okay, so you can drag a clip in the timeline as it was before. You can resize the clip and you can see on the right side there's a smaller info displaying the length of the size change. So QML allows us to add more interactive cues to the timeline. You can mute, hide video or lock the tracks. All of this was possible before but now the look is a bit nicer and you have some feedback. If you try to click on lock track the lock icon also pulses. One of the new features also is that you can resize tracks which was not possible before in the QGraphicsView interface. And you can compact or expand the video tracks. And last is the video fades that can be adjusted. It's quite similar to what it was before but it will allow us to have a better customization of the UI. Okay, so now one of the problems we've been having in KDN Live as in other applications is that we depend on a lot of libraries that are usually not easily available on these tools or they have some older versions. So we're trying to use, I heard it in several talks today already, to switch to the containerized formats like app image. And we're currently setting up KDCI instance to build app images of KDN Live as a development version so that users can then get the nightly builds of the last version as an app image to easily test the latest changes. So hopefully this app image should be working in about two or three weeks. So we hope we have many users that follow closely the development of KDN Live so it will allow them to improve testing and have us so that we can have some better feedback. And in September I'm also going to attend the Renda and I'm hoping to push also for the flat back and snap formats. So now what this refactoring will imply for users? One of the most important things that users want is stability. So one part of the code architectural change is that we separated the libraries of the UI and Nicolas Carrion who is working on this refactoring added some tests and also used some fuzzing so that we can make sure better than before that there are no regressions in the code. So it's one of the core motivations for this refactoring was to get an improved stability. Then one thing that we wanted to achieve is advanced video editing. As I mentioned, our target user group is professional video editors and for this you need some advanced editing functions a bit like what you have in text editors like overwrite mode or things like this. So I just illustrated a few of the features that we plan to introduce that were partly added before in KDN Live but were so too buggy because of the structure of the code. So for example, if you have a video of a cat and want to add a chicken in between with advanced editing you can just move the clip over the other video and it will just work. You don't have to cut the start, cut the end, delete and then add it. One other thing, if you have a clip that is a bit too long you want to cut apart you don't have to also select, start, select the end and cut you can just in one shortcut resize it. We're also working on the transition workflow currently in KDN Live if you want to make a transition between two clips you have to put one clip on top of the other then add a transition and then the transition will take place. In the new workflow it's called a feature called SimTrackTransition that many professional editors have. You just overlap the two clips and the transition will take place on the overlap lengths. So these features are really necessary for semi-professional video editors. We're also planning to work on the effects workflow currently if you want to add an effect to a clip in KDN Live you have to search the effect list, find the effect you want and then drag the effect on the clip then you have the effects stack showing up and you can adjust the effect. It requires quite a lot of steps especially because we have lots of effects in KDN Live in the new version that we are building you will have a built-in effect stack with the most popular, often used options like contrast or color balance and you can directly adjust it without having to search in an effect list. And I think the last feature I want to show is sequence nesting so if you have a sequence of several clips that you want to use and you like you can kind of compact it to make it one clip and then you can add effects to this, cut it, resize it and then expand it again. So yeah, it's kind of a useful feature. Since, as I mentioned, since about two years we also really refocused on the community we have this monthly KDN Live cafes where we discussed the features that we are implementing because KDN Live is also made by a lot of people there is Massimo who is a professional editor who is giving us feedback on how to implement features how they work in other video editing softwares and how we can implement it in our own way. We have Farid who did last year a new logo, a new website and who is managing communication so we are trying also to improve our communication to the medias and to our users. And we have also Harald who has been doing great tutorials in KDN Live. One more thing about this refactoring is that we plan to release it as KDN Live 1712 in December this year. So with the introduction of the app image automation we hope to have a good testing period between September and December to debug and improve the application. Okay, so I think I said most of the things I had to I wanted to put in this presentation. I don't know if any of you have questions or you can otherwise always come by me later. Can you mention a few things that KDN Live is planning to implement one year down the line since 2018 is the next year? So what's 2018 going to look like for KDN Live? Okay, yeah, so for a longer time I think some of the features I showed in the presentation maybe won't make it for the end of the year release. For example, I think nested sequences probably won't make it and will be for next year. Otherwise, features that have been requested that we plan to implement later are for example improve the audio workflow with an audio mixer to allow better adjusting of audio. Well, we have a very long list of wanted features. I'm a bit cautious because we started the refactoring in January and first I thought we would make it for KDN Live 1708 so I thought we would be ready in August and we realized that it would be impossible so it always takes a bit longer than we think. Also, it will depend on if a new developer steps in or not. Yeah, one of the things we want is also to have another UI review to adjust the workflow so it really fits our users' needs. Any more questions? Hello, well done on what is really a flagship application of KDE and I think should get a lot more coverage than it does. I have some silly questions. One of which is where are the tutorials that you mentioned? One is why the dark theme? Why do artists somehow like to have everything black? And another one is why the silly name or what does the name mean? Okay, so for the dark theme, it was a very frequent request from users. It appears that most video editors, most photo editors use dark themes to work on image because that way the interface gets less in the way of the image. So it was a very much requested feature. But this can be, it's configurable so you can switch back to the default desktop theme if you want. And for the silly name question, I'm not responsible for it because when I started to get implied, the name was already given. So I don't really know the origin of this name but I know it's really hard to pronounce. At least in French people really never know how to pronounce it. And now we have the website and all. So it's a bit complicated to change the name now. The tutorials? Oh, on the website. You have a toolbox section where you can find the tutorials. Are you aware that on open SUSE, tumbleweed cutting life isn't working at the moment? No, I have not followed... Something to do with some new libraries that have been installed with KDE or something like that and it's not working at all. It doesn't work at all? No. From the official repository? From the official repository. No, I was not aware of it. We're hoping to push these containerized formats so that at least users can test if there is a way to make it work on their system and then go back to the distribution to tell them that their app should be working. So I think it's the best we can do is to have those... Can I just say it's your app? No, no, no. I understand that. So I think it has to be communicated to the package maintainer so we don't really have... I have just one last question. It's about the time you took for the complex simplification of the model. How many people were involved in this effort because it looks very... It started from a very complex model and then you came up with a very simple model. It looks very nice. It's a great effort. Yes. So how many people worked on it? It was sometimes surprising because we're only very few people. We are mostly two people. Mostly Nicolas Carrion who's done the architectural overhaul and I helped him to work on it. So it was a very intense work for several months. I hope there are no more questions. Thanks, John Baptist.