{"id":22416238,"url":"https://github.com/appunite/androidffmpeg","last_synced_at":"2025-05-16T12:08:05.635Z","repository":{"id":2734899,"uuid":"3730414","full_name":"appunite/AndroidFFmpeg","owner":"appunite","description":"[DEPRECATED] FFmpeg build for android random architectures with example jni","archived":false,"fork":false,"pushed_at":"2018-10-17T14:36:02.000Z","size":783,"stargazers_count":1073,"open_issues_count":55,"forks_count":468,"subscribers_count":147,"default_branch":"master","last_synced_at":"2025-04-02T10:11:38.269Z","etag":null,"topics":["android","deprecated","ffmpeg-libraries","ndk-library"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appunite.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-03-15T16:39:52.000Z","updated_at":"2025-03-27T01:10:30.000Z","dependencies_parsed_at":"2022-07-14T10:21:29.703Z","dependency_job_id":null,"html_url":"https://github.com/appunite/AndroidFFmpeg","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appunite%2FAndroidFFmpeg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appunite%2FAndroidFFmpeg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appunite%2FAndroidFFmpeg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appunite%2FAndroidFFmpeg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appunite","download_url":"https://codeload.github.com/appunite/AndroidFFmpeg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248027406,"owners_count":21035594,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","deprecated","ffmpeg-libraries","ndk-library"],"created_at":"2024-12-05T15:15:01.026Z","updated_at":"2025-04-09T11:09:18.631Z","avatar_url":"https://github.com/appunite.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AndroidFFmpegLibrary\nThis project aims to create **working** library providing playing video files in android via ffmpeg libraries. With some effort and NDK knowledge you can use this ffmpeg libraries build to convert video files.\nWe rather want to use ffmpeg library without modifications to facilitate updating of ffmpeg core.\n\n![Application screenshot](http://s12.postimage.org/o528w8jst/Screenshot1.png)\n\nThis project aim to simplify compilation of FFmpeg for android different architectures to one big apk file.\n\nI'm afraid this project is not prepared for android beginners - build it and using it requires some NDK skills. \n\n[![Build Status](https://travis-ci.org/appunite/AndroidFFmpeg.svg?branch=master)](https://travis-ci.org/appunite/AndroidFFmpeg)\n\n## License\nCopyright (C) 2012 Appunite.com\nLicensed under the Apache License, Verision 2.0\n\nFFmpeg, libvo-aacenc, vo-amrwbenc, libyuv and others libraries projects are distributed on theirs own license.\n\n## Patent disclaimer\nWe do not grant of patent rights.\nSome codecs use patented techniques and before use those parts of library you have to buy thrid-party patents.\n\n## Pre-requirments\non mac: you have to install xcode and command tools from xcode preferences\nyou have to install (on mac you can use brew command from homebrew):\nyou have to install:\n- autoconf\n- libtool\n- make\n- autoconf-archive\n- automake\n- pkg-config\n- git\n\non Debian/Ubuntu - you can use apt-get\n\non Mac - you can use tool brew from homebrew project. You have additionally install xcode. \n\n## Bug reporting and questions\n\n**Please read instruciton very carefully**. A lot of people had trouble because they did not read this manual with attention. **If you have some problems or questions do not send me emails**. First: look on past issues on github. Than: try figure out problem with google. If you did not find solution then you can ask on github issue tracker.\n\n## Installation\n\n### Go to the work\ndownloading source code \n\n\tgit clone --recurse-submodules https://github.com/appunite/AndroidFFmpeg.git AndroidFFmpeg\n\tcd AndroidFFmpeg\n\tgit submodule init\n\tgit submodule sync #if you are updating source code\n\tgit submodule update\n\tcd library-jni\n\tcd jni\n\ndownload libyuv and configure libs\n\n\t./fetch.sh\n\nbuild external libraries\nDownload r8e ndk: https://dl.google.com/android/ndk/android-ndk-r8e-darwin-x86_64.tar.bz2 or\nttps://dl.google.com/android/ndk/android-ndk-r8e-linux-x86_64.tar.bz2\nNow it should also support r10e\n\n\texport ANDROID_NDK_HOME=/your/path/to/android-ndk\n\t./build_android.sh\n\t\nmake sure that files library-jni/jni/ffmpeg-build/{armeabi,armeabi-v7a,x86}/libffmpeg.so was created, otherwise you are in truble\n\n\nbuild ndk jni library (in `library-jni` directory)\n\n\texport PATH=\"${PATH}:${ANDROID_NDK_HOME}\"\n\tndk-build\n\nmake sure that files library-jni/libs/{armeabi,armeabi-v7a,x86}/libffmpeg.so was created, otherwise you are in truble\n\nbuild your project\n\n\t./gradlew build\n\n## More codecs\nIf you need more codecs:\n- edit build_android.sh\n- add more codecs in ffmpeg configuration section\n- remove old ffmpeg-build directory by\n\n\t\trm -r ffmpeg-build\n\t\n- build ffmpeg end supporting libraries\n\n\t\t./build_android.sh\n\t\t\n\tDuring this process make sure that ffmpeg configuration goes without error.\n\t\n\tAfter build make sure that files FFmpegLibrary/jni/ffmpeg-build/{armeabi,armeabi-v7a,x86}/libffmpeg.so was created, otherwise you are in truble\n\n- build your ndk library\n\n\t\tndk-build\n\n- refresh your FFmpegLibrary project in eclipse!!!!\n- build your FFmpegExample project \n\n\n## Credits\nLibrary made by Jacek Marchwicki from Appunite.com\n\n- Thanks to Martin Böhme for writing tutorial: http://www.inb.uni-luebeck.de/~boehme/libavcodec_update.html\n- Thanks to Stephen Dranger for writing tutorial: http://dranger.com/ffmpeg/\n- Thanks to Liu Feipeng for writing blog: http://www.roman10.net/how-to-port-ffmpeg-the-program-to-androidideas-and-thoughts/\n- Thanks to ffmpeg team for writing cool stuff http://ffmpeg.org\n- Thanks to Alvaro for writing blog: http://odroid.foros-phpbb.com/t338-ffmpeg-compiled-with-android-ndk\n- Thanks to android-fplayer for sample code: http://code.google.com/p/android-fplayer/\n- Thanks to best-video-player for sample code: http://code.google.com/p/best-video-player/\n- Thanks to Robin Watts for his work in yuv2rgb converter http://wss.co.uk/pinknoise/yuv2rgb/\n- Thanks to Mohamed Naufal (https://github.com/hexene) and Martin Storsjö (https://github.com/mstorsjo) for theirs work on sample code for stagefright/openmax integration layer.\n- Thanks www.fourcc.org for theirs http://www.fourcc.org/yuv.php page\n- Thanks to Cedric Fungfor his blog bost: http://vec.io/posts/use-android-hardware-decoder-with-omxcodec-in-ndk\n- Thanks Google/Google chrome/Chromium teams for libyuv library https://code.google.com/p/libyuv/\n- Thanks to Picker Wengs for this slides about android multimedia stack http://www.slideshare.net/pickerweng/android-multimedia-framework\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappunite%2Fandroidffmpeg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappunite%2Fandroidffmpeg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappunite%2Fandroidffmpeg/lists"}