2013-09-23 4 views
0

J'essaye d'obtenir l'encodeur x264 pour employer plusieurs cœurs de processeur.
Je change la valeur de i_threads dans la structure x264_param_t. J'ai essayé de le définir à des valeurs différentes de 1 à 6 et je ne vois aucun changement dans les performances.x264 prend-il en charge le codage multicœur sur ARM?

J'utilise https://github.com/halfninja/android-ffmpeg-x264 projet avec ces drapeaux:
./configure --cross-prefix = arm-linux-androideabi- --enable-pic --host = bras-linux

encode multithread pris en charge sur ARM? Cela va-t-il me donner un coup de pouce significatif dans les performances sur un processeur 4 cœurs?

+1

Je pense que cela dépend de vos appareils. Si votre appareil a 4-core, il devrait être boosté. – Gavin

+0

Cela dépendra toujours de la ligne de commande. Si vous avez une chaîne de filtres qui n'est pas parallèle, alors ce ne sera probablement pas le cas. La plupart des gens ne prennent pas 'src == dst' pour la résolution, la résolution, le filtrage, le télécinéma, l'audio, etc. –

Répondre

1

Il s'avère que la prise en charge du thread n'était pas activée dans ma version x264 Android.
Par défaut, le script x264 configure ne trouve pas la bibliothèque pthreads, car Android NDK ne l'inclut pas en tant que bibliothèque autonome.
En guise de solution de contournement, j'ai créé un libpthreads.a vide pour activer la prise en charge des threads POSIX dans ma construction.

Questions connexes