Answers.Body: <p>I'd recommend a simple GUI app, such as <a href="https://apps.apple.com/us/app/smart-converter/id447513724?mt=12" rel="nofollow noreferrer">Smart Converter</a> [can't remember if it's free or paid, App Store won't tell you once you own it] or <a href="https://handbrake.fr/downloads.php" rel="nofollow noreferrer">Handbrake</a> (freeware) which is a lot like ffmpeg, but without all the typing.<br />
  In both you can set up, or choose from existing, presets.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-07-31T08:46:40.813Z
Answers.LastActivityDate: 2022-07-31T10:46:24.897Z
Answers.LastEditDate: 2022-07-31T10:46:24.897Z
Answers.UserDisplayName: Tetsujin
Answers.Body: <p>This bash script may be useful. It simply uses ffmpeg to compress  all large (&gt;150MB) mp4 files in a directory to half the size.</p>
  <pre><code>#!/usr/bin/env bash
  set -x
  set -u
  set -e
  
  for fn in *.mp4 ; do
    filesize=$( ls  -l &quot;$fn&quot; | awk '{print $5}')
    if [ &quot;$filesize&quot; -gt &quot;150000000&quot; ]; then
      new_filesize=$(($filesize / 2 ))
      new_filesize_MB=$(($new_filesize / 1000000 ))
      fn_base=&quot;${fn%%.*}&quot;
      fn_ext=&quot;${fn#*.}&quot;
      ffmpeg -i &quot;${fn}&quot;  -fs $new_filesize &quot;${fn_base}.${new_filesize_MB}M.${fn_ext}&quot;
    fi
  done
  </code></pre>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-03T09:17:42.063Z
Answers.LastActivityDate: 2022-08-03T09:17:42.063Z
Answers.UserDisplayName: Joshua Fox
Body: <p>I have some smartphone video that is absurdly large for what is low-quality casual video: 100MB per minute. What is the easiest way to compress this (on Mac) using command-line or GUI, given that I don't want to optimize settings for this casual video -- just some sort of default?</p>
  <p>I have found answers online (often quite outdated) to use  <code>ffmpeg -i in.mp4 -vf scale=1280:720 -preset slow -crf 18 out.mp4</code> or the like, but I am none too sure about  what might be an acceptable default.</p>
  <p>I also tried  <code>ffmpeg -i in.mp4  -fs 100M out.mp4</code>, which gives decent results -- I am interested in any further good ideas.</p>
  
Tags: <mp4><compression>
Title: How can I easily shrink over-large MP4s where high quality is not relevant?
UserDisplayName: Joshua Fox
ThreadText: # How can I easily shrink over-large MP4s where high quality is not relevant?
  
  (Asked by: username_0 on 2022-07-31)
  
  I have some smartphone video that is absurdly large for what is low-quality casual video: 100MB per minute. What is the easiest way to compress this (on Mac) using command-line or GUI, given that I don't want to optimize settings for this casual video -- just some sort of default?
  
  I have found answers online (often quite outdated) to use `ffmpeg -i in.mp4 -vf scale=1280:720 -preset slow -crf 18 out.mp4` or the like, but I am none too sure about what might be an acceptable default.
  
  I also tried `ffmpeg -i in.mp4 -fs 100M out.mp4`, which gives decent results -- I am interested in any further good ideas.
  
  **Tags:** mp4, compression
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2022-07-31. Score: 1
  
  I'd recommend a simple GUI app, such as [Smart Converter](https://apps.apple.com/us/app/smart-converter/id447513724?mt=12) [can't remember if it's free or paid, App Store won't tell you once you own it] or [Handbrake](https://handbrake.fr/downloads.php) (freeware) which is a lot like ffmpeg, but without all the typing.  
  In both you can set up, or choose from existing, presets.
  
  
  ---
  
  ### Answer by username_0 on 2022-08-03. Score: 0
  
  This bash script may be useful. It simply uses ffmpeg to compress all large (>150MB) mp4 files in a directory to half the size.
  
  ```
  #!/usr/bin/env bash
  set -x
  set -u
  set -e
  
  for fn in *.mp4 ; do
    filesize=$( ls  -l "$fn" | awk '{print $5}')
    if [ "$filesize" -gt "150000000" ]; then
      new_filesize=$(($filesize / 2 ))
      new_filesize_MB=$(($new_filesize / 1000000 ))
      fn_base="${fn%%.*}"
      fn_ext="${fn#*.}"
      ffmpeg -i "${fn}"  -fs $new_filesize "${fn_base}.${new_filesize_MB}M.${fn_ext}"
    fi
  done
  
  ```
  
  
  ---
  
  