eXport-it, android  UPnP Client/Server

eXport-it ਛੁਪਾਓ UPnP/HTTP ਗ੍ਰਾਹਕ/ਸਰਵਰ

Android


ਵੀਡੀਓ, ਆਡੀਓ, ਚਿੱਤਰ, ਅਤੇ ਬੁੱਕ ਕਰਨ ਲਈ ਇੱਕ ਐਡਰਾਇਡ ਫਾਇਲ ਸ਼ੇਅਰਿੰਗ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ




eXport-it FFmpeg



FFmpeg ਲਾਇਬ੍ਰੇਰੀ ਕੀ ਹੈ?

FFmpeg (https://www.ffmpeg.org/) ਆਡੀਓ ਅਤੇ ਵੀਡੀਓ ਨੂੰ ਰਿਕਾਰਡ ਕਰਨ, ਬਦਲਣ ਅਤੇ ਸਟ੍ਰੀਮ ਕਰਨ ਲਈ ਇੱਕ ਸੰਪੂਰਨ, ਕਰਾਸ-ਪਲੇਟਫਾਰਮ ਹੱਲ ਹੈ। FFmpeg ਇੱਕ ਪ੍ਰਮੁੱਖ ਮਲਟੀਮੀਡੀਆ ਫਰੇਮਵਰਕ ਹੈ, ਜੋ ਡੀਕੋਡ, ਏਨਕੋਡ, ਟ੍ਰਾਂਸਕੋਡ, mux, demux, ਸਟ੍ਰੀਮ, ਫਿਲਟਰ ਕਰਨ ਅਤੇ ਮਨੁੱਖਾਂ ਅਤੇ ਮਸ਼ੀਨਾਂ ਦੁਆਰਾ ਬਣਾਈਆਂ ਗਈਆਂ ਬਹੁਤ ਸਾਰੀਆਂ ਚੀਜ਼ਾਂ ਨੂੰ ਚਲਾਉਣ ਦੇ ਯੋਗ ਹੈ। ਇਹ ਕੱਟਣ ਵਾਲੇ ਕਿਨਾਰੇ ਤੱਕ ਸਭ ਤੋਂ ਅਸਪਸ਼ਟ ਪ੍ਰਾਚੀਨ ਫਾਰਮੈਟਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਕੋਈ ਫ਼ਰਕ ਨਹੀਂ ਪੈਂਦਾ ਕਿ ਉਹ ਕਿਸੇ ਮਿਆਰੀ ਕਮੇਟੀ, ਭਾਈਚਾਰੇ ਜਾਂ ਕਿਸੇ ਕਾਰਪੋਰੇਸ਼ਨ ਦੁਆਰਾ ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਗਏ ਸਨ।

ਇਹ ਬਹੁਤ ਜ਼ਿਆਦਾ ਪੋਰਟੇਬਲ ਵੀ ਹੈ: FFmpeg ਸਾਡੇ ਟੈਸਟਿੰਗ ਬੁਨਿਆਦੀ ਢਾਂਚੇ FATE ਨੂੰ Linux, Mac OS X, Microsoft Windows, BSDs, Solaris, ਆਦਿ ਵਿੱਚ ਕੰਪਾਇਲ ਕਰਦਾ ਹੈ, ਚਲਾਉਂਦਾ ਹੈ ਅਤੇ ਪਾਸ ਕਰਦਾ ਹੈ... ਕਈ ਤਰ੍ਹਾਂ ਦੇ ਬਿਲਡ ਵਾਤਾਵਰਨ, ਮਸ਼ੀਨ ਆਰਕੀਟੈਕਚਰ, ਅਤੇ ਸੰਰਚਨਾਵਾਂ।

FFmpeg ਲਾਇਬ੍ਰੇਰੀ ਖੁਦ LGPL 2.1 ਲਾਇਸੰਸ ਦੇ ਅਧੀਨ ਹੈ। ਕੁਝ ਬਾਹਰੀ ਲਾਇਬ੍ਰੇਰੀਆਂ (ਜਿਵੇਂ ਕਿ libx264) ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਨਾਲ ਲਾਇਸੈਂਸ ਨੂੰ GPL 2 ਜਾਂ ਇਸ ਤੋਂ ਬਾਅਦ ਵਾਲੇ ਵਿੱਚ ਬਦਲ ਜਾਂਦਾ ਹੈ।

ਇਹ ਲਾਇਬ੍ਰੇਰੀ ਐਂਡਰੌਇਡ ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਕਿਵੇਂ ਏਕੀਕ੍ਰਿਤ ਹੈ

ਮੈਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ffmpeg-android-maker ਸਕ੍ਰਿਪਟ (ਯੋਗਦਾਨਕਰਤਾ: ਅਲੈਗਜ਼ੈਂਡਰ ਬੇਰੇਜ਼ਨੋਈ ਜੈਵਰਨੌਟ + ਕੋਡੇਸੀ-ਬੈਜਰ ਕੋਡੇਸੀ ਬੈਜਰ + A2va) ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਹੈ। ਇਹ ਸਕ੍ਰਿਪਟ https://www.ffmpeg.org ਤੋਂ FFmpeg ਦੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਦੀ ਹੈ ਅਤੇ ਲਾਇਬ੍ਰੇਰੀ ਬਣਾਉਂਦੀ ਹੈ ਅਤੇ ਇਸਨੂੰ ਐਂਡਰੌਇਡ ਲਈ ਅਸੈਂਬਲ ਕਰਦੀ ਹੈ। ਸਕ੍ਰਿਪਟ ਸ਼ੇਅਰਡ ਲਾਇਬ੍ਰੇਰੀਆਂ (*.so ਫਾਈਲਾਂ) ਦੇ ਨਾਲ-ਨਾਲ ਹੈਡਰ ਫਾਈਲਾਂ (*.h ਫਾਈਲਾਂ) ਦਾ ਨਿਰਮਾਣ ਕਰਦੀ ਹੈ।

ffmpeg-android-maker ਦਾ ਮੁੱਖ ਫੋਕਸ ਇੱਕ Android ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸਹਿਜ ਏਕੀਕਰਣ ਲਈ ਸਾਂਝੀਆਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ ਤਿਆਰ ਕਰਨਾ ਹੈ। ਸਕ੍ਰਿਪਟ 'ਆਉਟਪੁੱਟ' ਡਾਇਰੈਕਟਰੀ ਤਿਆਰ ਕਰਦੀ ਹੈ ਜੋ ਵਰਤੇ ਜਾਣ ਲਈ ਹੈ। ਅਤੇ ਇਹ ਇਕੋ ਚੀਜ਼ ਨਹੀਂ ਹੈ ਜੋ ਇਹ ਪ੍ਰੋਜੈਕਟ ਕਰਦਾ ਹੈ. ffmpeg-android-maker ਦਾ ਸਰੋਤ ਕੋਡ MIT ਲਾਇਸੰਸ ਦੇ ਅਧੀਨ ਉਪਲਬਧ ਹੈ। https://github.com/Javernaut/ffmpeg-android-maker/ 'ਤੇ ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ LICENSE.txt ਫਾਈਲ ਦੇਖੋ eXport-it FFmpeg ਲਾਇਬ੍ਰੇਰੀਆਂ ਹੁਣੇ ਹੀ libaom, libdav1d, liblame, libopus ਅਤੇ libtwolame ਨਾਲ ਕੰਪਾਇਲ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ...ਪਰ ਸਾਰੀਆਂ ਸੰਬੰਧਿਤ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨਹੀਂ ਹਨ।

FFmpeg ਲਈ Java ਸਮਰਥਨ ਵਿਕਸਿਤ ਕਰਨ ਅਤੇ ਇਸਨੂੰ Android 7.1 ਤੋਂ 12 'ਤੇ ਚਲਾਉਣ ਲਈ, ਮੈਂ Taner Sener ਦੁਆਰਾ https://github.com/tanersener/mobile-ffmpeg/ 'ਤੇ ਦਸਤਾਵੇਜ਼ੀ ਤੌਰ 'ਤੇ ਮੋਬਾਈਲFFmpeg ਪ੍ਰੋਜੈਕਟ ਤੋਂ ਸ਼ੁਰੂਆਤ ਕੀਤੀ, ਜਿਸਦੀ ਹੁਣ ਸਾਂਭ-ਸੰਭਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ... ਅਤੇ LGPL 3.0 ਦੇ ਅਧੀਨ ਲਾਇਸੰਸਸ਼ੁਦਾ ਹੈ ...

ਅੰਤ ਵਿੱਚ, ਮੈਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਨਾਲ ਇੱਕ JNI ਐਂਡਰਾਇਡ ਸਟੂਡੀਓ ਪ੍ਰੋਜੈਕਟ ਤਿਆਰ ਕੀਤਾ, ਫਾਈਲਾਂ ਅਤੇ Java ਸਹਾਇਤਾ ਕੋਡ ਨੂੰ ਸ਼ਾਮਲ ਕੀਤਾ, ਅਤੇ ਮੇਰੇ ਮੌਜੂਦਾ ਪ੍ਰੋਜੈਕਟਾਂ ਵਿੱਚ ਇੱਕ ਵਾਧੂ ਲਾਇਬ੍ਰੇਰੀ ਦੇ ਰੂਪ ਵਿੱਚ ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਲਈ ਇੱਕ .aar ਲਾਇਬ੍ਰੇਰੀ ਫਾਈਲ ਤਿਆਰ ਕੀਤੀ।


ਮਲਟੀਕਾਸਟ ਚੈਨਲ ਕਿਵੇਂ ਸ਼ੁਰੂ ਕਰੀਏ

ਇੱਕ ਮਲਟੀਕਾਸਟ ਚੈਨਲ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਇੱਕ ਕਲਾਇੰਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, FFmpeg ਸਹਾਇਤਾ ਨਾਲ ਤੁਹਾਡੇ ਸਥਾਨਕ ਨੈੱਟਵਰਕ (ਵਾਈ-ਫਾਈ) 'ਤੇ ਇੱਕ UPnP ਸਰਵਰ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ। ਇਸ ਸਰਵਰ ਨੂੰ ਉਹਨਾਂ ਫਾਈਲਾਂ ਦੀ ਸੂਚੀ ਦੇ ਨਾਲ ਜਵਾਬ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਇਹ ਨਿਰਯਾਤ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਇਸ ਸਰਵਰ ਵਿੱਚ FFmpeg ਸਹਿਯੋਗ ਹੈ, ਤਾਂ ਸੂਚੀ ਪੰਨੇ ਦੀ ਸਿਖਰ ਲਾਈਨ ਦੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਛੋਟਾ ਟੈਕਸਟ "ਇੱਕ ਚੈਨਲ ਵਜੋਂ" ਲਾਲ ਰੰਗ ਵਿੱਚ ਦਿਖਾਇਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਜਦੋਂ ਟੈਕਸਟ "ਲਾਲ" ਹੁੰਦਾ ਹੈ, ਤਾਂ "ਪਲੇ" ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰਨਾ UPnP ਪ੍ਰੋਟੋਕੋਲ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਵਾਂਗ ਕੰਮ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਟੈਕਸਟ 'ਤੇ ਕਲਿੱਕ ਕਰਦੇ ਹੋ, ਤਾਂ ਇਹ "ਹਰਾ" ਹੋ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ "ਪਲੇ" ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ, ਵੀਡੀਓ ਜਾਂ ਆਡੀਓ ਫਾਈਲਾਂ ਦੀ ਚੋਣ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਇੱਕ "ਚੈਨਲ" ਸ਼ੁਰੂ ਹੋ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।

ਚੁਣੀਆਂ ਮੀਡੀਆ ਫਾਈਲਾਂ ਨੂੰ UPnP ਦੁਆਰਾ ਜ਼ਾਹਰ ਤੌਰ 'ਤੇ ਉਸੇ ਤਰ੍ਹਾਂ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਸਿਵਾਏ ਵਾਧੂ ਕਾਰਜਾਂ ਦੇ ਕਾਰਨ ਸ਼ੁਰੂਆਤੀ ਦੇਰੀ ਨੂੰ ਛੱਡ ਕੇ। ਪਾਈਪ ਨੂੰ ਕਿਰਿਆਸ਼ੀਲ ਰੱਖਣ ਲਈ ਤੁਹਾਨੂੰ ਇਸ ਕਲਾਇੰਟ ਨੂੰ ਮੀਡੀਆ ਫਾਈਲਾਂ ਨੂੰ ਚਲਾਉਣਾ ਚਾਹੀਦਾ ਹੈ।

ਹੋਰ ਡਿਵਾਈਸਾਂ 'ਤੇ ਇਸ ਪਾਈਪ ਦੀ ਵਰਤੋਂ ਕਰਨਾ

IP ਮਲਟੀਕਾਸਟ ਇੰਟਰਨੈੱਟ 'ਤੇ ਕੰਮ ਨਹੀਂ ਕਰਦਾ, ਇਹ ਸਿਰਫ਼ ਲੋਕਲ ਏਰੀਆ ਨੈੱਟਵਰਕ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ ਇਸ ਤਰ੍ਹਾਂ ਮੁੱਖ ਤੌਰ 'ਤੇ ਵਾਈ-ਫਾਈ 'ਤੇ। ਇੱਕ ਮਲਟੀਕਾਸਟ ਡੇਟਾ ਚੈਨਲ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਕਈ ਗਾਹਕਾਂ ਦੁਆਰਾ ਸਾਂਝਾ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਤੁਸੀਂ ਆਪਣੇ ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ 'ਤੇ ਮੀਡੀਆ ਡਾਟਾ ਪ੍ਰਵਾਹ ਭੇਜ ਰਹੇ ਹੋ ਅਤੇ ਇਹ ਡਾਟਾ ਕਨੈਕਟ ਕੀਤੇ ਡੀਵਾਈਸਾਂ 'ਤੇ ਦਿਖਾਉਂਦੇ ਹੋ, ਲਗਭਗ ਸਮਕਾਲੀ ਤੌਰ 'ਤੇ, ਸਿਰਫ਼ ਲੇਟੈਂਸੀ ਦੇਰੀ ਦਾ ਅੰਤਰ।

UPnP ਜਾਂ HTTP ਸਟ੍ਰੀਮਿੰਗ ਦੇ ਨਾਲ, ਹਰੇਕ ਡਿਵਾਈਸ ਨੂੰ ਦਿਖਾਏ ਗਏ ਵੀਡੀਓ ਦੀ ਬੈਂਡਵਿਡਥ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਅਤੇ ਗਲੋਬਲ ਬੈਂਡਵਿਡਥ ਦੋਵਾਂ ਟ੍ਰੈਫਿਕ ਦਾ ਜੋੜ ਹੁੰਦਾ ਹੈ। ਮਲਟੀਕਾਸਟ ਸਟ੍ਰੀਮਿੰਗ ਦੇ ਨਾਲ, ਅਸੀਂ LAN 'ਤੇ ਇੱਕ ਡਾਟਾ ਪ੍ਰਵਾਹ ਭੇਜਦੇ ਹਾਂ ਜੋ ਕਿ ਮਲਟੀਪਲ ਕਲਾਇੰਟਸ ਵਿਚਕਾਰ ਸਾਂਝਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।

ਜੇਕਰ ਤੁਸੀਂ ਚੈਨਲ ਸ਼ੁਰੂ ਕਰਨ ਤੋਂ ਬਾਅਦ ਆਪਣੇ ਨੈੱਟਵਰਕ 'ਤੇ ਕਿਸੇ ਹੋਰ ਕਲਾਇੰਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਕਲਾਇੰਟ ਮੇਨ ਵਿੰਡੋ 'ਤੇ ਇੱਕ ਵਾਧੂ ਲਾਈਨ ਦਿਖਾਈ ਦੇਣੀ ਚਾਹੀਦੀ ਹੈ। ਬਸ ਇਸ ਲਾਈਨ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਸ਼ੋਅ ਸ਼ੁਰੂ ਹੋ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।

ਐਕਸਪੋਰਟ-ਇਟ ਕਲਾਇੰਟ 'ਤੇ ਦਿਖਾਏ ਗਏ "UDP" URL ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵੀਡੀਓ ਦਿਖਾਉਣ ਜਾਂ ਮਲਟੀਕਾਸਟ ਚੈਨਲ 'ਤੇ ਵੰਡੇ ਗਏ ਸੰਗੀਤ ਨੂੰ ਸੁਣਨ ਲਈ VLC, SMplayer, ... ਵਰਗੇ ਹੋਰ ਉਤਪਾਦਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਵੀ ਸੰਭਵ ਹੈ। p>

ਇੱਕ ਮਲਟੀਕਾਸਟ ਚੈਨਲ ਨੂੰ ਰੋਕਣ ਲਈ

ਮਲਟੀਕਾਸਟ ਚੈਨਲ ਨੂੰ ਰੋਕਣ ਦਾ ਵਧੀਆ ਤਰੀਕਾ ਇਹ ਹੈ ਕਿ ਇਸ ਨੂੰ ਉਸ ਕਲਾਇੰਟ 'ਤੇ ਰੋਕੋ ਜਿਸ 'ਤੇ ਤੁਸੀਂ ਇਸਨੂੰ ਸ਼ੁਰੂ ਕੀਤਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਚੈਨਲ ਉੱਥੇ ਨਿਯੰਤਰਿਤ ਹੈ। ਸਟ੍ਰੀਮ ਕੀਤੀਆਂ ਮੀਡੀਆ ਫਾਈਲਾਂ ਦੇ ਅੰਤ ਤੱਕ ਚਲਾਉਣ ਨਾਲ ਸ਼ੋਅ ਦਾ ਅੰਤ ਵੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।