> On 16 May 2021, at 15:46, Moritz Barsnick <barsn...@gmx.net> wrote: > > On Fri, May 14, 2021 at 13:16:41 +0200, Bouke wrote: >> Using Python to fire FFmpeg >> cmd = ‘ffmpeg’ >> args = [‘-f’, ‘avfoundation’, ‘-i’, ‘:0’] >> >> with a QProcess, this returns exit code 6, exitstatus 1 >> >> >> ffmpeg -f avfoundation -i :0 in a Terminal works. >> (At least one output file….) > > You will have to show/look at the console output of both commands. > (It's there for a reason, and most likely says what the issue is.)
Hi Moritz, I know, but there was ’nothing’ on stdErr / stdOut. It turns out that FFmpeg crashes, nothing wrong with the command line. QProcess sees an error, and either QProcess terminates FFmpeg (I don’t think so) or FFmpeg crashes by itself. Strange thing is, the EXACT same line works from the terminal. I’m pretty sure that it’s not something in my code. I’ve ran a gazillion decklink captures. Trouble starts when I want to use avfoundation. in Python: cmd = "bash" args = ["-c", "/Applications/ffmpeg -loglevel trace -report -f avfoundation -i :0 /Volumes/Data/test.mov"] self.proc = QProcess(self._main) self.proc.finished.connect(self.renderdone) self.proc.errorOccurred.connect(self.erroroccured) self.proc.start(cmd, args) print("cmd is now", self.proc.arguments()) self.proc.readyReadStandardOutput.connect(lambda: self.readStdOutput(self.proc)) self.proc.readyReadStandardError.connect(lambda: self.readStdErr(self.proc)) Attachments don’t seem to work for me, so I copy / paste the reports below, first the failing one from Python, then the working one from the terminal. Anything else I can do to figure out why the same line does not work fired from Python? ffmpeg started on 2021-05-17 at 08:40:32 Report written to "ffmpeg-20210517-084032.log" Log level: 56 Command line: ffmpeg -loglevel trace -report -f avfoundation -i :0 /Volumes/Data/test.mov ffmpeg version git-2021-03-31-b3e9a84 Copyright (c) 2000-2021 the FFmpeg developers built with Apple clang version 12.0.0 (clang-1200.0.32.29) configuration: --enable-videotoolbox --enable-nonfree --enable-gpl --enable-lv2 --enable-openssl --enable-libsvtav1 --enable-libx264 --enable-libx265 --enable-libvpx --enable-libxvid --enable-libvidstab --enable-libaom --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libtheora --enable-libfdk-aac --enable-libwebp --enable-libsrt --disable-debug --disable-doc --disable-shared --enable-pthreads --enable-static --enable-small --enable-version3 --enable-libfreetype --enable-libfontconfig --enable-decklink --extra-cflags='-I/Users/bouke/ffmpeg-build-script/workspace/include -I/Users/bouke/ffmpeg-build-script/include' --extra-ldexeflags= --extra-ldflags='-L/Users/bouke/ffmpeg-build-script/workspace/lib -L/Users/bouke/ffmpeg-build-script/include' --extra-libs='-ldl -lpthread -lm -lz' --pkgconfigdir=/Users/bouke/ffmpeg-build-script/workspace/lib/pkgconfig --pkg-config-flags=--static --prefix=/Users/bouke/ffmpeg-build-script/workspace libavutil 56. 63.101 / 56. 63.101 libavcodec 58.117.101 / 58.117.101 libavformat 58. 65.101 / 58. 65.101 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 96.100 / 7. 96.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 Splitting the commandline. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'trace'. Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'. Reading option '-f' ... matched as option 'f' (force format) with argument 'avfoundation'. Reading option '-i' ... matched as input url with argument ':0'. Reading option '/Volumes/Data/test.mov' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option loglevel (set logging level) with argument trace. Applying option report (generate a report) with argument 1. Successfully parsed a group of options. Parsing a group of options: input url :0. Applying option f (force format) with argument avfoundation. Successfully parsed a group of options. Opening an input file: :0. [avfoundation @ 0x7f905080ee00] audio device 'Built-in Microphone' opened ############################################################## The Terminal version: ffmpeg started on 2021-05-17 at 08:41:36 Report written to "ffmpeg-20210517-084136.log" Log level: 56 Command line: ffmpeg -loglevel trace -report -f avfoundation -i :0 /Volumes/Data/test.mov ffmpeg version git-2021-03-31-b3e9a84 Copyright (c) 2000-2021 the FFmpeg developers built with Apple clang version 12.0.0 (clang-1200.0.32.29) configuration: --enable-videotoolbox --enable-nonfree --enable-gpl --enable-lv2 --enable-openssl --enable-libsvtav1 --enable-libx264 --enable-libx265 --enable-libvpx --enable-libxvid --enable-libvidstab --enable-libaom --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libtheora --enable-libfdk-aac --enable-libwebp --enable-libsrt --disable-debug --disable-doc --disable-shared --enable-pthreads --enable-static --enable-small --enable-version3 --enable-libfreetype --enable-libfontconfig --enable-decklink --extra-cflags='-I/Users/bouke/ffmpeg-build-script/workspace/include -I/Users/bouke/ffmpeg-build-script/include' --extra-ldexeflags= --extra-ldflags='-L/Users/bouke/ffmpeg-build-script/workspace/lib -L/Users/bouke/ffmpeg-build-script/include' --extra-libs='-ldl -lpthread -lm -lz' --pkgconfigdir=/Users/bouke/ffmpeg-build-script/workspace/lib/pkgconfig --pkg-config-flags=--static --prefix=/Users/bouke/ffmpeg-build-script/workspace libavutil 56. 63.101 / 56. 63.101 libavcodec 58.117.101 / 58.117.101 libavformat 58. 65.101 / 58. 65.101 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 96.100 / 7. 96.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 Splitting the commandline. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'trace'. Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'. Reading option '-f' ... matched as option 'f' (force format) with argument 'avfoundation'. Reading option '-i' ... matched as input url with argument ':0'. Reading option '/Volumes/Data/test.mov' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option loglevel (set logging level) with argument trace. Applying option report (generate a report) with argument 1. Successfully parsed a group of options. Parsing a group of options: input url :0. Applying option f (force format) with argument avfoundation. Successfully parsed a group of options. Opening an input file: :0. [avfoundation @ 0x7fdc86808a00] audio device 'Built-in Microphone' opened [avfoundation @ 0x7fdc86808a00] All info found [avfoundation @ 0x7fdc86808a00] stream 0: start_time: 131424 duration: NOPTS [avfoundation @ 0x7fdc86808a00] format: start_time: 131424 duration: NOPTS (estimate from bit rate) bitrate=3072 kb/s Input #0, avfoundation, from ':0': Duration: N/A, start: 131424.023375, bitrate: 3072 kb/s Stream #0:0, 1, 1/1000000: Audio: pcm_f32le, 48000 Hz, stereo, flt, 3072 kb/s Successfully opened the file. Parsing a group of options: output url /Volumes/Data/test.mov. Successfully parsed a group of options. Opening an output file: /Volumes/Data/test.mov. [file @ 0x7fdc84d48e00] Setting default whitelist 'file,crypto,data' Successfully opened the file. Stream mapping: Stream #0:0 -> #0:0 (pcm_f32le (native) -> aac (native)) Press [q] to stop, [?] for help cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) detected 4 logical cores [graph_0_in_0_0 @ 0x7fdc84e14780] Setting 'time_base' to value '1/48000' [graph_0_in_0_0 @ 0x7fdc84e14780] Setting 'sample_rate' to value '48000' [graph_0_in_0_0 @ 0x7fdc84e14780] Setting 'sample_fmt' to value 'flt' [graph_0_in_0_0 @ 0x7fdc84e14780] Setting 'channel_layout' to value '0x3' [graph_0_in_0_0 @ 0x7fdc84e14780] tb:1/48000 samplefmt:flt samplerate:48000 chlayout:0x3 [format_out_0_0 @ 0x7fdc84e15fc0] Setting 'sample_fmts' to value 'fltp' [format_out_0_0 @ 0x7fdc84e15fc0] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350' [format_out_0_0 @ 0x7fdc84e15fc0] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_0' [AVFilterGraph @ 0x7fdc84d4a580] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed [auto_resampler_0 @ 0x7fdc84e16740] [SWR @ 0x7fdc87100000] Using fltp internally between filters [auto_resampler_0 @ 0x7fdc84e16740] ch:2 chl:stereo fmt:flt r:48000Hz -> ch:2 chl:stereo fmt:fltp r:48000Hz Output #0, mov, to '/Volumes/Data/test.mov': Metadata: encoder : Lavf58.65.101 Stream #0:0, 0, 1/48000: Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, delay 1024, 128 kb/s Metadata: encoder : Lavc58.117.101 aac size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream) size= 0kB time=00:00:00.43 bitrate= 0.7kbits/s speed=0.857x size= 0kB time=00:00:00.93 bitrate= 0.3kbits/s speed=0.928x size= 0kB time=00:00:01.45 bitrate= 0.2kbits/s speed=0.959x size= 0kB time=00:00:01.95 bitrate= 0.1kbits/s speed=0.966x size= 0kB time=00:00:02.45 bitrate= 0.1kbits/s speed=0.971x size= 46kB time=00:00:02.79 bitrate= 133.6kbits/s speed=0.991x video:0kB audio:44kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.335400% Input file #0 (:0): Input stream #0:0 (audio): 254 packets read (1040384 bytes); 254 frames decoded (130048 samples); Total: 254 packets (1040384 bytes) demuxed Output file #0 (/Volumes/Data/test.mov): Output stream #0:0 (audio): 127 frames encoded (130048 samples); 128 packets muxed (45152 bytes); Total: 128 packets (45152 bytes) muxed 254 frames successfully decoded, 0 decoding errors [AVIOContext @ 0x7fdc84d48ec0] Statistics: 2 seeks, 4 writeouts [aac @ 0x7fdc860c0800] Qavg: 284.039 _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".