hi list,
how can i change the speed of a movie played? (the fps) the helpfile of pix_film says nothing about that.
thanx, max
On Oct 4, 2004, at 7:18 PM, Max Neupert wrote:
hi list,
how can i change the speed of a movie played? (the fps) the helpfile of pix_film says nothing about that.
...hmmm, I guess it doesn't say it outright, but the solution is implied: basically, the right inlet accepts a number that is the frame you want to display...consequently, you need to add something like a [metro] and [counter] to get a series of numbers...if you say [metro 33] (which outputs a bang every 33 ms), then it'll play at 30fps...
...also, you can just sent a [auto $1< message to the left inlet: this then tells the object to play a new frame for everytime it goes thru the render loop...and of course, this render loop speed is set by sending the [frame $1< message to the [gemwin]: don't make it faster than your computer can handle!
I've attached a barebones example showing the first: check out [gemwin] help for the latter...
james
James Tittle II wrote:
On Oct 4, 2004, at 7:18 PM, Max Neupert wrote:
hi list,
how can i change the speed of a movie played? (the fps) the helpfile of pix_film says nothing about that.
...also, you can just sent a [auto $1< message to the left inlet: this
then tells the object to play a new frame for everytime it goes thru the
[auto $1( is even more, at least under linux (this is not really cross-platform yet, if i remember correctly; and it might not work for all formats...)
[auto 0.5( should play back the movie at half-speed.
mfg.a.d IOhannes (still suffering from the convention)
Quoting IOhannes m zmoelnig zmoelnig@iem.at:
[auto $1( is even more, at least under linux (this is not really cross-platform yet, if i remember correctly; and it might not work for all formats...)
[auto 0.5( should play back the movie at half-speed.
Hmm, I thought it was [auto 1( and then [rate $1( set the speed. At least, that is the method on OSX. Did we not make this consistent?
cgc
This message was sent using IMP, the Internet Messaging Program.
i found this in my archive:
[auto $1( is even more, at least under linux (this is not really cross-platform yet, if i remember correctly; and it might not work for all formats...)
[auto 0.5( should play back the movie at half-speed.
is there any way to figure out the framerate of a movie file from pix_film? i'd prefer to write the scheduler myself ...
cheers ... tim
Zitiere Tim Blechmann TimBlechmann@gmx.net:
is there any way to figure out the framerate of a movie file from pix_film? i'd prefer to write the scheduler myself ...
unfortunately not. Gem ignores the framerate of the movie and plays it back (in auto-mode) with its internal framerate (probably this is not true on OSX)
but of course this should change. the default should be playback at the framerate of the movie (scaled to whatever seems apropriate) and probably we should add another argument to the info-list (second outlet) for this parameter.
mfg.as.dr IOhannes
On Nov 21, 2004, at 1:29 PM, zmoelnig@iem.at wrote:
Zitiere Tim Blechmann TimBlechmann@gmx.net:
is there any way to figure out the framerate of a movie file from pix_film? i'd prefer to write the scheduler myself ...
unfortunately not. Gem ignores the framerate of the movie and plays it back (in auto-mode) with its internal framerate (probably this is not true on OSX)
'auto $1' on OSX uses Quicktime's internal playback routines and thus the rate is based on the original movie's frame rate. This method also happens to be more efficient for playing multiple movies at once.
hey ya'll,
On Nov 21, 2004, at 2:29 PM, zmoelnig@iem.at wrote:
Zitiere Tim Blechmann TimBlechmann@gmx.net:
is there any way to figure out the framerate of a movie file from pix_film? i'd prefer to write the scheduler myself ...
unfortunately not. Gem ignores the framerate of the movie and plays it back (in auto-mode) with its internal framerate (probably this is not true on OSX)
...yep, sadly this is true: besides the auto method, there's also the (OSX-only) "rate" message (not in the pix_filmNEW/pix_filmQT)...of course, you can also control the rate of frame playback by setting up a variable metronome into a counter that loops based on the number of frames contained in the film...
...and don't forget that by default, the gemwin is set to output at 20 fps...this may've been good for the machines available with the initial GEM releases, but now I always set it to 60 fps (at least!), or whatever the refresh rate is of my output...winds up give much smoother output, and allows gem to do things in the background if necessary, or nothing at all if not necessary!
but of course this should change. the default should be playback at the framerate of the movie (scaled to whatever seems apropriate) and probably we should add another argument to the info-list (second outlet) for this parameter.
...in QT we use SetMovieRate()...don't know how it'd be done elsewhere?
hth, james
Am 21.11.2004 um 22:51 schrieb james tittle:
...yep, sadly this is true: besides the auto method, there's also the (OSX-only) "rate" message (not in the pix_filmNEW/pix_filmQT)...of course, you can also control the rate of frame playback by setting up a variable metronome into a counter that loops based on the number of frames contained in the film...
the rate-mesage! cool, that's what i was thinking of. a pity that it's not cross plattform.
...and don't forget that by default, the gemwin is set to output at 20 fps...this may've been good for the machines available with the initial GEM releases, but now I always set it to 60 fps (at least!), or whatever the refresh rate is of my output...winds up give much smoother output, and allows gem to do things in the background if necessary, or nothing at all if not necessary!
that's right: the CPU load is a bit higher, but it looks definetly a lot smoother.
max
Max Neupert wrote:
Am 21.11.2004 um 22:51 schrieb james tittle:
...yep, sadly this is true: besides the auto method, there's also the (OSX-only) "rate" message (not in the pix_filmNEW/pix_filmQT)...of course, you can also control the rate of frame playback by setting up a variable metronome into a counter that loops based on the number of frames contained in the film...
the rate-mesage! cool, that's what i was thinking of. a pity that it's not cross plattform.
obviously "auto 0.5" is less intuitive for you (and others) than "auto 1" + "rate 0.5"
so the question is: should we change the other (OS-specific) implementations of pix_film to ignore things like "auto 2" ? or should we make it compatible ? e.g. the actual incrementor would be a product of <auto> and <rate> (ugly but compatible) or just make rate and auto synonymons (but that would break the OSX-style)
mfg.asd.r IOhannes
Am 22.11.2004 um 12:56 schrieb Johannes M Zmoelnig:
Max Neupert wrote:
Am 21.11.2004 um 22:51 schrieb james tittle:
...yep, sadly this is true: besides the auto method, there's also the (OSX-only) "rate" message (not in the pix_filmNEW/pix_filmQT)...of course, you can also control the rate of frame playback by setting up a variable metronome into a counter that loops based on the number of frames contained in the film...
the rate-mesage! cool, that's what i was thinking of. a pity that it's not cross plattform.
obviously "auto 0.5" is less intuitive for you (and others) than "auto 1" + "rate 0.5"
sorry IO, it's not a matter of inuitivity. "auto 0.5" does not work at all. i guess you meant "auto $0.5" which gives out:
error: Bad arguments for message 'auto' to object 'pix_filmDarwin'
--
ver: 0.90 release GEM: compiled: May 25 2004 GEM: maintained by IOhannes m zmoelnig
max
Max Neupert wrote:
sorry IO, it's not a matter of inuitivity. "auto 0.5" does not work at all. i guess you meant "auto $0.5" which gives out:
error: Bad arguments for message 'auto' to object 'pix_filmDarwin'
it is [auto 0.5( and not [auto $0.5( (which is illegal in pd)
anyhow, you are suffering from the sadnesses of incompatibilities across platforms, as you have pointed out in earlier mails. i just didn't get that you were on osx
mfg.asd.r IOhannes
sorry IO, it's not a matter of inuitivity. "auto 0.5" does not work at all. i guess you meant "auto $0.5" which gives out: error: Bad arguments for message 'auto' to object 'pix_filmDarwin'
it is [auto 0.5( and not [auto $0.5( (which is illegal in pd) anyhow, you are suffering from the sadnesses of incompatibilities across platforms, as you have pointed out in earlier mails. i just didn't get that you were on osx
indeed. with [rate 0.5( i found a way to get to the result, but it's a pity that it will not work elsewhere.
greetings, max
concerning this topic, i have 2 likely newbie questions
James Tittle II wrote:
...hmmm, I guess it doesn't say it outright, but the solution is implied: basically, the right inlet accepts a number that is the frame you want to display...consequently, you need to add something like a [metro] and [counter] to get a series of numbers...if you say [metro 33] (which outputs a bang every 33 ms), then it'll play at 30fps...
i noticed that the [auto 1( message to a pix_Movie object plays the movie much smoother than the "number into right inlet" method. what's the reason for this ? is there something that can be done about it ?
...also, you can just sent a [auto $1< message to the left inlet:
this then tells the object to play a new frame for everytime it goes thru the render loop...and of course, this render loop speed is set by sending the [frame $1< message to the [gemwin]: don't make it faster than your computer can handle!
does this mean, i have to send [gemwin] a "frame 25" message to reproduce the film correctly ? (gemwin's default setting is 20, as far as i can remember)
thanks for all inside-infos
oliver
I've attached a barebones example showing the first: check out [gemwin] help for the latter...
james
On Oct 4, 2004, at 9:36 PM, oliver wrote:
i noticed that the [auto 1( message to a pix_Movie object plays the movie much smoother than the "number into right inlet" method. what's the reason for this ? is there something that can be done about it ?
...if you are playing a movie via the right inlet method, you definitely want to set a higher frame rate in [gemwin]...otherwise, by default you'll be poking along at 20fps, which might not be as smooth as ya want...
...also, you can just sent a [auto $1< message to the left inlet:
this then tells the object to play a new frame for everytime it goes thru the render loop...and of course, this render loop speed is set by sending the [frame $1< message to the [gemwin]: don't make it faster than your computer can handle!does this mean, i have to send [gemwin] a "frame 25" message to reproduce the film correctly ? (gemwin's default setting is 20, as far as i can remember)
...if you're playing with auto on, the higher frame message you set, the faster the movie plays...these two different ways are in there for flexibility: I usually use the counter method with a frame message of 60, and it's smooth as silk :-)
l8r, james