Cannot upload video to iTunesConnect: The frame rate of your app video preview is too high
Asked Answered
N

12

31

I made an App Store preview video using QuickTime player on OS X Yosemite.
When I try to upload the video to iTunesConnect, I get an error message:

The frame rate of your app video preview is too high.

I can't see any options in the QuickTime Player to change frame rate.

Error message that I am getting

Does anybody knows what to do with it?

Newport answered 10/10, 2014 at 13:43 Comment(0)
C
36

Videos can be easily converted using ffmpeg, a handy tool that can be installed using homebrew.

ffmpeg -r 30 -i 60fpsvideo.m4v -vcodec copy -acodec copy 30fpsvideo.avi
Civics answered 4/11, 2014 at 8:26 Comment(3)
I had to use: ffmpeg -i "InputMovie.mov" -r 30 "OutputMovie.mov"Radu
Thanks, @ChrisNolet. The original answer, as is, doesn't work (video is still 60 fps). Please, fix it.Thermic
Cool, just submitted an edit. I'm not sure if the copy parameters are necessary but I've left them in just in case. Added -r 30.Radu
W
18

This is what worked for me:

ffmpeg -i input.mov -qscale 0 -r 24 -y output_5.mov

-qscale 0 made sure the length stayed the same but the frame rate dropped from 56 or so (as it was recorded from my iPhone6 by the QuickTime) to exactly 24 !!

Then managed to successfully upload to iTunes, yay!

March 28, 2019 EDIT:

There is also this option to just do it with iMovie: Creating App Previews with iMovie

Wonted answered 5/8, 2016 at 13:36 Comment(3)
As of 2018, I got it to work using Apple's recommended capture method (developer.apple.com/support/app-previews) and converting with these arguments. Thank you!Thermic
Capturing from within the device, importing to Photos and converting with ffmpeg didn't work. Capturing from Quicktime alone didn't either (wrong framerate).Thermic
Incidentally, video previews created on an iPhone8 plus did not require this conversion.Antionetteantioxidant
V
9

Just did my first movie. hit lots of snags - heres quick steps to avoid them:

  • RECORD
  • Record in Quick Time Player > File > New Movie Recording
  • Use iPhone 6/7 PLUS to get right dimensions
  • use drop down beside red record button to choose iphone
  • record your video - max 30 secs but easy to trim
  • Trim in Quicktime to be under 30 secs
  • Edit/Trim - drag the ends of the yellow bounds
  • had problems splitting and combining clips in Quicktime - use iMovie
  • save as mp4 or mov
  • IMOVIE - CONVERT TO APP PREVIEW
  • Use iMovie to get correct framerate
  • File > New App Preview
  • import exported movie file from quicktime
  • drag movie to timeline
  • press space to test play
  • add sound if you like - google "royalty free sounds"
  • drag wav into project/ drag into timelime
  • EXPORT APP PREVIEW
  • Share button top right
  • choose App Preview (if missing check prev steps dont use File option fps dimesions may not be right)
  • save to file mp4
  • UPLOAD USING SAFARI
  • Upload using Safari to iTunes Connect - wont work in chrome
  • In pictures section of you app version, choose file, pick mp4 exported from imovie
  • set frame to display when movie not playing
  • save itunes version info
  • movie uploaded
  • itunes said 'can take up to 24 hours'
Valerie answered 3/2, 2017 at 15:33 Comment(4)
There is no "New app preview" menu I can find in iMovie. Why is publishing to the app store so hard?Vine
yes it didnt seem to appear immediately. I think I dragged the mov and wav to time line and then save the App Preview save option was there. it wasnt the first time. The video also needs to be under 30 secs. i think the dimensions matter as well. apple.stackexchange.com/questions/145336/…Valerie
Ffmpeg did the jobVine
In iMovie, it's the third option down under the "File" menu option - "New App Preview"Rockafellow
P
3

I have followed the following steps :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

then

brew install ffmpeg

then used the following command :

/usr/local/Cellar/ffmpeg/3.1.3/bin/ffmpeg -i SpeechToText_usage.mov  -qscale 0 -r 24 -y speechtotext_framerate_changed.mov

It worked well!

Portable answered 3/10, 2016 at 6:14 Comment(0)
N
2

I found out, that there is no possibility to edit the frame rate in the QuickTime Player.

I ended up downloading trial version of Final Cut Pro. In Final Cut Pro it's just a few clicks.

Newport answered 16/10, 2014 at 13:32 Comment(2)
It would be helpful to say what those "few clicks" are in Final Cut Pro.Bamby
What is the frame rate? In Adobe Acrobat it lists 29.97 fps with a Drop frame. Is that correct?Psaltery
M
2

For Quicktime videos user this command, worked for me fine:

ffmpeg -i demo_app.mov -qscale 0 -r 24 -y -vf scale=1080:1920,setsar=1:1 app_preview.mov
Microsurgery answered 4/10, 2016 at 19:7 Comment(0)
C
2

You can fix it easily in iMovie (I used 10.1.10).
1. Go to main screen of iMovie.
2. File -> New App Preview.
3. Drag your movie to the project.
4. File -> Share -> App Preview.

Cervantes answered 17/12, 2018 at 9:17 Comment(0)
N
1

For Quicktime videos use this command line:

ffmpeg -r 30 -i 60fpsvideo.m4v 30fpsvideo.avi
Noheminoil answered 11/4, 2016 at 9:37 Comment(0)
L
1

This rescales one video into all the required framerate and sizes to match what App Store Connect needs:

IN=IMG_3518.TRIM.MOV
ffmpeg -i $IN -s 1080x1920 -r 30 5.5.mov
ffmpeg -I $IN -s 886x1920 -r 30 6.5.mov
ffmpeg -I $IN -s 1200x1600 -r 30 ipp3.mov

Don't use this. You should make all your videos by running on the actual different devices. Your account will be banned, your house will catch fire, your cat will die.

Lacey answered 15/4, 2019 at 3:50 Comment(0)
A
0

I scripted this into a borne again shell (bash) to convert a bunch of files. You can add 'rm $file' to the script to delete the original file if you wish, but do not do this unless you know exactly what you are doing and take full responsibility for the risks involved. I list 30s in my filename convention to specify the length of the video. If your file name convention is different you will need to adjust accordingly.

#!/bin/bash
for file in `ls *s.mov`
do
newFileName=`echo $file | sed s/s.mov/s_r24.mov/`
# echo $file  $newFileName
if [ -e $newFileName ]; then
echo $newFileName "exists"
else
echo ""
# echo $newFileName "does not exist"
ffmpeg -i $file  -qscale 0 -r 24 -y $newFileName
fi
done
Antionetteantioxidant answered 25/12, 2018 at 19:13 Comment(0)
T
0
  1. Create the file resize_video.sh, with the code below
  2. Open the terminal, run the command: sh resize_video.sh

This script, will convert videos as needed by the AppStore.

INPUT_VIDEO=app_preview.mov

mkdir -p 6.5
mkdir -p 5.5
mkdir -p 12.9

WIDTH=886
HEIGHT=1920
OUTPUT_VIDEO=6.5/app_preview.mov
rm -f $OUTPUT_VIDEO
ffmpeg -i $INPUT_VIDEO -qscale 0 -r 24 -y -vf scale=$WIDTH:$HEIGHT,setsar=1:1 $OUTPUT_VIDEO

WIDTH=1080
HEIGHT=1920
OUTPUT_VIDEO=5.5/app_preview.mov

rm -f $OUTPUT_VIDEO
ffmpeg -i $INPUT_VIDEO -qscale 0 -r 24 -y -vf scale=$WIDTH:$HEIGHT,setsar=1:1 $OUTPUT_VIDEO

WIDTH=1200
HEIGHT=1600
OUTPUT_VIDEO=12.9/app_preview.mov

rm -f $OUTPUT_VIDEO
ffmpeg -i $INPUT_VIDEO -qscale 0 -r 24 -y -vf scale=$WIDTH:$HEIGHT,setsar=1:1 $OUTPUT_VIDEO

https://gist.github.com/5lineofcode/ba6fc90ed7628c3acf11a735437c7944

Theorist answered 11/12, 2019 at 2:30 Comment(0)
M
-1
ffmpeg -i apppreview.mov -r 30 -acodec copy -crf 12 -vf scale=1920:886,setsar=1:1 output.mp4
Mcardle answered 19/4, 2023 at 4:19 Comment(1)
A good answer explains how it solves the issue. You should explain what these options do and what improvement it makes over the other 11 answers.Eckman

© 2022 - 2024 — McMap. All rights reserved.