-
Notifications
You must be signed in to change notification settings - Fork 109
Create files to support NSMovie and NSMovieView #144
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
Conversation
…nges, and config.make/config.h changes
Completely revamped and simplified. |
…GSMovieView move decoding entirely to threads
@rfm Please take a look at this one as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR creates comprehensive NSMovie and NSMovieView implementation using FFmpeg as the underlying multimedia framework. The implementation adds video playback functionality with synchronized audio/video rendering and proper build system integration.
- Adds complete NSMovie and NSMovieView classes with FFmpeg-based video/audio decoding capabilities
- Implements GSMovieView as a subclass providing the actual playback functionality with audio-video synchronization
- Integrates FFmpeg dependencies into the build system with proper configuration and library detection
Reviewed Changes
Copilot reviewed 17 out of 18 changed files in this pull request and generated 5 comments.
Show a summary per file
File | Description |
---|---|
configure.ac | Adds FFmpeg library detection and build configuration for NSMovie/NSMovieView |
config.make.in | Defines build variables for movie and sound library support |
Source/NSSound.m | Updates NSSound implementation with improved memory management |
Source/NSMovieView.m | Basic NSMovieView implementation with stubs for most functionality |
Source/NSMovie.m | NSMovie class implementation with data handling and codec integration |
Source/GSMovieView.m | Complete video player implementation with FFmpeg integration |
Source/GSAudioPlayer.* | Audio player class for synchronized audio playback |
Source/GSAVUtils.* | Utility functions for AVPacket/NSDictionary conversion |
Headers/AppKit/NSMovie*.h | Public API headers with comprehensive documentation |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
I think this is as close to done as I can get it. It works. I would like others to have the opportunity to look at and fix the code on this. Please review and approve if you can @rfm or @fredkiefer |
I think this PR is ready as well, @fredkiefer / @rfm |
@fredkiefer can you take one final look at this? I really have taken this as far as I can. It's not perfect, but it works. I would like to merge this so that others can inspect and improve the code. |
Unless there is an objection I am going to merge this. I have taken it as far as I can. I want more people to be able to test it and improve it. |
Just give me a few more hours. I am planing of doing a final review of this code tonight. |
Okay. I didn't mean to rush you. I just wanted others to be able to take advantage of it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't quite like the concepts behind the current implementation, but I don't see much harm in it. If you really want to, you may go ahead and merge this.
Merging this with fred's okay. Everyone please test this and let me know what I have done wrong with decoding, if anything or how I can improve my approach. |
implementation for NSMovie and NSMovieView. The tests for this are here:
https://github.com/gcasa/NSMovie_test
https://github.com/gcasa/apps-videoplayer