Skip to content
This repository has been archived by the owner on Sep 16, 2023. It is now read-only.

Contributors Request #4

Open
CarterLi opened this issue Dec 3, 2021 · 65 comments
Open

Contributors Request #4

CarterLi opened this issue Dec 3, 2021 · 65 comments
Labels
help wanted Extra attention is needed

Comments

@CarterLi
Copy link
Owner

CarterLi commented Dec 3, 2021

As IINA is my favorite macOS player, I really hope that IINA can go further. However the official repo seemed to be no longer in active development ( but not dead, hopefully ).

Since then, many features, fixes were made in various personal fork repo. However because they were separated in different repos:

  1. We cannot release binaries that includes all of these features / fixes
  2. Other IINA users are hard to find them

So I decided to create this iina-plus group and want it to be open and easy to contribute ( not open PR, but join the group and push code directly into the repo )

However, to prevent from spam, there is a requirement to prove you have the ability to contribute.

  • You must have at least one existing working feature / important bug fix in your repo.
@CarterLi CarterLi added the help wanted Extra attention is needed label Dec 3, 2021
@CarterLi
Copy link
Owner Author

CarterLi commented Dec 3, 2021

@low-batt I really appreciate your PRs with very detailed explanation and most of them have been cherry-picked into this repo. Would you like to join this group?

@low-batt
Copy link
Collaborator

low-batt commented Dec 5, 2021

I tried forking iina-plus/iina today as I like the ability to look over your submission on GitHub the PR workflow gives you before you push it into the public repository. Yes I'm paranoid about accidentally messing up and pushing something I didn't intend. I found I couldn't fork ina-plus/iina. Seemed like this is a restriction on GitHub free accounts.

So yes, if you grant me access I will add my changes to this fork as well.

What is your vision for coordinating changes given this setup?

@low-batt
Copy link
Collaborator

low-batt commented Dec 7, 2021

I have a local commit with the fix for the camera housing issue but:
low-batt@gag iina (develop>)$ git push
ERROR: Permission to iina-plus/iina.git denied to low-batt.

@CarterLi
Copy link
Owner Author

CarterLi commented Dec 7, 2021

Let me have a check

@CarterLi
Copy link
Owner Author

CarterLi commented Dec 7, 2021

Try again please?

@low-batt
Copy link
Collaborator

low-batt commented Dec 7, 2021

Worked!
I haven't had a chance to look through what all you picked up from me.
Are there other commits of mine you want me to add?

@CarterLi
Copy link
Owner Author

CarterLi commented Dec 7, 2021

Some commits you made had conflict with my repo. I skipped them. You may have a check.

@low-batt
Copy link
Collaborator

low-batt commented Dec 7, 2021

I will check into it and where appropriate adjust the commits and get them pushed into this fork.
May take me a while.

@low-batt
Copy link
Collaborator

Pushed a commit with the fix for iina#3574

@low-batt
Copy link
Collaborator

I have just submitted a pull request with a fix for issue iina#3475. I was unable to reproduce the crash, so I can't confirm it will fix the crashes. Do you want to wait for the core developers to review the fix, or do you want me to push it to iina-plus?

@CarterLi
Copy link
Owner Author

CarterLi commented Dec 18, 2021

iina-plus is a repo that experiments new features and bug fixes that haven't been officially accepted by upstream.

It's ok to push your changes directly into iina-plus repo and we may revert it later if necessary. Let's release a new binary for users to test the changes.

@low-batt
Copy link
Collaborator

Pushed fix for iina#3475

@low-batt
Copy link
Collaborator

Pushed fix for iina#3584

@low-batt
Copy link
Collaborator

Pushed fix for iina#3590

Going to have to keep an eye on this one. The fix is correct and needed. But because IINA is now waiting for mpv to shutdown we may find issues in the way mpv is being shutdown that usually were hidden by premature termination of the application. I sometimes see log messages from mpv that makes me think they might have some bugs in their quit command.

@low-batt
Copy link
Collaborator

Pushed fix for iina#3551

@low-batt
Copy link
Collaborator

Pushed fix for iina#3593

This fixes an existing issue in the shutdown sequence that was made more obvious by the fix to properly wait for mpv to terminate.

@CarterLi
Copy link
Owner Author

Thanks.

If your PR gets merged, I'd like to rebase everything on top of the official branch. Please don't be surprised if you get any conflicts.

@low-batt
Copy link
Collaborator

low-batt commented Jan 1, 2022

Pushed a fix to the fix for iina#3558
Simple issue with not closing the mask window if IINA exits directly from full screen.
I'm ready to help with resolving any merge conflicts.
I'm expecting it will take a while for them to review all my changes and get them merged.

@low-batt
Copy link
Collaborator

low-batt commented Jan 1, 2022

Pushed a commit to update the copyright year to 2022

@low-batt
Copy link
Collaborator

low-batt commented Jan 3, 2022

Pushed fix for iina#3601

@low-batt
Copy link
Collaborator

low-batt commented Jan 6, 2022

Pushed a tiny fix for iina#3607

@low-batt
Copy link
Collaborator

Pushed small fix for iina#3211

@CarterLi
Copy link
Owner Author

Just rebased everything onto the official repo

@low-batt
Copy link
Collaborator

Pushed a revision to the fix for iina#3558

@CarterLi
Copy link
Owner Author

CarterLi commented Jan 21, 2022

Pushed a revision to the fix for iina#3558

Since you have closed the old PR in the official repo, please consider amending your addition fixes into the old one, to avoid possible rebase conflicts. @low-batt

@low-batt
Copy link
Collaborator

That is beyond my knowledge of git. How would I do that?
I've only amended commits that had not been merged.

@CarterLi
Copy link
Owner Author

Just remove the old commit using git rebase -i then commit your new changes.

Force-pushing is needed. It's dangerous but necessary to maintain a fork repo

@low-batt
Copy link
Collaborator

Pushed fix for iina#3692

@low-batt
Copy link
Collaborator

Pushed fix for iina#3695

@CarterLi
Copy link
Owner Author

With the latest upstream changes, I got conflicts when rebasing. Can you please resolve it?

@low-batt
Copy link
Collaborator

Yes, I will take care of rebasing, probably later today. Reviewing and merging is currently happening in the main IINA repository. I'm about to respond to review feedback.

@low-batt
Copy link
Collaborator

Pushed commit that adds OSD messages for file loop and playlist loop, iina#3229

There is other cleanup that might be needed for IINA+. There are commits that were added for debugging when trying to figure out the hang that turned out to be an issue with hardware drivers and FLAC encoded files. I will check over the commits and get IINA+ aligned with the official repository.

@low-batt
Copy link
Collaborator

Resolved rebase conflicts. Up to date with upstream for now.
They are reviewing PRs, so more merging may be required soon.

@low-batt
Copy link
Collaborator

Pushed fix for iina#3462

@low-batt
Copy link
Collaborator

More commits have been merged, so IINA+ is behind again. Likely these will trigger merge conflicts as well.
I will look into rebasing again tomorrow.

@low-batt
Copy link
Collaborator

Starting rebase again. May take a while as I expect merge conflicts with my changes.

@CarterLi Did you notice the request that you post a HDR PR in the official repository?
I told the devs to hold off merging my changes to FFmpegController in PR iina#3461 as I know there are lots of changes to that source for HDR. Better to get HDR in first and let me deal with merge conflicts.

@low-batt
Copy link
Collaborator

Completed rebase.
Noticed HDR PR posted.
😄

@low-batt
Copy link
Collaborator

Starting rebase with IINA again.

@low-batt
Copy link
Collaborator

Completed rebase with IINA.

@CarterLi
Copy link
Owner Author

Did a major rebase

@low-batt
Copy link
Collaborator

I pulled the latest IINA+ and rebuilt.

Starting with both File Loop and Playlist Loop enabled in defaults.
I bring up IINA and both are now correctly checked in the Playback menu.
So that is fixed.
I disable Playlist Loop using the menu item.
I quit IINA.
I check defaults and Playlist Loop is still enabled in the saved defaults.

I also experienced another inconsistency.
Starting again with both enabled in defaults.
I brought up IINA.
Menu correctly shows both enabled.
Opening playlist, the Playlist Loop button shows enabled, but the File Loop button is in the disabled state.

On another topic, I am actively working on the issues with the display refresh rate matching feature.

@low-batt
Copy link
Collaborator

low-batt commented May 1, 2022

Starting rebase with IINA again.

@low-batt
Copy link
Collaborator

low-batt commented May 1, 2022

Completed rebase with IINA.

@low-batt
Copy link
Collaborator

Rebased with IINA again.

@CarterLi
Copy link
Owner Author

CarterLi commented Jun 7, 2022

It's hard to maintain a fork. It's even harder to maintain an Xcode project fork with a lot of IDE-generated code.

The upstream commit iina@d37734b introduced major conflicts against this repo. I have tried to resolve the conflicts and I failed. And even if I manage resolving the conflicts, the upstream branch https://github.com/iina/iina/tree/plugin-system will introduce much more conflicts and I don't think I can resolve them.

As the major feature, HDR playback, has been merged into upstream, I truly doubt if it's worth maintaining this fork...

@low-batt
Copy link
Collaborator

low-batt commented Sep 9, 2022

Pushed another fix for iina#3590

This fix is compatible with the previous fix. The new fix addresses crashes in the logger directly.

@low-batt
Copy link
Collaborator

@CarterLi, The IINA project is reviewing and merging and asking about HDR fixes.
Can you post PRs for?:
Issue iina#3806, the random behavior of enabling.
Issue iina#3808, a preference to disable HDR.
Are there other HDR fixes that should be pushed to the IINA repo?

@CarterLi
Copy link
Owner Author

No. There are a lot of conflicts between my repo and official one. I don't bother resolve them.

@low-batt
Copy link
Collaborator

How do we get those issues fixed in the official repo? Do you want me to try and figure out what changes are needed?

@CarterLi
Copy link
Owner Author

All the issues you mentioned above were linked with my changes. All HDR related commits were prefixed with HDR:

@low-batt
Copy link
Collaborator

Found the commits. I will get those two issues fixed in the main repo.

I've not had time to try a rebase and see how bad the conflicts are. I can easily deal with conflicts in the changes I've made. I've been worried all those changes for the plugin system would prove challenging to deal with. I've not had a big block of time to look into this.

@low-batt
Copy link
Collaborator

I've just upgraded to the publicly released Ventura and that strange dimming that only affects HDR in full screen mode is still there. This is issue iina#3880 reported against the Ventura Beta that we decided must be a macOS defect. After reproducing it and looking into it I don't see how it can be anything other than a defect. But Apple has let it out to the public and more users are now reporting it. This is not slight dimming. In the test I'm running the picture is nearly black. Definitely unwatchable.

I just tested a truly horrible awful hackaround. If I add a tiny (0.1 x 0.1) nearly opaque (0.01) view as a subview then the screen does not dim. I really hate this workaround.

Before proposing such an awful workaround I wanted to check in and see if you had any other ideas about this problem or better ways to workaround it.

@CarterLi
Copy link
Owner Author

I haven't had time to look into it. Will investigate it later

@low-batt
Copy link
Collaborator

IINA ended up going with the awful workaround. It is in PR iina#4031. Do you want me to add that to IINA+?

mpv just released v0.35.0. I haven't had a chance to try it yet.

@CarterLi
Copy link
Owner Author

No. I don't like the hack.

@low-batt
Copy link
Collaborator

Yes, it is a horrible hackaround. I will not put it in IINA+. Ventura definitely has some odd graphics defects. It has been reported that 13.0.1 is no better. Some of these problems have been reproduced without IINA, so it is definitely macOS that is at fault.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants