Re: [FFmpeg-user] How to download and transcode video stream to mp4 and save the TS stream to file at the same time?

2024-09-30 Thread Gyan Doshi




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?

2024-09-30 Thread Gyan Doshi




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?

2024-09-29 Thread Gyan Doshi




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?

2024-08-10 Thread Gyan Doshi



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)

2024-07-22 Thread Gyan Doshi




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

2024-07-10 Thread Gyan Doshi



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

2024-05-16 Thread Gyan Doshi




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

2024-05-07 Thread Gyan Doshi



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

2024-05-01 Thread Gyan Doshi




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

2024-04-09 Thread Gyan Doshi



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

2024-04-09 Thread Gyan Doshi



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

2024-03-08 Thread Gyan Doshi



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

2024-03-07 Thread Gyan Doshi



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

2024-02-18 Thread Gyan Doshi via ffmpeg-user




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

2024-02-18 Thread Gyan Doshi



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?

2024-02-14 Thread Gyan Doshi



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.

2023-11-26 Thread Gyan Doshi




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

2023-11-11 Thread Gyan Doshi




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

2023-09-01 Thread Gyan Doshi




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

2023-08-13 Thread Gyan Doshi



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

2023-02-27 Thread Gyan Doshi




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

2023-02-20 Thread Gyan Doshi




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

2023-02-20 Thread 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?
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

2023-02-20 Thread 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.

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

2023-02-20 Thread 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.
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

2023-02-20 Thread 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.

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.

2022-12-30 Thread Gyan Doshi




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

2022-08-08 Thread Gyan Doshi




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

2022-06-28 Thread Gyan Doshi



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

2022-06-16 Thread Gyan Doshi



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

2022-06-16 Thread 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.


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

2022-06-11 Thread Gyan Doshi




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

2022-05-25 Thread Gyan Doshi




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

2022-04-26 Thread Gyan Doshi



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?

2022-03-01 Thread Gyan Doshi



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?

2022-02-27 Thread Gyan Doshi



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

2022-02-22 Thread Gyan Doshi



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

2022-02-04 Thread Gyan Doshi



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

2022-01-30 Thread Gyan Doshi




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

2022-01-30 Thread 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.

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

2022-01-29 Thread Gyan Doshi



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?

2022-01-19 Thread Gyan Doshi



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?

2022-01-19 Thread Gyan Doshi



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?

2022-01-09 Thread Gyan Doshi




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?

2022-01-05 Thread Gyan Doshi




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

2021-12-30 Thread Gyan Doshi



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

2021-12-22 Thread Gyan Doshi




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 ?

2021-12-03 Thread Gyan Doshi




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

2021-11-09 Thread Gyan Doshi




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

2021-11-08 Thread Gyan Doshi



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

2021-11-08 Thread Gyan Doshi



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

2021-11-07 Thread Gyan Doshi



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

2021-11-06 Thread Gyan Doshi




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

2021-08-22 Thread Gyan Doshi



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

2021-08-21 Thread Gyan Doshi




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

2021-07-08 Thread Gyan Doshi



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

2021-07-03 Thread Gyan Doshi via ffmpeg-user




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

2021-06-26 Thread Gyan Doshi



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

2021-06-19 Thread Gyan Doshi




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

2021-05-28 Thread Gyan Doshi




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?

2021-05-02 Thread Gyan Doshi



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

2021-04-26 Thread Gyan Doshi



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

2021-04-24 Thread Gyan Doshi



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

2021-04-23 Thread Gyan Doshi



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

2021-04-22 Thread Gyan Doshi




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

2021-04-20 Thread Gyan Doshi




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

2021-04-20 Thread Gyan Doshi




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

2021-04-20 Thread Gyan Doshi




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

2021-03-30 Thread Gyan Doshi



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 
.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...

2021-03-24 Thread Gyan Doshi



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?

2021-03-15 Thread Gyan Doshi



On 2021-03-16 07:21, roninpawn wrote:

I develop a Python application used to conduct official timing for
speedrunning leaderboards based on automated video analysis. And I've
caught a little oversight of my own that leads me to wonder if there isn't
an oversight at the core of ffmpeg in the 'fps' reported in the output
stream.

This relates to Variable Frame Rate video, so please try to hold your
shouts of "*JUST CONVERT IT TO CFR*" until after.

---

So, I'm opening a rawvideo pipe to ffmpeg in Python (using ffmpeg-python
0.2.0 by Karl Kroening as a command-line wrapper) to receive a bitstream of
the frames in a video for analysis. It's blazing fast, btw! Used to do this
with OpenCV and it was a slog. (Not to mention unable to transit the
"read-head" to the ACTUAL frame or time requested without just landing on a
near-ish keyframe instead.)

Before accessing the file, I call to ffprobe to get the 'r_frame_rate,' and
use those values to identify the frames per second of the footage. And
apparently, what 'r_frame_rate' returns is the "Output" stream fps. Which
is NOT the "Input" frames per second on VFR video.

Have a look at the Input data in my console for this VFR footage,
specifically the fps under Stream#0:0:



*Input #0*, mov,mp4,m4a,3gp,3g2,mj2, from 'I:/Downloads/Medieval 111
IGT.mp4':
   Metadata:
 major_brand : isom
 minor_version   : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf58.29.100
   Duration: 00:01:23.94, start: 0.00, bitrate: 2270 kb/s
 *Stream #0:0*(und): Video: h264 (Main) (avc1 / 0x31637661),
yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 2137 kb/s, *30.01 fps*,
30 tbr, 90k tbn, 60 tbc (default)


So the input is 30.01 fps. Cool. Now look at the Output stream reported.

*Output #0*, rawvideo, to 'pipe:':

   Metadata:
 major_brand : isom
 minor_version   : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf58.45.100
 *Stream #0:0*: Video: rawvideo (BGR[24] / 0x18524742), bgr24, 446x344
[SAR 1:1 DAR 223:172], q=2-31, 110465 kb/s, *30 fps*, 30 tbn, 30 tbc
(default)


It's just straight-up 30fps. Okay! Great. So, ffmpeg is automatically
converting this VFR footage to CFR and handing it back to me at 30.00fps.
...is what I had erroneously assumed.

(lot of "buts" coming)

But my application that times events detected in the frames of the footage
counted 2301 frames between two events. And then told me that 2301 / 30fps
is 1m 17s 700ms. Which is correct! AT 30FPS ANYWAY.

But when the footage is converted to CFR, or simply mathematically measured
at 30.0fps there are NOT 2301 frames between the two events. There are 2300
frames between those events. Because if you account for the .01 of
30.01fps, a frame must be dropped. 2301 frames / 30.01fps = 1m 17s 674ms.
And at a flat integer of 30fps, it's not 2301, but 2300 frames / 30fps that
gets you a 667ms time. As a matter of approximation, a frame must be
discarded to be as accurate as you can while squeezing the footage.

But all this is just backstory, because I now realize that ffmpeg is NOT
altering the footage of VFR in any way, which makes the MOST sense. It's
just handing me back a bitstream of every frame in the video. Perfectly
sensible!

But while it's handing me back every frame of the 30.01fps media in the
output stream, it's also identifying that output as a flat 30fps. Which it
IS NOT. As ffmpeg clearly reports in the input stream's console log. And
yet more confusing, it seems that ffprobe's 'r_frame_rate' is returning the
output frame rate of 30 / 1, instead of whatever values it used to come up
with the 30.01 it declares for the input at runtime.

To deepen the quagmire, I have pushed VFR video through this application
before that averaged 59.96fps. And ffprobe / ffmpeg have reported back to
me a frame rate of 59.94fps instead -- snapping into the common NTSC frame
base of US-broadcast 60fps TV.

So I think, for the first time, I understand the information ffmpeg is
giving me. That's good! But I find myself wondering why this would possibly
be the intended behavior? The "output" frame rate and the response from
ffprobe is automatically snapped to the nearest of an internally stored
list of industry-standard framebases and reported as the fps when it is
definitely not. There would be no need to "snap" to these values if they
were correct. And because the output tends to report round integer values
of decisive framerates, it led me to the conclusion that ffmpeg was doing
some automatic magic on VFR to present it back to me as CFR. Which it is
not doing.

AND AND, because the frame rate ffprobe returns is this willfully incorrect
industry-standard framebase data, any calculations done USING that value
will be decidedly more wrong than they would be when 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 

Re: [FFmpeg-user] I am a new ffmpeg user...

2021-03-11 Thread Gyan Doshi



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?

2021-02-26 Thread Gyan Doshi



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

2021-02-22 Thread Gyan Doshi



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

2021-01-24 Thread Gyan Doshi



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

2021-01-23 Thread Gyan Doshi



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

2021-01-23 Thread Gyan Doshi



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.

2021-01-19 Thread Gyan Doshi



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.

2021-01-18 Thread Gyan Doshi



On 19-01-2021 05:49 am, Reed Crowe wrote:

I have tried this test with three different versions of ffmpeg (4.3.1,
3.4.8 and N-100671-gc48110a4a4  on 2 different OSes (Ubuntu 18.04, Fedora
33).

Here is the command I am using:
ffmpeg -i 17647_20210118_195325.mp4 -i test.mp4 -filter_complex psnr -f
null -
These are the same file (one just renamed). But I have tried it with
different files as well with the same error. I'm not totally sure what the
error means.

Error: Application provided invalid, non monotonically increasing dts to
muxer in stream 0: 748 >= 748


The output (encoding) time base is, by default, set to the reciprocal of 
the frame rate.  When converting from a finer input time base, 9 in 
this case, may produce collisions. So let's keep the input tie base. Add 
-enc_time_base -1


However, this does not interfere with PSNR calculation. See below.


Output with errors:

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
   built with gcc 10 (GCC)
   configuration: --prefix=/usr --bindir=/usr/bin
--datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg
--incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man
--arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g
-grecord-gcc-switches -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
--extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld ' --extra-cflags='
-I/usr/include/rav1e' --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libvo-amrwbenc --enable-version3 --enable-bzlib
--disable-crystalhd --enable-fontconfig --enable-frei0r --enable-gcrypt
--enable-gnutls --enable-ladspa --enable-libaom --enable-libdav1d
--enable-libass --enable-libbluray --enable-libcdio --enable-libdrm
--enable-libjack --enable-libfreetype --enable-libfribidi --enable-libgsm
--enable-liblensfun --enable-libmp3lame --enable-libmysofa --enable-nvenc
--enable-openal --enable-opencl --enable-opengl --enable-libopenjpeg
--enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg
--enable-librav1e --enable-libsoxr --enable-libspeex --enable-libssh
--enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvidstab
--enable-libvmaf --enable-version3 --enable-vapoursynth --enable-libvpx
--enable-vulkan --enable-libglslang --enable-libx264 --enable-libx265
--enable-libxvid --enable-libxml2 --enable-libzimg --enable-libzvbi
--enable-lv2 --enable-avfilter --enable-avresample --enable-libmodplug
--enable-postproc --enable-pthreads --disable-static --enable-shared
--enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64
--enable-lto --enable-libmfx --enable-runtime-cpudetect
   libavutil  56. 51.100 / 56. 51.100
   libavcodec 58. 91.100 / 58. 91.100
   libavformat58. 45.100 / 58. 45.100
   libavdevice58. 10.100 / 58. 10.100
   libavfilter 7. 85.100 /  7. 85.100
   libavresample   4.  0.  0 /  4.  0.  0
   libswscale  5.  7.100 /  5.  7.100
   libswresample   3.  7.100 /  3.  7.100
   libpostproc55.  7.100 / 55.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '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
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '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
Stream mapping:
   Stream #0:0 (h264) -> settb
   Stream #1:0 (h264) -> settb
   psnr -> Stream #0:0 (wrapped_avframe)
Press [q] to stop, [?] for help
Output #0, null, to 'pipe:':
   Metadata:
 major_brand : isom
 minor_version   : 512
 compatible_brands: isomiso2avc1mp41
 title   : 'LVT17647'
 encoder : Lavf58.45.100
 Stream #0:0: Video: wrapped_avframe, yuvj420p, 704x480, q=2-31, 200
kb/s, 15 fps, 15 tbn, 15 tbc (default)
 Metadata:
   encoder : Lavc58.91.100 wrapped_avframe
*[null @ 0x55e31e9a0240] Application provided invalid, non monotonically
increasing dts to muxer in s

Re: [FFmpeg-user] Streaming an mp4/mov file in real time using FFMPEG (no moov atom)

2021-01-10 Thread Gyan Doshi



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

2021-01-08 Thread Gyan Doshi



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

2021-01-07 Thread Gyan Doshi



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?

2020-12-25 Thread Gyan Doshi



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

2020-12-25 Thread Gyan Doshi



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

2020-12-24 Thread Gyan Doshi



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

2020-12-02 Thread Gyan Doshi



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

2020-11-20 Thread Gyan Doshi



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

2020-11-18 Thread Gyan Doshi



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

2020-11-04 Thread Gyan Doshi



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

2020-10-28 Thread Gyan Doshi



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?

2020-10-25 Thread Gyan Doshi



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"

2020-10-02 Thread Gyan Doshi



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"?

2020-09-28 Thread Gyan Doshi



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

2020-09-14 Thread Gyan Doshi



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

2020-09-14 Thread Gyan Doshi



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

2020-09-14 Thread 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.


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

2020-09-14 Thread Gyan Doshi



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

2020-09-03 Thread Gyan Doshi



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

2020-09-02 Thread Gyan Doshi



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

2020-08-30 Thread Gyan Doshi



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".

  1   2   3   >