Answers.Body: <p>I too have met this problem and am scratching my head.
  But I found one solution, once converted to h.265 and then to h.264, it worked.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-01-11T14:40:00.643Z
Answers.LastActivityDate: 2024-01-11T14:40:00.643Z
Answers.UserDisplayName: momomo
Body: <p>I have a 3D video showing curved playback at the edges when playing it a on a flat screen. I'm trying to convert it to 2D using FFMPEG with the help of <strong>Stereo3d</strong> filter. By applying the filter to FFPLAY, the video is played back exactly of what is expected off the filter, i.e the curves at edges are gone and become plane. Here is command code for playing:</p>
  
  <pre><code>ffplay "in.mp4" -vf stereo3d=sbsl:ml
  </code></pre>
  
  <p>Encoding the video with same filter using different presets for libx264 or h264_qsv encoder, produced a video with same curved edges!!! Just like the stereo3d filter acts as a <strong>crop</strong> filter cropping the video correctly, resizing and adjusting aspect ratio, but didn't transform curved edges to plane one. Command code for encoding is:</p>
  
  <pre><code>ffmpeg -i "in.mp4" -vf stereo3d=sbsl:ml -metadata:s:v:0 stereo_mode="mono" -c:v h264_qsv -preset veryslow "2D.mp4"
  </code></pre>
  
  <p>Any idea how to get this done correctly with FFMPEG package for Win10-64bit? or perhaps with another tool. </p>
  
  <p>Thanks, </p>
  
  <p>Edit: 
  As about my question for FFplay output, it was a mistake!!! due to the wide size of the output, my display didn't show video edges and tricked me :) When I toggled FFplay to full screen, the output was same as encoding process output. </p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-15T21:22:54.123Z
Comments.Text: The following link shows a picture of how the input source file is played back. 
  
  https://i0.wp.com/echeng.com/wp-content/uploads/2019/09/peak-oculus-1.png?w=750
  
  I meant by "curved edges" are the black elliptic shapes at left/right sides of both side by side videos,  as well as the left/right side video has up/down edges curved or stretched in spherical way. 
  I hope this will help, thanks .. @PaulB.Mahol
Comments.UserDisplayName: Moody
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-05-18T06:38:22.017Z
Comments.Text: @PaulB.Mahol, Thank you very much for pointing to v360 filter, it wasn't enabled in FFmpeg package v.4.2.2 for Windows, but I got it and now digging FFmpeg documentations for v360 input/output parameters, trying to understand what they mean. 
  Can FFmpeg detect if the source is SBS VR 180 degree? or I have to tell that through v360 input parameter? 
  Then, what FOV degree is equivalent to view a non-stereoscopic video? a zero degree?
Comments.UserDisplayName: Moody
Tags: <ffmpeg><3d>
Title: Playing a 3D video with ffplay and Stereo3d filter, produces different playback than ffmpeg encoded version with same filter
UserDisplayName: Moody
ThreadText: # Playing a 3D video with ffplay and Stereo3d filter, produces different playback than ffmpeg encoded version with same filter
  
  (Asked by: username_0 on 2020-05-15)
  
  I have a 3D video showing curved playback at the edges when playing it a on a flat screen. I'm trying to convert it to 2D using FFMPEG with the help of **Stereo3d** filter. By applying the filter to FFPLAY, the video is played back exactly of what is expected off the filter, i.e the curves at edges are gone and become plane. Here is command code for playing:
  
  ```
  ffplay "in.mp4" -vf stereo3d=sbsl:ml
  
  ```
  
  Encoding the video with same filter using different presets for libx264 or h264\_qsv encoder, produced a video with same curved edges!!! Just like the stereo3d filter acts as a **crop** filter cropping the video correctly, resizing and adjusting aspect ratio, but didn't transform curved edges to plane one. Command code for encoding is:
  
  ```
  ffmpeg -i "in.mp4" -vf stereo3d=sbsl:ml -metadata:s:v:0 stereo_mode="mono" -c:v h264_qsv -preset veryslow "2D.mp4"
  
  ```
  
  Any idea how to get this done correctly with FFMPEG package for Win10-64bit? or perhaps with another tool.
  
  Thanks,
  
  Edit:
  As about my question for FFplay output, it was a mistake!!! due to the wide size of the output, my display didn't show video edges and tricked me :) When I toggled FFplay to full screen, the output was same as encoding process output.
  
  **Tags:** ffmpeg, 3d
  
  > **Comments:**
  > **username_0**: The following link shows a picture of how the input source file is played back.   https://i0.wp.com/echeng.com/wp-content/uploads/2019/09/peak-oculus-1.png?w=750  I meant by "curved edges" are the black elliptic shapes at left/right sides of both side by side videos,  as well as the left/right side video has up/down edges curved or stretched in spherical way.  I hope this will help, thanks .. @PaulB.Mahol  
  > **username_0**: @PaulB.Mahol, Thank you very much for pointing to v360 filter, it wasn't enabled in FFmpeg package v.4.2.2 for Windows, but I got it and now digging FFmpeg documentations for v360 input/output parameters, trying to understand what they mean.  Can FFmpeg detect if the source is SBS VR 180 degree? or I have to tell that through v360 input parameter?  Then, what FOV degree is equivalent to view a non-stereoscopic video? a zero degree?  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2024-01-11. Score: 0
  
  I too have met this problem and am scratching my head.
  But I found one solution, once converted to h.265 and then to h.264, it worked.
  
  
  ---
  
  