qgroundcontrol icon indicating copy to clipboard operation
qgroundcontrol copied to clipboard

Fix GStreamer package for macos

Open patrickelectric opened this issue 4 years ago • 27 comments

Fix #9478

patrickelectric avatar Mar 18 '21 13:03 patrickelectric

Are all OS on 18.3 or just OSX? These should be consistent. Also I don't want to reference third party locations. If you give me all the files I can upload to S3.

DonLakeFlyer avatar Mar 18 '21 16:03 DonLakeFlyer

Ah, "Draft" I can't keep track of all the new GitHub stuff!

DonLakeFlyer avatar Mar 18 '21 18:03 DonLakeFlyer

Are all OS on 18.3 or just OSX? These should be consistent. Also I don't want to reference third party locations. If you give me all the files I can upload to S3.

Yep, I'll move to 1.18.1 after I get it working, I believe that I have figure out how to create the tar files with @rpath configuration for the dlls. I'll write a script for us that will create such files without human intervention, and document all the process

patrickelectric avatar Mar 18 '21 18:03 patrickelectric

I believe that I have figure out how to create the tar files with @rpath configuration for the dlls.

Isn't that https://github.com/mavlink/qgroundcontrol/blob/master/tools/prepare_gstreamer_framework.sh?

DonLakeFlyer avatar Mar 18 '21 18:03 DonLakeFlyer

I think that is run from the travis script after install.

DonLakeFlyer avatar Mar 18 '21 18:03 DonLakeFlyer

I believe that I have figure out how to create the tar files with @rpath configuration for the dlls.

Isn't that https://github.com/mavlink/qgroundcontrol/blob/master/tools/prepare_gstreamer_framework.sh?

This is done to configure the libraries for the dmg after it gets the QGC binary done.

I'm working with the gstreamer installation based in a specific version (since we don't use official gstreamer installation binaries), for that is necessary to remove the rpath with a fixed path, from what I understood after studying the previous zip folder for older QGC .dmg files. This is done with the helper of https://github.com/mavlink/qgroundcontrol/blob/master/tools/osxrelocator.py

patrickelectric avatar Mar 18 '21 18:03 patrickelectric

That is all Gus's stuff. You could try getting a hold of him if you need help.

DonLakeFlyer avatar Mar 18 '21 18:03 DonLakeFlyer

@dogmaphobic do you remember something about it ? can you point how to create the .tar for gstreamer CI ?

patrickelectric avatar Mar 18 '21 21:03 patrickelectric

osxrelocator is used at build time not when creating the package for S3. As far as I always understood the S3 package is just the framework zipped up with no changes.

DonLakeFlyer avatar Mar 19 '21 18:03 DonLakeFlyer

You could also try pinging Gus on slack he might see it there more quickly.

DonLakeFlyer avatar Mar 19 '21 18:03 DonLakeFlyer

osxrelocator is used at build time not when creating the package for S3. As far as I always understood the S3 package is just the framework zipped up with no changes.

Is a post link step, after the build is done when macdeployqt finishes, it's used to remap gstreamer libraries to create the dmg file.

patrickelectric avatar Mar 19 '21 18:03 patrickelectric

You could also try pinging Gus on slack he might see it there more quickly.

I'll get in touch with him, meanwhile I'm trying to remove the necessity of the tar.gz file and use the gstreamer .pkg directly.

patrickelectric avatar Mar 19 '21 18:03 patrickelectric

I'm trying to remove the necessity of the tar.gz file and use the gstreamer .pkg directly.

That's just to save build time from the download.

DonLakeFlyer avatar Mar 19 '21 18:03 DonLakeFlyer

I'm not sure who changed that. I think it used to be .pkg directly since those older packages are still up on S3. So tar may be recent.

DonLakeFlyer avatar Mar 19 '21 18:03 DonLakeFlyer

@patrickelectric Any update on this?

DonLakeFlyer avatar May 04 '21 19:05 DonLakeFlyer

@patrickelectric Move to GH, please!

mrpollo avatar Jun 11 '21 15:06 mrpollo

@patrickelectric This has been verified as working. Can you give me a 1.18.1 version of GST tarball and I can put it up on S3 for you.

DonLakeFlyer avatar Jul 01 '21 17:07 DonLakeFlyer

@DonLakeFlyer, can you try this one: https://s3.us-east-1.amazonaws.com/downloads.bluerobotics.com/QGC/dependencies/gstreamer-osx-1.18.1.tar.bz2 ?

patrickelectric avatar Jul 01 '21 18:07 patrickelectric

It's uploaded to S3. Both travis and github actions will need to be updated.

DonLakeFlyer avatar Jul 01 '21 20:07 DonLakeFlyer

And then this will need to go to Stable

DonLakeFlyer avatar Jul 01 '21 20:07 DonLakeFlyer

@patrickelectric Can you get this into master and Stable and then I can trigger a new Stable.

DonLakeFlyer avatar Jul 07 '21 18:07 DonLakeFlyer

It's uploaded to S3. Both travis and github actions will need to be updated.

Can you provide the URL ?

patrickelectric avatar Jul 13 '21 20:07 patrickelectric

https://qgroundcontrol.s3.us-west-2.amazonaws.com/dependencies/gstreamer-osx-1.18.1.tar.bz2

DonLakeFlyer avatar Jul 18 '21 23:07 DonLakeFlyer

I posted the new 1.18.3 version to S3 and fixed up the links.

DonLakeFlyer avatar Jul 19 '21 17:07 DonLakeFlyer

I did some tests this morning and it appears to be not working. I believe that some work is necessary in the post link part to fiz the relative reference.

On Mon, Jul 19, 2021, 1:12 PM Don Gagne @.***> wrote:

I posted the new 1.18.3 version to S3 and fixed up the links.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/mavlink/qgroundcontrol/pull/9541#issuecomment-882716595, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJIYCNO3OPAWWFJ6J637H3TYRMJVANCNFSM4ZMTCA6Q .

patrickelectric avatar Jul 19 '21 17:07 patrickelectric

@patrickelectric can you make a macos build for gstreamer-1.20.0? It is required for #10153

Looks like gstreamer now provides macos downloads:https://gstreamer.freedesktop.org/download/#macos we may not need this afterall.

acxz avatar Feb 25 '22 21:02 acxz

The current build artefacts for MacOS from CI are not working with respect to video streaming. I have prepared and tested PR #10396 for this. I reuse the patches from this PR here from @patrickelectric but everything is updated from 1.18.1 to 1.18.6. I use the official gstreamer package.

fredowski avatar Sep 16 '22 14:09 fredowski

The proposed change is superseded by https://github.com/mavlink/qgroundcontrol/commit/984e9f23795bc19d81ddb948d4f130c58782c8ec as far as I can see. Closing this therefore. Please reopen or create another PR/issue if there is still stuff to do.

booo avatar Oct 19 '22 11:10 booo