Re: [FFmpeg-user] How to download and transcode video stream to mp4 and save the TS stream to file at the same time?
On 2024-09-30 05:46 pm, Bo Berglund wrote: On Mon, 30 Sep 2024 13:40:44 +0530, Gyan Doshi wrote: On 2024-09-30 01:34 pm, Bo Berglund wrote: I checked with CharGPT and got the following: [quote] The hybrid_fragmented flag was added to FFmpeg in version 6.0, released on June 5, 2024. This feature allows for the creation of hybrid fragmented/non-fragmented MP4 files, which can be useful for ensuring file readability even if writing is interrupted [/quote] This is wrong. The flag is not in any existing build. It will be in 7.1 due to be released within a day or so. Regards, Gyan Strange, when I go to the official website: https://www.ffmpeg.org/ffmpeg-all.html#Options-56 then I find a section about this flag in "21.4.2 Options"... movflags -> hybrid_fragmented Sorry, that was a typo. s/existing build/existing release. But anyway, 7.1 was released a few minutes after I sent that reply. It's in there. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to download and transcode video stream to mp4 and save the TS stream to file at the same time?
On 2024-09-30 01:34 pm, Bo Berglund wrote: I checked with CharGPT and got the following: [quote] The hybrid_fragmented flag was added to FFmpeg in version 6.0, released on June 5, 2024. This feature allows for the creation of hybrid fragmented/non-fragmented MP4 files, which can be useful for ensuring file readability even if writing is interrupted [/quote] This is wrong. The flag is not in any existing build. It will be in 7.1 due to be released within a day or so. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to download and transcode video stream to mp4 and save the TS stream to file at the same time?
On 2024-09-30 01:29 am, Bo Berglund wrote: I have created a script that downloads Internet video streams (basically news programs) and transcodes to mp4 format with a fixed windows size. As soon as the video stream recording ends the mp4 file can be played. I wonder if there is a way to let ffmpeg do two things at the same time: - download as now but save the stream to a TS formatted file and: - transcode to the mp4 format into a different output file This would make it possible to start viewing the downloaded file in TS format while the real output file remains unplayable until the download finishes and the moov atom gets written. Three months ago, ffmpeg's mov/mp4 muxer added a movflags called `hybrid_fragmented` From the doc description, " For recoverability - write the output file as a fragmented file. This allows the intermediate file to be read while being written (in particular, if the writing process is aborted uncleanly). When writing is finished, the file is converted to a regular, non-fragmented file, which is more compatible and allows easier and quicker seeking. If writing is aborted, the intermediate file can manually be remuxed to get a regular, non-fragmented file of what had been written into the unfinished file. " Regards, Gyan ___ 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".
Re: [FFmpeg-user] has setpts filter been changed?
On 2024-08-10 11:04 am, William C Bonner wrote: On Thu, Aug 8, 2024 at 6:27 PM wrote: This seems that the new code speed up the reported fps without dropping any frames. Looks like this was changed here https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/f121d954ac89060cb7b07da230479cffe5bf9e5c If that's what changed, it obviously took a while for it to propagate to my running machine. That commit was dated Wed, 27 Mar 2024. As the method I'm using has changed its behavior to a new behavior, the old behavior still is documented on FFMPEG's pages, and the new behavior is something I am not crazy about, Is there a way of getting the equivalent of the old behavior with the new code? Add `-fps_mode passthrough` Regards, Gyan ___ 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".
Re: [FFmpeg-user] Big missmatch In format duration (ffmpeg V6)
On 2024-02-11 10:56 pm, Avraham Sikirov via ffmpeg-user wrote: Hello Carl, Thanks for your response. This is the complete and unedited output from that exact command. There are 3 parts in the output of ffprobe to a video file. 1. Audio stream. 2. Video stream 3. Format (which represents the container). Every one of them has duration and bitrate. In this case there is Streams, and Format. In the part of the format in v5.1.4 the duration is 6.452311 and bitrate is 323592 In v.6.1.1 the duration is 35393.442471 and bitrate is 58. (Duration is much longer, although the video is ~6.5 seconds long.) the duration and the bitrate in the part of audio stream and video stream remains the same in both versions. Hope that clarifies the problem. The audio stream has a very high start time, as reported by both versions. The format duration in 5.1 is computed only taking into account the stream durations whereas 6.1 considers stream start times as well. Technically, 6.1 is correct. Your file likely has a bad edit list for the audio stream. You can open a ticket via https://ffmpeg.org/bugreports.html Regards, Gyan ___ 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".
Re: [FFmpeg-user] forced-idr -- 3 more tired
On 2024-07-11 03:09 am, Paul B Mahol wrote: On Wed, Jul 10, 2024 at 11:18 PM Mark Filipak wrote: On 10/07/2024 13.51, Will Boba wrote: On 7/10/24 10:26, Mark Filipak wrote: Three more tried. ffmpeg -forced-idr 1 -i ... -c:v libx264 -an -sn -start_at_zero -muxdelay 0 ... [in#0 @ 00542d00] Error opening input: Invalid data found when processing input ffmpeg -i ... -forced-idr 1 -c:v libx264 -an -sn -start_at_zero -muxdelay 0 ... [in#0 @ 00542d00] Error opening input: Invalid data found when processing input ffmpeg -i ... -c:v libx264 -an -sn -start_at_zero -muxdelay 0 -forced-idr 1 ... [in#0 @ 00542d00] Error opening input: Invalid data found when processing input This option belongs to libx264, not to FFmpeg. Try this: "-x264opts forced-idr" --- Will Thank you, Will. Yes, I did try that: Try instead this one: ffmpeg -i -c:v libx264 -forced-idr 1 -an -sn -start_at_zero -muxdelay 0 The error msg is "Error opening input: Invalid data found when processing input" The input isn't recognized. Changing output options won't make any difference. Regards, Gyan ___ 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".
Re: [FFmpeg-user] FFmpeg
On 2024-05-17 10:12 am, Keith Reno wrote: I have ffmpeg-7.0-full_build downloaded on my computer. When I select ffmpeg the screen flashes but nothing loads. Do I have the correct version or am I doing something wrong? Read https://video.stackexchange.com/questions/20495/how-do-i-set-up-and-use-ffmpeg-in-windows/ Regards, Gyan ___ 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".
Re: [FFmpeg-user] Retain but don't playback frames outside of edit list for transcode
On 2024-05-08 08:55 am, Anne Wu via ffmpeg-user wrote: Hi, Looking for some guidance on if handling edit-lists this way is possible. I recently ran into a situation where I need to transcode videos that include edit lists. The edit-list specifies to drop the first few frames of the video, and thus the output ends up with fewer frames than the original. Is there a way to retain these frames in the output, but not have them play during playback? I’m looking for the number of frames in the input and output file to be the same. The original video has 386 frames. This is the transcode command that outputs a file with 376 frames: ffmpeg -i ./original.mov -c:v libx264 -fps_mode passthrough output.mov If I use the -ignore_editlist 1 option, it will retain the frames outside the edit-list and end up with 386 frames. But it still plays back all the frames, which is not the desired behavior: ffmpeg -ignore_editlist 1 -i ./original.mov -c:v libx264 -fps_mode passthrough output_ignoreEditList.mov This may work: Get the timestamp of the first displayed frame. Then do a transcode of all frames with ignore editlist, Use the setts bsf on the video stream to offset timestamps so that the first displayed frame has a dts of 0. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Remuxing TS to MP4 causes black frame in Apple playback scenarios
On 2024-05-02 03:21 am, Sid Sethupathi wrote: Hello, I have a process that remuxes short HLS playlists into an mp4 format. The output mp4 in this process has an all black first frame when played back in either Safari or Quicktime Player. Everywhere else, the first frame does not have this black frame. The process is an internal tool that uses libav directly so it's hard to share the code, but I think I can reproduce via an ffmpeg command line invocation against a single TS segment, so I'm hoping to be able to solve the problem by understanding how to change the ffmpeg command. All the sample files can be found in this public Google Drive: https://drive.google.com/drive/folders/1L8T5T4l_GUzxRnhjH-ojnT6-44FQLQq1?usp=drive_link . bbb_2.ts is the second segment of Big Buck Bunny (sourced from this test stream: https://test-streams.mux.dev/x36xhzz/url_0/193039199_mp4_h264_aac_hd_7.m3u8). If you open this ts file in Quicktime player or Safari, the first frame is NOT black. bbb_2_remuxed.mp4 has been remuxed using the following command: "ffmpeg -i bbb_2.ts -c copy -f mp4 bbb_2_remuxed.mp4". If you open it up in Quicktime Player or Safari, the first frame IS black. I think I traced it down to an extra entry in the "elst" atom. If you probe this remuxed mp4 with trace level debugging on ("ffprobe -v trace bbb_2_remuxed.mp4") there's a short duration entry in the edit list of the video track. [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fd357104bc0] type:'elst' parent:'edts' sz: 40 8 40 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fd357104bc0] track[0].edit_count = 2 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fd357104bc0] duration=15 time=-1 rate=1.00 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fd357104bc0] duration=1 time=2999 rate=1.00 According to the Quicktime file format docs, the parent of the "elst" atom is "edts" and it is optional, so I removed that atom using mp4edit in the Bento4 tool kit. This produced "bbb_2_remuxed_no_edts.mp4". If you open this file in Quicktime or Safari, the first frame is NOT black. bbb_2_transcoded.mp4 is a transcoded version using "ffmpeg -i bbb_2.ts -video_track_timescale 90K -movflags +faststart bbb_2_transcoded.mp4". If you open this file in Quicktime or Safari, the first frame is NOT black. If you inspect the atoms in this file, the video "elst" atom is still there, but it only has a single entry in the list. [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fe3ecf06040] type:'elst' parent:'edts' sz: 28 8 28 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fe3ecf06040] track[0].edit_count = 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fe3ecf06040] duration=10017 time=3000 rate=1.00 So, ultimately I think the extra entry in the elst edit table is the cause of the issue. My question is whether it is possible to not have that happen via the ffmpeg/libav invocation, or whether this is a problem with the source material? Reset the pts i.e. first packet of video stream should have pts 0. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Hyper fast gone in Gyan's binaries
On 2024-04-09 05:58 pm, Bouke / edit 'B wrote: On 9 Apr 2024, at 13:45, Gyan Doshi wrote: On 2024-04-09 02:46 pm, Bouke / edit 'B wrote: For my work I try an install of FFmpeg by running it without any params. It used to be that the return would include ‘Hyper fast’. However, the current binaries from Gyan do not include that, but state ‘Universal media encoder’. That description was changed in 86e8439994d86b33f9b22ad64c4a31a559f05aac What would be a good, future proof way of testing if FFmpeg is indeed installed / running properly? Try ffmpeg -f lavfi -i nullsrc -t 0.1 -v 0 -progress pipe:1 -f null - | grep end If grep returns nothing, then something went wrong. Hi Gyan, Thanks. But what to youse for FFprobe / FFlay? Template: progname 2>&1 | grep "progname version" e,g, ffprobe 2>&1 | grep "ffprobe version" Regards, Gyan ___ 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".
Re: [FFmpeg-user] Hyper fast gone in Gyan's binaries
On 2024-04-09 02:46 pm, Bouke / edit 'B wrote: For my work I try an install of FFmpeg by running it without any params. It used to be that the return would include ‘Hyper fast’. However, the current binaries from Gyan do not include that, but state ‘Universal media encoder’. That description was changed in 86e8439994d86b33f9b22ad64c4a31a559f05aac What would be a good, future proof way of testing if FFmpeg is indeed installed / running properly? Try ffmpeg -f lavfi -i nullsrc -t 0.1 -v 0 -progress pipe:1 -f null - | grep end If grep returns nothing, then something went wrong. Regards, Gyan ___ 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".
Re: [FFmpeg-user] compile failure during make
On 2024-03-08 11:58 am, Gyan Doshi wrote: On 2024-03-08 06:06 am, Jim Worrall wrote: I’ve been building ffmpeg on a Mac since 2017, and this is the first time I’ve run into this kind of problem. I pulled the latest git head today. After getting all the dependencies set up, I configure ffmpeg successfully like this: ./configure \ --prefix=${TARGET} \ --extra-cflags="-fno-stack-check" \ --pkg-config-flags="--static" \ --enable-nonfree --enable-gpl --enable-version3 \ --enable-libx264 --enable-libx265 --enable-neon \ --enable-libfdk-aac --disable-lzma \ --enable-libfreetype \ --enable-libfontconfig \ --enable-libfribidi \ --enable-libass \ --enable-libzimg Then the 'make' command fails pretty quickly. Starting with the first error: The library major versions have been bumped so there's a change in ABI / API. Do a make distclean and rerun configure. I now see that this is an oversight in one of the recent commits. Should be corrected soon. Regards, Gyan ___ 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".
Re: [FFmpeg-user] compile failure during make
On 2024-03-08 06:06 am, Jim Worrall wrote: I’ve been building ffmpeg on a Mac since 2017, and this is the first time I’ve run into this kind of problem. I pulled the latest git head today. After getting all the dependencies set up, I configure ffmpeg successfully like this: ./configure \ --prefix=${TARGET} \ --extra-cflags="-fno-stack-check" \ --pkg-config-flags="--static" \ --enable-nonfree --enable-gpl --enable-version3 \ --enable-libx264 --enable-libx265 --enable-neon \ --enable-libfdk-aac --disable-lzma \ --enable-libfreetype \ --enable-libfontconfig \ --enable-libfribidi \ --enable-libass \ --enable-libzimg Then the 'make' command fails pretty quickly. Starting with the first error: The library major versions have been bumped so there's a change in ABI / API. Do a make distclean and rerun configure. Regards, Gyan libavdevice/avfoundation.m:1298:6: error: field designator 'priv_data_size' does not refer to any field in type 'const AVInputFormat' (aka 'const struct AVInputFormat') .priv_data_size = sizeof(AVFContext), ^ libavdevice/avfoundation.m:1299:6: error: field designator 'read_header' does not refer to any field in type 'const AVInputFormat' (aka 'const struct AVInputFormat') .read_header= avf_read_header, ^ libavdevice/avfoundation.m:1300:6: error: field designator 'read_packet' does not refer to any field in type 'const AVInputFormat' (aka 'const struct AVInputFormat') .read_packet= avf_read_packet, ^ libavdevice/avfoundation.m:1301:6: error: field designator 'read_close' does not refer to any field in type 'const AVInputFormat' (aka 'const struct AVInputFormat') .read_close = avf_close, ^ 8 warnings and 4 errors generated. make: *** [libavdevice/avfoundation.o] Error 1 JimsMBPro:ffmpeg jim$ To me it looks like an internal ffmpeg problem, but I’m far from an expert at compiling. Any idea what is wrong? Jim ___ 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". ___ 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".
Re: [FFmpeg-user] Packet corrupt on cut, notice on concat
On 2024-02-18 09:59 pm, Mark Filipak wrote: On 18/02/2024 05.09, Gyan Doshi wrote: Add -mpegts_flags +initial_discontinuity to get rid of the corrupt packet messages. This may or may not get rid of the glitches. Regards, Gyan Hey, Gyan, No effect whatsoever. Same message, same glitches. I forgot to mention, it has to be added to the trim commands. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Packet corrupt on cut, notice on concat
On 2024-02-18 01:52 pm, Mark Filipak wrote: I don't know how "DTS" became "000". Sorry. It's 3AM and I'm a little punchy. I found the problem. FFmpeg is corrupting the last B-frame at the end of cuts. It shows up during subsequent concatenation. Why it's happening is unknown of course. There is no workaround that I can conceive of. --Mark. DTS PTS video 1 video 2 < 504197456 504204963 N=133560 _B[P]B_B_P_B_I_ _I_B_P_ <== 3 < 504201210 504201210 N=133559 [B]P_B_B_P_B_I_ _I_B_P_ < 504204963 504216225 N=133563 _B_P_B_B[P]B_I_ _I_B_P_ <== 2 < 504208717 504208717 N=133561 _B_P[B]B_P_B_I_ _I_B_P_ < 504212471 504212471 N=133562 _B_P_B[B]P_B_I_ _I_B_P_ < 504216225 504223732 N=133565 _B_P_B_B_P_B[I] _I_B_P_ <== 1 < 504219978 504219978 N=133564 _B_P_B_B_P[B]I_ _I_B_P_ join here > 504219979 504227486 N=133566 _B_P_B_B_P_B_I_ [I]B_P_ > 504227486 504234994 N=133568 _B_P_B_B_P_B_I_ _I_B[P] > 504231240 504231240 N=133567 _B_P_B_B_P_B_I_ _I[B]P_ 1 - If I trim the end of video 1 at the I-frame at N=133565 ffmpeg -copyts -i this.m2ts -map 0 -bsf:v noise=drop='lt(pts\,2854113)+gt(pts\,504223732)' -bsf:a noise=drop='lt(pts\,2854113)+gt(pts\,504223732)' -bsf:s noise=drop='lt(pts\,2854113)+gt(pts\,504223732)' %CODE% -muxdelay 0 "%TARGET%" I get "Packet corrupt (stream = 0, dts = 504219978)" and there's a glitch during play. 2 - If I back up and trim the end of video 1 at the P-frame at N=133563 ffmpeg -copyts -i this.m2ts -map 0 -bsf:v noise=drop='lt(pts\,2854113)+gt(pts\,504216225)' -bsf:a noise=drop='lt(pts\,2854113)+gt(pts\,504216225)' -bsf:s noise=drop='lt(pts\,2854113)+gt(pts\,504216225)' %CODE% -muxdelay 0 "%TARGET%" I get "Packet corrupt (stream = 0, dts = 504208717)" and there's a glitch during play. 3 - If I back up again and trim the end of video 1 at the P-frame at N=133560 ffmpeg -copyts -i this.m2ts -map 0 -bsf:v noise=drop='lt(pts\,2854113)+gt(pts\,504204963)' -bsf:a noise=drop='lt(pts\,2854113)+gt(pts\,504204963)' -bsf:s noise=drop='lt(pts\,2854113)+gt(pts\,504204963)' %CODE% -muxdelay 0 "%TARGET%" I get "Packet corrupt (stream = 0, dts = 504201210)" and there's a glitch during play. Add -mpegts_flags +initial_discontinuity to get rid of the corrupt packet messages. This may or may not get rid of the glitches. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How can I delete packets?
On 2024-02-14 10:06 pm, Paul B Mahol wrote: On Wed, Feb 14, 2024 at 4:51 PM Mark Filipak wrote: Can anyone suggest a way to delete the marked packets? 0: video, 1: audio / DTS PTSticksbytes packet_CRC 1,2798640,2798640, 960, 60, 0xec16103f <== : 48 more <== 1,2845680,2845680, 960, 1084, 0xe54d2b6f <== 0,2846606,2854113, 3753, 640646, 0x3a5a0c45 1,2846640,2846640, 960, 1084, 0xe54d2b6f <== 1,2847600,2847600, 960, 1084, 0xe54d2b6f <== 1,2848560,2848560, 960, 1084, 0xe54d2b6f <== 1,2849520,2849520, 960, 1084, 0xe54d2b6f <== 0,2850360,2850360, 3753, 640646, 0xfed1d09a <== 1,2850480,2850480, 960, 1084, 0xe54d2b6f <== 1,2851440,2851440, 960, 1084, 0xe54d2b6f <== 1,2852400,2852400, 960, 1084, 0xe54d2b6f <== 1,2853360,2853360, 960, 1084, 0xe54d2b6f <== 0,2854113,2861621, 3753, 640646, 0x02208727 Probably no way, unless someone codes bitstream filter to drop packets. Like the noise bsf. But it does not compute or look at payload CRC. https://ffmpeg.org//ffmpeg-bitstream-filters.html#noise Regards, Gyan ___ 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".
Re: [FFmpeg-user] VBR encoding for libsvtav1.
On 2023-11-26 07:21 pm, Aditya Dandavate wrote: On Sun, 26 Nov, 2023, 6:44 pm Ferdi Scholten, wrote: I was trying and searching the web to 'how to encode videos with libsvtav1 with help of VBR rate control mode and I found on this page that setting -rc 1 will enable Variable Bitrate mode. https://gitlab.com/AOMediaCodec/SVT-AV1/-/blob/master/Docs/svt-av1_encoder_user_guide.md I tried to set '-rc 1' but the it says : `[out#0/nut @ 0208aba3eac0] Codec AVOption rc (Override the preset rate-control) 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 The doc link is for the standalone encoder program supplied with the library, not for use with ffmpeg. For ffmpeg, you should add -svtav1-params rc=1 Regards, Gyan ___ 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".
Re: [FFmpeg-user] 6.1 is out but I have request
On 2023-11-11 08:03 pm, Andrew Randrianasulu wrote: For announcement writer(s) - can you please at least list API changes with pointer to documentation section? See doc/APIchanges Regards, Gyan As someone who tries to co-maintain software (cinelerra-gg) relying on ffmpeg AND other libraries fishing out changes and examples out of git log exhaust me and makes me sad. ___ 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". ___ 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".
Re: [FFmpeg-user] -bsf hevc_metadata
On 2023-09-01 10:34 pm, pho...@neo.rr.com wrote: Hi, I'm trying to correct bad SARs via '-bsf' -- DARs are also bad but I'll fix them next. The error is: "Codec 'aac' (86018) is not supported by the bitstream filter 'hevc_metadata'." I'm not transcoding. I'm not using 'aac'. I don't see why the command is failing. Thanks for any suggestions. -- Mark. E:>ffmpeg -i "SOURCE.mp4" -bsf hevc_metadata=sample_aspect_ratio=64/45 "TARGET.mp4" `-bsf` is a per-stream option, so without a stream-specifier, the filter is applied to all streams in the output. `hevc_metadata` can only be applied to video streams with codec hevc, so ffmpeg tries to apply the bsf to audio stream, the bsf complains. Instead, use `-bsf:v` to apply it only to video streams. Regards, Gyan ___ 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".
Re: [FFmpeg-user] FFplay: How to show the first frame of a video
On 2023-08-14 11:47 am, Michael Koch wrote: Am 14.08.2023 um 07:41 schrieb Michael Koch: Hello, I'd like to make a batch file for FFplay that shows only the first frame of a video until the window is closed. It should also work for still images. This command line works for still images and for most videos, but not for all: ffplay -loop 0 -t 0 -x 500 -an %1 Below is the console output for a video where it doesn't work. I saw these three messages: [mov,mp4,m4a,3gp,3g2,mj2 @ 01e8bef96180] st: 0 edit list: 1 Missing key frame while searching for timestamp: 1000 [mov,mp4,m4a,3gp,3g2,mj2 @ 01e8bef96180] st: 0 edit list 1 Cannot find an index entry before timestamp: 1000. [h264 @ 01e8c4a4fc00] co located POCs unavailable I have two questions: 1. How must the command line be modified to make it work with all videos? 2. Any idea how to show the n_th frame of a video? Just found the solution myself: ffplay -vf select='eq(n,0)' -x 500 -an %1 This will decode and evaluate all frames. Go with ffplay -vf trim=end_frame=1,tpad=stop=-1:stop_mode=clone -x 500 -an %1 Regards, Gyan ___ 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".
Re: [FFmpeg-user] transcoding with -filter_complex 'colorspace=' not working as hoped
On 2023-02-27 04:59 pm, hydra3...@gmail.com wrote: the "colorspace=bt709:iall=bt601-6-625:fast=0" seems to be ignored entirely and the resulting clip is BT709. This tells colorspace that the input is 601 and the output should be 709. And mediainfo shows the output to have 709, as expected. Regards, Gyan ___ 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".
Re: [FFmpeg-user] ddagrab
On 2023-02-20 07:58 pm, Michael Koch wrote: Am 20.02.2023 um 15:18 schrieb Gyan Doshi: On 2023-02-20 07:33 pm, Michael Koch wrote: Am 20.02.2023 um 14:54 schrieb Gyan Doshi: On 2023-02-20 07:15 pm, Michael Koch wrote: Am 20.02.2023 um 14:29 schrieb Gyan Doshi: On 2023-02-20 06:27 pm, Michael Koch wrote: Am 20.02.2023 um 13:50 schrieb Gyan Doshi: On 2023-02-20 06:03 pm, Michael Koch wrote: Hello, I'm testing the ddagrab filter with the example from the documentation. I did only add -t 10 -y, but that can't be the problem. ffmpeg -f lavfi -i ddagrab -c:v h264_nvenc -cq 18 -t 10 -y out.mp4 What does this error message mean? [h264_nvenc @ 01f5f7bbf980] OpenEncodeSessionEx failed: no encode device (1): (no details) Works here. Could be a driver issue - try reverting. It did not work woth the older driver either. That's why I updated the driver today. 1) Try older builds, say, a month or two older. Do you mean older builds of FFmpeg, or older Nvidia driver? Older ffmpeg builds. I will do that later. From System Information, what is the OS version? Windows 10 Home Version 22H2 OS build 19045.2604 From dxdiag, what is the DirectX version? DirectX 12 Ok, don't see any obvious issues. One last try: run the cmd with -cq removed. Regards, Gyan ___ 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".
Re: [FFmpeg-user] ddagrab
On 2023-02-20 07:33 pm, Michael Koch wrote: Am 20.02.2023 um 14:54 schrieb Gyan Doshi: On 2023-02-20 07:15 pm, Michael Koch wrote: Am 20.02.2023 um 14:29 schrieb Gyan Doshi: On 2023-02-20 06:27 pm, Michael Koch wrote: Am 20.02.2023 um 13:50 schrieb Gyan Doshi: On 2023-02-20 06:03 pm, Michael Koch wrote: Hello, I'm testing the ddagrab filter with the example from the documentation. I did only add -t 10 -y, but that can't be the problem. ffmpeg -f lavfi -i ddagrab -c:v h264_nvenc -cq 18 -t 10 -y out.mp4 What does this error message mean? [h264_nvenc @ 01f5f7bbf980] OpenEncodeSessionEx failed: no encode device (1): (no details) Works here. Could be a driver issue - try reverting. It did not work woth the older driver either. That's why I updated the driver today. 1) Try older builds, say, a month or two older. Do you mean older builds of FFmpeg, or older Nvidia driver? Older ffmpeg builds. I will do that later. From System Information, what is the OS version? From dxdiag, what is the DirectX version? Gyan ___ 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".
Re: [FFmpeg-user] ddagrab
On 2023-02-20 07:15 pm, Michael Koch wrote: Am 20.02.2023 um 14:29 schrieb Gyan Doshi: On 2023-02-20 06:27 pm, Michael Koch wrote: Am 20.02.2023 um 13:50 schrieb Gyan Doshi: On 2023-02-20 06:03 pm, Michael Koch wrote: Hello, I'm testing the ddagrab filter with the example from the documentation. I did only add -t 10 -y, but that can't be the problem. ffmpeg -f lavfi -i ddagrab -c:v h264_nvenc -cq 18 -t 10 -y out.mp4 What does this error message mean? [h264_nvenc @ 01f5f7bbf980] OpenEncodeSessionEx failed: no encode device (1): (no details) Works here. Could be a driver issue - try reverting. It did not work woth the older driver either. That's why I updated the driver today. 1) Try older builds, say, a month or two older. Do you mean older builds of FFmpeg, or older Nvidia driver? Older ffmpeg builds. Also rerun ddagrab cmd with -v 40 and paste full log. Regards, Gyan ___ 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".
Re: [FFmpeg-user] ddagrab
On 2023-02-20 06:27 pm, Michael Koch wrote: Am 20.02.2023 um 13:50 schrieb Gyan Doshi: On 2023-02-20 06:03 pm, Michael Koch wrote: Hello, I'm testing the ddagrab filter with the example from the documentation. I did only add -t 10 -y, but that can't be the problem. ffmpeg -f lavfi -i ddagrab -c:v h264_nvenc -cq 18 -t 10 -y out.mp4 What does this error message mean? [h264_nvenc @ 01f5f7bbf980] OpenEncodeSessionEx failed: no encode device (1): (no details) Works here. Could be a driver issue - try reverting. It did not work woth the older driver either. That's why I updated the driver today. 1) Try older builds, say, a month or two older. 2) Paste full log of working gdigrab command. Regards, Gyan ___ 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".
Re: [FFmpeg-user] ddagrab
On 2023-02-20 06:03 pm, Michael Koch wrote: Hello, I'm testing the ddagrab filter with the example from the documentation. I did only add -t 10 -y, but that can't be the problem. ffmpeg -f lavfi -i ddagrab -c:v h264_nvenc -cq 18 -t 10 -y out.mp4 What does this error message mean? [h264_nvenc @ 01f5f7bbf980] OpenEncodeSessionEx failed: no encode device (1): (no details) Works here. Could be a driver issue - try reverting. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Create a black box over top of the video for a set duration at a set time.
On 2022-12-31 08:15 am, David Niklas wrote: Sorry for taking so long to reply. It is not working. Terminal output below. % ffmpeg -i Ducksinarow.mp4 -filter_complex "[0:0]drawbox=color=black:t=fill=enable='between(t,1.0,2.0)'" -c:a copy -c:v libvpx ducks.mp4 There should be a colon after fill, not = drawbox=color=black:t=fill:enable='between(t,1.0,2.0)' Regards, Gyan ___ 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".
Re: [FFmpeg-user] ffmpeg unexpectedly increases debug level for console messages
On 2022-08-08 08:02 pm, Dmitry Katsubo via ffmpeg-user wrote: Dear ffmpeg community, I have ffmpeg for Windows x64 downloaded from https://www.gyan.dev/ffmpeg/builds/ When ffmpeg is started from CygWin or Windows WSL the following happens: * It reports "error parsing debug value" and increases the debug level (verbosity of the messages printed to screen): $ ffmpeg.exe -y -v warning -i in.avs -c:v libx264 -crf 28 -c:a libvorbis -q:a 5 out.mkv Can't repro here in WSL. Guessed Channel Layout for Input Stream #0.1 : stereo error parsing debug value This message is printed when ffmpeg receives a 'd' key press and then some non-numeral presses. Check if adding -nostdin suppresses the behaviour. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Vertically flipped mp4 video
On 2022-06-28 07:38 pm, Ulf Zibis wrote: Am 28.06.22 um 15:14 schrieb Ulf Zibis: Am 28.06.22 um 14:59 schrieb Moritz Barsnick: Metadata flags do exist for rotating, but not for flipping. Thus this cannot be done without re-encoding. I'm irritated. Here I can read, that it exists: https://ffmpeg.org/ffmpeg-all.html#h264_005fmetadata So is this an error in the documentation, or what can I learn from this? That's a H.264 bitstream filter. It can only be used on H.264 video streams. Basic syntax is ffmpeg -i input -c copy -bsf:v h264_metadata=display_orientation=insert:flip=horizontal output Regards, Gyan ___ 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".
Re: [FFmpeg-user] streamselect in a realtime application
On 2022-06-16 01:17 pm, Michael Koch wrote: Am 16.06.2022 um 09:33 schrieb Gyan Doshi: On 2022-06-16 12:45 pm, Michael Koch wrote: I would like to understand why in some cases -loop 1 is required before the input files, and in some cases it can be omitted. -loop option is specific to the image sequence demuxer. Without it, a single image input is a video stream of 1 frame length. But why does this example work without -loop 1? Is it an undocumented feature of the remap filter, that it keeps the last mapping file alive? ffmpeg -i in.mp4 -i xmap.pgm -i ymap.pgm -lavfi [0][1][2]remap out.mp4 remap uses framesync which by default, repeats last frame of secondary input if primary input is still alive. You would apply loop when you need to keep alive an image sequence input at a timestamp beyond its natural length, usually a fade. With the tpad or loop filters, this can be done inside a filtergraph instead of at the demuxer level. Which method is better, -loop 1 before the input file, or doing it in the filtergraph? For single image input, filter looping is better as it avoids file I/O and repeat decoding of the input. Regards, Gyan ___ 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".
Re: [FFmpeg-user] streamselect in a realtime application
On 2022-06-16 12:45 pm, Michael Koch wrote: I would like to understand why in some cases -loop 1 is required before the input files, and in some cases it can be omitted. -loop option is specific to the image sequence demuxer. Without it, a single image input is a video stream of 1 frame length. You would apply loop when you need to keep alive an image sequence input at a timestamp beyond its natural length, usually a fade. With the tpad or loop filters, this can be done inside a filtergraph instead of at the demuxer level. Regards, Gyan ___ 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".
Re: [FFmpeg-user] concat audio files
On 2022-06-11 03:02 pm, Michael Koch wrote: I want to concat two audio files. What's wrong with this command line? ffmpeg -i birds1.wav -i birds1.wav -lavfi [0][1]concat=n=2:a=1 -c:a aac -y sound.mp4 Default value for concat v is 1. So you need to set it to 0. concat=n=2:a=1:v=0 Regards, Gyan ___ 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".
Re: [FFmpeg-user] FFplay, wrong output size on extended desktop
On 2022-05-25 08:31 pm, Michael Koch wrote: Hello, we want to use FFplay in a planetarium. It's a Windows computer with an extended desktop. The left monitor contains the user interface (1920x1080) and at the right side is a 4Kx4K extended desktop, which is shown on two 4096x2048 monitors, upper half and lower half. The extended 4Kx4K desktop is mirrored to the dome with 11 projectors. We are using this 4Kx4K test image: http://www.paulbourke.net/dome/testpattern/4096.png This is the FFplay command line: ffplay -noborder -left 1920 -top 0 4096.png The problem is that the image is shown twice as large as it should be, so that we see only the top left quadrant. You can see a screenshot in this discord channel (in german language): https://discord.com/channels/968113228230045706/968113812769210398 If we set the size to 2048x2048, then the output is 4096x4096: ffplay -noborder -x 2048 -y 2048 -left 1920 -top 0 4096.png But then we don't have the full 4K resolution. Who has an idea what's wrong here? The console output is below. What's the size value in Settings -> Display under Scale and Layout? Regards, Gyan ___ 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".
Re: [FFmpeg-user] SVT-AV1 configure error
On 2022-04-26 08:12 pm, Tim Erskine wrote: Hello, Using latest version. Looks like the latest SVT-AV1 version needs to be added… No. This is the actual error: ld: warning: ignoring file /usr/local/lib/libSvtAv1Enc.dylib, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 You'll need the lib built for x86-64. Regards, Gyan ___ 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".
Re: [FFmpeg-user] drawtext reload=N > 1?
On 2022-02-28 12:28 pm, Gyan Doshi wrote: On 2022-02-28 10:37 am, Steven Kan wrote: I am overlaying real-time weather on streaming video: https://www.youtube.com/channel/UCIVY11504PcY2sy2qpRhiMg/live I have a script reading from openweather.org every 10 minutes and writing to weather.txt*, and then drawtext reads weather.txt and applies it via: ./ffmpeg -thread_queue_size 2048 -hwaccel videotoolbox -i 'rtsp://anonymous:password1@192.168.1.13:554' -hwaccel videotoolbox -i 'rtsp://anonymous:password1@192.168.1.45:554' -vcodec h264_videotoolbox -b:v 5000k -acodec copy -t 2:00:00 -filter_complex "hstack=inputs=2,fps=20[stacked];[stacked]drawtext='fontfile=/System/Library/Fonts/Helvetica.ttc: textfile=/tmp/weather.txt: fontcolor=white: fontsize=48: x=(w-text_w)*0.01: y=(h-text_h)*0.01:reload=600'" -f flv "rtmp://a.rtmp.youtube.com/live2/” It’s working, but it seems very inefficient to read weather.txt every 1 frame when it gets updated only every 12,000 frames. According to the documentation, reload is a Boolean to read every frame or not, and attempting reload=2 or reload=600 results in: [drawtext @ 0x7fa696010600] Unable to parse option value "2" as boolean Would it be worthy feature request to allow drawtext to accept integer values N > 1, and then reload the text file every Nth frame? It seems like a win for CPU and I/O loading, with the benefit of being fully backward compatible with existing scripts that read in every 1 frame (e.g. reload=1). This has come up before. I'll patch it to make it an interval. Patched in git master. Regards, Gyan ___ 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".
Re: [FFmpeg-user] drawtext reload=N > 1?
On 2022-02-28 10:37 am, Steven Kan wrote: I am overlaying real-time weather on streaming video: https://www.youtube.com/channel/UCIVY11504PcY2sy2qpRhiMg/live I have a script reading from openweather.org every 10 minutes and writing to weather.txt*, and then drawtext reads weather.txt and applies it via: ./ffmpeg -thread_queue_size 2048 -hwaccel videotoolbox -i 'rtsp://anonymous:password1@192.168.1.13:554' -hwaccel videotoolbox -i 'rtsp://anonymous:password1@192.168.1.45:554' -vcodec h264_videotoolbox -b:v 5000k -acodec copy -t 2:00:00 -filter_complex "hstack=inputs=2,fps=20[stacked];[stacked]drawtext='fontfile=/System/Library/Fonts/Helvetica.ttc: textfile=/tmp/weather.txt: fontcolor=white: fontsize=48: x=(w-text_w)*0.01: y=(h-text_h)*0.01:reload=600'" -f flv "rtmp://a.rtmp.youtube.com/live2/” It’s working, but it seems very inefficient to read weather.txt every 1 frame when it gets updated only every 12,000 frames. According to the documentation, reload is a Boolean to read every frame or not, and attempting reload=2 or reload=600 results in: [drawtext @ 0x7fa696010600] Unable to parse option value "2" as boolean Would it be worthy feature request to allow drawtext to accept integer values N > 1, and then reload the text file every Nth frame? It seems like a win for CPU and I/O loading, with the benefit of being fully backward compatible with existing scripts that read in every 1 frame (e.g. reload=1). This has come up before. I'll patch it to make it an interval. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Unrecognized option -intra FFmpeg 5.0
On 2022-02-22 05:24 pm, adam smith via ffmpeg-user wrote: Hi fellow FFmpeg enthusiasts. Hope everyone is doing well. I have updated to FFmpeg v5.0 and mostly I am having a great time. I am however having an issue with Unrecognised option -intra when trying to create IMX30 or IMX50. The command below was working in 4.4 Use -g 1 in place of -intra Gyan ___ 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".
Re: [FFmpeg-user] ERROR: libvmaf >= 2.0.0 not found using pkg-config
On 2022-02-04 01:20 pm, 桃源老師 wrote: /var/folders/1d/qk_hczkn68xfv_7gdbkmhwx4gn/T//ffconf.DmkkrFIx/test.c:3:44: error: use of undeclared identifier 'vmaf_init' long check_vmaf_init(void) { return (long) vmaf_init; } It seems to me that vmaf_init() had existed before, so I'm not sure why this would happen. I'm afraid thet is it a bug of macOS... I attached config.log with this message. Hope someone help me... Make sure libvmaf.h is current and exists in only one path (no older copies elsewhere). Gyan ___ 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".
Re: [FFmpeg-user] watch a folder for new images
On 2022-01-30 07:25 pm, Michael Koch wrote: Am 30.01.2022 um 14:29 schrieb Gyan Doshi: On 2022-01-30 06:36 pm, Michael Koch wrote: The problem is that FFmpeg seems to read the link only one time. When I change the link target (while FFmpeg is running) with the copy command, the link is actually changed but FFmpeg is still showing the first image. When I stop and restart FFmpeg, then it shows the new image. Add -readrate 1 before the input. That didn't work when I tested it. The combination of -framerate 1 and -f image2 seems to work fine. Without an explicit -f image2, an auto image demuxer is used which is does not have a seek function defined. I'll see if I can rectify that. Regards, Gyan ___ 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".
Re: [FFmpeg-user] watch a folder for new images
On 2022-01-30 06:36 pm, Michael Koch wrote: The problem is that FFmpeg seems to read the link only one time. When I change the link target (while FFmpeg is running) with the copy command, the link is actually changed but FFmpeg is still showing the first image. When I stop and restart FFmpeg, then it shows the new image. Add -readrate 1 before the input. Regards, Gyan ___ 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".
Re: [FFmpeg-user] watch a folder for new images
On 2022-01-30 02:11 am, Michael Koch wrote: Am 29.01.2022 um 20:36 schrieb Michael Koch: Hello, is it possible to watch a folder for new images (like fileSystemWatcher in C#), and if a new image appears, then load it in FFmpeg? The question is for Windows. Very large PNG images (about 30 Megapixels) are written to the folder every 5 seconds. I want to load these images, extract the four corners, enlarge them by a factor 10, stack the four images together and show the result on the screen, until the next image appears. The filtering is no problem, the question is only how to watch the folder for new images. I did try to read the same image again and again with this command line: ffmpeg -loop 1 -i input.png -window_x 0 -window_y 0 -f sdl2 - I was hoping that I could overwrite the input image by another image, but that doesn't work. Access denied, because the file is open in FFmpeg. Use -stream_loop -1 instead of loop. Update the image atomically i.e. not during a read window.. Best way to update is to create a symlink and use that as input. Repoint the symlink when the new image file is ready. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to get video duration in a script using ffmpeg?
On 2022-01-19 05:29 pm, Bo Berglund wrote: On Wed, 19 Jan 2022 17:10:26 +0530, Gyan Doshi wrote: What do I need to just get that output I want? The closest you can get is ffprobe -v 0 -of compact=p=0:nk=1 -sexagesimal -show_entries format=duration INPUT Thanks, this returns the following output: 0:43:26.384000 Can the duration be limited to only seconds resolution (no decimals)? ffprobe -v 0 -of compact=p=0:nk=1 -sexagesimal -show_entries format=duration INPUT | grep -oP "^[\d:]+" Gyan ___ 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".
Re: [FFmpeg-user] How to get video duration in a script using ffmpeg?
On 2022-01-19 04:53 pm, Bo Berglund wrote: This is on Linux: I have tried in various ways to limit the output of ffmpeg/ffprobe to the line holding the duration but it seems impossible... I have a need to display the video duration as h:m:s on a listing of videos in a directory. So I want to create a small script to be called with the video file as argument and the output should be the video duration formatted as hh:mm:ss So I have tried various ways of using ffmpeg and ffprobe to extravt the data without much success. Whatever I do seems to create too much output like this following a StackExchange suggestion: ffprobe -hide_banner -i input.mp4 | grep Duration Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf58.45.100 Duration: 00:43:26.38, start: 0.00, bitrate: 452 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 852x480 [SAR 640:639 DAR 16:9], 348 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) Metadata: handler_name: VideoHandler Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 94 kb/s (default) Metadata: handler_name: SoundHandler I had assumed that the output would be limited to the requested duration but it seems like it spews out all other data no matter what I do. The 7th line only is what I expected out of grep but by some mysterious reason a lot more clobbers the output. What do I need to just get that output I want? The closest you can get is ffprobe -v 0 -of compact=p=0:nk=1 -sexagesimal -show_entries format=duration INPUT Regards, Gyan ___ 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".
Re: [FFmpeg-user] Can MJPEG be live streamed without transcoding?
On 2022-01-09 03:36 pm, Carl Eugen Hoyos wrote: Am Sa., 8. Jan. 2022 um 07:54 Uhr schrieb Adam Nielsen via ffmpeg-user : [mpegts @ 0x6725d0] Stream 0, codec mjpeg, is muxed as a private data stream and may not be recognized upon reading. You cannot mux random data into mpegts, this is not a limitation of FFmpeg. Well, one can. The muxer already doesn't reject any codec as the warning shows. A small change to the FFmpeg source code probably makes possible what you want, but since the resulting stream does not conform to any specification, the developers will not do it. I added an option -recast_ media to ffmpeg in 79ebdbb9b9 With this, the user can manually assign a decoder and process the packets in such a stream. e.g. ffmpeg -recast_media -c:0 mjpeg -iudp://[ff01:1::1]:5004 -map 0:v ... Regards, Gyan ___ 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".
Re: [FFmpeg-user] Has FFplay no option for video size?
On 2022-01-05 04:23 pm, Michael Koch wrote: Hello, when I use the -s option in this command line ffplay -noborder -s vga -left 0 -top 200 udp://239.0.0.1:1234 then I get this error message: "Option -s is deprecated, use -video_size. Option video_size not found." When I use the -video_size option ffplay -noborder -video_size vga -left 0 -top 200 udp://239.0.0.1:1234 then I get this error message: "Option video_size not found." I can use the -x and -y options as a workaround, that works as expected. But why does -video_size not work? video_size is available for a few raw frame capture device demuxers, and meant to signal the dimensions in formats without metadata. It's not meant for ffplay playback window size. Those are -x and -y Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to re-include cea_608 (cc_dec) in FFmpeg build when also using --disable-decoders
On 2021-12-31 12:14 am, Eric Juteau wrote: Hello, I’m trying to include only the codecs I need in my FFmpeg build. I’m using –disable-decoders and re-enabling just the ones that I need via –enable_decoder=’’. This seems to work on almost every codec I need, except for the eia_608 (cc_dec) decoder. I tried to include it using “cc_dec”, “eia_608” and both, and none of them add the decoder. It's ccaption. The name value is for logging purposes. Run ./configure --list-decoders to get a list of all recognized strings Regards, Gyan ___ 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".
Re: [FFmpeg-user] ffmpeg create wrong time information
On 2021-12-21 08:14 pm, Cecil Westerhof via ffmpeg-user wrote: I have the recording of a zoom meeting where I need to cut out a portion from and the first little bit has to be blacked out. I use the following command: ffmpeg -y\ -ss 00:26:05 \ -to 00:44:04 \ -i input.mp4 \ -vf " drawbox=enable='between(t, 0, 1.6)' : color = black: w = in_w : h = in_h : thickness = fill "\ -acodec copy \ -vcodec libx264 \ -crf 23 \ -preset veryfast \ output.mkv This creates a seemingly correct file, with one little problem: the time starts at 00:00:27 and ends at 00:18:26. (As displayed by the player mpv.) This should work. Where are the keyframes in the video stream? Regards, Gyan ___ 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".
Re: [FFmpeg-user] Disable ?UUID? randomnness ?
On 2021-12-04 07:17 am, Toerless Eckert wrote: Hi I am trying to set up ffmpeg to convert media file, mostly container format, e.g.: mp4/avi to mkv or the like (no reencoding). I notice that the same ffmpeg run creates binary different files every time it is run (on the same input). I would like the output file to be reproduceable the same. What i see is that UUIDs for tracks for example are randomnly generated. I found in documenttion --disable-random, but no ffmpeg build i can find seem to have this option. Whats the suggested option to disable this randomnness (or see it predictably) ? The general option is -bitexact. This doesn't apply to your usage but note that there are some encoders which aren't deterministic, so some variance can be seen. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Alternative to Dynamic Text
On 2021-11-09 04:31 pm, Nicolas George wrote: Gyan Doshi (12021-11-09): Not on FAT32. And since it's not guaranteed, the filter should accommodate that. What are you talking about? The filter does not write the file, it just reads it. It is the responsibility of whoever writes the file to ensure that the writing does not overlap with the reading. I'm talking about the fact that on FAT32 volumes, atomic replacement is not possible, so the writer/user can't ensure that. Even on NTFS, the user may not be replacing the file via win32 API calls of their choosing. And the filter tolerates no failures; the OP is experiencing premature ffmpeg termination. It shouldn't be that fragile. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Alternative to Dynamic Text
On 2021-11-09 03:15 am, Marton Balint wrote: On Mon, 8 Nov 2021, Gyan Doshi wrote: On 2021-11-07 02:56 pm, Marton Balint wrote: On Sun, 7 Nov 2021, Gyan Doshi wrote: This can work until it doesn't. The filter doesn't tolerate any load failures. I'll see if I can add a short sleep and retry. If it still fails, we continue with the old text. I am not a fan of this to be honest. There is a proper way to do atomic renames even in windows, see the referenced stackoverflow articles, so it should just work. The comments at SO by Craig Barkhouse ('NTFS developer at Microsoft') says that "ReplaceFile is most definitely NOT atomic." and that, forMoveFileEx, atomicity is not guaranteed, depending on the underlying fs ops the call leads to. So, I think some fault tolerance on our part is called for. But later on he also says that MoveFileEx with MOVEFILE_REPLACE_EXISTING flag is atomic 99.99% of the time with the only exception of the target file being huge... Not on FAT32. And since it's not guaranteed, the filter should accommodate that. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Alternative to Dynamic Text
On 2021-11-07 02:56 pm, Marton Balint wrote: On Sun, 7 Nov 2021, Gyan Doshi wrote: On 2021-11-07 03:58 am, Anatoly wrote: On Thu, 4 Nov 2021 20:14:16 +0800 LianCheng wrote: Yes, would like to know in ffmpeg, under drawtext, the textfile (reload=1) is using read-write or read-only mode? I think "procmon.exe" from Microsoft https://docs.microsoft.com/en-us/sysinternals/downloads/procmon can help you to find the answer (and maybe somehow "debug" the situation). FFmpeg opens the file with O_RDONLY mode. Btw, I think following approach may help (or may not, I have no windows system by hand to test it myself). Let's say I want to atomically replace file a.txt with file b.txt mklink /h wrk.txt a.txt open wrk.txt with ffmpeg update b.txt as needed mklink /h next.txt b.txt move /y next.txt wrk.txt now update a.txt as needed or may delete a, b and create new b. hardlink again and move again and so on in loop This can work until it doesn't. The filter doesn't tolerate any load failures. I'll see if I can add a short sleep and retry. If it still fails, we continue with the old text. I am not a fan of this to be honest. There is a proper way to do atomic renames even in windows, see the referenced stackoverflow articles, so it should just work. The comments at SO by Craig Barkhouse ('NTFS developer at Microsoft') says that "ReplaceFile is most definitely NOT atomic." and that, forMoveFileEx, atomicity is not guaranteed, depending on the underlying fs ops the call leads to. So, I think some fault tolerance on our part is called for. Instead of a sleep and retry, we can simply continue with existing text and try again on next frame. We can also extend the semantics of the option (in a backward-compatible way) to specify the frame interval at which the file is reloaded. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Alternative to Dynamic Text
On 2021-11-07 12:06 pm, LianCheng Tan wrote: Hi Gyan, Will it be added in the next release of ffmpeg? No guarantees but I'll aim for that. Regards, Gyan On 7 Nov 2021, at 1:08 PM, Gyan Doshi wrote: On 2021-11-07 03:58 am, Anatoly wrote: On Thu, 4 Nov 2021 20:14:16 +0800 LianCheng wrote: Yes, would like to know in ffmpeg, under drawtext, the textfile (reload=1) is using read-write or read-only mode? I think "procmon.exe" from Microsoft https://docs.microsoft.com/en-us/sysinternals/downloads/procmon can help you to find the answer (and maybe somehow "debug" the situation). FFmpeg opens the file with O_RDONLY mode. Btw, I think following approach may help (or may not, I have no windows system by hand to test it myself). Let's say I want to atomically replace file a.txt with file b.txt mklink /h wrk.txt a.txt open wrk.txt with ffmpeg update b.txt as needed mklink /h next.txt b.txt move /y next.txt wrk.txt now update a.txt as needed or may delete a, b and create new b. hardlink again and move again and so on in loop This can work until it doesn't. The filter doesn't tolerate any load failures. I'll see if I can add a short sleep and retry. If it still fails, we continue with the old text. Regards, Gyan ___ 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". ___ 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". ___ 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".
Re: [FFmpeg-user] Alternative to Dynamic Text
On 2021-11-07 03:58 am, Anatoly wrote: On Thu, 4 Nov 2021 20:14:16 +0800 LianCheng wrote: Yes, would like to know in ffmpeg, under drawtext, the textfile (reload=1) is using read-write or read-only mode? I think "procmon.exe" from Microsoft https://docs.microsoft.com/en-us/sysinternals/downloads/procmon can help you to find the answer (and maybe somehow "debug" the situation). FFmpeg opens the file with O_RDONLY mode. Btw, I think following approach may help (or may not, I have no windows system by hand to test it myself). Let's say I want to atomically replace file a.txt with file b.txt mklink /h wrk.txt a.txt open wrk.txt with ffmpeg update b.txt as needed mklink /h next.txt b.txt move /y next.txt wrk.txt now update a.txt as needed or may delete a, b and create new b. hardlink again and move again and so on in loop This can work until it doesn't. The filter doesn't tolerate any load failures. I'll see if I can add a short sleep and retry. If it still fails, we continue with the old text. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Framerate automatically increased while cropping
On 2021-08-23 10:45 am, Adam Nielsen via ffmpeg-user wrote: why is the framerate automatically changed here from 29.98 fps to 120 fps, and how can I prevent from this ? Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 2508 kb/s, 29.98 fps, 120 tbr, 90k tbn, 2k tbc (default) From what I can find, "tbr" is the target framerate the media is indicating it wants. So ffmpeg is just respecting that value. I guess you could use the -r option to override this and force a specific framerate if you want something different? Or you could fix the metadata in the source file to have the correct target framerate to begin with. `-tbr` is the framerate required to retain the smallest interval between frames in the jnput. You can add `-fpsmax 30` with v4.4 or newer. This will limit output rate to 30 if the input is higher else keep the original rate. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Decimal times to frame numbers
On 2021-08-21 03:05 pm, Nicolas George wrote: - By adding -r on your output and by using a format like MP4 that only supports constant frame rate, you are forcing ffmpeg to duplicate or A nit, but MP4 is inherently VFR-ready - that's what the (mandatory) stts box is for. It is for some opaque reason that the muxer defaults to CFR, possibly to do with some limitation or bug in the early days. Regards, Gyan ___ 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".
Re: [FFmpeg-user] looping an animated gif
On 2021-07-09 12:07, Michael Koch wrote: Hello, I want to overlay an animated gif over a video. The gif must be looped because it's much shorter than the video. I did try the "-loop 1" option, but I get the error message "Option loop not found". However, the loop option works fine for jpg images. How can an animated gif be looped? GIF has a dedicated demuxer. See ffmpeg -h demuxer=gif There's a boolean option called -ignore loop. You can also apply -stream_loop. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Problem with changing options at runtime with a command
On 2021-07-03 17:17, Alex Christoffer Rasmussen wrote: Hello i am trying to change options in the crop filter at runtime with a command this it my test command: ./ffmpeg -hide_banner -y -f dshow -rtbufsize 128M -i video="Cam Link 4K" -filter_complex "[0:v]fps=10[rate], [rate]scale=1280:720, crop=in_w, drawtext=fontfile=RobotoMono-Medium.ttf: text=\'test\': fontsize=50: fontcolor=white: box=1: boxcolor=black@0.5: boxborderw=5" -update 1 public\img.png it works and returns: Input #0, dshow, from 'video=Cam Link 4K': Duration: N/A, start: 136428.863000, bitrate: N/A Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, 60 fps, 60 tbr, 1k tbn Stream mapping: Stream #0:0 (rawvideo) -> fps drawtext -> Stream #0:0 (png) Press [q] to stop, [?] for help Output #0, image2, to 'public\img.png': Metadata: encoder : Lavf59.3.101 Stream #0:0: Video: png, rgb24(pc, progressive), 1280x720, q=2-31, 200 kb/s, 10 fps, 10 tbn Metadata: encoder : Lavc59.2.100 png then sending: c crop -1 w=100 the retun is: Command reply for stream 0: ret:-40 res: and nothing changes instead trying: c drawtext -1 reinit fontcolor=red the retun is: Command reply for stream 0: ret:0 res: and the text turns red what am i missing? As the docs state, the acceptable commands are w, h, x, ,y so the syntax is c crop -1 w 100 Regards, Gyan ___ 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".
Re: [FFmpeg-user] "More than 1000 frames duplicated" when converting JPGs to video
On 2021-06-27 11:43, Eduard B wrote: Hi list, I am using ffmpeg to convert a large set of timelapse still frames (JPGs) captured by my surveillance camera to a video. Using x265 library to make the file smaller. The particular batch I have tested has 14401 JPG files in a folder (one image captured every 6 seconds). Command is: ffmpeg -i /mnt/user/cctv/mjwVb9pFuK/8sHGyfFGu6_timelapse/$(date -d "-1 days" '+%Y-%m-%d')/%06d.jpg -c:v libx265 -preset medium -crf 20 -r 30 -c:a aac -b:a 128k /mnt/user/cctv/mjwVb9pFuK/8sHGyfFGu6_timelapse/$(date -d "-1 days" '+%Y-%m-%d')_x265_correct.mp4 I wanted to convert to a 30 FPS video, the command I have been using, which works, converts the files to a video, however it complains about duplicate frames. While investigating, I have realized the final duplicate frames count has 2880 frames, which is 1/5 of the total amount of still images. Seems to me that the encoder assumes the input is recorded at 25 FPS and tries to convert it to a video which has the same length, but with 30 FPS. However, the input is a series of still images with no frame rate. I have changed the command to a similar one, using 25 FPS frame rate parameter value instead, and the complaint about duplicate frames is gone. This means I would need to explicitly tell the encoder the input is using 30 FPS, rather than the default assumption of 25. I have been looking at the "--fps" option, however documentation says "YUV only", I'm not sure it's applicable. For image sequence inputs, use the framerate option. ffmpeg -framerate 30 -i ... Regards, Gyan ___ 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".
Re: [FFmpeg-user] ffmpeg transitions not working
On 2021-06-19 18:22, ibur...@compuscience.com wrote: I'm having problems with transitions. To be sure I am not making something wrong, I simply copy/paste the example shown in https://ffmpeg.org/ffmpeg-filters.html#xfade, adjusted my two video file names to comply with the example, and got the same problems as with my own commands. The example on the site shows this: ffmpeg -i first.mp4 -i second.mp4 -filter_complex xfade=transition=fade:duration=2:offset=5 output.mp4 My first and second files have 1 min each. First I run the command without any change; obviously offset 5 isn't appropriate but I gave it a try. Second I adjusted duration to 10 and offset to 55 to be appropriate with my two mp4 files. The result was the same: The final output.mp4 has the right duration (1:55) but it is totally black. What I see during execution is that the first video is read/copied to output.mp4 quite fast. After that it starts reading second.mp4 and works a very long time on it, probably close to one minute. Which player? Try ffmpeg -i first.mp4 -i second.mp4 -filter_complex xfade=transition=fade:duration=2:offset=5 -pix_fmt yuv420p output.mp4 Regards, Gyan ___ 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".
Re: [FFmpeg-user] Convert flv to mp4. Bad video quality
On 2021-05-28 21:19, Michael Koch wrote: Am 28.05.2021 um 17:18 schrieb Carl Eugen Hoyos: This is (nearly) completely wrong: 9 is still high quality, highest compression happens at a much higher value. Old MEncoder documentation recommends not use a value lower than 2, sane values start between 5 and 10. This is an important information and should be added to the documentation. The -q option is missing in chapter 16.16.1 in ffmpeg-all.html 16.16.1 is libxvid which is an external MPEG-4 Part 2 encoder,. The OP specified the native encoder, which isn't documented and is fairly low on my list. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Decklink timestamp_align, what should it do?
On 2021-05-02 15:20, Bouke wrote: On 2 May 2021, at 11:02, Marton Balint wrote: On Sun, 2 May 2021, Bouke wrote: From the manual: 'timestamp_align Capture start time alignment in seconds. If set to nonzero, input frames are dropped till the system timestamp aligns with configured value Ok, when I put -timestamp_align in my command, it does wait ‘a bit’ before starting capture. That’s what I’m after, but i have no clue how long it waits. It’s not a ‘wait X seconds’ for sure. It waits until UTC modulo timestamp_align becomes 0. So for 60 it waits until a full minute boundary is reached. Ok, but what is ' UTC modulo’ ? If i enter 0, it starts capturing immediately, higher values do give ‘a’ delay, but it’s not predictable at all. (It’s off by a random value, up to 30% difference from what I expect…) The actual check is to take the modulus of the system time with respect to timestamp_align. If this modulus is less than one frame duration (inverse of framerate), then it starts capture. So let's say timestamp_align is 0.5s and framerate is 25, so frame duration is 40ms. If system time is 1000.40s, then modulus is 400ms which is greater than 40ms, so capture doesn't start. If it's 1000.53s, then modulus is 30ms, which is less than 40ms so capture is initiated. Regards, Gyan ___ 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".
Re: [FFmpeg-user] independent codec settings
On 2021-04-26 22:20, Alexander Solonsky via ffmpeg-user wrote: Dear peers, I use this command to create 2 streams out of 1 with different gop sizes: ffmpeg -i $1 -map 0:v:0 -c:v:0 libx264 -x264-params "keyint=24:keyint_min=24:bframes=1" -map 0:v:0 -c:v:1 libx264 -x264-params "keyint=72:keyint_min=72:bframes=3" $2 -y but the output video streams have only the latest gop structure. Nicolas George from the ffmpeg-devel mail list told me that I need to use a stream specifier to achieve the desired result. Can you please help me to add the stream specifiers to the script above and achieve different gop sizes for different streams? -x264-params :v:0 "keyint=24:keyint_min=24:bframes=1" and -x264-params:v:1 "keyint=72:keyint_min=72:bframes=3" Regards, Gyan ___ 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".
Re: [FFmpeg-user] drawtext timecode from metadata
On 2021-04-24 16:56, Bouke wrote: trying to capture and burn in TC at the same time. Burn in TC works if I specify the start TC, but I can’t probe and then record, as that takes time so the TC will be off. So I’m hoping to set the drawtext filter on the fly, I tried: drawtext=timecode=%{metadata\\\:timecode}: -filter_complex "[0:0]drawtext=timecode=%{metadata\\\:timecode}:fontfile='/Volumes/Data/fonts/courbd.ttf':r=25:x=(w-tw) - (w * 0.02): y=h-(2*lh):fontsize=54.0:fontcolor=white” This does not work, gives me: [Parsed_drawtext_0 @ 0x7ff9fbe0cb40] Unable to parse timecode, syntax: hh:mm:ss[:;.]ff Is there a way to do this? Not possible. Let me see if it's possible to get it from frame metadata. How are you capturing? Gyan ___ 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".
Re: [FFmpeg-user] How to filter time dependent
On 2021-04-23 17:05, Nicolas George wrote: Ulf Zibis (12021-04-23): I already had checked that. Unfortunately, crop has no timeline support: How would that work? Enabling or disabling crop changes the output resolution, which is not supported by libavfilter. Strictly, it's supported via -noautoscale (which you reviewed), but it's not supported by (almost) any encoder. However, the crop result can be consumed before buffersink, e.g. as an overlay. I've done this many times. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to filter time dependent
On 2021-04-23 11:37, Michael Koch wrote: Am 22.04.2021 um 23:27 schrieb Ulf Zibis: Am 22.04.21 um 13:01 schrieb Michael Koch: Am 22.04.2021 um 12:50 schrieb Ulf Zibis: Hi, I want to filter a video from pts 0 to 1999 with filter A, then from 2000 to 2199 with filter B, from 2200 with filter A and finally the whole stream with filter C. Can one please give me an example for a working command line? untested: ffmpeg -i input.mp4 -lavfi split[a][b];[a]filter_A[c];[b]filter_B[d];[c][d]select=bitor(between(t,0,1999),between(t,2200,1)),filter_C out.mp4 I found out, that the 'between(t,a,b)' should be surrounded by colons. But anyway the reality is more complex. I have to use 3 different filters. So I tried: ffmpeg -i input.mp4 -filter_complex "split[a][b][c];[a]filter_A[d];[b]filter_B[e];[c]filter_C[f];[d]select='between(t,0,1999)';[e]select='between(t,2000,2199)';[f]select='between(t,2200,1)'",filter_D out.mp4 With this I got a weird file with 3 video streams: I think in this example it's not correct how you are using the select filter. The select filter needs two or more inputs, and it selects one of them and passes this stream to the output. You may be thinking of the interleave filter. select uses exactly one input. On this topic generally, see https://superuser.com/q/1632998/ Regards, Gyan ___ 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".
Re: [FFmpeg-user] Ffmpeg logging
On 2021-04-21 00:50, Mohammed Bey Ahmed Khernache wrote: Hello, would you tell me whether it is possible to log the number of cycles needed to decode every single frame using ffmpeg ? The closest you can get is by adding `-benchmark_all`. The timings are in microseconds. Regards, Gyan ___ 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".
Re: [FFmpeg-user] [EXTERNAL] Re: QuickTime Movie Header Atom Poster Time
On 2021-04-20 22:39, Bryce Newman wrote: Hi Gyan, Thank you! Can this patch be included in future stable versions of ffprobe? All features added to the master branch will make it to a future release. Gyan ___ 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".
Re: [FFmpeg-user] QuickTime Movie Header Atom Poster Time
On 2021-04-20 21:52, Bryce Newman wrote: Hi, Using the latest ffprobe version 4.4 I am trying to print the poster time from the mvhd. Here is the data structure https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/QTFFChap2/qtff2.html#//apple_ref/doc/uid/TP4939-CH204-32947. As I see from the code in https://github.com/FFmpeg/FFmpeg/blob/f40e9b13554d88cbdd6cd2b4a3da2cbea9590f5d/libavformat/mov.c#L1524 poster time is there, but I am not sure of the ffprobe args that will log poster time, current time etc to stdout. I should note that exiftool does log to stdout the poster time. i.e. exiftool POSTERFRAME_YES_995968260_h1.mov | grep Poster Poster Time : 7.32 s How can I have ffprobe also print out the poster time or all the values in the mvhd? Nothing is done with that data - it's not exported. I'll send a patch to write many of those fields out as metadata, but I expect that to take some time as many regression unit tests will have to be changed. Regards, Gyan ___ 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".
Re: [FFmpeg-user] specifying header for http post
On 2021-03-30 20:44, Daniel Oberhoff via ffmpeg-user wrote: Hello I am trying to add an authorization header to a http post output, but somehow cant seem to succeed. my request looks like this: ffmpeg -f lavfi -i testsrc=duration=10:size=1280x720:rate=30 -vframes 1 -headers "Authorization: foo" -f image2 -chunked_post 0 https://foo <https://foo/>.org/endpoint -loglevel trace but the trace doesnt mention the auth header at all or respect the chunked_post 0. am I missing something? You need to use the image2 option protocol_opts to pass on these options. See the last example at http://www.ffmpeg.org/ffmpeg-formats.html#Options-7 Regards, Gyan ___ 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".
Re: [FFmpeg-user] 'mix=nb_inputs=2' provokes error...
On 2021-03-24 16:29, Moritz Barsnick wrote: On Wed, Mar 24, 2021 at 10:18:55 +0100, Peter White wrote: [AVFilterGraph @ 025772b53dc0] Error initializing filter 'mix' with args 'nb_inputs=2:weights=3 2' Error initializing complex filters. Option not found There seems to be an error in the documentation. The option is called "inputs". Indeed. Fixed. Gyan ___ 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".
Re: [FFmpeg-user] Is ffmpeg's "Output Stream" framerate... wrong?
using the VFR frame rate echoed in the INPUT stream. So my question is: Why? Timestamps are expressed in units of time_base. The reciprocal of the time_base is reported as the tbn value for that stream. Your input has a tbn of 9; the output actually has no timestamps (rawvideo) but for processing, the timebase is assigned as the reciprocal of the output framerate, here 30. Imagine two stopwatches, one with millisecond display and one limited to seconds. The average lap time calculated is liable to differ. Same here, since the timekeeping resolution is much lower, the output (nominal) timestamps shift a bit, affecting the fps as well. Regards, Gyan ___ 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".
Re: [FFmpeg-user] I am a new ffmpeg user...
On 2021-03-11 08:00, Barry Smith wrote: I need to recode some rips that I made from a DVD collection. I want to use a different set of options to make my rips smalled. I am not looking to distribute torrents or put my legal rips anywhere except on a USB flash drive. So, after searching the internet, I found out about FFDSHOW. sounded like the perfect solution for what I wanted to do. So, I found the download page on the main ffdshow website, and I downloaded a Windows "full build" file 7zip'd from the git hub site. I had absolutely no problem at all. the name pf the file is ffmpeg-2021-03-09-git-c35e456f54-full_build.7z. I looked through the archive, and couldn't find ANY install.* or setup.* so I extracted the archive. The ffmpeg binaries are standalone and require no installation to any specific path. Nonetheless, users new to the CLI may find this link useful: https://video.stackexchange.com/q/20495/ The binaries are 64-bit as mentioned on the first line of the README. Regards, Gyan ___ 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".
Re: [FFmpeg-user] How can I force a 360kHz time base?
On 27-02-2021 06:54 am, Mark Filipak (ffmpeg) wrote: 'ffmpeg -i input.mkv -vf "showinfo" -codec:a copy -codec:s copy -dn output.mkv' [Parsed_showinfo_0 @ 013c877124c0] n: 1 pts: 33 pts_time:0.033 pos: 10052 fmt:yuv420p sar:32/27 s:240x236 i:P iskey:0 type:B checksum:3CF10BFE plane_checksum:[64208370 00B13226 C5775659] mean:[25 126 131 ] stdev:[12.8 6.1 1.6 ] A PTS of 33 with a time_base.den of 1000 assigns pts time of 0.033ms exactly. 0.033 x 1/36 = 11880, as you observed. The Matroska timebase is insufficient to precisely store 29.97 fps timestamps. Nothing to do with ffmpeg. Regards, Gyan ___ 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".
Re: [FFmpeg-user] PTS resolution
On 23-02-2021 12:40 pm, Mark Filipak (ffmpeg) wrote: On 2021-02-23 01:38, Carl Zwanzig wrote: You missed mentioning the program clock reference (PCR) of the -ts. -And- many references to PTS directly say that it's contained in a -ts (which if the -ts contains a -ps, is correct). The answers are in a GIF illustration (not text) in the H.262 spec, so searching the PDF doesn't find any hits. From the GIF, In the encoder: STC (System Time Clock) is 27MHz. PTC is (STC counter value)+(fixed buffer delay) that's written into the PS at the start of each frame. [1] PCR (Program Clock Reference) is (STC counter value) that's written into the TS (in the muxer) every 100ms. In the decoder: STC (System Time Clock) is 27MHz. There are no counters in the decoder. There's a STC-PTS comparator to signal new frames and a STC-PCR comparator to control the STC's phase lock loop. [1] Why the GIF leaves out the by-300 PTS divider is a mystery, but I know it exists (i.e., PTS resolution = 1/(27MHz/300). Our demuxer/muxer only read the top 33-bits (so TB is set at 90kHz). The bottom 9-bits are ignored, last time I checked. There's 6 bits of padding in between. The question is: What does ffmpeg use as its TB in the decoder and pipeline? There is no fixed timebase used by ffmpeg. Decoders will set timebase of emitted frames based on the bitsteam. Filters will use that unless they set it based on user input or processing. As a fallback when not set, modules may usually set it to 1/100. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Keep vfr and original pts
On 24-01-2021 10:44 pm, Wolfgang Hugemann wrote: Use -vsync 0. No addiitional frames should be added. Well, this is true, but the video is switched to cfr. As I said, I tried this too. And usin mkv or webm instead of mp4 make no difference. Why do you believe the result is CFR, or rather different than the source? Gyan ___ 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".
Re: [FFmpeg-user] Keep vfr and original pts
On 23-01-2021 11:52 pm, Carl Eugen Hoyos wrote: Am Sa., 23. Jan. 2021 um 19:19 Uhr schrieb Wolfgang Hugemann : I have a vfr mp4 video from a private security cam with a very specific pts pattern. The duration of the frames is 80-80-40-80-80-40-80-80-40-... ms. I would like to hand this video to others as a demonstration of vfr video, but have to blur it in order to preserve privacy. I tried something like ffmpeg -i in.mp4 -vf boxblur=10:1 -vsync 2 -copyts blur.mp4 FFmpeg's mov muxer does not support vfr, use another container. Yes, it does. Citation for your claim? Use -vsync 0. No addiitional frames should be added. Regards, Gyan ___ 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".
Re: [FFmpeg-user] No size progress information available when using tee muxer
On 23-01-2021 03:27 pm, marcus.fe...@gmx.net wrote: Switching the order of the outputs didn't make a difference. I'm aware of the progress option and I used it already in a non-muxer scenario, so piping works on Win as well. However, I can't figure out the right syntax for applying the -progress option to a single muxer output. -progress is global, not per-output, so it is set as usual. Regards, Gyan ___ 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".
Re: [FFmpeg-user] I am unable to get ffmpeg to calculate PSNR for any video files.
On 19-01-2021 10:38 pm, Reed Crowe wrote: Still does not work. With this command: ffmpeg -i /home/rcrowe/LVT/17647_20210118_195325.mp4 -i /home/rcrowe/LVT/test.mp4 -enc_time_base -1 -filter_complex psnr -f null - I get the same results: ffmpeg version N-100671-gc48110a4a4 Copyright (c) 2000-2021 the FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04) configuration: libavutil 56. 63.101 / 56. 63.101 libavcodec 58.117.101 / 58.117.101 libavformat58. 65.101 / 58. 65.101 libavdevice58. 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 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/rcrowe/LVT/17647_20210118_195325.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 title : 'LVT17647' encoder : Lavf58.20.100 Duration: 00:00:59.87, start: 0.00, bitrate: 67 kb/s Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/bt470bg/bt709), 704x480, 66 kb/s, 15.03 fps, 15 tbr, 90k tbn, 180k tbc (default) Metadata: handler_name: VideoHandler vendor_id : [0][0][0][0] Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/home/rcrowe/LVT/test.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 title : 'LVT17647' encoder : Lavf58.20.100 Duration: 00:00:59.87, start: 0.00, bitrate: 67 kb/s Stream #1:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/bt470bg/bt709), 704x480, 66 kb/s, 15.03 fps, 15 tbr, 90k tbn, 180k tbc (default) Metadata: handler_name: VideoHandler vendor_id : [0][0][0][0] Stream mapping: Stream #0:0 (h264) -> psnr:main Stream #1:0 (h264) -> psnr:reference psnr -> Stream #0:0 (wrapped_avframe) Press [q] to stop, [?] for help [null @ 0x559c3fc0d6c0] Input stream data not available, using default time base Output #0, null, to 'pipe:': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 title : 'LVT17647' encoder : Lavf58.65.101 Stream #0:0: Video: wrapped_avframe, yuvj420p(pc, bt470bg/bt470bg/bt709, progressive), 704x480, q=2-31, 200 kb/s, 15 fps, 15 tbn (default) Metadata: encoder : Lavc58.117.101 wrapped_avframe *[null @ 0x559c3fc0d6c0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 748 >= 748* frame= 899 fps=0.0 q=-0.0 Lsize=N/A time=00:00:59.86 bitrate=N/A speed=79.3x video:471kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown *[Parsed_psnr_0 @ 0x559c3fe87bc0] PSNR y:inf u:inf v:inf average:inf min:inf max:inf* The results are right above, on the last line. 'inf' is infinity meaning the two inputs are identical. Regards, Gyan ___ 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".
Re: [FFmpeg-user] I am unable to get ffmpeg to calculate PSNR for any video files.
pped_avframe *[null @ 0x55e31e9a0240] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 748 >= 748* frame= 899 fps=0.0 q=-0.0 Lsize=N/A time=00:00:59.86 bitrate=N/A speed= 150x video:471kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [Parsed_psnr_4 @ 0x55e31edfa580] PSNR y:inf u:inf v:inf average:inf min:inf max:inf PSNR is calculated and printed on the last line above. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Streaming an mp4/mov file in real time using FFMPEG (no moov atom)
On 11-01-2021 10:34 am, Carl Zwanzig wrote: On 1/10/2021 4:23 PM, Carl Eugen Hoyos wrote: Am Mo., 11. Jan. 2021 um 01:19 Uhr schrieb Rishit Temp : I am trying to read an incomplete MP4 file as it is being written in real time. This is in general impossible with FFmpeg. I'm not sure it's possible at all with mp4/mov at all- you need metadata that's written when the file is closed. In some live broadcast workflows, which need some post work before telecast, the encoder writes a file with pre-specified metadata i.e. timestamps and packet offsets, and writes out the media to those offsets. This is inefficient in terms of space packing but any NLE can open these files and access the new data as it gets added. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Extract audio from video and use one frame as cover image
On 09-01-2021 08:06 am, Bernhard Döbler wrote: Am 08.01.2021 um 05:18 schrieb Gyan Doshi: On 08-01-2021 06:37, Bernhard Döbler wrote: I have video files. I want to extract the audio and use one single frame from the video track as cover image. The command line looks like this ffmpeg.exe -y -i "e:\01. Video.mp4" -filter:v "select=between(145\,prev_pts*TB\,pts*TB)" -frames:v 1 -c:a copy -c:v mjpeg -q:v 2 -disposition:v:0 attached_pic "e:\01. Audio.m4a" This is supposed to embed a frame from around second 145 as cover image. The issue is that the whole processing of the file stops after the single image was extracted and my resulting file has a length of 2:25 minutes. I want the audio file to be as long as the video. `-frames` is set to terminate the output when fulfilled. Use trim within the filtergraph. ffmpeg.exe -y -i "e:\01. Video.mp4" -filter:v "select=between(145\,prev_pts*TB\,pts*TB),trim=end_frame=1" -c:a copy -c:v mjpeg -q:v 2 -disposition:v:0 attached_pic "e:\01. Audio.m4a" Thank you for your answer. The console eventually reads More than 1000 frames duplicated [ipod @ 0299cb43de80] Got more than one picture in stream 0, ignoring. when I call your command as is. Inefficient, but those extra images aren't muxed into the output. That's what the ignoring msg means. You can avoid the duplication by adding `-vsync vfr`. For your workaround, mpdecimate is not relevant, only the setpts filter. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Extract audio from video and use one frame as cover image
On 08-01-2021 06:37, Bernhard Döbler wrote: Hi, I saw, today, FFMpeg, finally, allows for embedding a single image as cover image into an .M4A file using the "-disposition:v:1 attached_pic" argument as explained in an answer on StackOverflow: https://stackoverflow.com/a/61015965/577052 This works very well, when I convert a .FLAC file, that already has one single frame embedded as cover, to .M4A using a command line like ffmpeg.exe -y -i "e:\01. Music.flac" -c:a aac -q:a 2 -c:v mjpeg -q:v 2 -disposition:v:0 attached_pic -movflags +faststart "e:\01. Music.m4a" I have video files. I want to extract the audio and use one single frame from the video track as cover image. The command line looks like this ffmpeg.exe -y -i "e:\01. Video.mp4" -filter:v "select=between(145\,prev_pts*TB\,pts*TB)" -frames:v 1 -c:a copy -c:v mjpeg -q:v 2 -disposition:v:0 attached_pic "e:\01. Audio.m4a" This is supposed to embed a frame from around second 145 as cover image. The issue is that the whole processing of the file stops after the single image was extracted and my resulting file has a length of 2:25 minutes. I want the audio file to be as long as the video. `-frames` is set to terminate the output when fulfilled. Use trim within the filtergraph. ffmpeg.exe -y -i "e:\01. Video.mp4" -filter:v "select=between(145\,prev_pts*TB\,pts*TB),trim=end_frame=1" -c:a copy -c:v mjpeg -q:v 2 -disposition:v:0 attached_pic "e:\01. Audio.m4a" Regards, Gyan ___ 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".
Re: [FFmpeg-user] How to decipher FFMEG version number?
On 26-12-2020 05:12 am, Dan Bridges wrote: I build FFMPEG under Win10 using media-autobuild_suite (https://github.com/m-ab-s/media-autobuild_suite) https://github.com/m-ab-s/media-autobuild_suite Is it possible to decipher the version number: ffmpeg version N-100471-g85bd703b3a-g5b48d2af43+1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 10.2.0 (Rev6, Built by MSYS2 project) The media-autobuild_suite adds some out-of-tree patches on top of ffmpeg, so its version number is non-standard. However, it can still be deciphered. N indicates that the build is of the master branch of ffmpeg. 100471 is the commit count. See the number on the blue bar just above the file listing at https://github.com/FFmpeg/FFmpeg The 2nd g-prefixed hash - g5b48d2af43 identifies the latest ffmpeg commit at time of building. It can be viewed at https://github.com/FFmpeg/FFmpeg/commit/5b48d2af43 +1 represents the number of out-of-tree commits applied on top. Regards, Gyan ___ 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".
Re: [FFmpeg-user] https://github.com/BtbN/FFmpeg-Builds/releases guidance needed
On 25-12-2020 10:05 am, Mark Filipak (ffmpeg) wrote: Never mind. I figured it out based on the sizes of the 'exe' files. I downloaded 'ffmpeg-N-100461-gb0a882cc93-win64-gpl-vulkan.zip'. On 12/24/2020 06:23 AM, Gyan Doshi wrote: On 24-12-2020 02:33 pm, Mark Filipak (ffmpeg) wrote: Here: https://github.com/BtbN/FFmpeg-Builds/releases are these: ffmpeg-N-100459-ga7f9b3b954-win64-gpl-shared-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl-shared.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-shared-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-shared.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-gpl-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-gpl-shared-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-lgpl-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-lgpl-shared-4.3.zip Sorry to have to ask [1], but what are they? Which one do I download if I have an Intel Core i7-6700HQ CPU with Intel(R) HD Graphics 530 & NVIDIA GeForce GTX 980M? The ones with 'N-' are git builds; the n4.3.1 are release builds. gpl and lgpl are the licenses for the binaries contained in them. gpl ones will have more libraries. 'shared' ones have the libav libs in separate files with the ff*.exe files dynamically linked to them. The ones without shared are statically linked and have everything in the exe. vulkan is a new-ish API for processing on a GPU. You can use the few vulkan filters currently in libavfilter. Your graphics driver must support Vulkan else ffmpeg won't run. Yours should. Regards, Gyan I like sausage, but please don't tell me what's in it. :-] If I want everything, and I want to be able to say that I found a bug using the latest git version, what do I download? For ffmpeg bugs, any of the N- builds will do. Gyan ___ 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".
Re: [FFmpeg-user] https://github.com/BtbN/FFmpeg-Builds/releases guidance needed
On 24-12-2020 02:33 pm, Mark Filipak (ffmpeg) wrote: Here: https://github.com/BtbN/FFmpeg-Builds/releases are these: ffmpeg-N-100459-ga7f9b3b954-win64-gpl-shared-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl-shared.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-gpl.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-shared-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-shared.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl-vulkan.zip ffmpeg-N-100459-ga7f9b3b954-win64-lgpl.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-gpl-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-gpl-shared-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-lgpl-4.3.zip ffmpeg-n4.3.1-26-gca55240b8c-win64-lgpl-shared-4.3.zip Sorry to have to ask [1], but what are they? Which one do I download if I have an Intel Core i7-6700HQ CPU with Intel(R) HD Graphics 530 & NVIDIA GeForce GTX 980M? The ones with 'N-' are git builds; the n4.3.1 are release builds. gpl and lgpl are the licenses for the binaries contained in them. gpl ones will have more libraries. 'shared' ones have the libav libs in separate files with the ff*.exe files dynamically linked to them. The ones without shared are statically linked and have everything in the exe. vulkan is a new-ish API for processing on a GPU. You can use the few vulkan filters currently in libavfilter. Your graphics driver must support Vulkan else ffmpeg won't run. Yours should. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Compilation Guide / MSVC on Wiki
On 02-12-2020 11:33 pm, Greg Oliver wrote: ... been on this list long, but I can say that the strife of people looking for non-existent windows binaries is frequent even though we know there are a few shared library build as well as (at least one I know of) static build with no dependencies. It just seems like a lot of work for something so easy to bypass with another route. http://ffmpeg.org/download.html has couple of links to sources for Windows binaries, both static and shared. One of those is mine. Unless you need a custom build or non-free libraries, no one needs to compile Windows binaries. Regards, Gyan ___ 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".
Re: [FFmpeg-user] {Spam?} Re: crop and fade
On 20-11-2020 01:41 pm, RAPPAZ Francois via ffmpeg-user wrote: Am 20.11.2020 um 07:27 schrieb RAPPAZ Francois via ffmpeg-user: Am 19.11.2020 um 16:37 schrieb RAPPAZ Francois via ffmpeg-user: Hi I tried the fading between pictures and cropping to there original size (5152 x 3864), so that they are not distorted ffmpeg -y -i %%02d.JPG -i SligoAir_WhiteBlanket.mp3 ^ -vf zoompan=d=10:fps=1,framerate=fps=25:interp_start=0:interp_end=255:sc en e=100 ^ -pix_fmt yuv420p -s 5152x3864 out.mp4 It seems that -s 5152x3864 destroy the fading effect achieved with the second line How can I correct this ? You must bring all pictures to the same size _before_ you read them with FFmpeg. Re-scaling one image with FFmpeg: ffmpeg -i input.jpg -s 5152x3864 output.jpg Re-scaling all images with FFmpeg: I think that's only possible with a loop in a script. Too complicated. Re-scaling one image with IrfanView: Open the image, Image --> Resize/Resample, Save as... Michael But my individual pictures are already at 5152x3864. The problem is that when I do the above command without -s ...x... they are stretched in the horizontal axis What should be the size to use for my pictures to be displayed without distortion ? The zoompan filter automatically rescales its input to 1280x720. Override it by adding `s=5152x3864` as an option to the zoompan filter. Remove the `-s` option from the command. Regards, Gyan ___ 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".
Re: [FFmpeg-user] Bitstream filter h264 metadata crop
On 18-11-2020 11:58 pm, ROBINSON Stuart wrote: I am testing cropping video using the bitstream filter shown in the following command: C:\ffmpeg-2020-11-18-git-e3081d6f4f-full_build\bin>ffplay.exe "Input.mp4" -codec:v copy -an -bsf:v h264_metadata=crop_top=128 "output_cropped.mp4" ffplay version 2020-11-18-git-e3081d6f4f-full_build-www.gyan.dev Copyright (c) 2003-2020 the FFmpeg developers built with gcc 10.2.0 (Rev3, 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-lzma --enable-libsnappy --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libglslang --enable-vulkan --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 56. 60.100 / 56. 60.100 libavcodec 58.112.103 / 58.112.103 libavformat58. 64.100 / 58. 64.100 libavdevice58. 11.102 / 58. 11.102 libavfilter 7. 90.100 / 7. 90.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc55. 8.100 / 55. 8.100 Failed to set value 'h264_metadata=crop_top=128' for option 'bsf:v': Option not found Very grateful to anyone who can point out where I am going wrong here, it looks simple enough. You're invoking ffplay, not ffmpeg. Gyan ___ 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".
Re: [FFmpeg-user] FFMPEG image2 : Error setting option start_number
On 05-11-2020 02:02 am, seb seb wrote: Sorry The complete command and the output ffmpeg -i udp://239.100.0.1:1234 -start_number 40110891900 %d.pgm ffmpeg version 4.1.6-1~deb10u1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 8 (Debian 8.3.0-6) configuration: --prefix=/usr --extra-version='1~deb10u1' --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-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared libavutil 56. 22.100 / 56. 22.100 libavcodec 58. 35.100 / 58. 35.100 libavformat58. 20.100 / 58. 20.100 libavdevice58. 5.100 / 58. 5.100 libavfilter 7. 40.101 / 7. 40.101 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 3.100 / 5. 3.100 libswresample 3. 3.100 / 3. 3.100 libpostproc55. 3.100 / 55. 3.100 [mpeg2video @ 0x55c688a24fc0] Invalid frame dimensions 0x0. Last message repeated 14 times Input #0, mpegts, from 'udp://239.100.0.1:1234': Duration: N/A, start: 30980.017933, bitrate: N/A Program 2 Metadata: service_name: ?TIPIK service_provider: ?RTBF Stream #0:0[0x1f4]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0x1f5](fra): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s Stream #0:2[0x1f6](V.O): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s Stream #0:3[0x1f8](fra): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006) Stream mapping: Stream #0:0 -> #0:0 (mpeg2video (native) -> pgm (native)) Press [q] to stop, [?] for help [image2 muxer @ 0x55c688a9c3c0] Value 40110891900.00 for parameter 'start_number' out of range [0 - 2.14748e+09] [image2 muxer @ 0x55c688a9c3c0] Error setting option start_number to value 40110891900. The start number is limited to max 2^31-1 as it says above. Yours is close to 20 times that value. Simply change it to -start_number 10891900 401%08d.pgm This will work, assuming you don't have around 90 million images to write. Regards, Gyan ___ 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".
Re: [FFmpeg-user] zmq example
On 28-10-2020 12:21 am, Michael Koch wrote: Hello, I'm testing this command line which is copied from the documentation: https://www.ffmpeg.org/ffmpeg-all.html#zmq_002c-azmq ffplay -dumpgraph 1 -f lavfi "color=s=100x100:c=red[l];color=s=100x100:c=blue[r];nullsrc=s=200x100,zmq[bg];[bg][l]overlay[bg+l];[bg+l][r]overlay@my=x=100" The problem is that ffplay exits after 1-2 seconds without any error message. I don't understand why. Shouldn't this command run forever? I'm not sending any commands to the zmq filter. The console output is below. Crashes here. Open a ticket at trac. Gyan ___ 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".
Re: [FFmpeg-user] repair black frames?
On 25-10-2020 08:56 pm, Michael Koch wrote: Am 25.10.2020 um 16:23 schrieb Simon Roberts: Greetings all, I have just noticed that some of my video recordings have a few random black frames in them. These will be spaced out a few minutes, don't seem to have any obvious cause (though my recording system is a little Heath Robinson / Rube Goldberg, so I have some ideas) Anyway, the thought occurred to me that rather than watching, never blinking, all the material, and looking for this "manually", ffmpeg might be able to help. The solution I have in mind would probably be something that recognizes a black frame (I *think* it's "pure" black, but I don't have numbers) and replaces it with the immediately preceding or following frame). Does such a filter exist, or could such behavior be tied together out of the features that ffmpeg has? search for "blackdetect" in the documentation See https://video.stackexchange.com/q/23589/ for a starting point. Gyan ___ 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".
Re: [FFmpeg-user] Unknown Option "--enable-libwavpack"
On 03-10-2020 11:22 am, 桃源老師 wrote: Hello, I pulled current git head 45070eec4c089b06947f07e25cdb1bc8b2102553, and do configure, then encountered configure error, Unknown Option "--enable-libwavpack". With git log command, it seems that libwavpack was removed. Is it true? Yes. ffmpeg has a native wavpack encoder. Gyan ___ 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".
Re: [FFmpeg-user] How to create "Input #1", "Input #2" etc. in addition to "Input #0"?
On 28-09-2020 06:01 pm, Stub via ffmpeg-user wrote: On Monday, September 28, 2020, 09:35:28 AM GMT+9, Carl Zwanzig wrote: On 9/27/2020 5:27 PM, James Darnley wrote: Please do not top post. And the formatting makes the ffprobe output difficult to read. If you (the OP) is posting in HTML, turn that off and stick to plain text. See https://ffmpeg.org/mailing-list-faq.html If I understand the question- there is a container holding multiple input streams and you want those streams to go into a stream-capable output container. Yes? Or is this question of copying metadata/stream names to the output container? Examples of commands you've tried along with the full output would clarify things. - Thank you for the quick responses. Let me give a much simplified example of what I hoped to achieve. I have two movie files that each contain a video stream and an audio stream: movie1.mp4 and movie2.mp4. I merge both into a single MKV container with ffmpeg: ffmpeg -i movie1.mp4 -i movie2.mp4 -map 0:v -map 0:a -map 1:v -map 1:a -c copy combined.mkv At the end of the ffmpeg monitor output I get the following about the contents of the "combined.mkv": Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (copy) Stream #1:0 -> #0:2 (copy) Stream #1:1 -> #0:3 (copy) Now, my question is how to achieve the following mapping: Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (copy) Stream #1:0 -> #1:0 (copy) Stream #1:1 -> #1:1 (copy) It seems that the "-map" flag always adds a stream as a "#0:n". I would like to have "#1:0" and "#1:1" in the "combined.mkv" container. Is that possible? No. The first numeral in #0:n for a output stream refers to the output file index. Since you're sending streams to the same output file, they will have the same output file index If you want to record for posterity which file a stream originated from, add metadata tags per stream e.g. -metadata:s:2 title="from input 1" This applies the metadata to the third output stream. Gyan ___ 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".
Re: [FFmpeg-user] Question about -noauto_conversion_filters
On 14-09-2020 04:54 pm, Gyan Doshi wrote: On 14-09-2020 03:41 pm, Michael Koch wrote: Am 14.09.2020 um 11:26 schrieb Gyan Doshi: On 14-09-2020 02:47 pm, Michael Koch wrote: ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf format=rgb48le,lut3d="VLog_to_V709.cube",format=yuv422p10le -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov Format conversion is carried out by libswscale and auto conversion inserts the scale filter. So, ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf scale,format=rgb48le,lut3d="VLog_to_V709.cube",scale -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov The final format filter is redundant with -pix_fmt, so I removed one of them. Thank you, with "scale" it works fine. Although it's hard to understand what "scale" (without any options) is actually doing. I have another question. Is this the correct and easiest way to make a 10-bit test video? -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le In the documentation is written "The |testsrc2|source is similar to testsrc, but supports more pixel formats instead of just |rgb24|. This allows using it as an input for other tests without requiring a format conversion." ^ But in my above command, I think "format=yuv422p10le" is a format conversion. Each filter presents a list of input formats they can work with and a list of output formats they can directly generate. The framework inspects adjacent filters and sets a compatible common format for the outputs and inputs when possible. If not, it sets one of the available output formats for the preceding filter and one from input formats for the following filter and inserts a scale filter to convert between those. This process is format negotiation. The format filter doesn't carry out the conversion itself - it inserts scale which in turn invokes libswscale. scale without any args defaults to the source W and H. But for pixel formats, its output format is constrained by the following format filter. That triggers a format conversion by libswscale. In case of testsrc2, no conversion is required since the filter can generate output in yuv422p10le. ___ 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".
Re: [FFmpeg-user] Question about -noauto_conversion_filters
On 14-09-2020 03:41 pm, Michael Koch wrote: Am 14.09.2020 um 11:26 schrieb Gyan Doshi: On 14-09-2020 02:47 pm, Michael Koch wrote: ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf format=rgb48le,lut3d="VLog_to_V709.cube",format=yuv422p10le -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov Format conversion is carried out by libswscale and auto conversion inserts the scale filter. So, ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf scale,format=rgb48le,lut3d="VLog_to_V709.cube",scale -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov The final format filter is redundant with -pix_fmt, so I removed one of them. Thank you, with "scale" it works fine. Although it's hard to understand what "scale" (without any options) is actually doing. I have another question. Is this the correct and easiest way to make a 10-bit test video? -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le In the documentation is written "The |testsrc2|source is similar to testsrc, but supports more pixel formats instead of just |rgb24|. This allows using it as an input for other tests without requiring a format conversion." ^ But in my above command, I think "format=yuv422p10le" is a format conversion. Each filter presents a list of input formats they can work with and a list of output formats they can directly generate. The framework inspects adjacent filters and sets a compatible common format for the outputs and inputs when possible. If not, it sets one of the available output formats for the preceding filter and one from input formats for the following filter and inserts a scale filter to convert between those. This process is format negotiation. The format filter doesn't carry out the conversion itself - it inserts scale which in turn invokes libswscale. scale without any args defaults to the source W and H. But for pixel formats, its output format is constrained by the following format filter. That triggers a format conversion by libswscale. Gyan Gyan ___ 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".
Re: [FFmpeg-user] Question about -noauto_conversion_filters
On 14-09-2020 02:47 pm, Michael Koch wrote: ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf format=rgb48le,lut3d="VLog_to_V709.cube",format=yuv422p10le -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov Format conversion is carried out by libswscale and auto conversion inserts the scale filter. So, ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf scale,format=rgb48le,lut3d="VLog_to_V709.cube",scale -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov The final format filter is redundant with -pix_fmt, so I removed one of them. Gyan ___ 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".
Re: [FFmpeg-user] LUFS measurment for short length audio
On 14-09-2020 01:15 pm, Bouke wrote: On 09 Sep 2020, at 10:33, christian.w...@4-real.com wrote: Hi list! Can somebody help to measure LUFS for audio files under 0,4 seconds??? Cat it a couple of times first? A few more times is required. Total duration should be >3 seconds. See https://superuser.com/q/1281327/ Gyan ___ 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".
Re: [FFmpeg-user] builds for Windows
On 04-09-2020 02:19 am, Mark Filipak wrote: On 09/03/2020 01:42 AM, Gyan Doshi wrote: On 02-09-2020 11:53 pm, Michael Koch wrote: "ffmpeg.zeranoe.com will close on Sep 18, 2020, and all builds will be removed." Any idea where we can get builds for Windows after this date? I plan to provide 64-bit static builds starting the 18th. Will update doc with link once I make arrangements. Gyan Gyan, I'm not sure but I think building ffmpeg is pretty time-consuming. If I obtain help figuring out how to do it -- dependencies have defeated me -- I can do Linux makes, perhaps on alternate days. If others do the same, the task can become distributed and less of an individual burden. I generate Windows builds with varying dependencies on a regular basis for patch testing - I just didn't see a need to distribute full builds till now. But I'll keep the offer in mind. Thanks. Gyan ___ 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".
Re: [FFmpeg-user] builds for Windows
On 02-09-2020 11:53 pm, Michael Koch wrote: "ffmpeg.zeranoe.com will close on Sep 18, 2020, and all builds will be removed." Any idea where we can get builds for Windows after this date? I plan to provide 64-bit static builds starting the 18th. Will update doc with link once I make arrangements. Gyan ___ 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".
Re: [FFmpeg-user] A query on mpegts and global headers
On 30-08-2020 06:52 pm, Dennis Mungai wrote: Hello there, With mpegts output, should global headers be used or not, set via -fflags +global_header? No. And if there are exceptions to that, based on the codec type wrapped in mpegts, when should global headers be used for mpegts? Global header is for formats that store codec parameters out of band i.e. in container metadata. Enabling the flag tells the encoder to store parameters in AVStream->extradata from where it is used by muxers of such formats. Additionally, the flag also suppresses periodic announcement of these parameters within the stream (in-band). MPEG-TS has no global header since it is meant for use as a 'continuous' transport stream. to which clients may start listening at an arbitrary point. So periodic parameter set transmission is required. When generating an output for use by a single muxer, the muxer has a flag which will be conveyed to the encoder automatically, so the user doesn't have to set anything. However in case of the tee muxer, which sends data to multiple muxers, some of which require global headers, the flag has to be manually set and periodic parameter sets reinserted using dump_extra for muxers such as mpegts. Regards, Gyan ___ 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".