Answers.Body: <p>As an adaption of kevmitch's answer, I went with</p>
  <pre><code>ffmpeg  -i &quot;foo.mkv&quot; -vf stereo3d=sbs2l:ml -c:a copy &quot;bar.mp4&quot;
  </code></pre>
  <p>Notable difference: It's using <code>sbs2l</code> (instead of <em>sbsl2</em>) and just copies audio streams (works for me). <a href="http://underpop.online.fr/f/ffmpeg/help/stereo3d.htm.gz" rel="nofollow noreferrer">Further reading to stereo3d</a></p>
  <p>Edit: To whom it may concern, in another case I experienced problems with the aspect ratio with the command above. This can be fixed by using something like this command (adapt resolution, setdar and aspect ratio)</p>
  <pre><code>ffmpeg  -i &quot;foo.mkv&quot; -vf stereo3d=sbs2l:ml,scale=1920x816,setdar=21:9 -aspect 21:9 -c:a copy &quot;bar.mp4&quot;
  </code></pre>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-03-18T20:03:38.047Z
Answers.LastActivityDate: 2023-12-09T23:20:29.010Z
Answers.LastEditDate: 2023-12-09T23:20:29.010Z
Answers.UserDisplayName: Mister Henson
Answers.Body: <p>I found a reference on this forum. 
  <a href="http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html" rel="nofollow noreferrer">http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html</a></p>
  
  <pre><code>ffmpeg -i './a3dmovie.mp4'  -vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2" -y ./a2dmovie.mp4
  </code></pre>
  
  <p>The important part is the <code>-vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2"</code></p>
  
  <p>It essentially halves the output and rescales as appropriate for the 3d video.</p>
  
  <p>I found this is also useful to test and check the output</p>
  
  <pre><code>ffplay -i ./some3dmovie.mp4  -vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2" 
  </code></pre>
  
  <p>You can move the index to the front of the file as follows
  <code>-movflags faststart</code></p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-04-02T19:56:18.113Z
Answers.LastActivityDate: 2017-04-02T19:56:18.113Z
Answers.UserDisplayName: nelaaro
Answers.Body: <p>While you might be able to achieve this by manually using ffmpeg's <a href="https://ffmpeg.org/ffmpeg-filters.html#crop" rel="noreferrer">crop</a> filter, the <a href="https://ffmpeg.org/ffmpeg-filters.html#stereo3d" rel="noreferrer">stereo3d filter</a> is designed specifically for this purpose. You didn't specify the exact 3d format you have. There are several possibilities as documented at the the stereo3d link above. Assuming that <code>input.mkv</code> is the relatively common sbsl (side-by-side left eye on left), </p>
  
  <pre><code>ffmpeg -i input.mkv -vf stereo3d=sbsl:ml -metadata:s:v:0 stereo_mode="mono" output.mkv
  </code></pre>
  
  <p>will result in a 2d (left eye only) <code>output.mkv</code>. I believe the reason <code>-metadata:s:v:0 stereo_mode="mono"</code> is required to remove the stereo tag is because the metadata isn't piped through the filter system, and ffmpeg otherwise tries to duplicate the metadata of the original. If you don't do this, some players may think your 2d result is still 3d and do weird things. </p>
  
  <p>If you find that the result has the wrong aspect ratio, you can experiment with using <code>stereo3d=sbsl2:ml</code> instead which treats the input as half width side-by-side. If all else fails, you can set the correct aspect with <code>-aspect 16:9</code> (or whatever you know the correct aspect ratio to be).</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-10-03T01:00:16.130Z
Answers.Text: Could you explain the stereo3d filter option you are using here? I understand from the ffmpeg documentation that sbsl means side by side parallel (left eye left, right eye right) but what does the :ml signify? I can't seem to locate that information.
Answers.UserDisplayName: Elder Geek
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-10-03T21:51:07.693Z
Answers.Text: The syntax is `stereo3d=<input-format>:<output-format>`. As per the linked documentation, `ml` means to output "mono output (left eye only)".
Answers.UserDisplayName: kevmitch
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-07-25T18:08:14.020Z
Answers.Text: I got errors attempting to use `-metadata:s:v:0 stereo_mode="mono"` with ffmpeg 2.8.14. It appears that the documentation may have changed since you wrote this answer. Simply removing the aforementioned switches allowed ffmpeg to continue without error. Note that you can avoid re-encoding the audio stream by utilizing the `-c:a copy` switch.
Answers.UserDisplayName: Elder Geek
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-05-30T08:49:24.893Z
Answers.LastActivityDate: 2017-05-30T08:49:24.893Z
Answers.UserDisplayName: kevmitch
Body: <p>I am looking for a way to convert a 3d movie to a 2d movie.</p>
  
  <p>I found a reference on this forum. 
  <a href="http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html" rel="noreferrer">http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html</a></p>
  
Tags: <ffmpeg><3d><scale>
Title: How to convert a 3D movie to 2D using ffmpeg
UserDisplayName: nelaaro
ThreadText: # How to convert a 3D movie to 2D using ffmpeg
  
  (Asked by: username_0 on 2017-04-02)
  
  I am looking for a way to convert a 3d movie to a 2d movie.
  
  I found a reference on this forum.
  <http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html>
  
  **Tags:** ffmpeg, 3d, scale
  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_2 on 2017-05-30. Score: 13 | Accepted answer
  
  While you might be able to achieve this by manually using ffmpeg's [crop](https://ffmpeg.org/ffmpeg-filters.html#crop) filter, the [stereo3d filter](https://ffmpeg.org/ffmpeg-filters.html#stereo3d) is designed specifically for this purpose. You didn't specify the exact 3d format you have. There are several possibilities as documented at the the stereo3d link above. Assuming that `input.mkv` is the relatively common sbsl (side-by-side left eye on left),
  
  ```
  ffmpeg -i input.mkv -vf stereo3d=sbsl:ml -metadata:s:v:0 stereo_mode="mono" output.mkv
  
  ```
  
  will result in a 2d (left eye only) `output.mkv`. I believe the reason `-metadata:s:v:0 stereo_mode="mono"` is required to remove the stereo tag is because the metadata isn't piped through the filter system, and ffmpeg otherwise tries to duplicate the metadata of the original. If you don't do this, some players may think your 2d result is still 3d and do weird things.
  
  If you find that the result has the wrong aspect ratio, you can experiment with using `stereo3d=sbsl2:ml` instead which treats the input as half width side-by-side. If all else fails, you can set the correct aspect with `-aspect 16:9` (or whatever you know the correct aspect ratio to be).
  
  > **Comments:**
  > **username_3**: Could you explain the stereo3d filter option you are using here? I understand from the ffmpeg documentation that sbsl means side by side parallel (left eye left, right eye right) but what does the :ml signify? I can't seem to locate that information.  
  > **username_2**: The syntax is `stereo3d=<input-format>:<output-format>`. As per the linked documentation, `ml` means to output "mono output (left eye only)".  
  > **username_3**: I got errors attempting to use `-metadata:s:v:0 stereo_mode="mono"` with ffmpeg 2.8.14. It appears that the documentation may have changed since you wrote this answer. Simply removing the aforementioned switches allowed ffmpeg to continue without error. Note that you can avoid re-encoding the audio stream by utilizing the `-c:a copy` switch.  
  
  ---
  
  ### Answer by username_1 on 2022-03-18. Score: 2
  
  As an adaption of username_2's answer, I went with
  
  ```
  ffmpeg  -i "foo.mkv" -vf stereo3d=sbs2l:ml -c:a copy "bar.mp4"
  
  ```
  
  Notable difference: It's using `sbs2l` (instead of *sbsl2*) and just copies audio streams (works for me). [Further reading to stereo3d](http://underpop.online.fr/f/ffmpeg/help/stereo3d.htm.gz)
  
  Edit: To whom it may concern, in another case I experienced problems with the aspect ratio with the command above. This can be fixed by using something like this command (adapt resolution, setdar and aspect ratio)
  
  ```
  ffmpeg  -i "foo.mkv" -vf stereo3d=sbs2l:ml,scale=1920x816,setdar=21:9 -aspect 21:9 -c:a copy "bar.mp4"
  
  ```
  
  
  ---
  
  ### Answer by username_0 on 2017-04-02. Score: 2
  
  I found a reference on this forum.
  <http://www.ffmpeg-archive.org/How-to-re-encode-3d-video-to-2d-video-td4676271.html>
  
  ```
  ffmpeg -i './a3dmovie.mp4'  -vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2" -y ./a2dmovie.mp4
  
  ```
  
  The important part is the `-vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2"`
  
  It essentially halves the output and rescales as appropriate for the 3d video.
  
  I found this is also useful to test and check the output
  
  ```
  ffplay -i ./some3dmovie.mp4  -vf "crop=w=iw/2:h=ih:x=0:y=0,scale=w=2*iw:h=ih,setdar=2" 
  
  ```
  
  You can move the index to the front of the file as follows
  `-movflags faststart`
  
  
  ---
  
  