back

eXport-it FFmpeg

Naon ari perpustakaan FFmpeg?

FFmpeg (https://www.ffmpeg.org/) mangrupikeun solusi cross-platform lengkep pikeun ngarékam, ngarobih sareng ngalirkeun data audio sareng pidéo. FFmpeg mangrupikeun kerangka multimédia anu unggul, tiasa nga-decode, encode, transcode, mux, demux, stream, nyaring sareng maénkeun naon waé anu diciptakeun ku manusa sareng mesin. Éta ngadukung format kuno anu paling teu jelas dugi ka ujung motong. Henteu masalah naha éta dirancang ku sababaraha panitia standar, komunitas atanapi korporasi.

Éta ogé kacida portabel: FFmpeg nyusun, ngajalankeun, sareng ngalangkungan infrastruktur uji kami FATE di Linux, Mac OS X, Microsoft Windows, BSDs, Solaris, jsb... dina rupa-rupa lingkungan ngawangun, arsitéktur mesin, jeung konfigurasi.

Perpustakaan FFmpeg sorangan aya dina lisénsi LGPL 2.1. Aktipkeun perpustakaan éksternal anu tangtu (sapertos libx264) ngarobah lisénsina janten GPL 2 atanapi engké.

Kumaha perpustakaan ieu terintegrasi dina aplikasi Android

Kuring nganggo skrip ffmpeg-android-maker (kontributor: Alexander Berezhnoi Javernaut + codacy-badger Codacy Badger + A2va) pikeun nyusun perpustakaan. Skrip ieu ngaunduh kodeu sumber FFmpeg tina https://www.ffmpeg.org sareng ngawangun perpustakaan sareng ngarakit pikeun Android. Skrip ieu ngahasilkeun perpustakaan anu dibagi (*.so file) ogé file header (*.h file).

Fokus utama ffmpeg-android-maker nyaéta nyiapkeun perpustakaan babarengan pikeun integrasi anu mulus kana hiji proyék Android. Skrip nyiapkeun diréktori `output` anu badé dianggo. Sareng sanés hiji-hijina hal anu dilakukeun ku proyék ieu. Kode sumber ffmpeg-android-maker sayogi dina lisénsi MIT. Tingali LICENSE.txt file kanggo langkung rinci ngeunaan https://github.com/Javernaut/ffmpeg-android-maker/ Perpustakaan eXport-it FFmpeg ngan disusun ku libaom, libdav1d, liblame, libopus sareng libtwolame...tapi henteu sadayana perpustakaan anu aya hubunganana.

Pikeun ngembangkeun pangrojong Java pikeun FFmpeg sareng ngajalankeun éta dina Android 7.1 dugi ka 12, kuring ngamimitian tina proyék MobileFFmpeg anu didokumentasikeun dina https://github.com/tanersener/mobile-ffmpeg/ ku Taner Sener, anu henteu dijaga deui. ... jeung dilisensikeun dina LGPL 3.0 ...

Ahirna, kuring nyiapkeun proyék JNI Android Studio sareng perpustakaan, kalebet file sareng kode pangrojong Java, sareng ngahasilkeun file Perpustakaan .aar pikeun ngahijikeun salaku perpustakaan tambahan kana proyék kuring anu tos aya.


Kumaha cara ngamimitian saluran multicast

Pikeun ngamimitian Saluran multicast kedah nganggo klien, pikeun ngaksés pangladén UPnP dina jaringan lokal anjeun (Wi-Fi) kalayan dukungan FFmpeg. Server ieu kedah ngajawab kalayan daptar file anu diékspor. Upami server ieu ngagaduhan dukungan FFmpeg, téks leutik "Salaku saluran" kedah ditingalikeun beureum dina tungtung garis luhur halaman daptar. Nalika téksna "beureum", ngaklik tombol "muter" tiasa dianggo sapertos sateuacan nganggo protokol UPnP. Upami anjeun ngaklik téks, éta kedah janten "héjo" sareng ngaklik tombol "muter", saatos milih file pidéo atanapi audio, kedah ngamimitian "saluran".

Payél média anu dipilih katingalina dimaénkeun dina cara anu sami sareng ngalangkungan UPnP, kecuali waktos tunda ngamimitian langkung lami kusabab tugas tambahan. Anjeun kedah ngajaga klien ieu muter payil media supados pipa tetep aktip.

Maké pipa ieu dina alat séjén

IP multicast henteu tiasa dianggo dina Internét, ngan ukur tiasa dianggo dina Jaringan Aréa Lokal sahingga utamina dina Wi-Fi. Saluran data multicast tiasa dibagi ku seueur klien sakaligus. Anjeun ngirim aliran data media dina jaringan Wi-Fi anjeun sarta mintonkeun data ieu dina alat nu disambungkeun, ampir sinkron, ngan bédana reureuh latency.

Kalayan streaming UPnP atanapi HTTP, unggal alat butuh rubakpita pidéo anu dipidangkeun sareng rubakpita global nyaéta jumlah tina duanana lalu lintas. Kalayan streaming multicast, kami ngirimkeun hiji aliran data dina LAN anu dibagi antara sababaraha klien.

Upami anjeun nganggo klien sanés dina jaringan anjeun saatos ngamimitian saluran, anjeun kedah ningali jalur tambahan dina jandela utama klien. Ngan ngaklik garis ieu bakal ngamimitian acara.

Bisa ogé ngagunakeun produk séjén kawas VLC, SMplayer, ... pikeun mintonkeun video atawa ngadéngékeun musik nu disebarkeun ngaliwatan saluran multicast ngan ngagunakeun URL "UDP" ditémbongkeun dina klien eXport-it.

p>

Pikeun ngeureunkeun saluran multicast

Cara anu hadé pikeun ngeureunkeun Saluran multicast nyaéta ngeureunkeunana dina klien dimana anjeun ngamimitian éta kusabab saluran ieu dikontrol di dinya. Puter nepi ka ahir payil media anu di-streaming ogé kudu méré ahir acara.

Pertimbangan praktis

Pikeun ngamimitian saluran multicast merlukeun bagian klien husus tina aplikasi ieu, sarua jeung klien eXport-it produk up-to-date kuring lianna. Pikeun ngagunakeun saluran multicast jalan tiasa dilakukeun sareng klien aplikasi atanapi sareng produk sanés sapertos VLC, SMPlayer, ... jalan dina platform sanés atanapi dina Android. Nalika nganggo VLC URL pikeun ngagunakeun saluran Multicast lancar béda sapertos udp://@239.255.147.111:27192... ngan nganggo tambahan "@". Kalayan saluran UDP Multicast, data média dikirim ngan sakali pikeun dipidangkeun dina sababaraha klien, tapi teu aya sinkronisasi anu nyata, sareng reureuh tiasa sababaraha detik gumantung kana panyangga sareng ciri alat.

Ngadangukeun saluran multicast audio tiasa dilakukeun ku produk sanés tapi klien khusus nunjukkeun gambar ogé dikirim ngaliwatan IP multicast. Upami anjeun hoyong ngirim poto khusus sareng musik anjeun, anjeun tiasa nganggo pilihan ménu "Page 2" dina server, pikeun milih ngan ukur gambar anu anjeun pikahoyong, pupus pilih sadaya gambar kalayan hiji klik, teras pilih ieu anu anjeun pikahoyong...

Aya kaunggulan sareng kasulitan dina unggal protokol. Saluran UPnP sareng Multicast ngan tiasa dianggo dina jaringan lokal (utamina Wi-Fi), streaming HTTP tiasa dianggo sacara lokal tapi ogé ngalangkungan Internét sareng nganggo browser wéb salaku klien. Saluran UPnP sareng Multicast teu gaduh cara anu aman pikeun ngontrol aksés, sareng alat naon waé anu nyambung dina jaringan Wi-Fi tiasa nganggo server anu ngajalankeun. Kalayan protokol HTTP, anjeun tiasa netepkeun nami pangguna sareng kecap akses, sareng nyetél file dina kategori aksés (grup), ngawatesan aksés ka sababaraha file média pikeun pangguna khusus. Setélan pangladén ngamungkinkeun pikeun ngawates file mana anu disebarkeun sareng nyetél nami kategori per file upami diperyogikeun.

back