You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<h2id="pyscenedetect-07-in-development">PySceneDetect 0.7 (In Development)</h2>
926
926
<h3id="release-notes_12">Release Notes</h3>
927
-
<p>PySceneDetect is a major breaking release which overhauls how timestamps are handled throughout the API. This allows PySceneDetect to properly process variable framerate (VFR) videos. A significant amount of technical debt has been addressed, including removal of deprecated or overly complicated APIs.</p>
927
+
<p>PySceneDetect 0.7 is a <strong>major breaking release</strong> which overhauls how timestamps are handled. This allows PySceneDetect to properly process variable framerate (VFR) videos. A significant amount of technical debt has been addressed, including removal of deprecated or overly complicated APIs.</p>
928
928
<p>Care was taken to minimize changes for most common API uses, however more advanced use cases may run into breaking changes. Please review <ahref="https://www.scenedetect.com/docs/0.7/api/migration_guide.html">the Migration Guide</a> when updating from v0.6. Minimum supported Python version is now <strong>Python 3.10</strong>.</p>
929
929
<h3id="cli-changes">CLI Changes</h3>
930
930
<ul>
931
931
<li>[feature] VFR videos are handled correctly by the OpenCV and PyAV backends, and should work correctly with default parameters</li>
932
+
<li>[feature] All CLI options which used to accept frame numbers only now accept seconds (e.g. <code>0.6s</code>) and timecodes (e.g. <code>00:00:00.600</code>) <ahref="https://github.com/Breakthrough/PySceneDetect/issues/531">#531</a></li>
932
933
<li>[feature] New <code>save-fcp</code> command allows exporting in Final Cut Pro format (FCP7/FCPX) <ahref="https://github.com/Breakthrough/PySceneDetect/issues/156">#156</a></li>
933
-
<li>[feature] <code>--min-scene-len</code>/<code>-m</code> and <code>save-images --frame-margin</code>/<code>-m</code> now accept seconds (e.g. <code>0.6s</code>) and timecodes (e.g. <code>00:00:00.600</code>) in addition to a frame count <ahref="https://github.com/Breakthrough/PySceneDetect/issues/531">#531</a></li>
934
-
<li>[feature] <code>save-edl</code> accepts a new <code>--start-timecode</code>/<code>-s</code> flag (SMPTE <code>HH:MM:SS:FF</code> or 8-digit <code>HHMMSSFF</code>) to stamp every event with a custom start timecode so generated EDLs align with the source media's on-screen timecode <ahref="https://github.com/Breakthrough/PySceneDetect/issues/515">#515</a></li>
934
+
<li>[feature] Add <code>save-edl</code> option <code>--start-timecode</code>/<code>-s</code> to providde a custom start timecode for generated EDLs, supports SMPTE <code>HH:MM:SS:FF</code> or 8-digit <code>HHMMSSFF</code> input <ahref="https://github.com/Breakthrough/PySceneDetect/issues/515">#515</a></li>
935
935
<li>[bugfix] Fix floating-point precision error in <code>save-otio</code> output where frame values near integer boundaries (e.g. <code>90.00000000000001</code>) were serialized with spurious precision</li>
936
936
<li>[bugfix] Add mitigation for transient <code>OSError</code> in the MoviePy backend as it is susceptible to subprocess pipe races on slow or heavily loaded systems <ahref="https://github.com/Breakthrough/PySceneDetect/issues/496">#496</a></li>
937
937
<li>[bugfix] <code>detect-threshold</code> cut frame numbers are now backend-deterministic; previously the cut could differ by 1 frame between PyAV and OpenCV when the fade midpoint landed on a <code>.5</code> rounding boundary (PyAV uses sub-microsecond PTS, OpenCV uses millisecond-truncated <code>CAP_PROP_POS_MSEC</code>)</li>
<p>PySceneDetect is available via <code>pip</code> as <ahref="https://pypi.org/project/scenedetect/">the <code>scenedetect</code> package</a>.</p>
151
+
<p>PySceneDetect is available via <code>pip</code> as either <ahref="https://pypi.org/project/scenedetect/"><code>scenedetect</code></a> (depends on <code>opencv-python</code>) or <ahref="https://pypi.org/project/scenedetect-headless/"><code>scenedetect-headless</code></a> (depends on <code>opencv-python-headless</code>). Both ship the same <code>scenedetect</code> Python module -- install whichever OpenCV variant suits your environment.</p>
<p>As of PySceneDetect 0.7, the OpenCV dependency is bundled with the install. The standard <code>scenedetect</code> package depends on <code>opencv-python</code>:</p>
<p>Note that you may need to use a different/older version depending on your Python version. You can also use the headless package if you're running a server:</p>
<p>Unlike calling <code>pip install opencv-python</code>, the above commands will download and install the correct OpenCV version based on the Python version you are running.</p>
138
+
<p>Both packages ship the same <code>scenedetect</code>Python module -- you only need one.</p>
139
139
<h4id="how-can-i-enable-video-splitting-support">How can I enable video splitting support?</h4>
140
140
<p>Video splitting is performed by <code>ffmpeg</code> (<ahref="https://ffmpeg.org/download.html">https://ffmpeg.org/download.html</a>) or <code>mkvmerge</code> (https://mkvtoolnix.download/downloads.html) depending on which command line arguments are used. Ensure the tool is available and somewhere in your system's PATH folder.</p>
141
141
<h4id="how-can-i-fix-the-error-cannot-split-video-due-to-too-many-scenes">How can I fix the error <code>Cannot split video due to too many scenes</code>?</h4>
0 commit comments