Skip to content
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

Add FFmpeg 5.0 #96

Closed
wolf-yuan-6115 opened this issue Jan 24, 2022 · 16 comments
Closed

Add FFmpeg 5.0 #96

wolf-yuan-6115 opened this issue Jan 24, 2022 · 16 comments
Assignees
Labels
dependencies Pull requests that update a dependency file

Comments

@wolf-yuan-6115
Copy link

wolf-yuan-6115 commented Jan 24, 2022

FFmpeg 5.0 is released now, but ffmpeg-static doesn't update yet.
These mirrors have FFmpeg 5.0:

  • gyan.dev
  • johnvansickle.com
  • evermeet.cx
  • osxexperts.net
  • sudo-nautilus/FFmpeg-Builds-Win32

These mirrors don't have FFmpeg 5.0:

  • thefrank/ffmpeg-static-Freebsd

Platforms already have FFmpeg 5.0 binaries:

  • Windows (x64)
  • Linux (All)
  • Darwin (All)

Platforms don't have FFmpeg 5.0 binaries:

  • Windows (ia32)
  • FreeBSD
@derhuerst
Copy link
Collaborator

cc @sudo-nautilus @Thefrank

@derhuerst
Copy link
Collaborator

What needs to be done from the ffmpeg-static side:

  • wait until all mirrors are up-to-date
  • adapt the binary downloading script, if necessary
  • push a b5.0.0 tag, and let the CI download & re-publish the binaries to the GitHub release
  • package.json: change the GitHub release used & publish with a bumped version

@sudo-nautilus
Copy link

I believe that there are ffmpeg builds from the 5.0 branch, in my repo
hmm

@wolf-yuan-6115
Copy link
Author

I believe that there are ffmpeg builds from the 5.0 branch, in my repo
hmm

Oof sorry, I didn't see that...

@Thefrank
Copy link

I am currently waiting on patches for FreeBSD to show up in ports :(

pending commit:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261302
(I will give the patch here a try when I get some free time later this week)

@derhuerst derhuerst self-assigned this Jan 26, 2022
@derhuerst
Copy link
Collaborator

@Thefrank any news? 🙂

@Thefrank
Copy link

It still has not even made it to FreeBSD ports.
At this point I don't think its fair holding up 99% of the user base.
You can drop support for now and once ffmpeg 5 is working under FreeBSD and I can get a static build of it, I can open a pull request to readd support.

Sorry about all of the delays here!

@wolf-yuan-6115
Copy link
Author

It still has not even made it to FreeBSD ports. At this point I don't think its fair holding up 99% of the user base. You can drop support for now and once ffmpeg 5 is working under FreeBSD and I can get a static build of it, I can open a pull request to readd support.

Sorry about all of the delays here!

Maybe this is better, why don't release FFmpeg 5.0? When user is using FreeBSD, then download FFmpeg 4.4 instead.

@tylers-username
Copy link

As an added thought here, would you be open to an MR (or this may require a fork) that implements this logic:

  • Install ffmpeg latest stable 5: yarn add ffmpeg-static@~5.0.0 OR yarn add ffmpeg-static@regular-semantic-version#5.0.0

This would allow users to lock in the specific versions of ffmpeg that they require.

@derhuerst
Copy link
Collaborator

derhuerst commented Mar 2, 2022

@tylerssn That already is a feature of all common package managers, right? There is a not very detailed doc for Yarn and one for npm on this.

Or am I misunderstand you?

@derhuerst
Copy link
Collaborator

derhuerst commented Mar 2, 2022

@wolf-yuan-6115 @Thefrank I'll remove FreeBSD in ffmpeg-static@5.0.0, and we'll hopefully add it back later. People who need a FreeBSD will have to use ffmpeg-static@^4 then.

derhuerst added a commit that referenced this issue Mar 2, 2022
For FreeBSD, currently there are no ffmpeg 5.0 binaries available. See #96
@derhuerst
Copy link
Collaborator

derhuerst commented Mar 2, 2022

Published as ffmpeg-static@5.0.0. 🎉 Thanks everyone!

@tylers-username
Copy link

@tylerssn That already is a feature of all common package managers, right? There is a not very detailed doc for Yarn and one for npm on this.

Of course 😺 . I was just proposing two options to go about it—use the normal semantic versioning, except the major number represents the FFmpeg version.

Or to use semantic versioning for the repository (yarn add ffmpeg-static@repo-sem-ver followed by .ffmpeg-5.0, resulting in: yarn add ffmpeg-static@repo-sem-ver.ffmpeg-5.0

Either way, thanks for the quick work on this!

@derhuerst
Copy link
Collaborator

Of course 😺 . I was just proposing two options to go about it—use the normal semantic versioning, except the major number represents the FFmpeg version.

How would I upgrade the required Node.js version then, which is a breaking change, if no major ffmpeg version has been published?

Or to use semantic versioning for the repository (yarn add ffmpeg-static@repo-sem-ver followed by .ffmpeg-5.0, resulting in: yarn add ffmpeg-static@repo-sem-ver.ffmpeg-5.0

But then all the built-in SemVer mechanisms don't work anymore (e.g. npm upgrade ffmpeg-static/yarn upgrade). An option might be to use dist tags for this.

@tylers-username
Copy link

Looking at the dist tag docs, I don't think those will do the trick either.

Going back to what you actually implemented, that may be the win since this repo is literally ffmpeg-static. yarn add ffmpeg-static@5.0 installs ffmpeg 5.0; @4.0 installs 4.0, etc.

Thanks much for the work on this.

@derhuerst derhuerst added dependencies Pull requests that update a dependency file and removed enhancement labels Apr 13, 2022
@derhuerst
Copy link
Collaborator

5.1.6

ffmpeg

  • Linux x64
  • Linux x86
  • Linux arm
  • Linux arm64
  • macOS x64
  • macOS arm64
  • Windows x64
  • Windows x86
  • FreeBSD

ffprobe

  • Linux x64
  • Linux x86
  • Linux arm
  • Linux arm64
  • macOS x64
  • macOS arm64
  • Windows x64
  • Windows x86
  • FreeBSD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

No branches or pull requests

5 participants