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

[ffmpeg] srt support #26679

Merged
merged 1 commit into from
Oct 9, 2022
Merged

[ffmpeg] srt support #26679

merged 1 commit into from
Oct 9, 2022

Conversation

fran6co
Copy link
Contributor

@fran6co fran6co commented Sep 4, 2022

Fixes #23575

github-actions[bot]
github-actions bot previously approved these changes Sep 4, 2022
github-actions[bot]
github-actions bot previously approved these changes Sep 4, 2022
@fran6co
Copy link
Contributor Author

fran6co commented Sep 4, 2022

libsrt was generating srt_static.lib instead of srt.lib on Windows and that was breaking the static build. Added a patch to force the correct name so pkgconfig finds it

@fran6co
Copy link
Contributor Author

fran6co commented Sep 4, 2022

Actually it still doesn't work.
It's linking against this libs srt.lib libssl.lib libcrypto.lib crypt32.lib ws2_32.lib but I'm getting this errors:

libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_DeregisterEventSource referenced in function OPENSSL_showfatal
libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_RegisterEventSourceW referenced in function OPENSSL_showfatal
libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_ReportEventW referenced in function OPENSSL_showfatal
libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_GetProcessWindowStation referenced in function OPENSSL_isservice
libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_GetUserObjectInformationW referenced in function OPENSSL_isservice
libcrypto.lib(libcrypto-lib-cryptlib.obj) : error LNK2019: unresolved external symbol __imp_MessageBoxW referenced in function OPENSSL_showfatal
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptAcquireContextW referenced in function capi_ctx_set_provname
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptReleaseContext referenced in function capi_ctx_set_provname
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptDestroyKey referenced in function capi_dsa_free
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptSetHashParam referenced in function capi_dsa_do_sign
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptGetProvParam referenced in function capi_list_containers
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptGetUserKey referenced in function capi_get_key
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptExportKey referenced in function capi_get_pkey
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptDecrypt referenced in function capi_rsa_priv_dec
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptCreateHash referenced in function capi_dsa_do_sign
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptDestroyHash referenced in function capi_dsa_do_sign
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptSignHashW referenced in function capi_dsa_do_sign
libcrypto.lib(libcrypto-lib-e_capi.obj) : error LNK2019: unresolved external symbol __imp_CryptEnumProvidersW referenced in function capi_get_provname

@fran6co
Copy link
Contributor Author

fran6co commented Sep 4, 2022

Something is missing in openssl pkgconfig

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!

PRs must add only one version and must not modify any published versions

When making any changes to a library, the version or port-version in vcpkg.json or CONTROL must be modified.

error: checked-in files for openssl have changed but the version was not updated
version: 3.0.5#5
old SHA: fb562cf04b1b6b6bddf38d79bf36f456f72b5a56
new SHA: 067a790dfd1559e77d5a199ccbe982322882d667
Did you remember to update the version or port version?
Use --overwrite-version to bypass this check
***No files were updated***

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@fran6co
Copy link
Contributor Author

fran6co commented Sep 4, 2022

Fixed by adding -ladvapi32 -luser32 to libcrypto deps

github-actions[bot]
github-actions bot previously approved these changes Sep 4, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

github-actions[bot]
github-actions bot previously approved these changes Sep 4, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@JonLiu1993 JonLiu1993 added the category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist label Sep 5, 2022
@fran6co
Copy link
Contributor Author

fran6co commented Sep 5, 2022

Arm windows is failing at the package osg with something that looks unrelated:

CMake Error: try_run() invoked in cross-compiling mode, please set the following cache variables appropriately:
   _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED_EXITCODE (advanced)
   _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED_EXITCODE__TRYRUN_OUTPUT (advanced)
``

@fran6co
Copy link
Contributor Author

fran6co commented Sep 5, 2022

Not sure what is going with uwp

@dg0yt
Copy link
Contributor

dg0yt commented Sep 5, 2022

Arm windows is failing at the package osg with something that looks unrelated:

osg:arm64-windows also fails for #26676 (comment).

@JonLiu1993
Copy link
Member

@fran6co, From the ci error log it looks like it should be caused by not finding OpenEXR after a long list of warnings,

This warning is for project developers.  Use -Wno-dev to suppress it.

-- The following OPTIONAL packages have been found:

 * OpenGL
 * Jasper
 * LibXml2
 * GDAL
 * GTA
 * CURL
 * SDL2, low level access to audio, keyboard, mouse, joystick, and graphics hardware, <https://www.libsdl.org/>
 * GIFLIB
 * JPEG
 * ZLIB
 * PNG
 * TIFF
 * Threads
 * Fontconfig
 * Freetype
 * EXPAT

-- The following OPTIONAL packages have not been found:

 * EGL
 * ilmbase
 * OpenCascade
 * COLLADA
 * FBX
 * LibVNCServer
 * DirectShow
 * Poppler-glib
 * RSVG
 * GtkGl
 * DirectInput
 * NVTT
 * ZeroConf
 * LIBLAS
 * QuickTime

-- The following REQUIRED packages have not been found:

 * OpenEXR

-- Configuring incomplete, errors occurred!

@fran6co
Copy link
Contributor Author

fran6co commented Sep 6, 2022

Is the OpenEXR problem related to the changes to this PR?

@JonLiu1993
Copy link
Member

Is the OpenEXR problem related to the changes to this PR?

OpenEXR is related to osg, osg is not related to ffmpeg

@JonLiu1993
Copy link
Member

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

github-actions[bot]
github-actions bot previously approved these changes Sep 15, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

github-actions[bot]
github-actions bot previously approved these changes Sep 19, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@JonLiu1993
Copy link
Member

@fran6co, please fix the conflicting file, thanks.

github-actions[bot]
github-actions bot previously approved these changes Sep 27, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@fran6co
Copy link
Contributor Author

fran6co commented Sep 27, 2022

@JonLiu1993 done, but I don't know why it fails on uwp builds. The logs are a bit confusing to me, it says that it cascaded or something

@fran6co
Copy link
Contributor Author

fran6co commented Sep 27, 2022

Sorted, srt doesn't support uwp

github-actions[bot]
github-actions bot previously approved these changes Sep 27, 2022
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@JonLiu1993
Copy link
Member

@fran6co, If the ci test failed error is not related to this pr, I will rerun ci, this is my error log, you can take a look

fatal: unable to access 'https://code.qt.io/qt/qtinterfaceframework.git/': transfer closed with outstanding read data remaining`

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have modified or added at least one vcpkg.json where you should check the license field.

If you feel able to do so, please consider adding a "license" field to the following files:

  • scripts/test_ports/vcpkg-ci-ffmpeg/vcpkg.json

Valid values for the license field can be found in the documentation

@fran6co
Copy link
Contributor Author

fran6co commented Oct 2, 2022

It seems that everything is working now

@JonLiu1993 JonLiu1993 added the requires:all-feature-testing vcpkg install port[all features supported by that port] needs to be demonstrated to function label Oct 8, 2022
@JonLiu1993
Copy link
Member

Feature srt tested successfully in the following triplet:

  • x64-windows
  • x64-windows-static

@JonLiu1993 JonLiu1993 added info:reviewed Pull Request changes follow basic guidelines and removed requires:all-feature-testing vcpkg install port[all features supported by that port] needs to be demonstrated to function labels Oct 8, 2022
@vicroms vicroms merged commit a29baaf into microsoft:master Oct 9, 2022
@fran6co fran6co deleted the ffmpeg-srt branch October 9, 2022 04:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants