Fwd: AVI rate not preserved on save

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Fwd: AVI rate not preserved on save

ctrueden
Hi Francis,

Looking at the ImageJ source code for the AVI writer, it does indeed cap the
frame rate at 60 FPS for some reason, though I am not sure why. I have
forwarded your question to the list in case anyone else knows the reason.

-Curtis

---------- Forwarded message ----------
From: Francis Burton <[hidden email]>
Date: Tue, Jun 22, 2010 at 10:29 AM
Subject: AVI rate not preserved on save
To: [hidden email]


Hi Curtis,

I wasn't sure whether to send this to you or the ImageJ mailing list.
It's a report of a presumed bug. Actually, I already tried sending to a
list but it bounced because my email address changed recently, so I am
about to switch my subscription.

This is what I wrote:

A colleague wants to use ImageJ to do some simple .AVI file editing and
is using File/Open... and File/Save As/AVI... to read and write his
movie files. The frame rate of 140fps is recognized when the movies is
read but is not preserved on writing. The AVI Writer module appears to
be truncating the frame rate to a maximum of 60fps even when 140 is
entered in 'Save as AVI...' dialog box. Is there a way round this
limitation?

Cheers,
Francis
--
Dr Francis Burton  SULSA Imaging Technologist West Medical Building,
University of Glasgow, G12 8QQ
Tel: +44 (0)141 3306598 Email: [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Michael Schmid
Hi Francis, Curtis and all,

as far as Google tells me, some of the Microsoft software seems to  
limit the frame rate to 72 frames/s (Windows Media Encoder, WMV  
format). So it is questionable whether an AVI with >72 fps would play  
with Microsoft software, maybe someone knows more about this?

If you want to try it, simply take the AVI_Writer.java and replace  
the 'package ij.plugin.filter;' with 'include ij.plugin.filter.*',  
then you have an external plugin (for Compile&run) where you can  
remove the line
   if (fps>60.0) fps = 60.0;

Please also note that the frame rate won't be mathematically  
accurate; ImageJ has a very simple algorithm that simply uses the  
frame time in (integer) microseconds.

Michael
________________________________________________________________

On 22 Jun 2010, at 19:17, Curtis Rueden wrote:

> Hi Francis,
>
> Looking at the ImageJ source code for the AVI writer, it does  
> indeed cap the
> frame rate at 60 FPS for some reason, though I am not sure why. I have
> forwarded your question to the list in case anyone else knows the  
> reason.
>
> -Curtis
>
> ---------- Forwarded message ----------
> From: Francis Burton <[hidden email]>
> Date: Tue, Jun 22, 2010 at 10:29 AM
> Subject: AVI rate not preserved on save
> To: [hidden email]
>
>
> Hi Curtis,
>
> I wasn't sure whether to send this to you or the ImageJ mailing list.
> It's a report of a presumed bug. Actually, I already tried sending  
> to a
> list but it bounced because my email address changed recently, so I am
> about to switch my subscription.
>
> This is what I wrote:
>
> A colleague wants to use ImageJ to do some simple .AVI file editing  
> and
> is using File/Open... and File/Save As/AVI... to read and write his
> movie files. The frame rate of 140fps is recognized when the movies is
> read but is not preserved on writing. The AVI Writer module appears to
> be truncating the frame rate to a maximum of 60fps even when 140 is
> entered in 'Save as AVI...' dialog box. Is there a way round this
> limitation?
>
> Cheers,
> Francis
> --
> Dr Francis Burton  SULSA Imaging Technologist West Medical Building,
> University of Glasgow, G12 8QQ
> Tel: +44 (0)141 3306598 Email: [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Rasband, Wayne (NIH/NIMH) [E]
In reply to this post by ctrueden
The File>Save As>AVI frame rate is no longer capped at 60 fps starting with the 1.44d5 daily build. The WIndows 7 Media Player, the QuickTime Player and the VLC Player appear to correctly play 140 fps AVIs created by ImageJ.

-wayne

On Jun 22, 2010, at 1:17 PM, Curtis Rueden wrote:

> Hi Francis,
>
> Looking at the ImageJ source code for the AVI writer, it does indeed cap the
> frame rate at 60 FPS for some reason, though I am not sure why. I have
> forwarded your question to the list in case anyone else knows the reason.
>
> -Curtis
>
> ---------- Forwarded message ----------
> From: Francis Burton <[hidden email]>
> Date: Tue, Jun 22, 2010 at 10:29 AM
> Subject: AVI rate not preserved on save
> To: [hidden email]
>
>
> Hi Curtis,
>
> I wasn't sure whether to send this to you or the ImageJ mailing list.
> It's a report of a presumed bug. Actually, I already tried sending to a
> list but it bounced because my email address changed recently, so I am
> about to switch my subscription.
>
> This is what I wrote:
>
> A colleague wants to use ImageJ to do some simple .AVI file editing and
> is using File/Open... and File/Save As/AVI... to read and write his
> movie files. The frame rate of 140fps is recognized when the movies is
> read but is not preserved on writing. The AVI Writer module appears to
> be truncating the frame rate to a maximum of 60fps even when 140 is
> entered in 'Save as AVI...' dialog box. Is there a way round this
> limitation?
>
> Cheers,
> Francis
> --
> Dr Francis Burton  SULSA Imaging Technologist West Medical Building,
> University of Glasgow, G12 8QQ
> Tel: +44 (0)141 3306598 Email: [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Daniel James White
In reply to this post by ctrueden
Hi Francis and Curtis,

On Jun 23, 2010, at 6:03 AM, IMAGEJ automatic digest system wrote:

> Date:    Tue, 22 Jun 2010 12:17:26 -0500
> From:    Curtis Rueden <[hidden email]>
> Subject: Fwd: AVI rate not preserved on save
>
> Hi Francis,
>
> Looking at the ImageJ source code for the AVI writer, it does indeed cap the
> frame rate at 60 FPS for some reason, though I am not sure why.

Maybe it because most lcd displays have a refresh of 60 Hz,
which is 2x faster than you can really see any flicker,
and precieve a smooth motion.

Now there are 100 and 120 Hz stereo displays,
maybe its time to change that limitation...
but in anycase, you wont be able to tell the difference between a 120 Hz movie
and a 30 Hz one in all probability.

So you might just as well down sample in time and make the movie smaller,
so it goes at max 30 Hz (but keeps "real time" if thats what you want)
....right?

or is it that you want to Store the image data as AVI to make use of the JPEG compression?

Dan



> I have
> forwarded your question to the list in case anyone else knows the reason.
>
> -Curtis
>
> ---------- Forwarded message ----------
> From: Francis Burton <[hidden email]>
> Date: Tue, Jun 22, 2010 at 10:29 AM
> Subject: AVI rate not preserved on save
> To: [hidden email]
>
>
> Hi Curtis,
>
> I wasn't sure whether to send this to you or the ImageJ mailing list.
> It's a report of a presumed bug. Actually, I already tried sending to a
> list but it bounced because my email address changed recently, so I am
> about to switch my subscription.
>
> This is what I wrote:
>
> A colleague wants to use ImageJ to do some simple .AVI file editing and
> is using File/Open... and File/Save As/AVI... to read and write his
> movie files. The frame rate of 140fps is recognized when the movies is
> read but is not preserved on writing. The AVI Writer module appears to
> be truncating the frame rate to a maximum of 60fps even when 140 is
> entered in 'Save as AVI...' dialog box. Is there a way round this
> limitation?
>
> Cheers,
> Francis
> --
> Dr Francis Burton  SULSA Imaging Technologist West Medical Building,
> University of Glasgow, G12 8QQ
> Tel: +44 (0)141 3306598 Email: [hidden email]

Dr. Daniel James White BSc. (Hons.) PhD
Senior Microscopist / Image Visualisation, Processing and Analysis
Light Microscopy and Image Processing Facilities
Max Planck Institute of Molecular Cell Biology and Genetics
Pfotenhauerstrasse 108
01307 DRESDEN
Germany

+49 (0)15114966933 (German Mobile)
+49 (0)351 210 2627 (Work phone at MPI-CBG)
+49 (0)351 210 1078 (Fax MPI-CBG LMF)

http://www.bioimagexd.net  BioImageXD
http://pacific.mpi-cbg.de                Fiji -  is just ImageJ (Batteries Included)
http://www.chalkie.org.uk                Dan's Homepages
https://ifn.mpi-cbg.de  Dresden Imaging Facility Network
dan (at) chalkie.org.uk
( white (at) mpi-cbg.de )
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Michael Doube
> or is it that you want to Store the image data as AVI to make use of the JPEG compression?
>    
I can imagine that anyone doing high-speed capture (particle motion,
kinematics) will want to keep their 200 Hz videos at 200 Hz and not
throw out 2/3rds of their data to get 60 Hz.

Michael
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Francis Burton-2
Hi Michael, Dan,

Indeed, my colleague's movies are not merely for looking at - they are
input to another program that does gait analysis, and the numbers come
out wrong if the frame rate is reduced. ImageJ is being used to blank
out an artefact appearing in roughly the same part of each frame that
was causing spurious feet detection.

Thanks to Wayne for fixing this so quickly (and apologies to Curtis for
mistaking him for an ImageJ maintainer). In general, should one send bug
reports directly to Wayne or is it okay to air this kind of problem on
the list?

Francis

-----Original Message-----
From: ImageJ Interest Group [mailto:[hidden email]] On Behalf Of
Michael Doube
Sent: 23 June 2010 09:03
To: [hidden email]
Subject: Re: AVI rate not preserved on save

> or is it that you want to Store the image data as AVI to make use of
the JPEG compression?
>    
I can imagine that anyone doing high-speed capture (particle motion,
kinematics) will want to keep their 200 Hz videos at 200 Hz and not
throw out 2/3rds of their data to get 60 Hz.

Michael
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

Daniel James White
In reply to this post by Michael Doube
Hi Michael and all,

On Jun 23, 2010, at 10:02 AM, Michael Doube wrote:

>
>> or is it that you want to Store the image data as AVI to make use of the JPEG compression?
>>  
> I can imagine that anyone doing high-speed capture (particle motion, kinematics) will want to keep their 200 Hz videos at 200 Hz and not throw out 2/3rds of their data to get 60 Hz.
>
> Michael
>

for sure, one would not want to throw away data.

I guess I mean there are 2 cases here
1) Displaying a video on a screen  for humans to watch (only need 30 fps)
2) Storing image data (dont throw anything away)

so depending on if you want to do 1 or 2, then the situation is different.

If you actually want to do 2, storage, then AVI isnt the best choice, as you might also want to store other meta data in a tiff header, or do it hard core and write a .ome file,
One might use a lossless compression like LZW or png?

If you want to do 1, movie display in a presentation for instance,
there is no point in showing more frames than 30 per sec,
as you run the movie,  since you brain cant perceive any faster rate than that
(OK - modern LCDs can go at 100Hz - but thats more about anti ghosting and stereo viewing)
and you might be able to use one of the new (lossy)  codecs with high compression and high image quality... eg H.264.

if you want to browse through the movie frame by frame, then you will want all the frames....
but thats not the same as playing the movie at "real time" or whatever time stretch or squash (speed up / slow motion) you want... right?

cheers

Dan

Dr. Daniel James White BSc. (Hons.) PhD
Senior Microscopist / Image Visualisation, Processing and Analysis
Light Microscopy and Image Processing Facilities
Max Planck Institute of Molecular Cell Biology and Genetics
Pfotenhauerstrasse 108
01307 DRESDEN
Germany

+49 (0)15114966933 (German Mobile)
+49 (0)351 210 2627 (Work phone at MPI-CBG)
+49 (0)351 210 1078 (Fax MPI-CBG LMF)

http://www.bioimagexd.net  BioImageXD
http://pacific.mpi-cbg.de                Fiji -  is just ImageJ (Batteries Included)
http://www.chalkie.org.uk                Dan's Homepages
https://ifn.mpi-cbg.de  Dresden Imaging Facility Network
dan (at) chalkie.org.uk
( white (at) mpi-cbg.de )
Reply | Threaded
Open this post in threaded view
|

Re: AVI rate not preserved on save

ctrueden
In reply to this post by Francis Burton-2
Hi Francis,

Thanks to Wayne for fixing this so quickly (and apologies to Curtis for
> mistaking him for an ImageJ maintainer). In general, should one send bug
> reports directly to Wayne or is it okay to air this kind of problem on
> the list?
>

The list is usually best, because different people may know the answer
depending on where the bug lies. But no problem contacting me; I am very
involved with ImageJ development.

-Curtis

On Wed, Jun 23, 2010 at 3:42 AM, Francis Burton <[hidden email]>wrote:

> Hi Michael, Dan,
>
> Indeed, my colleague's movies are not merely for looking at - they are
> input to another program that does gait analysis, and the numbers come
> out wrong if the frame rate is reduced. ImageJ is being used to blank
> out an artefact appearing in roughly the same part of each frame that
> was causing spurious feet detection.
>
> Thanks to Wayne for fixing this so quickly (and apologies to Curtis for
> mistaking him for an ImageJ maintainer). In general, should one send bug
> reports directly to Wayne or is it okay to air this kind of problem on
> the list?
>
> Francis
>
> -----Original Message-----
> From: ImageJ Interest Group [mailto:[hidden email]] On Behalf Of
> Michael Doube
> Sent: 23 June 2010 09:03
> To: [hidden email]
> Subject: Re: AVI rate not preserved on save
>
> > or is it that you want to Store the image data as AVI to make use of
> the JPEG compression?
> >
> I can imagine that anyone doing high-speed capture (particle motion,
> kinematics) will want to keep their 200 Hz videos at 200 Hz and not
> throw out 2/3rds of their data to get 60 Hz.
>
> Michael
>