[Libav-user] FFmpeg and Apple's transition to ARM/Apple Silicon

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

[Libav-user] FFmpeg and Apple's transition to ARM/Apple Silicon

Info || Non-Lethal Applications
With Apple’s recent announcement of moving from Intel to their own (ARM based) processors, I’m wondering what this means for FFmpeg users.
I’m using the FFmpeg libraries as base for a - currently Mac-only - video player so it is crucial for me that things will still work after the switch.

I have ordered a Developer Kit and will get it next week so I’ll be able to conduct some tests myself.
I was really just wondering what to expect.

Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?
As FFmpeg makes a fair use of assembler and I think also some processor specific optimizations as far as I know that may not be available on ARM, will the performance likely be worse?

Sorry for my lack of knowledge on the low-level side of things and thanks for sharing your thoughts in advance!

Best regards,

Flo

_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Simon Brown
On Fri, 26 Jun 2020 at 10:07, Info || Non-Lethal Applications <[hidden email]> wrote:
With Apple’s recent announcement of moving from Intel to their own (ARM based) processors, I’m wondering what this means for FFmpeg users.
I’m using the FFmpeg libraries as base for a - currently Mac-only - video player so it is crucial for me that things will still work after the switch.

I have ordered a Developer Kit and will get it next week so I’ll be able to conduct some tests myself.
I was really just wondering what to expect.

Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?
As FFmpeg makes a fair use of assembler and I think also some processor specific optimizations as far as I know that may not be available on ARM, will the performance likely be worse?

Sorry for my lack of knowledge on the low-level side of things and thanks for sharing your thoughts in advance!

Best regards,

Flo

_______________________________________________

FFmpeg builds on embedded ARM processors - you might just need to specify which optimizations you have (eg I manually specify Neon coprocessor when building).  I don't suppose it will be long before the configure scripts are updated to make it work if it doesn't.  I don't suppose Apple will be using an ARM processor that doesn't support some video acceleration.

Cheers,
Simon   

_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Carl Eugen Hoyos-2
Am Fr., 26. Juni 2020 um 11:45 Uhr schrieb Simon Brown
<[hidden email]>:

> FFmpeg builds on embedded ARM processors

This is true.

> you might just need to specify which optimizations you have (eg I
> manually specify Neon coprocessor when building).

I may misunderstand but this sounds wrong to me.

Carl Eugen
_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Carl Eugen Hoyos-2
In reply to this post by Info || Non-Lethal Applications
Am Fr., 26. Juni 2020 um 11:07 Uhr schrieb Info || Non-Lethal
Applications <[hidden email]>:

> Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?

Yes.

> As FFmpeg makes a fair use of assembler and I think also some processor specific optimizations
> as far as I know that may not be available on ARM, will the performance likely be worse?

Yes.

Carl Eugen
_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Info || Non-Lethal Applications
Thanks for your answers, guys!

> Am Fr., 26. Juni 2020 um 11:07 Uhr schrieb Info || Non-Lethal
> Applications <[hidden email]>:
>
>> Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?
>
> Yes.

I’ve been watching Apple’s WWDC video on how to convert apps to work on Apple Silicon.
They say that all external libraries (which I’m using plenty of) need to be compiled as universal binaries.
Is that something that FFmpeg already supports (maybe from the PPC/Intel switch days about 10 years ago)?
Or would I be able to compile two separate libraries (for Intel and ARM) and combine them into one?

>> As FFmpeg makes a fair use of assembler and I think also some processor specific optimizations
>> as far as I know that may not be available on ARM, will the performance likely be worse?
>
> Yes.

Ok, thanks!

>
> Carl Eugen
> _______________________________________________
> Libav-user mailing list
> [hidden email]
> https://ffmpeg.org/mailman/listinfo/libav-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".


_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Carl Eugen Hoyos-2
Am Mo., 6. Juli 2020 um 12:13 Uhr schrieb Info || Non-Lethal
Applications <[hidden email]>:

>
> > Am Fr., 26. Juni 2020 um 11:07 Uhr schrieb Info || Non-Lethal
> > Applications <[hidden email]>:
> >
> >> Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?
> >
> > Yes.
>
> I’ve been watching Apple’s WWDC video on how to convert apps to work on Apple Silicon.
> They say that all external libraries (which I’m using plenty of) need to be compiled as universal binaries.

I don't think this is correct.

> Is that something that FFmpeg already supports (maybe from the PPC/Intel switch days about 10 years ago)?

It is something that Apple's toolchain supports, not FFmpeg

> Or would I be able to compile two separate libraries (for Intel and ARM) and combine them into one?

Yes, this is what had to be done when universal binaries were needed
the last time.

Carl Eugen
_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: FFmpeg and Apple's transition to ARM/Apple Silicon

Info || Non-Lethal Applications


> On 6. Jul 2020, at 18:03, Carl Eugen Hoyos <[hidden email]> wrote:
>
> Am Mo., 6. Juli 2020 um 12:13 Uhr schrieb Info || Non-Lethal
> Applications <[hidden email]>:
>>
>>> Am Fr., 26. Juni 2020 um 11:07 Uhr schrieb Info || Non-Lethal
>>> Applications <[hidden email]>:
>>>
>>>> Will re-compiling the libraries on the new architecture be enough to make everything work "as before"?
>>>
>>> Yes.
>>
>> I’ve been watching Apple’s WWDC video on how to convert apps to work on Apple Silicon.
>> They say that all external libraries (which I’m using plenty of) need to be compiled as universal binaries.
>
> I don't think this is correct.

https://developer.apple.com/videos/play/wwdc2020/10214

Check around minute 14/15.
“All static and dynamic libraries used to build your app need to be built as universal"

>> Is that something that FFmpeg already supports (maybe from the PPC/Intel switch days about 10 years ago)?
>
> It is something that Apple's toolchain supports, not FFmpeg

Ok, thanks!
There’s currently not a lot of information out there.
I’ll try to get more details at Apple’s developer forum then.

>> Or would I be able to compile two separate libraries (for Intel and ARM) and combine them into one?
>
> Yes, this is what had to be done when universal binaries were needed
> the last time.
>
> Carl Eugen
> _______________________________________________
> Libav-user mailing list
> [hidden email]
> https://ffmpeg.org/mailman/listinfo/libav-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".

_______________________________________________
Libav-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".