Hi,
I'm trying to record a rendered image with [pix_record]; it works, but I have a problem with the framerate.
I have tried both
it at every frame
The results are the same.
The problem is that it seems that together with each frame, the information of the duration of the frame (or a current framerate which is the same) is recorded.
So, when I play the file in quicktime OR when I import it in the timeline of an editing program (such as Vegas Pro), the frames are played at the same rate at which they were generated.
That can be fine for some applications, but I am trying to "render" a video that cannot be played at full rate in real time.
That is, I am using a framerate of 25fps in GEM, but the frames will never be rendered and recorded at 25fps because they are too heavy to process. So I am recording every single frame with [pix_record], but I would like them to be written without the information about the _real_ framerate at which they were rendered. So that when I play the video back in any player it will play smoothly.
Is that possible?
Btw I tried using other codecs (it uses Apple Jpeg by default), but whatever codec I choose except the default one will crash Pd.
If there is no way to change the way [pix_record] writes fps information, can you suggest me some software that can interprete the stream of frames as a fixed-fps sequence of frames and rewrite the video file with a fixed framerate? (I have an old version of VirtualDub but it cannot read .mov files)
thanks m.
Hi Matteo,
I tend to use pix_write + writesf~ and then use ffmpeg to combine the images + audio. You'll need a lot of spare hard disk space for the temporary image files if you choose TIFF though. Runs 10x slower than realtime if I've got a heavy patch going (so don't start pd -rt if you want to use your computer for other things while rendering) but everything is in sync when it's all combined, the power of logical clocks. I can send some patches/scripts if this is an option for you.
Matteo Sisti Sette wrote:
Hi,
I'm trying to record a rendered image with [pix_record]; it works, but I have a problem with the framerate. That is, I am using a framerate of 25fps in GEM, but the frames will never be rendered and recorded at 25fps because they are too heavy to process.
[snip]
If there is no way to change the way [pix_record] writes fps information, can you suggest me some software that can interprete the stream of frames as a fixed-fps sequence of frames and rewrite the video file with a fixed framerate?
Perhaps you could use GridFlow with its Gem bridge?
(I have an old version of VirtualDub but it cannot read .mov files)
VirtualDub suggests Windows, I don't know if Windows can fifo, so maybe that option is out. I think Avidemux2 is crossplatform and might be able to combine many images into a video file too. Or maybe it could even fix the mov, I haven't tried.
Matteo Sisti Sette a écrit :
Hi,
I'm trying to record a rendered image with [pix_record]; it works, but I have a problem with the framerate.
...
That is, I am using a framerate of 25fps in GEM, but the frames will never be rendered and recorded at 25fps because they are too heavy to process.
if you try, it will work like you wish (the video will be ok), even if the render is not in real time...
a 2nd option is to record each frame in a jpg file (pix_write), and then make a video with most video software.
c
So I am recording every single frame with [pix_record], but I would like them to be written without the information about the _real_ framerate at which they were rendered. So that when I play the video back in any player it will play smoothly.
Is that possible?
Btw I tried using other codecs (it uses Apple Jpeg by default), but whatever codec I choose except the default one will crash Pd.
If there is no way to change the way [pix_record] writes fps information, can you suggest me some software that can interprete the stream of frames as a fixed-fps sequence of frames and rewrite the video file with a fixed framerate? (I have an old version of VirtualDub but it cannot read .mov files)
thanks m.
cyrille henry escribió:
if you try, it will work like you wish (the video will be ok), even if the render is not in real time...
(I did try) The video is "ok" in that it has all the frames it should have. However, it somehow saves the information about how long each frame is. If I play it back in quicktime, for example, it plays at a variable framerate and it plays at the same (variable) speed at which it was rendered!
Also, if I import it for example in Vegas Pro, the information of the (variable) framerate is interpreted and used, and the video is imported into the timeline "just as it would play", not one-frame-per-frame. Vegas Pro apparently has no option to ignore the source framerate information. I guess other editing softwares do...
However, at the end I solved by saving a sequence of jpegs with pix_write.
Thanks m.
that is strange. moreover, it worked for me.
c
Matteo Sisti Sette a écrit :
cyrille henry escribió:
if you try, it will work like you wish (the video will be ok), even if the render is not in real time...
(I did try) The video is "ok" in that it has all the frames it should have. However, it somehow saves the information about how long each frame is. If I play it back in quicktime, for example, it plays at a variable framerate and it plays at the same (variable) speed at which it was rendered!
Also, if I import it for example in Vegas Pro, the information of the (variable) framerate is interpreted and used, and the video is imported into the timeline "just as it would play", not one-frame-per-frame. Vegas Pro apparently has no option to ignore the source framerate information. I guess other editing softwares do...
However, at the end I solved by saving a sequence of jpegs with pix_write.
Thanks m.