[Cin] variable fast/slow playback speed hack
Andrew Randrianasulu
randrianasulu at gmail.com
Tue Aug 10 00:15:53 CEST 2021
On Tuesday, August 10, 2021, Phyllis Smith via Cin <
cin at lists.cinelerra-gg.org> wrote:
> Andrew,
>
>> so i wondered if changing speed for fast/slow reverse and normal playback
>> was possible..
>>
>> after few hours of hacking I made this patch.
>>
>> it makes fast/slow playback speed configurable in Cinelerra_rc via new
>> stored variables:
>>
>
> I like it! Since I do not know C++, I am just asking if
> "TransportCommand" lines in other .h files need changing too? For example:
>
> fileref.h: TransportCommand *command;
> module.h: TransportCommand *nested_command;
> packagerenderer.h: TransportCommand *command;
> playbackengine.h: int put_command(TransportCommand *command, int
> reset);
> playbackengine.h: TransportCommand *command, *stop_command;
> playbackengine.h: TransportCommand *next_command, *sent_command;
> renderengine.h: int arm_command(TransportCommand *command);
> renderengine.h: TransportCommand *command;
> transportque.h:class TransportCommand
> transportque.h: TransportCommand();
> transportque.h: ~TransportCommand();
> transportque.h: void copy_from(TransportCommand *command);
>
hm, I think (!) those mostly links to same slightly redefined object. But
may be I missed something too ( probably more testing needed.. but I guess
if we put this patch in git and it will break something we always can
revert?
>
> You probably already went over the above, but just making sure and if all
> is good then I can check it into GIT. One of the things I like about it is
> that if you never use SLOW, you can set it to a different fast speed and
> get 2 different FAST speeds ! This gives you some of the capability of a
> Shuttle. Let me know and thanks, Phyllis
>
interesting use of it, I never thought about this!
also, in Cinelerra_rc there is scrub_speed variable already, may be it
related to (default) shuttle scrubbing speed (can you test when you have
time? )
SAMPLERATE 48000
SCRUB_SPEED 2.000000e+00
there seems to be some commented-out code in mainmenu related to this..
$ grep scrub_speed cinelerra/*
grep: cinelerra/armv8l: Is a directory
grep: cinelerra/data: Is a directory
cinelerra/edlsession.C: scrub_speed = 2.;
cinelerra/edlsession.C: scrub_speed = defaults->get("SCRUB_SPEED",
(float)2);
cinelerra/edlsession.C: defaults->update("SCRUB_SPEED", scrub_speed);
cinelerra/edlsession.C: scrub_speed = session->scrub_speed;
cinelerra/edlsession.h: float scrub_speed;
cinelerra/mainmenu.C:// ScrubSpeed *scrub_speed;
cinelerra/mainmenu.C:// settingsmenu->add_item(scrub_speed = new
ScrubSpeed(mwindow));
cinelerra/mainmenu.C:// if(mwindow->edl->session->scrub_speed == .5)
cinelerra/mainmenu.C:// scrub_speed->set_text(_("Fast Shuttle"));
cinelerra/mainmenu.C: if(mwindow->edl->session->scrub_speed == .5)
cinelerra/mainmenu.C: mwindow->edl->session->scrub_speed = 2;
cinelerra/mainmenu.C: mwindow->edl->session->scrub_speed = .5;
may be it was commented out because you can have variable speed with this
device anyway?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20210810/f642ddbb/attachment-0001.htm>
More information about the Cin
mailing list