Recherche avancée

Médias (1)

Mot : - Tags -/MediaSPIP

Autres articles (7)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

Sur d’autres sites (4336)

  • Using ffmpeg to trim HEVC video : correct duration, but output file size too large

    29 novembre 2022, par ddessert

    I have a digitized 8mm 16fps HEVC .mp4 that I'm trying to split into clips using ffmpeg (5.1.2) on MacOS terminal. The output file trims to the correct duration but the filesize is too large.

    


    ffmpeg -ss 05:09 -i input.mp4 -t 02:19 -an -sn -dn -c copy output.mp4


    


    input.mp4 : 11:56 in duration and 8.24 GB in filesize (bitrate 674251 kbits/s).
    
output.mp4 : 02:19 in duration and 5.15 GB in filesize (too large).

    


    5.15 GB is the filesize I'd expect for a clip that is 05:09 + 02:19 in duration at input.mp4's 674251 Kbits/s :
    
(05:09+02:19) * 674251 kbits/sec = 5.16 GB

    


    I've tried various -ss start_pos and -t duration values with similar results. The output file is correctly duration in time and unexpectedly (start_pos+duration)*bitrate in filesize.

    


    I've consulted this ShotStack.io article on trimming with ffmpeg and this ffmpeg wiki section on cutting small sections from files. Neither specifically states that the resulting file size will be trimmed to match the duration of the clip, but I'd think that'd be useful.

    


    Addendum :
    
My input file has only one keyframe at t=0.000s. Likely the root of all my problems.

    


    ffmpeg stdout :

    


    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x14ff04760] Using non-standard frame rate 16384/1024
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    creation_time   : 2021-07-24T11:23:44.000000Z
    encoder         : Lavf58.45.100
  Duration: 00:11:56.13, start: 0.000000, bitrate: 92041 kb/s
  Stream #0:0[0x1](und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709/bt709/unknown, progressive), 5120x3840 [SAR 1:1 DAR 4:3], 91715 kb/s, 16 fps, 16 tbr, 16384 tbn (default)
    Metadata:
      creation_time   : 2021-07-24T11:23:44.000000Z
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      timecode        : 17:15:11:05
  Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 159 kb/s (default)
    Metadata:
      creation_time   : 2021-07-24T11:23:44.000000Z
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
  Stream #0:2[0x3](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 159 kb/s (default)
    Metadata:
      creation_time   : 2021-07-24T11:23:44.000000Z
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
  Stream #0:3[0x4](eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 2021-07-24T11:23:44.000000Z
      handler_name    : TimeCodeHandler
      timecode        : 17:15:11:05
File 'output.mp4' already exists. Overwrite? [y/N] y
[mp4 @ 0x14ff08660] Using non-standard frame rate 16/1
    Last message repeated 1 times
Output #0, mp4, to 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf59.27.100
  Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709/bt709/unknown, progressive), 5120x3840 [SAR 1:1 DAR 4:3], q=2-31, 91715 kb/s, 16 fps, 16 tbr, 16384 tbn (default)
    Metadata:
      creation_time   : 2021-07-24T11:23:44.000000Z
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      timecode        : 17:15:11:05
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 4290 fps=0.0 q=-1.0 Lsize= 2988507kB time=00:02:18.93 bitrate=176207.6kbits/s speed= 189x    
video:2988420kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.002924%


    


    ffprobe output.mp4

    


    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x130804080] Using non-standard frame rate 16384/1024
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf59.27.100
  Duration: 00:02:19.31, start: 0.000000, bitrate: 175732 kb/s
  Stream #0:0[0x1](und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709/bt709/unknown, progressive), 5120x3840 [SAR 1:1 DAR 4:3], 91304 kb/s, 16 fps, 16 tbr, 16384 tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      timecode        : 17:15:11:05
  Stream #0:1[0x2](eng): Data: none (tmcd / 0x64636D74)
    Metadata:
      handler_name    : VideoHandler
      timecode        : 17:15:11:05
Unsupported codec with id 0 for input stream 1


    


  • FFMPEG not exporting audio OR exports audio with still video

    7 septembre 2021, par Zak44

    Trying to utilize ffmpeg to convert a mp4 to DNxHD, then wrap it in an MXF. The ultimate goal is to get this into Avid Media Composer. I've been having issues with this particular command, where no audio is ever exported :

    


    ffmpeg -y -r 24 -i Test_fix.mp4 -vcodec dnxhd -vsync drop -b:v 36M -s 1920x1080 -threads 2 -vf colormatrix=bt601:bt709 -c:a aac -f rawvideo BLAH.mov


    


    If I tweak the above command by removing the force of the "rawvideo" option I get audio, however the video then sits on the first frame and never advances :

    


    ffmpeg -y -r 24 -i Test_fix.mp4 -vcodec dnxhd -vsync drop -b:v 36M -s 1920x1080 -threads 2 -vf colormatrix=bt601:bt709 -c:a aac -r 24 BLAH.mov


    


    What exactly am I doing wrong ? Here is the output from running the second time :

    


    ffmpeg -y -r 24 -i Test_fix.mp4 -vcodec dnxhd -vsync drop -b:v 36M -s 1920x1080 -threads 2 -vf colormatrix=bt601:bt709 -c:a aac -r 24 BLAH.mov
ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
  built with Apple clang version 12.0.0 (clang-1200.0.32.29)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-avresample --enable-videotoolbox
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Test_fix.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42mp41
    creation_time   : 2021-07-01T17:19:54.000000Z
  Duration: 00:01:05.75, start: 0.000000, bitrate: 6336 kb/s
  Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 960x540 [SAR 1:1 DAR 16:9], 6016 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc (default)
    Metadata:
      creation_time   : 2021-07-01T17:19:54.000000Z
      handler_name    : ?Mainconcept Video Media Handler
      vendor_id       : [0][0][0][0]
      encoder         : AVC Coding
  Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 317 kb/s (default)
    Metadata:
      creation_time   : 2021-07-01T17:19:54.000000Z
      handler_name    : #Mainconcept MP4 Sound Media Handler
      vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> dnxhd (native))
  Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, mov, to 'BLAH.mov':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42mp41
    encoder         : Lavf58.76.100
  Stream #0:0(eng): Video: dnxhd (DNXHD) (AVdn / 0x6E645641), yuv422p(tv, bt709/unknown/unknown, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 36000 kb/s, 24 fps, 12288 tbn (default)
    Metadata:
      creation_time   : 2021-07-01T17:19:54.000000Z
      handler_name    : ?Mainconcept Video Media Handler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc58.134.100 dnxhd
  Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      creation_time   : 2021-07-01T17:19:54.000000Z
      handler_name    : #Mainconcept MP4 Sound Media Handler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc58.134.100 aac
[mov @ 0x7fd129013000] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[mov @ 0x7fd129013000] Encoder did not produce proper pts, making some up.
frame= 1577 fps=133 q=1.0 Lsize=  290993kB time=00:01:05.70 bitrate=36279.7kbits/s speed=5.54x
video:290168kB audio:809kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.005816%
[aac @ 0x7fd129019000] Qavg: 22541.643


    


  • 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;