
Recherche avancée
Médias (16)
-
#7 Ambience
16 octobre 2011, par
Mis à jour : Juin 2015
Langue : English
Type : Audio
-
#6 Teaser Music
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#5 End Title
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#4 Emo Creates
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#2 Typewriter Dance
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
Autres articles (55)
-
Demande de création d’un canal
12 mars 2010, parEn fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Gestion de la ferme
2 mars 2010, parLa ferme est gérée dans son ensemble par des "super admins".
Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
Dans un premier temps il utilise le plugin "Gestion de mutualisation"
Sur d’autres sites (4834)
-
pyqt5 gui dependent on ffmpeg compiled with pyinstaller doesn't run on other machines ?
19 octobre 2022, par SorenI am trying to create a simple Pyqt5 GUI for Windows 10 that uses OpenAI's model Whisper to transcribe a sound file and outputting the results in an Excel-file. It works on my own computer where I have installed the necessary dependencies for Whisper as stated on their github i.e. FFMEG. I provide a minimal example of my code below :


# Import library
import whisper
import os
from PyQt5 import QtCore, QtGui, QtWidgets
import pandas as pd
import xlsxwriter


class Ui_Dialog(QtWidgets.QDialog):
 
 
 # Define functions to use in GUI
 
 # Define function for selecting input files
 def browsefiles(self, Dialog):
 
 
 # Make Dialog box and save files into tuple of paths
 files = QtWidgets.QFileDialog().getOpenFileNames(self, "Select soundfiles", os.getcwd(), "lyd(*mp2 *.mp3 *.mp4 *.m4a *wma *wav)")
 
 self.liste = []
 for url in range(len(files[0])):
 self.liste.append(files[0][url]) 

 
 def model_load(self, Dialog):
 
 # Load picked model
 self.model = whisper.load_model(r'C:\Users\Søren\Downloads\Whisper_gui\models' + "\\" + self.combo_modelSize.currentText() + ".pt") ##the path is set to where the models are on the other machine
 
 
 def run(self, Dialog):
 
 # Make list for sound files
 liste_df = []
 
 
 # Running loop for interpreting and encoding sound files
 for url in range(len(self.liste)):
 
 # Make dataframe
 df = pd.DataFrame(columns=["filename", "start", "end", "text"])
 
 # Run model
 result = self.model.transcribe(self.liste[url])
 
 # Extract results
 for i in range(len(result["segments"])):
 start = result["segments"][i]["start"]
 end = result["segments"][i]["end"]
 text = result["segments"][i]["text"]
 
 df = df.append({"filename": self.liste[url].split("/")[-1],
 "start": start, 
 "end": end, 
 "text": text}, ignore_index=True)
 
 # Add detected language to dataframe
 df["sprog"] = result["language"]
 
 
 liste_df.append(df)
 
 
 
 # Make excel output
 
 # Concatenate list of dfs
 dataframe = pd.concat(liste_df)
 
 
 # Create a Pandas Excel writer using XlsxWriter as the engine.
 writer = pd.ExcelWriter(self.liste[0].split(".")[0] + '_OUTPUT.xlsx', engine='xlsxwriter')
 writer_wrap_format = writer.book.add_format({"text_wrap": True, 'num_format': '@'})


 # Write the dataframe data to XlsxWriter. Turn off the default header and
 # index and skip one row to allow us to insert a user defined header.
 dataframe.to_excel(writer, sheet_name="Output", startrow=1, header=False, index=False)

 # Get the xlsxwriter workbook and worksheet objects.
 #workbook = writer.book
 worksheet = writer.sheets["Output"]

 # Get the dimensions of the dataframe.
 (max_row, max_col) = dataframe.shape

 # Create a list of column headers, to use in add_table().
 column_settings = [{'header': column} for column in dataframe.columns]

 # Add the Excel table structure. Pandas will add the data.
 worksheet.add_table(0, 0, max_row, max_col - 1, {'columns': column_settings})

 # Make the columns wider for clarity.
 worksheet.set_column(0, max_col - 1, 12)
 
 in_col_no = xlsxwriter.utility.xl_col_to_name(dataframe.columns.get_loc("text"))
 
 worksheet.set_column(in_col_no + ":" + in_col_no, 30, writer_wrap_format)

 # Close the Pandas Excel writer and output the Excel file.
 writer.save()
 writer.close()
 
 
 ## Design setup
 
 def setupUi(self, Dialog):
 Dialog.setObjectName("Dialog")
 Dialog.resize(730, 400)
 
 self.select_files = QtWidgets.QPushButton(Dialog)
 self.select_files.setGeometry(QtCore.QRect(40, 62, 81, 31))
 font = QtGui.QFont()
 font.setPointSize(6)
 self.select_files.setFont(font)
 self.select_files.setObjectName("select_files")
 
 
 
 
 self.combo_modelSize = QtWidgets.QComboBox(Dialog)
 self.combo_modelSize.setGeometry(QtCore.QRect(40, 131, 100, 21))
 font = QtGui.QFont()
 font.setPointSize(6)
 self.combo_modelSize.setFont(font)
 self.combo_modelSize.setObjectName("combo_modelSize")
 
 
 self.runButton = QtWidgets.QPushButton(Dialog)
 self.runButton.setGeometry(QtCore.QRect(40, 289, 71, 21))
 font = QtGui.QFont()
 font.setPointSize(6)
 self.runButton.setFont(font)
 self.runButton.setObjectName("runButton")
 
 
 

 self.retranslateUi(Dialog)
 QtCore.QMetaObject.connectSlotsByName(Dialog)
 
 
 
 modelSize_options = ['Chose model', 'tiny', 'base', 'small', 'medium', 'large']
 self.combo_modelSize.addItems(modelSize_options)
 
 # Do an action!
 self.select_files.clicked.connect(self.browsefiles)
 self.combo_modelSize.currentIndexChanged.connect(self.model_load)
 self.runButton.clicked.connect(self.run)
 
 
 
 

 def retranslateUi(self, Dialog):
 _translate = QtCore.QCoreApplication.translate
 Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
 self.runButton.setText(_translate("Dialog", "Go!"))
 self.select_files.setText(_translate("Dialog", "Select"))


if __name__ == "__main__":
 import sys
 app = QtWidgets.QApplication(sys.argv)
 Dialog = QtWidgets.QDialog()
 ui = Ui_Dialog()
 ui.setupUi(Dialog)
 Dialog.show()
 sys.exit(app.exec_())



I compile this app with pyinstaller using the following code. I had some issues to begin with so I found other with similar problems and ended up with this :


pyinstaller --onedir --hidden-import=pytorch --collect-data torch --copy-metadata torch --copy-metadata tqdm --copy-metadata tokenizers --copy-metadata importlib_metadata --hidden-import="sklearn.utils._cython_blas" --hidden-import="sklearn.neighbors.typedefs" --hidden-import="sklearn.neighbors.quad_tree" --hidden-import="sklearn.tree" --hidden-import="sklearn.tree._utils" --copy-metadata regex --copy-metadata requests --copy-metadata packaging --copy-metadata filelock --copy-metadata numpy --add-data "./ffmpeg/*;./ffmpeg/" --hidden-import=whisper --copy-metadata whisper --collect-data whisper minimal_example_whisper.py


When I take the outputtet dist directory and try to run the app on another Windows machine without FFMPEG installed (or Whisper or any other things), I get the following error from the terminal as I push the "run" button in the app (otherwise the app does run).


C:\Users\Søren>"G:\minimal_example_whisper\minimal_example_whisper.exe"
whisper\transcribe.py:70: UserWarning: FP16 is not supported on CPU; using FP32 instead
Traceback (most recent call last):
 File "minimal_example_whisper.py", line 45, in run
 File "whisper\transcribe.py", line 76, in transcribe
 File "whisper\audio.py", line 111, in log_mel_spectrogram
 File "whisper\audio.py", line 42, in load_audio
 File "ffmpeg\_run.py", line 313, in run
 File "ffmpeg\_run.py", line 284, in run_async
 File "subprocess.py", line 951, in __init__
 File "subprocess.py", line 1420, in _execute_child
FileNotFoundError: [WinError 2] Den angivne fil blev ikke fundet



I suspect this has something to do with FFMPEG not being installed on the other machines system ? Does anyone have an automatic solution for this when compiling the app or can it simply only run on machines that has FFMPEG installed ?


Thanks in advance !


-
ffmpeg works at command line but I got this error when I use it in nodejs app :
15 avril 2023, par Ibrahim AshourThis is the code :


import fs from 'fs';
import googleTTS from 'google-tts-api';
import https from 'https';
import { exec } from 'child_process';

async function convertTextToVoice(text, fileName) {
 const outputFile = `./audios/${fileName}.mp3`;

 const words = text.split(' ');
 const chunks = [];
 let chunk = '';

 for (const word of words) {
 if (chunk.length + word.length < 200) {
 chunk += ' ' + word;
 } else {
 chunks.push(chunk.trim());
 chunk = word;
 }
 }

 chunks.push(chunk.trim());

 for (let i = 0; i < chunks.length; i++) {
 const chunkFile = `./audios/${fileName}-chunk${i}.mp3`;
 const url = await googleTTS.getAudioUrl(chunks[i], {
 lang: 'ar',
 slow: false,
 host: 'https://translate.google.com',
 });


 try {
 const file = await fs.createWriteStream(chunkFile);
 https.get(url, response => {
 response.pipe(file);
 file.on('finish', () => {
 file.close();
 console.log(`Chunk ${i} created successfully`);
 });
 }).on('error', error => {
 console.error(`Error downloading chunk ${i}: ${error}`);
 });
 } catch (error) {
 console.error(error);
 }
 }

 const chunkFiles = chunks.map((chunk, i) => `./audios/${fileName}-chunk${i}.mp3`);

 // Use ffmpeg to merge the audio files
 const concatCommand = `ffmpeg -i "concat:${chunkFiles.join('|')}" -acodec copy ${outputFile}`;
 try {
 await new Promise((resolve, reject) => {
 exec(concatCommand, (error, stdout, stderr) => {
 if (error) {
 console.error(`Error executing ffmpeg command: ${error}`);
 reject(error);
 } else {
 console.log(`Audio file ${outputFile} created successfully`);
 resolve();
 }
 });
 });

 for (const chunkFile of chunkFiles) {
 await fs.promises.unlink(chunkFile);
 console.log(`${chunkFile} deleted successfully`);
 }
 } catch (error) {
 console.error(error);
 }
}



This is the Error :
./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3
ffmpeg -i "concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3" -acodec copy ./audios/تجربة.mp3
Error executing ffmpeg command : Error : Command failed : ffmpeg -i "concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3" -acodec copy ./audios/تجربة.mp3
ffmpeg version 2023-02-04-git-bdc76f467f-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration : —enable-gpl —enable-version3 —enable-static —disable-w32threads —disable-autodetect —enable-fontconfig —enable-iconv —enable-gnutls —enable-libxml2 —enable-gmp —enable-bzlib —enable-lzma —enable-libsnappy —enable-zlib —enable-librist —enable-libsrt —enable-libssh —enable-libzmq —enable-avisynth —enable-libbluray —enable-libcaca —enable-sdl2 —enable-libaribb24 —enable-libdav1d —enable-libdavs2 —enable-libuavs3d —enable-libzvbi —enable-librav1e —enable-libsvtav1 —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxavs2 —enable-libxvid —enable-libaom —enable-libjxl —enable-libopenjpeg —enable-libvpx —enable-mediafoundation —enable-libass —enable-frei0r —enable-libfreetype —enable-libfribidi —enable-liblensfun —enable-libvidstab —enable-libvmaf —enable-libzimg —enable-amf —enable-cuda-llvm —enable-cuvid —enable-ffnvcodec —enable-nvdec —enable-nvenc —enable-d3d11va —enable-dxva2 —enable-libvpl —enable-libshaderc —enable-vulkan —enable-libplacebo —enable-opencl —enable-libcdio —enable-libgme —enable-libmodplug —enable-libopenmpt —enable-libopencore-amrwb —enable-libmp3lame —enable-libshine —enable-libtheora —enable-libtwolame —enable-libvo-amrwbenc —enable-libilbc —enable-libgsm —enable-libopencore-amrnb —enable-libopus —enable-libspeex —enable-libvorbis —enable-ladspa —enable-libbs2b —enable-libflite —enable-libmysofa —enable-librubberband —enable-libsoxr —enable-chromaprint
libavutil 57. 44.100 / 57. 44.100
libavcodec 59. 63.100 / 59. 63.100
libavformat 59. 38.100 / 59. 38.100
libavdevice 59. 8.101 / 59. 8.101
libavfilter 8. 56.100 / 8. 56.100
libswscale 6. 8.112 / 6. 8.112
libswresample 4. 9.100 / 4. 9.100
libpostproc 56. 7.100 / 56. 7.100
[mp3 @ 00000177df48a1c0] Format mp3 detected only with low score of 1, misdetection possible !
[mp3 @ 00000177df48a1c0] Failed to read frame size : Could not seek to 1026.
concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3 : Invalid argument


Error : Command failed : ffmpeg -i "concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3" -acodec copy ./audios/تجربة.mp3
ffmpeg version 2023-02-04-git-bdc76f467f-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
configuration : —enable-gpl —enable-version3 —enable-static —disable-w32threads —disable-autodetect —enable-fontconfig —enable-iconv —enable-gnutls —enable-libxml2 —enable-gmp —enable-bzlib —enable-lzma —enable-libsnappy —enable-zlib —enable-librist —enable-libsrt —enable-libssh —enable-libzmq —enable-avisynth —enable-libbluray —enable-libcaca —enable-sdl2 —enable-libaribb24 —enable-libdav1d —enable-libdavs2 —enable-libuavs3d —enable-libzvbi —enable-librav1e —enable-libsvtav1 —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxavs2 —enable-libxvid —enable-libaom —enable-libjxl —enable-libopenjpeg —enable-libvpx —enable-mediafoundation —enable-libass —enable-frei0r —enable-libfreetype —enable-libfribidi —enable-liblensfun —enable-libvidstab —enable-libvmaf —enable-libzimg —enable-amf —enable-cuda-llvm —enable-cuvid —enable-ffnvcodec —enable-nvdec —enable-nvenc —enable-d3d11va —enable-dxva2 —enable-libvpl —enable-libshaderc —enable-vulkan —enable-libplacebo —enable-opencl —enable-libcdio —enable-libgme —enable-libmodplug —enable-libopenmpt —enable-libopencore-amrwb —enable-libmp3lame —enable-libshine —enable-libtheora —enable-libtwolame —enable-libvo-amrwbenc —enable-libilbc —enable-libgsm —enable-libopencore-amrnb —enable-libopus —enable-libspeex —enable-libvorbis —enable-ladspa —enable-libbs2b —enable-libflite —enable-libmysofa —enable-librubberband —enable-libsoxr —enable-chromaprint
libavutil 57. 44.100 / 57. 44.100
libavcodec 59. 63.100 / 59. 63.100
libavformat 59. 38.100 / 59. 38.100
libavdevice 59. 8.101 / 59. 8.101
libavfilter 8. 56.100 / 8. 56.100
libswscale 6. 8.112 / 6. 8.112
libswresample 4. 9.100 / 4. 9.100
libpostproc 56. 7.100 / 56. 7.100
[mp3 @ 00000177df48a1c0] Format mp3 detected only with low score of 1, misdetection possible !
[mp3 @ 00000177df48a1c0] Failed to read frame size : Could not seek to 1026.
concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3 : Invalid argument


at ChildProcess.exithandler (node:child_process:419:12)
at ChildProcess.emit (node:events:513:28)
at maybeClose (node:internal/child_process:1091:16)
at ChildProcess._handle.onexit (node:internal/child_process:302:5) {



code : 1,
killed : false,
signal : null,
cmd : 'ffmpeg -i "concat :./audios/تجربة-chunk0.mp3|./audios/تجربة-chunk1.mp3" -acodec copy ./audios/تجربة.mp3'
}
Chunk 1 created successfully
Chunk 0 created successfully


I expected the command to work in the nodejs app like in the command line


-
Running ffmpeg command on Android results in "Unable to find a suitable output format for ' -map 0:v:0 -map 1:a:0'"
5 juin 2017, par Akash DubeyI am using this command for replacing audio of video and genrate new video having new audio. Here file1 is my video.mp4, file2 is my audio.mp3 and output would be the output.mp4 :
complexCommand = new String[]{"-y", "-i", file1.toString(), "-i", file2.toString(), "-c", "copy", " -map 0:v:0 -map 1:a:0", rootPath + "/output.mp4"};
Below is My code :
private void changeAudioofVideo(String selectedUri, String videoPath) {
String[] complexCommand;
File f = new File("/storage/emulated/0");
if (!f.getParentFile().exists())
f.getParentFile().mkdirs();
if (!f.exists())
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
file1 = new File(videoPath);
if (file1.exists()) {
Log.d("yes", "File 1 exists");
} else {
Log.d("no", "File 1 not exists");
}
file2 = new File(selectedUri);
if (file2.exists()) {
Log.d("yes", "File 1 exists");
} else {
Log.d("no", "File 1 not exists");
}
String rootPath = f.getPath();
complexCommand = new String[]{"-y", "-i", file1.toString(), "-i", file2.toString(), "-c", "copy", " -map 0:v:0 -map 1:a:0", rootPath + "/output.mp4"};
FFmpeg ffmpeg = FFmpeg.getInstance(this);
try {
//Load the binary
ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
@Override
public void onStart() {
}
@Override
public void onFailure() {
}
@Override
public void onSuccess() {
}
@Override
public void onFinish() {
}
});
} catch (FFmpegNotSupportedException e) {
// Handle if FFmpeg is not supported by device
Toast.makeText(getApplicationContext(), "Not Supported by Device", Toast.LENGTH_LONG).show();
}
try {
final String finalRootPath = rootPath;
ffmpeg.execute(complexCommand, new FFmpegExecuteResponseHandler() {
@Override
public void onSuccess(String message) {
Log.d("Success", message);
Toast.makeText(getApplicationContext(), "Successful" + finalRootPath.toString(), Toast.LENGTH_LONG).show();
Uri path = Uri.parse(finalRootPath + "/output.mp4");
playVideo(path.toString());
}
@Override
public void onProgress(String message) {
Log.d("progress", message);
pd.show();
}
@Override
public void onFailure(String message) {
Log.d("failure", message);
pd.dismiss();
}
@Override
public void onStart() {
Log.d("Start", "merge started");
}
@Override
public void onFinish() {
Log.d("finish", "merge finish");
pd.dismiss();
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
e.printStackTrace();
}
}Below is my output :
05-26 18:39:35.533 29188-29188/com.example.codal.videotm D/failure: ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-and roid/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/videokit/out2.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf56.23.100
comment : Courtesy of National Geographic. Used by Permission.
Duration: 00:00:04.20, start: 0.046440, bitrate: 577 kb/s
Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 160x120 [SAR 9:16 DAR 3:4], 521 kb/s, 30 fps, 30 tbr, 15360 tbn, 30 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 22050 Hz, stereo, fltp, 50 kb/s (default)
Metadata:
handler_name : SoundHandler
[mp3 @ 0xb86ade60] Skipping 0 bytes of junk at 132692.
[mjpeg @ 0xb86c9980] Changing bps to 8
[mp3 @ 0xb86ade60] Estimating duration from bitrate, this may be inaccurate
Input #1, mp3, from '/storage/emulated/0/Download/01 Kaari Kaari - Dobaara.mp3':
Metadata:
album : Dobaara (SongsMp3.Co)
artist : Arko , Asees Kaur
album_artist : Arko & Asees Kaur
composer : Arko
performer : SongsMp3.Co
copyright : SongsMp3.Co
disc : 1/1
encoded_by : iTunes 12.6.0.100
genre : Bollywood
TEXT : SongsMp3.Co
TPE4 : SongsMp3.Co
TRSN : SongsMp3.Co
TOPE : SongsMp3.Co
TOLY : SongsMp3.Co
publisher : SongsMp3.Co
title : Kaari Kaari (SongsMp3.Co)
track : 1/1
date : 2017
Duration: 00:03:46.72, start: 0.000000, bitrate: 324 kb/s
Stream #1:0: Audio: mp3, 44100 Hz, stereo, s16p, 320 kb/s
Stream #1:1: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 600x600 [SAR 96:96 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
Metadata:
comment : Cover (front)
[NULL @ 0xb86cab70] Unable to find a suitable output format for ' -map 0:v:0 -map 1:a:0'
-map 0:v:0 -map 1:a:0: Invalid argument
05-26 18:39:35.543 29188-29188/com.example.codal.videotm D/ViewRootImpl: #3 mView = null
05-26 18:39:35.543 29188-29188/com.example.codal.videotm D/finish: merge finish