-
-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Looping Video support #28
Projects
Milestone
Comments
abhiTronix
added
Bug 🐞
Something's wrong with Deffcode APIs.
Needs Triage 🧐
Assign priority to this issue.
labels
Aug 12, 2022
abhiTronix
added
WIP 🏗️
Work in Progress
and removed
Needs Triage 🧐
Assign priority to this issue.
labels
Aug 12, 2022
abhiTronix
added a commit
that referenced
this issue
Jan 10, 2023
- 💬 Now raw-frame numbers revert to null(`None`) whenever any looping is defined through filter(such as `-filter_complex "loop=loop=3:size=75:start=25"`) or prefix(`"-ffprefixes":["-stream_loop", "3"]`). 🔊 FFdecoder: Updated log message.
Successfully resolved and merged in commit 4a11c34 |
abhiTronix
added a commit
that referenced
this issue
Jan 11, 2023
FFdecoder: - 🩹 Added OpenCV compatibility patch for YUV pixel-formats. (Fixes #30) - ⚡ Implemented new patch for handling YUV pixel-formats(such as `YUV420p`, `yuv444p`, `NV12`, `NV21` etc.) for exclusive compatibility with OpenCV APIs. - 📝 Note: Only YUV pixel-formats starting with `YUV` and `NV` are currently supported. - ✨ Added new `-enforce_cv_patch` boolean attribute for enabling OpenCV compatibility patch. - 🐛 Fixed Zero division bug while calculating `raw_bit_per_component`. - 🔊 Updated log message. FFhelper: - 🎨 Replaced depreciating `Retry` API from `requests.packages` with `requests.adapters`. - 🚑️ Fixed response.headers returning `content-length` as Nonetype since it may not necessarily have the Content-Length header set. - 💬 Reason: The response from gitlab.com contains a Transfer-Encoding field as `'Transfer-Encoding': 'chunked'`, which means data is sent in a series of chunks, so the Content-Length header is emitted. More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding#Directives Sourcer: - ✨ Added Looping Video support. (Fixes #28) - 💬 Now raw-frame numbers revert to null(`None`) whenever any looping is defined through filter(such as `-filter_complex "loop=loop=3:size=75:start=25"`) or prefix(`"-ffprefixes":["-stream_loop", "3"]`). Maintenance: - ♻️ Replaced `raw.github.com` links with GitLab CDN links. - 🗑️ Removed unused code. Setup: - 🔥 Removed unused imports and patches. Docs: - ♻️ Refactored docs for Decoding and Transcoding recipes. - 📝 Updated Decoding Video files doc: - ✨ Added YUV frames example code for `Capturing and Previewing BGR frames from a video file` recipe. - 🚸 Updated text and admonitions. - 🔥 Removed depreciated text. - 📝 Updated Transcoding Live frames doc: - ✨ Added YUV frames example code for `Transcoding video using OpenCV VideoWriter API` recipe. - ✨ Added YUV frames example code for `Transcoding lossless video using WriteGear API` recipe. - 🚸 Updated text and admonitions. - 🔥 Removed depreciated text. - 📝 Updated Hardware-Accelerated Video Decoding doc: - Updated abstract text. - ✨ Added new python dependency block for recipes. - ✨ Added new `CUVID-accelerated Hardware-based Video Decoding and Previewing` recipe. - ✨ Added new `CUDA-accelerated Hardware-based Video Decoding and Previewing` recipe. - 📝 Reflected new OpenCV compatibility patch for YUV pixel-formats in code. - 🚸 Updated recipe assumptions. - 🧑💻 Updated recipe code. - 🔥 Removed old recipe. - 📝 Updated Hardware-Accelerated Video Transcoding doc: - 📄 Updated abstract text. - 📄 Updated `Limitation: Bottleneck in Hardware-Accelerated Video Transcoding performance with Real-time Frame processing` passage. - ✨ Added new python dependency block for recipes. - ✨ Added new `CUDA-accelerated Video Transcoding with OpenCV's VideoWriter API` recipe. - ✨ Added new `CUDA-NVENC-accelerated Video Transcoding with WriteGear API` recipe both for consuming BGR and NV12 frames. - ✨ Added new `CUDA-NVENC-accelerated End-to-end Lossless Video Transcoding with WriteGear API` recipe which is still WIP(💬confirmed with a GIF from tenor). - 📝 Reflected new OpenCV compatibility patch for YUV pixel-formats in code. - 🚸 Updated recipe assumptions. - 🧑💻 Updated recipe code. - 🔥 Removed old recipe and unnecessary text. - 📝 Updated FFdecoder `params.md`: - ✨ Added docs for `-enforce_cv_patch` boolean attribute in `ffparam` dictionary parameter. -🔥 Removed depreciated text. - ✏️ Fixed typos. - 📝 Added docs for Looping Video support. - ✨ Added new `Capturing and Previewing frames from a Looping Video` recipe using `-stream_loop` option and `loop` filter". - 🚸 Updated text and admonitions. - 📝 Updated docs hyperlinks in index.md - 📝 Updated and corrected docs hyperlinks in ReadMe.md - 📝 Fixed badges/shields#8671 badge issue in README.md - 📝 Replaced `raw.github.com` links with GitLab and GH links. - 💄 Added new `content.code.copy` and `content.code.link` features. - 💄 Updated `Readme.md` GIF URLs. - 💄 Updated `Readme.md` banner image URLs. - 📄 Update Zenodo Badge and BibTex entry. - 💄 Updated md-typeset text font size to `.75rem`. - 📝 Updated docs hyperlinks in index.md - 📝 Updated and corrected docs hyperlinks in ReadMe.md - 📝 Updated `changelog.md`. - ✏️ Fixed several typos and minor tweaks. - ♻️ Refactored custom.css. CI: - 👷 Updated `test_source` to test looping video support. - 👷 Updated `test_frame_format` test to include `-enforce_cv_patch` boolean attribute. - 🚑️ CI: Added fix for codecov upload bug (codecov/codecov-action#598). - 👷 Updated `codecov-action` workflow to `v3. - 👷 Added new `CODECOV_TOKEN` GitHub secret.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
The DeFFcode's FFdecoder API supports
-stream_loop
FFmpeg parameter using the-ffprefixes
attribute by way of its dictionary parameter for decoding infinite looping video frames using just a single video source. But presently, it fails to identify the given looping source and treat them as one regular video with finite duration. This create unwanted problem where video frames are decoded upto a certain duration only once like a regular video file, and then exits automatically without going for another loop, thus defeating the very purpose.Issue Checklist
Expected behaviour
Being able to identify the given looping source and not as regular video file, and API should not exit automatically..
Actual behaviour
It identify the given source as regular video file with finite duration, and it exits automatically without going for another loop.
Steps to reproduce
Run this python given below code in Python Code section and you will see FFdecoder API exiting automatically after given video source duration is over. Also if you check the metadata extracted something similar as follows:
The
approx_video_nframes
value is630
which exact value of frames in one regular video file.Terminal log output
No response
Python Code(Optional)
DeFFcode Version
0.2.3
Python version
3.7
Operating System version
all
Any other Relevant Information?
No response
The text was updated successfully, but these errors were encountered: