4 K recording from iphone This file is variable frame rate?

OK I record with my iphone 4K then I try to open it with shortcut to edit it but I get

This file is a variable frame rate which is not reliable for editing etc…

So what should I do so I do not lose quality and can edit too?

As the popup says: choose a quality (good, better or best) and click OK.

Thanks but my original file is mp4 doing so even if I choose the best won’t affect the quality of my video?

The “Best” quality is lossless. There will be no loss of quality, but the file will be enormously bigger than the original. Personnally I would try all 3 and see how each one is affected. Even “Good” is (well) “good” and might well be sufficient for your needs.

People tend to think that “lossy” codecs will lose too much information. However H.264 encoded at 67% quality is essentually “Visually Lossless”, meaning that you can put the original and the 67% videos side by side and it is highly unlikely that you will see any difference between the two.

Convert the video 3 times with the 3 options and compare them to the original, then make an informed choice.

Wow I had a 4 Gig video file when I chose the best the file generated is more than 100 Gig ? Wow
How can this be?

I did say it would ne enormous. The “Best” quality is 100% lossless and totally I-frames, no B- or P-frames, which in effect means there is no compression of the data (not strictly tru, but near enough). For more info check-out the terms GOP, I-frames, B-frames and P-frames in the glossary: Glossary / Terminology

OK thanks , I deleted every thing and this time I went back to shutcut and decided to chose good instead but it seems last time I chose do not ask me again option so I am not asked what to do ?

  • Open the video file in Shotcut.
  • Click on the “Properties” icon at the top of the window.
  • At the bottom of the properties pane there is a button called Convert.
  • Click it and you will get the popup screen “Good”, “Btter”, “Best”.

I chose better but still it is too large 90 Gig. Isn’t there any way to have my original video as it is ? It is 4 K just 4 Gig size

You can always use the original video. However, you may (or you may not) see problems with synchronisation of audio, maybe a filter or two not working correctly, the resultant video stuttering, performance during editing, especially if yoiu are skipping backwards and forwards along the timeline.

You may be lucky and not see any of these issues - then again… Try it and see.

These are all problems that have been reported by users, the solution to which has been “Convert to Edit-Friendly”.

The “good” setting is more than sufficient for cell phone video, and will reduce the converted file size significantly. Despite the name “good”, the actual transcode settings are still well into the visually lossless range.

The 4K of your video doesn’t stand for supreme picture quality but for a resolution of about 4k x 2k = 8 megapixel resolution. Uncompressed, that requires about 25MB of storage for a single colour picture frame. Multiply that by a frame rate of 30 fps, and by 60 seconds for a minute, and a minute of 4K video takes 45GB of storage - uncompressed. Whilst I don’t know the length of your video, what I’m trying to illustrate is that, due to the variable frame rate and the extreme compression applied already while taking your video, its original quality at 4GB in total is - realistically - actually quite low. Shotcut can hardly make it any worse. Just choose to convert your video to an edit-friendly format at the lowest possible quality.

1 Like

Just as an alternative, you can always ignore the dialogue, hit cancel and try to edit it anyway. This is what I always do and for my purposes I haven’t found any issues whatsoever.

As you all may know, the issue with a variable frame rate (VFR) is that the Timeline (Video Mode) requires a constant frame rate (CFR). This becomes particularly necessary with multiple video tracks. And VFR video will be transcoded to CFR upon upload to most social media platforms such as YouTube. So VFR video realistically has no place in our world, particularly when editing and/or transcode is involved. It has virtually no appreciable affect on file size with typical target frame rates either. So it’s pretty worthless for all but anime and video slideshows. Apple needs to catch a clue, although VFR may have it’s place in a completely different world where the benefits outweigh the disadvantages.

Since video is generally assumed to have synchronized audio, codecs don’t simply retime the frames using for instance the ‘setpts’ command combined with ‘r’ framerate parameters upon re-encode (Export). Instead, the codec adds duplicate frames as necessary to achieve the original playback length as deemed necessary for precise audio sync (without adding pitch changes). These duplicate frames will appear as rhythmic stutter with any significant in-scene or physical camera motion. It’s particularly apparent in pans, dollies or gimbal pitch changes in the 3º/sec to 10º/sec range. That’s fast enough to become noticeable and before separate frame-rate induce judder dominates. The two combined (judder and duplicate frames) are just a mess that most audiences have come to expect with video motion due to the overuse of 24/25 fps in a bid to validate Hollywood’s use which is primarily driven by dollars/frame pricing structures. These low frame rates had their day and retain their appeal for low motion content as 60+fps rates tend to create a ‘soap opera’ effect in low motion close-ups (non-landscape content). Thus, ‘cinematic motion blur’ becomes more about hiding excessively slow frame rates than for true artistic expression – as the world never blurs itself for our consumption otherwise, and leaves our eyes to follow the motion when more detail is desired.

All of that to say, we ran into a similar issue with VFR video from the HiSilicon SoC in Fimi camera drones. That led to the development of a VFR-to-CFR conversion tool that utilizes FFMPEG’s x264/5 codecs to retime the videos. Since we’re not dealing with audio sync with camera drone content, the decision was made to allow the playback length to ‘float’ to allow for perfect conversion to a standard CFR file, suitable for editing without ever introducing duplicate frames (‘setpts’ + ‘r’ commands). Shotcut would do well to add a checkbox option for this edit-friendly ‘retime’ option. If audio sync is critical, you can maintain the overall sync with retimed audio as well, but slight pitch changes may become noticeable, particularly with longer clips exceeding a few minutes. Our VFR-to-CFR tool is simple drag-n-drop for CFR conversion leveraging H.264/5. It’s free and open source and available available here:
https://drive.google.com/drive/folders/1U-xV4nt0FWsi4TzzfBenQOMHDAdu52i8?usp=sharing

To readers, please be aware that this links to a Windows-only executable that is not provided by and not checked by the team making Shotcut. I have no reason to believe there is a problem, but just letting you know.

The two combined (judder and duplicate frames) are just a mess that most audiences have come to expect with video motion due to the overuse of 24/25 fps in a bid to validate Hollywood’s use

priceless :stuck_out_tongue:

allow the playback length to ‘float’ to allow for perfect conversion to a standard CFR file, suitable for editing without ever introducing duplicate frames (‘setpts’ + ‘r’ commands)

Thank you for your work to research this and provide a solution for others!

Shotcut would do well to add a checkbox option for this edit-friendly ‘retime’ option.

Can you make a GiHub Pull Request for the changes? We have a Windows SDK to make development easier. It is actually what I use for doing my development on Windows. However, it is still rather advanced territory. I can point you in the direction of which source files to change. If not, then can you at least suggest the command line changes? You can see the ffmpeg command line Shotcut generates when you run Convert by looking at the end of View > Application Log…

Can you make a GiHub Pull Request for the changes? We have a Windows SDK to make development easier. It is actually what I use for doing my development on Windows. However, it is still rather advanced territory. I can point you in the direction of which source files to change. If not, then can you at least suggest the command line changes? You can see the ffmpeg command line Shotcut generates when you run Convert by looking at the end of View > Application Log…

I can certainly help with the FFMPEG command line options. In fact they’re listed in the ffe.ini file available with the VFR-to-CFR tool mentioned above. Some additional work will be involved with retiming synchronized audio in the conversion process, but that doesn’t look too difficult. You may already be familiar with the FFMPEG commands involved with resampling (since this would not be a simple ‘-c:a copy’ in this case).

Video quality is always a hot topic when it comes to re-encodes so I’ve provided some conclusions from my own subjective, 3x zoom (300%) analysis on 4K drone video that might prove helpful in making informed decisions when choosing the ‘crf’ (Shotcut quality %) for Edit Friendly CFR conversions. Checkout the Workflow chart and Subjective Video Quality Analysis spreadsheet both in PDF form (see page two for the all-important glossary of terms). All found in the shared Google drive folder mentioned previously. Any expertise is always welcome, but note that our Fimi drone community default ‘crf’ values in the VFR-to-CFR tool are driven by several factors including number of expected, successive (generational) re-encodes, ‘visually lossless’ attributes, and average computing power available amongst budget (Fimi) camera drone owners (4K on par with the DJI Air 2 camera, but priced at $450 delivered). I would expect the ‘crf’ values to be lowered accordingly (increased Shotcut quality %) amongst the Shotcut community, but keep in mind that virtually all commercial work is done with intermediate codecs such as DNxHR and ProRes in flavors that produce SSIM scores (objective quality) equivalent to crf=16 (Intra) and crf=18 (IPB) in 4K UHD 10-bit 422 (no alpha) testing. Some flavors in widespread use would require crf=13 (IPB or Intra) for matching results with x264/5, but few projects actually demand delivery beyond ProRes 422 HQ quality (crf=16/18 as mentioned above). So if it’s good enough for Hollywood… :wink:

Unfortunately, I don’t have a sufficient programming background to utilize the Shotcut SDK in an efficient/helpful way. You’ll notice that the VFR-to-CFR tool was simply a matter of modifying the ffe.ini file associated with existing open source projects such as FFE (FFMPEG front-end), combined with MediaInfo CLI. And including the FFMPEG filters gathered by yourself for inclusion with Shotcut (originally included in our tool to pursue DeNoise options but these filters are sufficiently compiled into FFMPEG as it turns out). These ‘portable’ Windows executables (folder agnostic) are simply packaged into zip/exe for easy download and installation.

Pardon my jumping in here…

@WingsFromHeaven could your explain ‘soap opera’ effect? If necessary I could start a new topic.

Probably no need for a separate topic unless there’s a need for discussion. Here’s a fairly convincing demo.

I finally got to examine the video you posted. My monitor is 1920x1080 and even when selecting 4k I don’t see a difference in the top/bottom display. I thought to comment because I have always disliked the 24fps “cinematic” look and have preferred the ‘digital video’ look. So, my question is - is the ‘soap opera’ effect merely a reference to being shot on video (rather than film).

I remember years ago seeing a wide-screen epic film where the opening screen was a panoramic view of the western, painted desert landscape. Since it was 24fps I was appalled at the jumpiness of the view as the camera slowly panned from left to right! I was never impressed with 24fps and would rather source everything with 60P. It is amazing to me that even today we see professional wide screen panoramic shots that stutter! I think we can do better.

Thanks for listening.
Ken

The Soap Opera Effect, also called Motion Interpolation or Frame Interpolation, is a form of video processing in which artificial animation frames are generated between existing ones by means of interpolation. The purpose is to attempt to make the animation more fluid and to compensate for the display’s motion blur.

See: What Is The Soap Opera Effect? [Ultimate Guide] - Display Ninja.