eXport-it, android  UPnP Client/Server

eXport-it android UPnP/HTTP Pelanggan/Pelayan

Android


Android perkongsian fail permohonan untuk video, audio, imej dan ebook




eXport-it FFmpeg



Apakah perpustakaan FFmpeg?

FFmpeg (https://www.ffmpeg.org/) ialah penyelesaian merentas platform yang lengkap untuk merakam, menukar dan menstrim audio dan video. FFmpeg ialah rangka kerja multimedia yang terkemuka, mampu menyahkod, mengekod, transkod, mux, demux, strim, penapis dan memainkan hampir semua perkara yang dicipta oleh manusia dan mesin. Ia menyokong format purba yang paling tidak jelas sehingga ke canggih. Tidak kira sama ada ia direka oleh sesetengah jawatankuasa piawaian, komuniti atau perbadanan.

Ia juga sangat mudah alih: FFmpeg menyusun, menjalankan dan melepasi infrastruktur ujian kami FATE merentas Linux, Mac OS X, Microsoft Windows, BSD, Solaris, dll... di bawah pelbagai jenis persekitaran binaan, seni bina mesin, dan konfigurasi.

Pustaka FFmpeg itu sendiri berada di bawah lesen LGPL 2.1. Mendayakan perpustakaan luaran tertentu (seperti libx264) mengubah lesen menjadi GPL 2 atau lebih baru.

Bagaimanakah pustaka ini disepadukan dalam aplikasi Android

Saya menggunakan skrip ffmpeg-android-maker (penyumbang: Alexander Berezhnoi Javernaut + codacy-badger Codacy Badger + A2va) untuk menyusun perpustakaan. Skrip ini memuat turun kod sumber FFmpeg daripada https://www.ffmpeg.org dan membina perpustakaan serta memasangnya untuk Android. Skrip menghasilkan perpustakaan kongsi (*.so files) serta fail pengepala (*.h files).

Fokus utama ffmpeg-android-maker ialah menyediakan perpustakaan kongsi untuk penyepaduan yang lancar ke dalam projek Android. Skrip menyediakan direktori `output` yang dimaksudkan untuk digunakan. Dan ia bukan satu-satunya perkara yang dilakukan oleh projek ini. Kod sumber ffmpeg-android-maker tersedia di bawah lesen MIT. Lihat fail LICENSE.txt untuk mendapatkan butiran lanjut tentang https://github.com/Javernaut/ffmpeg-android-maker/ Pustaka eXport-it FFmpeg hanya disusun dengan libaom, libdav1d, liblame, libopus dan libtwolame...tetapi bukan semua perpustakaan yang berkaitan.

Untuk membangunkan sokongan Java untuk FFmpeg dan menjalankannya pada Android 7.1 hingga 12, saya bermula daripada projek MobileFFmpeg yang didokumenkan di https://github.com/tanersener/mobile-ffmpeg/ oleh Taner Sener, yang tidak diselenggara lagi ... dan dilesenkan di bawah LGPL 3.0 ...

Akhir sekali, saya menyediakan projek JNI Android Studio dengan perpustakaan, memasukkan fail dan kod sokongan Java dan menjana fail Pustaka .aar untuk disepadukan sebagai pustaka tambahan ke dalam projek sedia ada saya.


Cara memulakan saluran berbilang siaran

Untuk memulakan Saluran multicast perlu menggunakan klien, untuk mengakses pelayan UPnP pada rangkaian tempatan anda (Wi-Fi) dengan sokongan FFmpeg. Pelayan ini harus menjawab dengan senarai fail yang dieksportnya. Jika pelayan ini mempunyai sokongan FFmpeg, teks kecil "Sebagai saluran" mesti ditunjukkan dengan warna merah di hujung baris atas halaman senarai. Apabila teks "merah", klik pada butang "main" berfungsi seperti sebelum menggunakan protokol UPnP. Jika anda mengklik pada teks, ia sepatutnya menjadi "hijau" dan mengklik pada butang "main", selepas memilih fail video atau audio, seharusnya memulakan "saluran".

Fail media yang dipilih dimainkan nampaknya dalam cara yang sama berbanding melalui UPnP, kecuali kelewatan permulaan lebih lama disebabkan oleh tugasan tambahan. Anda mesti memastikan klien ini memainkan fail media untuk memastikan paip aktif.

Menggunakan paip ini pada peranti lain

Siaran berbilang IP tidak berfungsi melalui Internet, ia hanya berfungsi pada Rangkaian Kawasan Setempat oleh itu terutamanya pada Wi-Fi. Saluran data multicast boleh dikongsi oleh ramai pelanggan secara serentak. Anda menghantar aliran data media pada rangkaian Wi-Fi anda dan menunjukkan data ini pada peranti yang disambungkan, hampir serentak, hanya perbezaan kelewatan kependaman.

Dengan penstriman UPnP atau HTTP, setiap peranti memerlukan lebar jalur video yang ditunjukkan dan lebar jalur global ialah jumlah kedua-dua trafik. Dengan penstriman multicast, kami menghantar satu aliran data pada LAN yang dikongsi antara berbilang pelanggan.

Jika anda menggunakan pelanggan lain pada rangkaian anda selepas memulakan saluran, anda akan melihat baris tambahan pada tetingkap utama pelanggan. Hanya mengklik pada baris ini sepatutnya memulakan rancangan.

Ia juga boleh dilaksanakan untuk menggunakan produk lain seperti VLC, SMplayer, ... untuk menunjukkan video atau mendengar muzik yang diedarkan melalui saluran berbilang siaran hanya menggunakan URL "UDP" yang ditunjukkan pada klien eXport-it.

Untuk menghentikan saluran berbilang siaran

Cara yang baik untuk menghentikan Saluran berbilang siaran adalah dengan menghentikannya pada klien tempat anda memulakannya kerana saluran ini dikawal di sana. Memainkan hingga ke penghujung fail media yang distrim juga harus memberikan penghujung rancangan.