From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Garlick Subject: Re: Video narration Date: Thu, 02 May 2019 22:36:01 +0100 Message-ID: References: <660de50483d54150fa1ca67ebd0cae886d0ffcbe.camel@tourbillion-technology.com> <52a3d40df1ee349f48e7ecd79756e9307cbae034.camel@tourbillion-technology.com> <5893d6b8dc2dd4ed1cdcab3e109ce655d82bc493.camel@tourbillion-technology.com> <6f60665f899c24133818106831f378f087b9d405.camel@tourbillion-technology.com> <808a07682b858d44b1e48c69fd98fcb770837789.camel@tourbillion-technology.com> <0f4db135b01c57d8ab2fbf6721587664507dcefc.camel@tourbillion-technology.com> <3f393bb53fa8d04c0e9ae33df1eeadaf864940d5.camel@tourbillion-technology.com> <3ce59ef3d1e63fbc743ae0b71f317ef5916e0ccf.camel@tourbillion-technology.com> <87ef6g1e4k.fsf@elephly.net> <0b31a2364a97f26bbea1fed9e3390a2a526d6c77.camel@tourbillion-technology.com> <30bca313b07d1dc65c73d2e2c4d0e8907144081d.camel@tourbillion-technology.com> <4945ad6d7434cba7dc65e33ef97a4185a4e4a266.camel@tourbillion-technology.com> <59ab26112bb25301e6382e469734d11227c3ff06.camel@tourbillion-technology.com> <131ffa7aacc4db6acbd3e35f84079326096ac35c.camel@tourbillion-technology.com> <99cb429102f8ae64ad711edeb3c1f5256204e4bc.camel@tourbillion-technology.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([209.51.188.92]:36691) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMJNB-0005mq-91 for guix-devel@gnu.org; Thu, 02 May 2019 17:36:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMJNA-0000uw-B9 for guix-devel@gnu.org; Thu, 02 May 2019 17:36:09 -0400 In-Reply-To: List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Laura Lazzati Cc: Guix-devel Hi Laura, > I like testing (and trying to break) stuff - I > wished this worked well though :/ I have a new version to test. It's unbreakable though, this one! I have implemented the repeat procedure and pushed the commit to the repository. > I definitely HAVE TO learn Guile. This is a good example. There is some arithmetic needed to convert the sleep durations, in milliseconds, to frames, using the frame rate. If you have seen reverse polish notation before you will recognise the way the arithmetic expressions are built up. The function comes first and the arguments afterwards. So (/ wait 1000), for example, means divide the variable 'wait' by one thousand. The repeat procedure uses a 'named let' for recursion. This calls the snap! procedure the correct number of times to generate the extra frames. The slightly tricky part was making sure that the snap! procedure and the repeat procedure are in the same scope. Otherwise, an 'unbound variable' error is generated. I was able to do this by moving the repeat procedure, plus the other procedures that are needed for processing the session files, inside the same let construct in the main body. To test I used the firstCli session file from 02-daily-use1. I changed the last line from '#:sleep 30000' to '#:sleep 40000'. The time durations were: before: 78.408000 after: 88.408000 That's more like it! a delay of ten seconds, as it should be. Can you confirm that you get the same result? Best regards, Paul.