Recherche avancée

Médias (3)

Mot : - Tags -/collection

Autres articles (78)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Sélection de projets utilisant MediaSPIP

    29 avril 2011, par

    Les exemples cités ci-dessous sont des éléments représentatifs d’usages spécifiques de MediaSPIP pour certains projets.
    Vous pensez avoir un site "remarquable" réalisé avec MediaSPIP ? Faites le nous savoir ici.
    Ferme MediaSPIP @ Infini
    L’Association Infini développe des activités d’accueil, de point d’accès internet, de formation, de conduite de projets innovants dans le domaine des Technologies de l’Information et de la Communication, et l’hébergement de sites. Elle joue en la matière un rôle unique (...)

Sur d’autres sites (6798)

  • Unable to properly save video in android ffmpeg app

    22 mars 2021, par connor449

    I am trying to record and save a video with an ffmpeg app on android 10. I'm very new to android/mobile development.

    


    Here is my manifest file :

    


    &lt;?xml version="1.0" encoding="utf-8"?>&#xA;<manifest package="com.example.camera">&#xA;    &#xA;    &#xA;    &#xA;&#xA;    &#xA;&#xA;&#xA;    &#xA;        <activity>&#xA;            &#xA;            &#xA;        </activity>        <activity>&#xA;            &#xA;                <action></action>&#xA;&#xA;                <category></category>&#xA;            &#xA;        </activity>&#xA;    &#xA;&#xA;&#xA;</manifest>&#xA;

    &#xA;

    As you can see, I am specifying permission to read/write data.

    &#xA;

    Here is my mainActivity :

    &#xA;

    package com.example.camera&#xA;&#xA;//import android.R&#xA;import android.content.DialogInterface&#xA;import android.content.pm.PackageManager&#xA;import android.os.Build&#xA;import android.os.Bundle&#xA;import android.widget.Toast&#xA;import androidx.appcompat.app.AlertDialog&#xA;import androidx.appcompat.app.AppCompatActivity&#xA;import androidx.core.app.ActivityCompat&#xA;import androidx.core.content.ContextCompat&#xA;import com.arthenica.mobileffmpeg.FFmpeg&#xA;&#xA;&#xA;const val EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"&#xA;&#xA;class MainActivity : AppCompatActivity() {&#xA;    override fun onCreate(savedInstanceState: Bundle?) {&#xA;        super.onCreate(savedInstanceState)&#xA;        setContentView(R.layout.activity_main)&#xA;        if (checkPermission()) {&#xA;            //main logic or main code&#xA;           FFmpeg.execute("-f android_camera -i 0:0 -r 30 -crf 0 -pixel_format yuv420p -t 00:00:05 test.mp4")&#xA;&#xA;            // . write your main code to execute, It will execute if the permission is already given.&#xA;        } else {&#xA;            requestPermission()&#xA;        }&#xA;    }&#xA;&#xA;    fun sendMessage(view:android.view.View){&#xA;&#xA;&#xA;    }&#xA;&#xA;    private fun checkPermission(): Boolean {&#xA;        return if (ContextCompat.checkSelfPermission(this, android.Manifest.permission.CAMERA)&#xA;            != PackageManager.PERMISSION_GRANTED&#xA;        ) {&#xA;            // Permission is not granted&#xA;            false&#xA;        } else true&#xA;    }&#xA;&#xA;    private fun requestPermission() {&#xA;        ActivityCompat.requestPermissions(&#xA;            this, arrayOf(android.Manifest.permission.CAMERA),&#xA;            PERMISSION_REQUEST_CODE&#xA;        )&#xA;    }&#xA;&#xA;    override fun onRequestPermissionsResult(&#xA;        requestCode: Int,&#xA;        permissions: Array<string>,&#xA;        grantResults: IntArray&#xA;    ) {&#xA;        when (requestCode) {&#xA;            PERMISSION_REQUEST_CODE -> if (grantResults.size > 0 &amp;&amp; grantResults[0] == PackageManager.PERMISSION_GRANTED&#xA;            ) {&#xA;                Toast.makeText(applicationContext, "Permission Granted", Toast.LENGTH_SHORT)&#xA;                    .show()&#xA;&#xA;                // main logic&#xA;            } else {&#xA;                Toast.makeText(applicationContext, "Permission Denied", Toast.LENGTH_SHORT)&#xA;                    .show()&#xA;                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {&#xA;                    if (ContextCompat.checkSelfPermission(this, android.Manifest.permission.CAMERA)&#xA;                        != PackageManager.PERMISSION_GRANTED&#xA;                    ) {&#xA;                        showMessageOKCancel("You need to allow access permissions",&#xA;                            DialogInterface.OnClickListener { dialog, which ->&#xA;                                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {&#xA;                                    requestPermission()&#xA;                                }&#xA;                            })&#xA;                    }&#xA;                }&#xA;            }&#xA;        }&#xA;    }&#xA;&#xA;    private fun showMessageOKCancel(&#xA;        message: String,&#xA;        okListener: DialogInterface.OnClickListener&#xA;    ) {&#xA;        AlertDialog.Builder(this@MainActivity)&#xA;            .setMessage(message)&#xA;            .setPositiveButton("OK", okListener)&#xA;            .setNegativeButton("Cancel", null)&#xA;            .create()&#xA;            .show()&#xA;    }&#xA;&#xA;    companion object {&#xA;        private const val PERMISSION_REQUEST_CODE = 200&#xA;    }&#xA;}&#xA;&#xA;</string>

    &#xA;

    Here is my error message in the logs :

    &#xA;

    2021-03-22 16:31:34.509 9365-9448/com.example.camera I/AdrenoGLES: QUALCOMM build                   : 85037b7, I6e8b82193e&#xA;    Build Date                       : 12/19/19&#xA;    OpenGL ES Shader Compiler Version: EV031.27.05.03&#xA;    Local Branch                     : &#xA;    Remote Branch                    : refs/tags/AU_LINUX_ANDROID_LA.UM.8.11.R1.10.00.00.576.016&#xA;    Remote Branch                    : NONE&#xA;    Reconstruct Branch               : NOTHING&#xA;2021-03-22 16:31:34.509 9365-9448/com.example.camera I/AdrenoGLES: Build Config                     : S P 8.0.12 AArch64&#xA;2021-03-22 16:31:34.512 9365-9448/com.example.camera I/AdrenoGLES: PFP: 0x016ee187, ME: 0x00000000&#xA;2021-03-22 16:31:55.745 9365-9480/com.example.camera I/mobile-ffmpeg: ffmpeg version v4.4-dev-416&#xA;2021-03-22 16:31:55.745 9365-9480/com.example.camera I/mobile-ffmpeg:  Copyright (c) 2000-2020 the FFmpeg developers&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   built with Android (6454773 based on r365631c2) clang version 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489587874b2a325e7a516b99d838599c6f) (based on LLVM 9.0.8svn)&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   configuration: --cross-prefix=aarch64-linux-android- --sysroot=/files/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8-a --cc=aarch64-linux-android24-clang --cxx=aarch64-linux-android24-clang&#x2B;&#x2B; --extra-libs=&#x27;-L/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/cpu-features/lib -lndk_compat&#x27; --target-os=android --enable-neon --enable-asm --enable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --enable-v4l2-m2m --disable-outdev=fbdev --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-videotoolbox --disable-audiotoolbox --disable-appkit --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gmp --enable-gnutls --enable-libmp3lame --enable-libass --enable-iconv --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libopencore-amrnb --enable-libshine --enable-libspeex --enable-libwavpack --enable-libkvazaar --enable-libilbc --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libaom --enable-libtwolame --disable-sdl2 --enable-libvo-amrwbenc --enable-zlib --enable-mediacodec&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libavutil      56. 55.100 / 56. 55.100&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libavcodec     58. 96.100 / 58. 96.100&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libavformat    58. 48.100 / 58. 48.100&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libavdevice    58. 11.101 / 58. 11.101&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libavfilter     7. 87.100 /  7. 87.100&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libswscale      5.  8.100 /  5.  8.100&#xA;2021-03-22 16:31:55.746 9365-9480/com.example.camera I/mobile-ffmpeg:   libswresample   3.  8.100 /  3.  8.100&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638402! count 0, type 3&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638403! count 0, type 3&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1835009! count 0, type 3&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1835010! count 0, type 3&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638407! count 0, type 3&#xA;2021-03-22 16:31:55.750 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638408! count 0, type 0&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638402! count 0, type 3&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638403! count 0, type 3&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1835009! count 0, type 3&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1835010! count 0, type 3&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638407! count 0, type 3&#xA;2021-03-22 16:31:55.751 9365-9365/com.example.camera E/ACameraMetadata: filterDurations: malformed duration key 1638408! count 0, type 0&#xA;2021-03-22 16:31:55.797 9365-9480/com.example.camera W/mobile-ffmpeg: [android_camera @ 0x726794b600] Requested video_size 0x0 not available, falling back to 4608x3456&#xA;2021-03-22 16:31:55.804 9365-9480/com.example.camera I/mobile-ffmpeg: [android_camera @ 0x726794b600] Android camera capture session is active.&#xA;2021-03-22 16:31:56.097 9365-9480/com.example.camera I/mobile-ffmpeg: Input #0, android_camera, from &#x27;0:0&#x27;:&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg:   Duration: &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: N/A&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: , start: &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: 28486.157692&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: , bitrate: &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: N/A&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg:     Stream #0:0&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: : Video: rawvideo (NV21 / 0x3132564E), nv21, 4608x3456&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: , &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: 30 fps, &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: 30 tbr, &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: 1000000000.00 tbn, &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: 1000000000.00 tbc&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg:     Side data:&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg:       &#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera I/mobile-ffmpeg: displaymatrix: rotation of -90.00 degrees&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera W/mobile-ffmpeg: Codec AVOption crf (Select the quality for constant quality mode) specified for output file #0 (test.mp4) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.&#xA;2021-03-22 16:31:56.098 9365-9480/com.example.camera E/mobile-ffmpeg: test.mp4: Read-only file system&#xA;2021-03-22 16:31:56.259 9365-9392/com.example.camera D/ACameraDevice: Device error received, code 5, frame number 1, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.260 9365-9666/com.example.camera D/ACameraDevice: Device error received, code 5, frame number 2, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.260 9365-9666/com.example.camera D/ACameraDevice: Device error received, code 5, frame number 3, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.260 9365-9666/com.example.camera D/ACameraDevice: Device error received, code 3, frame number 4, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.260 9365-9666/com.example.camera D/ACameraDevice: Device error received, code 3, frame number 5, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.261 9365-9666/com.example.camera D/ACameraDevice: Device error received, code 3, frame number 6, request ID 0, subseq ID 0&#xA;2021-03-22 16:31:56.607 9365-9365/com.example.camera W/ACameraCaptureSession: Device is closed but session 0 is not notified&#xA;2021-03-22 16:31:56.608 9365-9480/com.example.camera I/mobile-ffmpeg: [android_camera @ 0x726794b600] Android camera capture session was closed.&#xA;2021-03-22 16:31:56.637 9365-9365/com.example.camera I/Choreographer: Skipped 58 frames!  The application may be doing too much work on its main thread.&#xA;2021-03-22 16:31:56.678 9365-9448/com.example.camera I/OpenGLRenderer: Davey! duration=1018ms; Flags=1, IntendedVsync=17591318171185, Vsync=17592284837813, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=17592296938401, AnimationStart=17592297214183, PerformTraversalsStart=17592304079965, DrawStart=17592327848144, SyncQueued=17592334185436, SyncStart=17592334982572, IssueDrawCommandsStart=17592335124343, SwapBuffers=17592336519968, FrameCompleted=17592337443926, DequeueBufferDuration=165000, QueueBufferDuration=255000, &#xA;

    &#xA;

    The error I'm particularity confused about is :

    &#xA;

    2021-03-22 16:31:56.098 9365-9480/com.example.camera E/mobile-ffmpeg: test.mp4: Read-only file system&#xA;

    &#xA;

    I thought I specified the appropriate permissions in the manifest file ? Please advise.

    &#xA;

  • Open VideoStream using OpenCV 4.5.1 works on Windows but fails on Docker python:3.9.2-slim-buster for specific IP cam

    18 mai 2021, par Qua285

    I have 2 ip cameras - one of Hikvision and another of Provision ISR. Both use Onvif and work on VLC.&#xA;I've written a simple python script to record images every 5 sec from their video stream.&#xA;On Windows 10, using VSCode they both work as expected. Once deployed to a Docker container, my script works as expected with the Hikvision but fails with the Provision ISR - it doesn't open the stream.

    &#xA;

    Running python -c "import cv2; print(cv2.getBuildInformation())" on windows (venv 3.9.2) and on docker machine bring slightly different results but it's beyond my understanding to take something out of it...&#xA;Here is the Windows one :

    &#xA;

    General configuration for OpenCV 4.5.1 =====================================&#xA;  Version control:               4.5.1&#xA;&#xA;  Platform:&#xA;    Timestamp:                   2021-01-02T14:30:58Z&#xA;    Host:                        Windows 6.3.9600 AMD64&#xA;    CMake:                       3.18.4&#xA;    CMake generator:             Visual Studio 14 2015 Win64&#xA;    CMake build tool:            C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe&#xA;    MSVC:                        1900&#xA;&#xA;  CPU/HW features:&#xA;    Baseline:                    SSE SSE2 SSE3&#xA;      requested:                 SSE3&#xA;    Dispatched code generation:  SSE4_1 SSE4_2 FP16 AVX AVX2&#xA;      requested:                 SSE4_1 SSE4_2 AVX FP16 AVX2 AVX512_SKX&#xA;      SSE4_1 (15 files):         &#x2B; SSSE3 SSE4_1&#xA;      SSE4_2 (1 files):          &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2&#xA;      FP16 (0 files):            &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 FP16 AVX&#xA;      AVX (4 files):             &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 AVX&#xA;      AVX2 (29 files):           &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2&#xA;&#xA;  C/C&#x2B;&#x2B;:&#xA;    Built as dynamic libs?:      NO&#xA;    C&#x2B;&#x2B; standard:                11&#xA;    C&#x2B;&#x2B; Compiler:                C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe  (ver 19.0.24241.7)&#xA;    C&#x2B;&#x2B; flags (Release):         /DWIN32 /D_WINDOWS /W4 /GR  /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi  /fp:precise     /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 &#xA;/MP  /MT /O2 /Ob2 /DNDEBUG&#xA;    C&#x2B;&#x2B; flags (Debug):           /DWIN32 /D_WINDOWS /W4 /GR  /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi  /fp:precise     /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 &#xA;/MP  /MTd /Zi /Ob0 /Od /RTC1&#xA;    C Compiler:                  C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe&#xA;    C flags (Release):           /DWIN32 /D_WINDOWS /W3  /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi  /fp:precise     /MP   /MT /O2 /Ob2 /DNDEBUG&#xA;    C flags (Debug):             /DWIN32 /D_WINDOWS /W3  /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi  /fp:precise     /MP /MTd /Zi /Ob0 /Od /RTC1&#xA;    Linker flags (Release):      /machine:x64  /NODEFAULTLIB:atlthunk.lib /INCREMENTAL:NO  /NODEFAULTLIB:libcmtd.lib /NODEFAULTLIB:libcpmtd.lib /NODEFAULTLIB:msvcrtd.lib&#xA;    Linker flags (Debug):        /machine:x64  /NODEFAULTLIB:atlthunk.lib /debug /INCREMENTAL  /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libcpmt.lib /NODEFAULTLIB:msvcrt.lib&#xA;    ccache:                      NO&#xA;    Precompiled headers:         YES&#xA;    Extra dependencies:          ade wsock32 comctl32 gdi32 ole32 setupapi ws2_32&#xA;    3rdparty dependencies:       ittnotify libprotobuf zlib libjpeg-turbo libwebp libpng libtiff libopenjp2 IlmImf quirc ippiw ippicv&#xA;&#xA;  OpenCV modules:&#xA;    To be built:                 calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python3 stitching video videoio&#xA;    Disabled:                    world&#xA;    Disabled by dependency:      -&#xA;    Unavailable:                 java python2 ts&#xA;    Applications:                -&#xA;    Documentation:               NO&#xA;    Non-free algorithms:         NO&#xA;&#xA;  Windows RT support:            NO&#xA;&#xA;  GUI:&#xA;    Win32 UI:                    YES&#xA;    VTK support:                 NO&#xA;&#xA;  Media I/O:&#xA;    ZLib:                        build (ver 1.2.11)&#xA;    JPEG:                        build-libjpeg-turbo (ver 2.0.6-62)&#xA;    WEBP:                        build (ver encoder: 0x020f)&#xA;    PNG:                         build (ver 1.6.37)&#xA;    TIFF:                        build (ver 42 - 4.0.10)&#xA;    JPEG 2000:                   build (ver 2.3.1)&#xA;    OpenEXR:                     build (ver 2.3.0)&#xA;    HDR:                         YES&#xA;    SUNRASTER:                   YES&#xA;    PXM:                         YES&#xA;    PFM:                         YES&#xA;&#xA;  Video I/O:&#xA;    DC1394:                      NO&#xA;    FFMPEG:                      YES (prebuilt binaries)&#xA;      avcodec:                   YES (58.91.100)&#xA;      avformat:                  YES (58.45.100)&#xA;      avutil:                    YES (56.51.100)&#xA;      swscale:                   YES (5.7.100)&#xA;      avresample:                YES (4.0.0)&#xA;    GStreamer:                   NO&#xA;    DirectShow:                  YES&#xA;    Media Foundation:            YES&#xA;      DXVA:                      NO&#xA;&#xA;  Parallel framework:            Concurrency&#xA;&#xA;  Trace:                         YES (with Intel ITT)&#xA;&#xA;  Other third-party libraries:&#xA;    Intel IPP:                   2020.0.0 Gold [2020.0.0]&#xA;           at:                   C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-wvn_it83/_skbuild/win-amd64-3.9/cmake-build/3rdparty/ippicv/ippicv_win/icv&#xA;    Intel IPP IW:                sources (2020.0.0)&#xA;              at:                C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-wvn_it83/_skbuild/win-amd64-3.9/cmake-build/3rdparty/ippicv/ippicv_win/iw&#xA;    Lapack:                      NO&#xA;    Eigen:                       NO&#xA;    Custom HAL:                  NO&#xA;    Protobuf:                    build (3.5.1)&#xA;&#xA;  OpenCL:                        YES (NVD3D11)&#xA;    Include path:                C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-wvn_it83/opencv/3rdparty/include/opencl/1.2&#xA;    Link libraries:              Dynamic load&#xA;&#xA;  Python 3:&#xA;    Interpreter:                 C:/Python39-x64/python.exe (ver 3.9)&#xA;    Libraries:                   C:/Python39-x64/libs/python39.lib (ver 3.9.0)&#xA;    numpy:                       C:/Users/appveyor/AppData/Local/Temp/1/pip-build-env-sk7r7w_5/overlay/Lib/site-packages/numpy/core/include (ver 1.19.3)&#xA;    install path:                python&#xA;&#xA;  Python (for build):            C:/Python27-x64/python.exe&#xA;&#xA;  Java:&#xA;    ant:                         NO&#xA;    JNI:                         C:/Program Files/Java/jdk1.8.0/include C:/Program Files/Java/jdk1.8.0/include/win32 C:/Program Files/Java/jdk1.8.0/include&#xA;    Java wrappers:               NO&#xA;    Java tests:                  NO&#xA;&#xA;  Install to:                    C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-wvn_it83/_skbuild/win-amd64-3.9/cmake-install&#xA;-----------------------------------------------------------------&#xA;

    &#xA;

    this is the Docker one (python:3.9.2-slim-buster) :

    &#xA;

    General configuration for OpenCV 4.5.1 =====================================&#xA;  Version control:               4.5.1-dirty&#xA;&#xA;  Platform:&#xA;    Timestamp:                   2021-01-02T13:04:10Z&#xA;    Host:                        Linux 4.15.0-1077-gcp x86_64&#xA;    CMake:                       3.18.4&#xA;    CMake generator:             Unix Makefiles&#xA;    CMake build tool:            /bin/gmake&#xA;    Configuration:               Release&#xA;&#xA;  CPU/HW features:&#xA;    Baseline:                    SSE SSE2 SSE3&#xA;      requested:                 SSE3&#xA;    Dispatched code generation:  SSE4_1 SSE4_2 FP16 AVX AVX2 AVX512_SKX&#xA;      requested:                 SSE4_1 SSE4_2 AVX FP16 AVX2 AVX512_SKX&#xA;      SSE4_1 (15 files):         &#x2B; SSSE3 SSE4_1&#xA;      SSE4_2 (1 files):          &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2&#xA;      FP16 (0 files):            &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 FP16 AVX&#xA;      AVX (4 files):             &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 AVX&#xA;      AVX2 (29 files):           &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2&#xA;      AVX512_SKX (4 files):      &#x2B; SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2 AVX_512F AVX512_COMMON AVX512_SKX&#xA;&#xA;  C/C&#x2B;&#x2B;:&#xA;    Built as dynamic libs?:      NO&#xA;    C&#x2B;&#x2B; standard:                11&#xA;    C&#x2B;&#x2B; Compiler:                /usr/lib/ccache/compilers/c&#x2B;&#x2B;  (ver 9.3.1)&#xA;    C&#x2B;&#x2B; flags (Release):         -Wl,-strip-all   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG  -DNDEBUG&#xA;    C&#x2B;&#x2B; flags (Debug):           -Wl,-strip-all   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fvisibility-inlines-hidden -g  -O0 -DDEBUG -D_DEBUG&#xA;    C Compiler:                  /usr/lib/ccache/compilers/cc&#xA;    C flags (Release):           -Wl,-strip-all   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -O3 -DNDEBUG  -DNDEBUG&#xA;    C flags (Debug):             -Wl,-strip-all   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -g  -O0 -DDEBUG -D_DEBUG&#xA;    Linker flags (Release):      -Wl,--exclude-libs,libippicv.a -Wl,--exclude-libs,libippiw.a -L/root/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed&#xA;    Linker flags (Debug):        -Wl,--exclude-libs,libippicv.a -Wl,--exclude-libs,libippiw.a -L/root/ffmpeg_build/lib  -Wl,--gc-sections -Wl,--as-needed&#xA;    ccache:                      YES&#xA;    Precompiled headers:         NO&#xA;    Extra dependencies:          ade Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Test Qt5::Concurrent /lib64/libpng.so /lib64/libz.so dl m pthread rt&#xA;    3rdparty dependencies:       ittnotify libprotobuf libjpeg-turbo libwebp libtiff libopenjp2 IlmImf quirc ippiw ippicv&#xA;&#xA;  OpenCV modules:&#xA;    To be built:                 calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python3 stitching video videoio&#xA;    Disabled:                    world&#xA;    Disabled by dependency:      -&#xA;    Unavailable:                 java python2 ts&#xA;    Applications:                -&#xA;    Documentation:               NO&#xA;    Non-free algorithms:         NO&#xA;&#xA;  GUI:&#xA;    QT:                          YES (ver 5.15.0)&#xA;      QT OpenGL support:         NO&#xA;    GTK&#x2B;:                        NO&#xA;    VTK support:                 NO&#xA;&#xA;  Media I/O:&#xA;    ZLib:                        /lib64/libz.so (ver 1.2.7)&#xA;    JPEG:                        libjpeg-turbo (ver 2.0.6-62)&#xA;    WEBP:                        build (ver encoder: 0x020f)&#xA;    PNG:                         /lib64/libpng.so (ver 1.5.13)&#xA;    TIFF:                        build (ver 42 - 4.0.10)&#xA;    JPEG 2000:                   build (ver 2.3.1)&#xA;    OpenEXR:                     build (ver 2.3.0)&#xA;    HDR:                         YES&#xA;    SUNRASTER:                   YES&#xA;    PXM:                         YES&#xA;    PFM:                         YES&#xA;&#xA;  Video I/O:&#xA;    DC1394:                      NO&#xA;    FFMPEG:                      YES&#xA;      avcodec:                   YES (58.109.100)&#xA;      avformat:                  YES (58.61.100)&#xA;      avutil:                    YES (56.60.100)&#xA;      swscale:                   YES (5.8.100)&#xA;      avresample:                NO&#xA;    GStreamer:                   NO&#xA;    v4l/v4l2:                    YES (linux/videodev2.h)&#xA;&#xA;  Parallel framework:            pthreads&#xA;&#xA;  Trace:                         YES (with Intel ITT)&#xA;&#xA;  Other third-party libraries:&#xA;    Intel IPP:                   2020.0.0 Gold [2020.0.0]&#xA;           at:                   /tmp/pip-req-build-ddpkm6fn/_skbuild/linux-x86_64-3.9/cmake-build/3rdparty/ippicv/ippicv_lnx/icv&#xA;    Intel IPP IW:                sources (2020.0.0)&#xA;              at:                /tmp/pip-req-build-ddpkm6fn/_skbuild/linux-x86_64-3.9/cmake-build/3rdparty/ippicv/ippicv_lnx/iw&#xA;    Lapack:                      NO&#xA;    Eigen:                       NO&#xA;    Custom HAL:                  NO&#xA;    Protobuf:                    build (3.5.1)&#xA;&#xA;  OpenCL:                        YES (no extra features)&#xA;    Include path:                /tmp/pip-req-build-ddpkm6fn/opencv/3rdparty/include/opencl/1.2&#xA;    Link libraries:              Dynamic load&#xA;&#xA;  Python 3:&#xA;    Interpreter:                 /opt/python/cp39-cp39/bin/python (ver 3.9)&#xA;    Libraries:                   libpython3.9.a (ver 3.9.0)&#xA;    numpy:                       /tmp/pip-build-env-jqrfyj0w/overlay/lib/python3.9/site-packages/numpy/core/include (ver 1.19.3)&#xA;    install path:                python&#xA;&#xA;  Python (for build):            /bin/python2.7&#xA;&#xA;  Java:&#xA;    ant:                         NO&#xA;    JNI:                         NO&#xA;    Java wrappers:               NO&#xA;    Java tests:                  NO&#xA;&#xA;  Install to:                    /tmp/pip-req-build-ddpkm6fn/_skbuild/linux-x86_64-3.9/cmake-install&#xA;-----------------------------------------------------------------&#xA;

    &#xA;

    If relevant, the docker is installed on an Intel NUC with Ubuntu Desktop 20.04

    &#xA;

    If relevant, this is the dockerfile I've used to build the image :

    &#xA;

    FROM python:3.9.2-slim-buster as builder&#xA;&#xA;# Keeps Python from generating .pyc files in the container&#xA;ENV PYTHONDONTWRITEBYTECODE=1&#xA;# Without this setting, Python never prints anything out.&#xA;ENV PYTHONUNBUFFERED=1&#xA;&#xA;RUN pip install --upgrade pip&#xA;COPY ./Cam/requirements.txt .&#xA;RUN pip install -r requirements.txt&#xA;RUN apt-get update&#xA;RUN apt-get install ffmpeg libsm6 libxext6 -y&#xA;&#xA;WORKDIR /app&#xA;&#xA;FROM builder&#xA;COPY ./Cam .&#xA;CMD ["python", "camStreamer.py"]&#xA;

    &#xA;

    and last, this is the script code (simplified) :

    &#xA;

    import os, logging, threading&#xA;from os.path import join&#xA;import sys, inspect, datetime, time&#xA;from pathlib import Path&#xA;import cv2&#xA;import imutils&#xA;from imutils.video import VideoStream&#xA;&#xA;def StartRecording(showVideoWindow, interval, imagePath):&#xA;    key = None&#xA;    cam = VideoStream(os.getenv("CAM_RTSP")).start()&#xA;    counter = 0&#xA;    try:&#xA;        while True:&#xA;            ## 2 min retry to connect if frame is None&#xA;            if counter > 60/interval*2: break&#xA;&#xA;            ts = time.time()&#xA;            ## Wait for [interval] seconds&#xA;            while ts &#x2B; interval > time.time():&#xA;                continue&#xA;            print(f"Counter: {counter}, ts: {str(ts)}")&#xA;&#xA;            frame = cam.read()&#xA;            if frame is None:&#xA;                counter &#x2B;= 1&#xA;                continue&#xA;            counter = 0&#xA;&#xA;            print("frame is valid")&#xA;            if showVideoWindow:&#xA;                frame = imutils.resize(frame, width=1200)&#xA;                cv2.imshow(&#x27;VIDEO&#x27;, frame)&#xA;&#xA;            imageName = f"{datetime.datetime.fromtimestamp(ts).strftime(&#x27;%Y-%m-%dT%H_%M_%S&#x27;)}.jpg"&#xA;            cv2.imwrite(join(imagePath, imageName), frame)&#xA;            print("saved image to disk")&#xA;&#xA;            key = cv2.waitKey(1) &amp; 0xFF&#xA;            if key == ord(&#x27;q&#x27;) or key == ord(&#x27;r&#x27;):&#xA;                break&#xA;&#xA;    except Exception as e:&#xA;        exc_tb = sys.exc_info()[2]&#xA;        extra = ""&#xA;        print(f"{inspect.stack()[0][3]}: {e} (lineno: {exc_tb.tb_lineno}) {extra}")&#xA;    finally:&#xA;        if showVideoWindow: cv2.destroyAllWindows()&#xA;        cam.stop()&#xA;        return key&#xA;&#xA;&#xA;while True:&#xA;    log.warning(f"Starting {Name}")&#xA;    key = StartRecording(&#xA;                showVideoWindow=(Env.startswith("development") and os.getenv("SHOW_VIDEO") == "True"),&#xA;                interval=int(os.getenv("SAVE_IMAGE_INTERVAL")),&#xA;                imagePath=os.getenv(&#x27;CAPTURE_FOLDER&#x27;)&#xA;                )&#xA;    if key == ord(&#x27;q&#x27;):&#xA;        break&#xA;

    &#xA;

    I apologize for the very long post. Hopefully someone can put me on the right direction...

    &#xA;

  • ffmpeg x11grab to streamable format

    2 juin 2021, par Jintor

    2 FFMPEG process

    &#xA;

    (1) generating a ffmpeg x11grab to a .mp4&#xA;(2) take the .mp4 and restream it simultaneously to multiple rtmp endpoints

    &#xA;

    ISSUE the generated file in (1) have this error "moov atom not found"

    &#xA;

    This is the command that generate (1) :

    &#xA;

    ffmpeg -re -y -f x11grab -draw_mouse 0 -framerate 30 &#xA;-video_size $RESOLUTION -i :$DISPLAY_NUM -c:a aac -c:v libx264 &#xA;-movflags &#x2B;faststart -preset ultrafast -crf 28 -refs 4 -qmin 4 &#xA;-pix_fmt yuv420p -filter:v fps=30 file.mp4&#xA;

    &#xA;

    in the (2) => when I try to ffmpeg -i file.mp4 output somewhere : I get "moov atom not found" so the (2) can't read or open (1).

    &#xA;

    What I'm I missing

    &#xA;

    in (1) -movflags &#x2B;faststart doesn't seem to fix the issue

    &#xA;

    ••••••• EDIT : more details on the context ••••••

    &#xA;

    I'm using openvidu : webrtc with kurento and coturn.

    &#xA;

    The record feature creates a .mp4 on the fly as the chat is going on.

    &#xA;

    To start the recording, there is an API call i can make to my server and it automatically stops when all users leaves the chatroom OR do an other api call to stop. see composed video in this link https://docs.openvidu.io/en/2.17.0/advanced-features/recording/

    &#xA;

    openvidu have also webhooks.

    &#xA;

    My problem is not how to stop ffmpeg, but getting FFMPEG to encode while the mp4 or other is being generated "on the fly".

    &#xA;

    There is 2 options :

    &#xA;

    OPTION 1 : individual => 1 .webm per camare => this .webm ffmpeg can restream as hls or RTMP => it's working.

    &#xA;

    OPTION 2 : ** but the issue is with "Composed" video => it's using ffmpeg to x11grab the session... but it's mp4 without moov ato, so ffmpeg don't do anything with this.

    &#xA;

    see the composed.sh script here&#xA;https://github.com/OpenVidu/openvidu/blob/master/openvidu-server/docker/openvidu-recording/scripts/composed.sh

    &#xA;

    ***************** EDIT 3 *************

    &#xA;

    in the .sh this is the part that is creating the mp4

    &#xA;

    ffmpeg -y -f alsa -i pulse -f x11grab -draw_mouse 0&#xA;-framerate $FRAMERATE -video_size $RESOLUTION -i :$DISPLAY_NUM&#xA;-c:a aac -c:v libx264 -preset ultrafast&#xA;-crf 28 -refs 4 -qmin 4 -pix_fmt yuv420p&#xA;-filter:v fps=$FRAMERATE "/recordings/$VIDEO_ID/$VIDEO_NAME.$VIDEO_FORMAT"

    &#xA;

    How can I modify this to have better result example VP8 or VP9 with good quality .webm so that the ffpmeg second command(2) can encode it live...

    &#xA;

    **** EDIT 4 ********

    &#xA;

    I tried this it worked for 30 seconds and suddenly stopped

    &#xA;

        &lt;./stop ffmpeg -y -f alsa -i pulse -f &#xA;x11grab -draw_mouse 0 -framerate $FRAMERATE &#xA;-video_size $RESOLUTION -i :$DISPLAY_NUM &#xA;-c:v libx264 -b:v 1396k -b:a 128k -ar 44100 -maxrate 1369k &#xA;-pix_fmt yuv420p -preset veryfast -tune zerolatency &#xA;-c:a aac -ac 2 -profile:v main -flags -global_header &#xA;-bufsize 969k -hls_time 1 -hls_list_size 0 -g 30 &#xA;-start_number 0 -streaming 1 -hls_playlist 1 &#xA;-lhls 1 -hls_playlist_type event -f hls "/recordings/$VIDEO_ID/$VIDEO_NAME".m3u8&#xA;&#xA;&#xA;N: [pulseaudio] main.c: Running in system mode, forcibly disabling SHM mode.&#xA;N: [pulseaudio] main.c: Running in system mode, forcibly disabling exit idle time.&#xA;Display in use -> :99&#xA;----------------------------------------&#xA;ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)&#xA;  configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared&#xA;  libavutil      56. 31.100 / 56. 31.100&#xA;  libavcodec     58. 54.100 / 58. 54.100&#xA;  libavformat    58. 29.100 / 58. 29.100&#xA;  libavdevice    58.  8.100 / 58.  8.100&#xA;  libavfilter     7. 57.100 /  7. 57.100&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  5.100 /  5.  5.100&#xA;  libswresample   3.  5.100 /  3.  5.100&#xA;  libpostproc    55.  5.100 / 55.  5.100&#xA;Guessed Channel Layout for Input Stream #0.0 : stereo&#xA;Input #0, alsa, from &#x27;pulse&#x27;:&#xA;  Duration: N/A, start: 1617150428.783763, bitrate: 1536 kb/s&#xA;    Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s&#xA;[x11grab @ 0x55e88a4e8780] Stream #0: not enough frames to estimate rate; consider increasing probesize&#xA;Input #1, x11grab, from &#x27;:99&#x27;:&#xA;  Duration: N/A, start: 1617150428.837799, bitrate: N/A&#xA;    Stream #1:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 1920x1080, 30 fps, 1000k tbr, 1000k tbn, 1000k tbc&#xA;Stream mapping:&#xA;  Stream #1:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #0:0 -> #0:1 (pcm_s16le (native) -> aac (native))&#xA;Press [q] to stop, [?] for help&#xA;[libx264 @ 0x55e88a4f70c0] max bitrate less than average bitrate, assuming CBR&#xA;[libx264 @ 0x55e88a4f70c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 AVX512&#xA;[libx264 @ 0x55e88a4f70c0] profile Main, level 4.0&#xA;[alsa @ 0x55e88a4c2e40] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619940.ts&#x27; for writing&#xA;Output #0, hls, to &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf58.29.100&#xA;    Stream #0:0: Video: h264 (libx264), yuv420p(progressive), 1920x1080, q=-1--1, 1396 kb/s, 30 fps, 90k tbn, 30 tbc&#xA;    Metadata:&#xA;      encoder         : Lavc58.54.100 libx264&#xA;    Side data:&#xA;      cpb: bitrate max/min/avg: 1369000/0/1396000 buffer size: 969000 vbv_delay: -1&#xA;    Stream #0:1: Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s&#xA;    Metadata:&#xA;      encoder         : Lavc58.54.100 aac&#xA;frame=   16 fps=0.0 q=21.0 size=N/A time=00:00:00.53 bitrate=N/A speed=1.06x    &#xA;frame=   31 fps= 31 q=16.0 size=N/A time=00:00:01.03 bitrate=N/A speed=1.02x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619941.ts&#x27; for writing&#xA;frame=   47 fps= 31 q=21.0 size=N/A time=00:00:01.56 bitrate=N/A speed=1.03x    &#xA;frame=   62 fps= 30 q=22.0 size=N/A time=00:00:02.06 bitrate=N/A speed=1.02x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619942.ts&#x27; for writing&#xA;frame=   77 fps= 30 q=24.0 size=N/A time=00:00:02.56 bitrate=N/A speed=1.01x    &#xA;frame=   92 fps= 30 q=22.0 size=N/A time=00:00:03.06 bitrate=N/A speed=0.999x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619943.ts&#x27; for writing&#xA;frame=  108 fps= 30 q=29.0 size=N/A time=00:00:03.60 bitrate=N/A speed=   1x    &#xA;frame=  124 fps= 30 q=21.0 size=N/A time=00:00:04.13 bitrate=N/A speed=1.01x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619944.ts&#x27; for writing&#xA;frame=  139 fps= 30 q=20.0 size=N/A time=00:00:04.63 bitrate=N/A speed=1.01x    &#xA;frame=  154 fps= 30 q=18.0 size=N/A time=00:00:05.13 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619945.ts&#x27; for writing&#xA;frame=  169 fps= 30 q=19.0 size=N/A time=00:00:05.63 bitrate=N/A speed=   1x    &#xA;frame=  185 fps= 30 q=19.0 size=N/A time=00:00:06.16 bitrate=N/A speed=1.01x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619946.ts&#x27; for writing&#xA;frame=  199 fps= 30 q=20.0 size=N/A time=00:00:06.63 bitrate=N/A speed=   1x    &#xA;frame=  215 fps= 30 q=19.0 size=N/A time=00:00:07.16 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619947.ts&#x27; for writing&#xA;frame=  230 fps= 30 q=19.0 size=N/A time=00:00:07.66 bitrate=N/A speed=   1x    &#xA;frame=  242 fps= 30 q=18.0 size=N/A time=00:00:08.06 bitrate=N/A speed=0.99x    &#xA;frame=  254 fps= 29 q=17.0 size=N/A time=00:00:08.46 bitrate=N/A speed=0.979x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619948.ts&#x27; for writing&#xA;frame=  276 fps= 30 q=17.0 size=N/A time=00:00:09.20 bitrate=N/A speed=1.01x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec133903625619949.ts&#x27; for writing&#xA;frame=  290 fps= 30 q=21.0 size=N/A time=00:00:09.66 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199410.ts&#x27; for writing&#xA;frame=  306 fps= 30 q=31.0 size=N/A time=00:00:10.20 bitrate=N/A speed=   1x    &#xA;frame=  322 fps= 30 q=21.0 size=N/A time=00:00:10.73 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199411.ts&#x27; for writing&#xA;frame=  337 fps= 30 q=21.0 size=N/A time=00:00:11.23 bitrate=N/A speed=   1x    &#xA;frame=  352 fps= 30 q=19.0 size=N/A time=00:00:11.73 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199412.ts&#x27; for writing&#xA;frame=  367 fps= 30 q=19.0 size=N/A time=00:00:12.23 bitrate=N/A speed=   1x    &#xA;frame=  382 fps= 30 q=18.0 size=N/A time=00:00:12.73 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199413.ts&#x27; for writing&#xA;frame=  397 fps= 30 q=18.0 size=N/A time=00:00:13.23 bitrate=N/A speed=   1x    &#xA;frame=  412 fps= 30 q=18.0 size=N/A time=00:00:13.73 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199414.ts&#x27; for writing&#xA;frame=  428 fps= 30 q=18.0 size=N/A time=00:00:14.26 bitrate=N/A speed=   1x    &#xA;frame=  443 fps= 30 q=17.0 size=N/A time=00:00:14.76 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199415.ts&#x27; for writing&#xA;frame=  458 fps= 30 q=18.0 size=N/A time=00:00:15.26 bitrate=N/A speed=   1x    &#xA;frame=  474 fps= 30 q=17.0 size=N/A time=00:00:15.80 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199416.ts&#x27; for writing&#xA;frame=  489 fps= 30 q=18.0 size=N/A time=00:00:16.30 bitrate=N/A speed=   1x    &#xA;frame=  504 fps= 30 q=17.0 size=N/A time=00:00:16.80 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199417.ts&#x27; for writing&#xA;frame=  520 fps= 30 q=20.0 size=N/A time=00:00:17.33 bitrate=N/A speed=   1x    &#xA;frame=  535 fps= 30 q=18.0 size=N/A time=00:00:17.83 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199418.ts&#x27; for writing&#xA;frame=  551 fps= 30 q=20.0 size=N/A time=00:00:18.36 bitrate=N/A speed=   1x    &#xA;frame=  566 fps= 30 q=19.0 size=N/A time=00:00:18.86 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199419.ts&#x27; for writing&#xA;frame=  581 fps= 30 q=20.0 size=N/A time=00:00:19.36 bitrate=N/A speed=   1x    &#xA;frame=  596 fps= 30 q=19.0 size=N/A time=00:00:19.86 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199420.ts&#x27; for writing&#xA;frame=  612 fps= 30 q=21.0 size=N/A time=00:00:20.40 bitrate=N/A speed=   1x    &#xA;frame=  626 fps= 30 q=20.0 size=N/A time=00:00:20.86 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199421.ts&#x27; for writing&#xA;frame=  641 fps= 30 q=21.0 size=N/A time=00:00:21.37 bitrate=N/A speed=   1x    &#xA;frame=  657 fps= 30 q=35.0 size=N/A time=00:00:21.90 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199422.ts&#x27; for writing&#xA;frame=  672 fps= 30 q=33.0 size=N/A time=00:00:22.40 bitrate=N/A speed=   1x    &#xA;frame=  687 fps= 30 q=23.0 size=N/A time=00:00:22.90 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199423.ts&#x27; for writing&#xA;frame=  703 fps= 30 q=23.0 size=N/A time=00:00:23.43 bitrate=N/A speed=   1x    &#xA;frame=  718 fps= 30 q=25.0 size=N/A time=00:00:23.93 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199424.ts&#x27; for writing&#xA;frame=  733 fps= 30 q=27.0 size=N/A time=00:00:24.44 bitrate=N/A speed=   1x    &#xA;frame=  749 fps= 30 q=26.0 size=N/A time=00:00:24.96 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199425.ts&#x27; for writing&#xA;frame=  764 fps= 30 q=28.0 size=N/A time=00:00:25.46 bitrate=N/A speed=   1x    &#xA;frame=  780 fps= 30 q=27.0 size=N/A time=00:00:26.00 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199426.ts&#x27; for writing&#xA;frame=  795 fps= 30 q=27.0 size=N/A time=00:00:26.50 bitrate=N/A speed=   1x    &#xA;frame=  810 fps= 30 q=26.0 size=N/A time=00:00:27.00 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec1339036256199427.ts&#x27; for writing&#xA;frame=  825 fps= 30 q=29.0 size=N/A time=00:00:27.50 bitrate=N/A speed=   1x    &#xA;[hls @ 0x55e88a4f3040] Opening &#x27;/recordings/13391978436095-2/rec13390362561994.m3u8.tmp&#x27; for writing&#xA;frame=  840 fps= 30 q=30.0 Lsize=N/A time=00:00:28.01 bitrate=N/A speed=   1x    &#xA;video:4635kB audio:404kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown&#xA;[libx264 @ 0x55e88a4f70c0] frame I:42    Avg QP:12.88  size: 28020&#xA;[libx264 @ 0x55e88a4f70c0] frame P:798   Avg QP:13.11  size:  4473&#xA;[libx264 @ 0x55e88a4f70c0] mb I  I16..4: 88.4%  0.0% 11.6%&#xA;[libx264 @ 0x55e88a4f70c0] mb P  I16..4:  6.6%  0.0%  0.4%  P16..4:  6.6%  1.9%  0.6%  0.0%  0.0%    skip:83.8%&#xA;[libx264 @ 0x55e88a4f70c0] coded y,uvDC,uvAC intra: 18.8% 20.1% 10.1% inter: 1.7% 2.4% 0.1%&#xA;[libx264 @ 0x55e88a4f70c0] i16 v,h,dc,p: 55% 30% 12%  4%&#xA;[libx264 @ 0x55e88a4f70c0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 27% 31%  2%  3%  2%  2%  1%  2%&#xA;[libx264 @ 0x55e88a4f70c0] i8c dc,h,v,p: 77%  9% 12%  1%&#xA;[libx264 @ 0x55e88a4f70c0] Weighted P-Frames: Y:1.1% UV:0.1%&#xA;[libx264 @ 0x55e88a4f70c0] kb/s:1355.98&#xA;[aac @ 0x55e88a4f8440] Qavg: 40876.258&#xA;jq: error (at <stdin>:1): Cannot iterate over null (null)&#xA;jq: error (at <stdin>:1): Cannot iterate over null (null)&#xA;jq: error (at <stdin>:1): null (null) cannot be parsed as a number&#xA;jq: error (at <stdin>:1): null (null) cannot be parsed as a number&#xA;jq: error: syntax error, unexpected &#x27;|&#x27; (Unix shell quoting issues?) at , line 1:&#xA;.hasAudio=false | .hasVideo=false | .duration= | .size= | .status="failed"                                               &#xA;jq: 1 compile error&#xA;ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)&#xA;  configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared&#xA;  libavutil      56. 31.100 / 56. 31.100&#xA;  libavcodec     58. 54.100 / 58. 54.100&#xA;  libavformat    58. 29.100 / 58. 29.100&#xA;  libavdevice    58.  8.100 / 58.  8.100&#xA;  libavfilter     7. 57.100 /  7. 57.100&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  5.100 /  5.  5.100&#xA;  libswresample   3.  5.100 /  3.  5.100&#xA;  libpostproc    55.  5.100 / 55.  5.100&#xA;Invalid duration specification for ss: -i&#xA;</stdin></stdin></stdin></stdin>

    &#xA;

    ***** Edit 5 **********

    &#xA;

    no mather what format I choose, it stops after 20 to 30 secs.&#xA;the same line with .webm .mov .264 when it's not .mp4 ffmpeg seems to drop

    &#xA;