-
-
Notifications
You must be signed in to change notification settings - Fork 172
Add gstreamer video player #228
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- remove some old code in the texture registry - simplify texture registry - make video player format hint an enum instead of a string - add refcounting utility to collection.h
- add generic event source - add STDLIST macros - implement gstplayer video info callback - fix some issues in the texture registry - fix DEBUG_ASSERT_MSG macro - make cmake export compile commands by default
- set video sink `sync` property to true - don't drop video frames when they're not pulled by the video player - only reference texture frames once, since flutter only destroys them once when everything goes well (but it destroys them twice when not)
- fix video URI for asset bundle video player - add backward-CPP for printing stacktrace on crash - clean up CMakeLists.txt a bit - don't wait blockingly for gstreamer state change in "apply_playback_state" - refactor the gstreamer player playback state a bit - enable forward and backward stepping - different playback speeds for forward and backward playback (only forward can be set right now though)
- update copyright of CMakeLists.txt - reorder some arguments in CMakeLists
- call the correct destructors inside gstplayer_destroy - add missing destructors in gstplayer_destroy
- fix lockup (forgot to read eventfd in sd_event_source_generic) - add fallback to software decoding if the hw decoder emits "no valid frames found before end of stream" - copy video frames from system memory into dmabuf memory to be able to use them as a texture - make frame_interface shared so individual video frames can keep a reference to it even after gstplayer was already destroyed
- add notifier/listener API to make async stuff a bit easier - fix incorrect playback speed when single-frame stepping backwards - report a sane playback position when gstreamer is currently seeking (either the last known one or the position we're seeking to) - no longer store the initialized event in gstplayer_meta - convert to notifier/listeners for video info event, buffering state updates - respond when an error when getting the playback position fails
- fix json message encoding bug - unregister gstplayer event channel listeners on player destruction - make texture_registry_gl_external_texture_frame_callback handle the case where the texture was destroyed after notifying the engine - unreference gst framebuffers earlier, inside frame_new - make gstplayer unref seeking, buffering queries - add a build option to invoke GNU mtrace() on startup
- make every platform channel method of the gstreamer plugin provide some more error details - in particular, provide details when flutter side specified an invalid textureId
- fast seeking for gstplayer - fix gstplayer setMixWithOthers - fix some warnings
- add plugin registry receiver functions again - (refactor those out into a seperate API later)
- move LOG_DEBUG, LOG_ERROR macros into collection.h - make those use a prefix defined by FILE_DESCR macro - (so every file that uses logging should have a FILE_DESCR macro at the top) - silence some unused variable warnings
51c7c69
to
902cf2d
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.