FFmpeg (https://www.ffmpeg.org/) is a complete, cross-platform solution to record, convert and stream audio and video. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation.
It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc... under a wide variety of build environments, machine architectures, and configurations.
The FFmpeg library itself is under LGPL 2.1 license. Enabling certain external libraries (like libx264) changes the license to be GPL 2 or later.
I used the ffmpeg-android-maker script (contributors: Alexander Berezhnoi Javernaut + codacy-badger Codacy Badger + A2va) to compile the libraries. This script downloads the source code of FFmpeg from https://www.ffmpeg.org and build the library and assembles it for Android. The script produces shared libraries (*.so files) as well as header files (*.h files).
The main focus of ffmpeg-android-maker is to prepare shared libraries for seamless integration into an Android project. The script prepares the `output` directory that is meant to be used. And it's not the only thing this project does. The ffmpeg-android-maker's source code is available under the MIT license. See the LICENSE.txt file for more details on https://github.com/Javernaut/ffmpeg-android-maker/ The eXport-it FFmpeg libraries are just compiled with libaom, libdav1d, liblame, libopus and libtwolame...but not all associated libraries.
To develop the Java support for FFmpeg and run it on Android 7.1 to 12, I started from the MobileFFmpeg project documented on https://github.com/tanersener/mobile-ffmpeg/ by Taner Sener, which is not maintained anymore... and is licensed under LGPL 3.0 ...
Finally, I prepared a JNI Android Studio project with the libraries, include files and Java support code, and generate an .aar Library file to integrate as an additional library into my existing projects.
تو ستات ئە چانەل ريكوايەز تو يووز ئە كلايەنت تو ئاكسێس ئەن سێڤە ئۆن يۆر لەوكەل نێتوێك رايت پەرێنثەسيس لێفت پەرێنثەسيس ويذ ذە سەپۆرت ذيس سێڤە شوود ئانسە ويذ ذە ليست ذە فايلز ئيت ئيف ذيس سێڤە هاز ذە سەپۆرت ئە سمۆل تێكست ئاز ئە چانەل مەست بيى شەون ئين رێد ئات ذە ئێند ئەڤ ذە تۆپ لاين ئەڤ ذە ليست پێيج وێن ذە تێكست ئيز
ذە مييديە فايلز سەلێكتەد ئار پلێيد ئەپێرەنتلى ئين ذە سێيم وێى ذان ثروو ئيكسێپت ذە ستاتەپ ديلێى ئيز لۆنگە دوو تو ئەديشەنەل تاسكس يوو مەست كييپ ذيس كلايەنت پلێيينگ ذە مييديە فايلز تو كييپ ذە پايپ ئاكتيڤ
ئيپ نۆت وێرك ئەوڤە ئينتەنێت ئيت وێكس ئەونلى ئۆن لەوكەل ئێريە نێتوێك ذەس مێينلى ئۆن ئە دێيتە چانەل كان بيى شێيە باى مێنى كلايەنتس سايمەلتێينيەسلى يوو ئار سێندينگ ئە مييديە دێيتە فلەو ئۆن يۆر نێتوێك ئاند شەو ذييز دێيتە ئۆن كەنێكتەد ديڤايسەز نيەلى جەست ذە لێيتەنسى ديلێى ديفەرەنس
ويذ ئۆر سترييمينگ ئييچ ديڤايس ريكوايەز ذە باندويدث ئەڤ ذە ڤيديەو شەون ئاند ذە گلەوبەل باندويدث ئيز ذە سەم ئەڤ بەوث ترافيك ويذ سترييمينگ ويى سێند وەن دێيتە فلەو ئۆن ذە لان ويچ ئيز شێيەد بيتويين مەلتەپەل كلايەنتس
ئيف يوو يووز ئەنەذە كلايەنت ئۆن يۆر نێتوێك ئافتە ستاتينگ ئە چانەل يوو شوود سيى ئەن ئەديشەنەل لاين ئۆن ذە كلايەنت مێين ويندەو جەست كليكينگ ئۆن ذيس لاين شوود ستات ذە شەو
ئيت ئيز ئۆلسەو فييزەبەل تو يووز ئەذەر پرۆدەكتس لايك تو شەو ئە ڤيديەو ئۆر تو ليسەن تو ميووزيك ديستريبيەتەد ئەوڤە ئە چانەل جەست يووزينگ ذە شەون ئۆن ذە كلايەنت
ذە گوود وێى فۆر ستۆپينگ ئە چانەل ئيز تو ستۆپ ئيت ئۆن ذە كلايەنت ئۆن ويچ يوو ستاتەد ئيت بيكۆز ذيس چانەل ئيز كەنترەولد ذێيە پلێيينگ تو ذە ئێند ئەڤ سترييمد مييديە فايلز شوود ئۆلسەو گيڤ ذە ئێند ئەڤ ذە شەو
تو ستات ئە چانەل ريكوايەز ئە سپەسيفيك كلايەنت پارت ئەڤ ذيس ئاپلەكێيشەن ذە سێيم ئاز ذە كلايەنت ئەڤ ماى ئەذەر پرۆدەكتس تو يووز ئە رەنينگ چانەل كان بيى دەن ويذ ذە ئاپلەكێيشەن كلايەنت ئۆر ويذ ئەذەر پرۆدەكتس لايك رەنينگ ئۆن ئەذەر پلاتفۆمز ئۆر ئۆن ئاندرۆيد كاتێك بەكار هێنان [ ڤى ئێل سي] يوئارئێڵ تا كەناڵێكى [مولتيكاست] بەكار بهێنم بە نەرمى جياوازە وەك ودپجلدبلسل٢٣٩. ٢٥٥. ١٤٧. ١١١:٢٧١٩٢... تەنها لەگەڵێك زيادە " [@] ". لەگەڵێك [ يوو دى پى ] [مولتيكاست] كەناڵ داتاى ميديا تەنها جارێك دەنێررێت كە نيشان بدرێت لەسەر خزمەتوەرگرى زۆر، بەڵام هيچ هاوكات كردنى ڕاستەقينە نيە، و دواخستنەكە دەتوانێت چركە بێت پشت ببەستن بە لەسەر بوففێرينگەكە و تايبەتمەنديى ئامراز.
ليسەنينگ تو ئەن ئۆديەو چانەل كان بيى دەن ئەذەر پرۆدەكتس بەت ذە سپەسيفيك كلايەنت شەوز ئيمەجەز ئۆلسەو سێنت ئەوڤە ئيپ ئيف يوو وۆنت تو سێند سپەسيفيك فەوتەوز ويذ يوو ميووزيك يوو كان يووز ذە پێيج مێنيو ئۆپشەن ئۆن ذە سێڤە تو سەلێكت ئەونلى ذە ئيمەجەز يوو وۆنت ئۆل ئيمەجەز ويذ وەن كليك ذێن سەلێكت ذييز يوو وۆنت
ذێيە ئار ئادڤانتيجيز ئاند ئينكەنڤيينيەنسيز ويذ ئييچ پرەوتەكۆل ئاند چانەل كان ئەونلى بيى يووزد ئۆن لەوكەل نێتوێك رايت پەرێنثەسيس مێينلى لێفت پەرێنثەسيس سترييمينگ وێكس لەوكەلى بەت ئۆلسەو ئەوڤە ئينتەنێت ئاند يووز ئە وێب براوزە ئاز كلايەنت ئاند چانەل هاڤ نەو سيكيوە وێى تو كەنترەول ئاكسێس ئاند ئێنى ديڤايس كەنێكتەد ئۆن ذە نێتوێك كان يووز ذە رەنينگ سێڤەويذ ذە پرەوتەكۆل يوو كان ديفاين ئاند پاسوێدز ئاند سێت فايلز ئين ئاكسێس كاتەگۆريز رايت پەرێنثەسيس گرووپس لێفت پەرێنثەسيس ليمەتينگ ئاكسێس تو سەم مييديە فايلز فۆر سپەسيفيك يووزەز ذە سێتينگز ئەڤ ذە سێڤە تو ليمەت ويچ فايلز ئار ديستريبيەتەد ئاند تو سێت ئە كاتەگۆرى نێيم پێ فايل ئيف ريكوايەد