Hi Josh, I have some questions regarding how the params.rs code works as I was not able to find the answers to these online.
*1. *When I run an example to setValueCurve with start_time = 1 with a duration of 5 (shown here <https://github.com/JHBalaji/media/blob/master/examples/set_value_curve.rs#L68>), then after the function is called*, if I print start_time inside the function SetValueCurveAtTime (which is defined here <https://github.com/JHBalaji/media/blob/master/audio/src/param.rs#L422-L437>) in param.rs <http://param.rs> then it shows a value of 44100. How does the value that I pass as 1s change to 44100?*(Hope I am right in assuming that the value 1 that I pass is in seconds?). Also, Start_time is set to 88200 if I start from 2s. 2. Because of the above, my automation value also keeps on increasing from 44100. But I have my values function defined as [.5, 1, .5, 0, .5, 1, .5, 0, .5]. Ideally should my *value (automation value) also change within the value range that I have declared for my values array?S Sample output: Akhileshs-MBP:media akhilesh$ ./target/debug/set_value_curve Start Time value: 44100 Current time value: 44100 The value of k is: 0.0 Value of the Automation Value is: 44100.023 The difference in time values is: (Current_tick - start) 0 Start Time value: 44100 Current time value: 44101 The value of k is: 1.6 Value of the Automation Value is: 44101.773 The difference in time values is: (Current_tick - start) 1 Start Time value: 44100 Current time value: 44102 The value of k is: 3.2 Value of the Automation Value is: 44100.223 The difference in time values is: (Current_tick - start) 2 Start Time value: 44100 Current time value: 44103 The value of k is: 4.8 Value of the Automation Value is: 44097.793 The difference in time values is: (Current_tick - start) 3 Start Time value: 44100 Current time value: 44104 The value of k is: 6.4 Value of the Automation Value is: 44103.836 The difference in time values is: (Current_tick - start) 4 Start Time value: 44100 Current time value: 44105 The value of k is: 8.0 Value of the Automation Value is: NaN The difference in time values is: (Current_tick - start) 5 3. Where should we specify that the automation should stop after the duration? Inside the example or inside param.rs? Thanks Akhilesh On Sun, Mar 31, 2019 at 3:50 PM Akhilesh Venkatasubramanian < avenk...@ncsu.edu> wrote: > Hi Josh, > > What are your thought on this question : > > 1. Is it necessary we define and initialize the values and duration > parameter that we are using inside SetValueCurveAtTime inside the struct > Param > <https://github.com/JHBalaji/media/blob/master/audio/src/param.rs#L30>? > We assume that this is not needed as the implementation works without > doing the same (values vector gets passed). But duration gets passed as > Tick(44100) if we set a startTime as 1.0s. (Which we assume is because > of tick?) > > > Thanks > Akhilesh > > On Mar 31, 2019, at 12:15 AM, Akhilesh Venkatasubramanian < > avenk...@ncsu.edu> wrote: > > Josh, > > Just one more clarification, > > 1. Is it necessary we define and initialize the values and duration > parameter that we are using inside SetValueCurveAtTime inside the struct > Param > <https://github.com/JHBalaji/media/blob/master/audio/src/param.rs#L30>? > We assume that this is not needed as the implementation works without > doing the same (values vector gets passed). But duration gets passed as > Tick(44100) if we set a startTime as 1.0s. (Which we assume is because > of tick?) > > Thanks, > Akhilesh > > On Sat, Mar 30, 2019 at 11:55 PM Akhilesh Venkatasubramanian < > avenk...@ncsu.edu> wrote: > >> Hi Josh, >> >> I totally understand. We will try to fix it using the examples you have >> provided for now. Anyways, we will be continuing with the project for our >> final project so whenever you/your team can validate our implementation, it >> would help us proceed if we don't fix the issue by then. Thank you for >> doing the same. >> >> Best, >> Akhilesh >> >> On Sat, Mar 30, 2019 at 11:27 PM Josh Bowman-Matthews < >> j...@joshmatthews.net> wrote: >> >>> On 3/30/19 6:20 PM, Akhilesh Venkatasubramanian wrote: >>> > Hi Josh, >>> > >>> > 1. Yes we are working on the example and have it defined as follows: >>> > >>> https://github.com/JHBalaji/media/blob/master/examples/set_value_curve.rs >>> > >>> > Can you tell us if the example we have defined is right? We have >>> written it >>> > similar to the example you shared with us >>> > < >>> https://developer.mozilla.org/en-US/docs/Web/API/AudioParam/setValueCurveAtTime >>> > >>> > . >>> > >>> > 2. Our implementation of the SetValueCurveAtTime to this point is as >>> > follows: >>> > >>> https://github.com/JHBalaji/media/blob/master/audio/src/param.rs#L419-L439 >>> > >>> > As you had mentioned earlier, can you/someone from your team verify if >>> our >>> > function definition is right? (Specifically for the linear >>> interpolation >>> > part, that's where we think the mistake is but not sure how to change >>> it) >>> > as we are getting a few errors while trying to run the example. >>> >>> I cannot guarantee that anybody will review it before Monday, sorry. You >>> could try looking at an existing implementation in Firefox for reference: >>> * >>> >>> https://searchfox.org/mozilla-central/source/dom/media/webaudio/AudioEventTimeline.h#71-75 >>> * >>> >>> https://searchfox.org/mozilla-central/source/dom/media/webaudio/AudioEventTimeline.cpp#31-53 >>> >>> > Error: >>> > >>> > Akhileshs-MBP:media akhilesh$ ./target/debug/set_value_curve >>> > >>> > thread 'AudioRenderThread' panicked at 'index out of bounds: the len >>> is 9 >>> > but the index is 9', >>> > /rustc/94fd0458951a4ff91c03366445f0e2e93b86bd2f/src/libcore/slice/ >>> mod.rs:2539 >>> > :10 >>> > >>> > note: Run with `RUST_BACKTRACE=1` environment variable to display a >>> > backtrace. >>> > >>> > thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: >>> > RecvError', src/libcore/result.rs:997:5 >>> >>> Running with RUST_BACKTRACE=1 will show you the precise line that is >>> panicking. I suspect you are not dealing with the case where the >>> duration has been exceeded. >>> >>> >>> Cheers, >>> Josh >>> _______________________________________________ >>> dev-servo mailing list >>> dev-servo@lists.mozilla.org >>> https://lists.mozilla.org/listinfo/dev-servo >>> >> > _______________________________________________ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo