[FFmpeg-user] (no subject)

2021-03-02 Thread Raj Cryp
ffmpeg has the option to split file based on time. Say starting with time t
and go for length l.

I am thinking of basically computing the time windows which will result in
the desired file size. Say a 1 min video of 20 MB will need to be split in
parts roughly 6 sec each.

Is there an option to pass desired file size directly into the command?
___
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] repeat a frame

2021-03-02 Thread Mark Filipak (ffmpeg)

On 2021-03-02 16:34, Jim DeLaHunt wrote:

On 2021-03-02 13:13, Mark Filipak (ffmpeg) wrote:


On 2021-03-02 15:18, Carl Eugen Hoyos wrote:

…timebase is not 64bit, I believe this was already mentioned.


No, it has not been mentioned.


Mark, I can point to three times it has been mentioned, in the last month, in threads which you 
initiated.



1. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/051961.html
On 2021-02-14 17:28, Paul B Mahol wrote:

You need TB aka timebase too.

TB is rational.
PTS is 64bit integer.



2. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/052097.html
On 2021-02-22 21:01, Jim DeLaHunt wrote:

The Presentation Time Stamp (PTS) value which FFmpeg associates with video frames and audio data 
is a 64-bit integer. There is an associated time base attribute for each video or audio stream, 
which gives the number of seconds between successive values of PTS. This time base might be 
thought of as the resolution of PTS. Thus if you have two PTS values pts1 and pts2, then the 
difference in seconds between them is (pts2-pts1)*time_base. The time base can be represented as a 
rational number, e.g. 1001/3.…



3. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/052161.html
On 2021-02-26 17:32, Jim DeLaHunt wrote:

As I told you back on 23. February, ffmpeg uses a timebase that is a rational number, and is an 
attribute of the video stream, and can take various values. The timebase could be 1/36, or 
1/24, or 1001/24000.


Thank you, Jim. To the best of my knowledge, rational is not a 'C' datatype. I need to know the 
dimension (or 'C' datatype) of TB as it is used in PTC calculations.


___
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] repeat a frame

2021-03-02 Thread Jim DeLaHunt

On 2021-03-02 13:13, Mark Filipak (ffmpeg) wrote:


On 2021-03-02 15:18, Carl Eugen Hoyos wrote:

…timebase is not 64bit, I believe this was already mentioned.


No, it has not been mentioned.


Mark, I can point to three times it has been mentioned, in the last 
month, in threads which you initiated.



1. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/051961.html
On 2021-02-14 17:28, Paul B Mahol wrote:

You need TB aka timebase too.

TB is rational.
PTS is 64bit integer.



2. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/052097.html
On 2021-02-22 21:01, Jim DeLaHunt wrote:

The Presentation Time Stamp (PTS) value which FFmpeg associates with 
video frames and audio data is a 64-bit integer. There is an 
associated time base attribute for each video or audio stream, which 
gives the number of seconds between successive values of PTS. This 
time base might be thought of as the resolution of PTS. Thus if you 
have two PTS values pts1 and pts2, then the difference in seconds 
between them is (pts2-pts1)*time_base. The time base can be 
represented as a rational number, e.g. 1001/3.…



3. https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-February/052161.html
On 2021-02-26 17:32, Jim DeLaHunt wrote:

As I told you back on 23. February, ffmpeg uses a timebase that is a 
rational number, and is an attribute of the video stream, and can take 
various values. The timebase could be 1/36, or 1/24, or 1001/24000. 



Best regards,
  —Jim DeLaHunt


___
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] repeat a frame

2021-03-02 Thread Mark Filipak (ffmpeg)

On 2021-03-02 15:18, Carl Eugen Hoyos wrote:

Am Di., 2. März 2021 um 20:51 Uhr schrieb Mark Filipak (ffmpeg)
:


On 2021-03-02 13:31, Carl Eugen Hoyos wrote:

Am Di., 2. März 2021 um 17:50 Uhr schrieb Mark Filipak (ffmpeg)
:


I've searched the docs one-by-one. I seek a simpler way to repeat a frame.


Increase the frame rate, either with the fps filter or the ffmpeg option "-r".
They differ in their greediness and verbosity on the status line.


Thank you, Carl Eugen, I have noted that reality.

Since I've assumed that AVFrame *is* the format of the frames in the filter
pipeline (and therefore int64_t), and based on an assumption that TB is
also 64 bits, I've adopted TB = 1/(72 ticks/s)...


timebase is not 64bit, I believe this was already mentioned.


No, it has not been mentioned.

What is the struct name of frames in the filter pipeline?

What is the name of the struct that includes time base?
___
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] filter pipeline 'PTS' -- int64_t?

2021-03-02 Thread Carl Eugen Hoyos
Am Di., 2. März 2021 um 21:42 Uhr schrieb Paul B Mahol :
>
> On Tue, Mar 2, 2021 at 8:59 PM Carl Eugen Hoyos  wrote:

> > There is no AVFrac in the (current) codebase.
> >
> Funny how he look at ultra old svn code dump, good luck with that,
>
> How he even managed to find links to svn stuff 

svn.ffmpeg.org is just an alias for ffmpeg.org, the
documentation for old releases is available.

Carl Eugen
___
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] filter pipeline 'PTS' -- int64_t?

2021-03-02 Thread Paul B Mahol
On Tue, Mar 2, 2021 at 8:59 PM Carl Eugen Hoyos  wrote:

> Am Di., 2. März 2021 um 01:47 Uhr schrieb Mark Filipak (ffmpeg)
> :
> >
> > The ffmpeg filter pipeline assigns a 'PTS' to each frame,
> > frame by frame.
>
> This may not be completely unreasonable but some
> comments are still necessary:
> The sentence sounds to me as if the the filter pipeline always
> assigns timestamps to frames, but this is neither true (many
> filters do not care about timestamps and you do not have to
> insert a filter which does) nor does it make the filter pipeline
> special: Timestamps often come from the demuxer and / or
> the decoder and may or may not change in the filterchain
> (and - as I believe you realized by now - because of the
> chosen output format; and also the chosen encoder - for
> which you did not post a question yet).
>
> Frames may not have a timestamp assigned - you posted
> the relevant part of the documentation.
>
> Concerning some of your other comments:
>
> The timestamps in MPEG streams may be negative.
>
> There is no AVFrac in the (current) codebase.
>
>
Funny how he look at ultra old svn code dump, good luck with that,

How he even managed to find links to svn stuff 




> Carl Eugen
> ___
> 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] repeat a frame

2021-03-02 Thread Carl Eugen Hoyos
Am Di., 2. März 2021 um 20:51 Uhr schrieb Mark Filipak (ffmpeg)
:
>
> On 2021-03-02 13:31, Carl Eugen Hoyos wrote:
> > Am Di., 2. März 2021 um 17:50 Uhr schrieb Mark Filipak (ffmpeg)
> > :
> >>
> >> I've searched the docs one-by-one. I seek a simpler way to repeat a frame.
> >
> > Increase the frame rate, either with the fps filter or the ffmpeg option 
> > "-r".
> > They differ in their greediness and verbosity on the status line.
>
> Thank you, Carl Eugen, I have noted that reality.
>
> Since I've assumed that AVFrame *is* the format of the frames in the filter
> pipeline (and therefore int64_t), and based on an assumption that TB is
> also 64 bits, I've adopted TB = 1/(72 ticks/s)...

timebase is not 64bit, I believe this was already mentioned.

> ...so, for a 24fps CFR INPUT to a 24fps CFR OUTPUT for example,

If your input is cfr and you want cfr output, there should be no reason to mess
with timestamps.

> ffmpeg -i INPUT -vf 
> settb=expr=1/72,setpts=N*3...setpts=N/24/TB,fps=24 OUTPUT

In addition to above, note that setpts is rarely a good idea as it is supposed
to break A/V sync. Using the filter several times does not improve the
situation.

Perhaps you should go back several (dozen) steps:
You have already explained that you have little interest in becoming a
C programmer (which is 100% reasonable), you therefore should not
be interested in the internal representations of FFmpeg (no, you cannot
improve them: The people who have written this code most likely
understand analog video as good as you but they are light years
ahead of you concerning digital video).
It is possible you have found other bugs in FFmpeg (many exist and
you have already found two or three). If you want us to improve the
project, simply post the command line you tested including the
complete, uncut console output and explain what you don't like in
the output file.
(You would have avoided a lot of flames lately...)

The fact that you cannot force a timebase when writing to Matroska
is not a bug that you have to report.

Carl Eugen
___
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] filter pipeline 'PTS' -- int64_t?

2021-03-02 Thread Carl Eugen Hoyos
Am Di., 2. März 2021 um 01:47 Uhr schrieb Mark Filipak (ffmpeg)
:
>
> The ffmpeg filter pipeline assigns a 'PTS' to each frame,
> frame by frame.

This may not be completely unreasonable but some
comments are still necessary:
The sentence sounds to me as if the the filter pipeline always
assigns timestamps to frames, but this is neither true (many
filters do not care about timestamps and you do not have to
insert a filter which does) nor does it make the filter pipeline
special: Timestamps often come from the demuxer and / or
the decoder and may or may not change in the filterchain
(and - as I believe you realized by now - because of the
chosen output format; and also the chosen encoder - for
which you did not post a question yet).

Frames may not have a timestamp assigned - you posted
the relevant part of the documentation.

Concerning some of your other comments:

The timestamps in MPEG streams may be negative.

There is no AVFrac in the (current) codebase.

Carl Eugen
___
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] repeat a frame

2021-03-02 Thread Mark Filipak (ffmpeg)

On 2021-03-02 13:31, Carl Eugen Hoyos wrote:

Am Di., 2. März 2021 um 17:50 Uhr schrieb Mark Filipak (ffmpeg)
:


I've searched the docs one-by-one. I seek a simpler way to repeat a frame.


Increase the frame rate, either with the fps filter or the ffmpeg option "-r".
They differ in their greediness and verbosity on the status line.


Thank you, Carl Eugen, I have noted that reality.

Since I've assumed that AVFrame *is* the format of the frames in the filter pipeline (and therefore 
int64_t), and based on an assumption that TB is also 64 bits, I've adopted TB = 1/(72 ticks/s)...


...so, for a 24fps CFR INPUT to a 24fps CFR OUTPUT for example,

ffmpeg -i INPUT -vf settb=expr=1/72,setpts=N*3...setpts=N/24/TB,fps=24 
OUTPUT

sets a high resolution TB in the pipeline. With 'settb=expr=1/72,setpts=N*3' to prep the 
pipeline, and 'setpts=N/24/TB,fps=24' to terminate the pipeline, I've been doing temporally-perfect 
manipulations of frames and fields that don't produce VFR in the encoder.

___
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] filter pipeline 'PTS' -- int64_t?

2021-03-02 Thread Jim DeLaHunt


On 2021-03-01 16:43, Mark Filipak (ffmpeg) wrote:
The ffmpeg filter pipeline assigns a 'PTS' to each frame, frame by 
frame. Is *that* 'PTS' an int64_t?


I don't know how to answer this question. I don't know of a single piece 
of code which is the "ffmpeg filter pipeline". I understand that term to 
refer to a collection of design parameters which organises the 
interaction of code modules. It is the code modules which store 
Presentation Timestamps (PTSs).


It is meaningful, I believe, to ask if the code modules store PTS values 
as int64_t types. I believe the answer is generally "yes".


The C++ standards define int64_t as a "signed integer type with width of 
exactly… 64 bits… with no padding bits and using 2's complement for 
negative values". Source: 
https://en.cppreference.com/w/cpp/types/integer . Thus data values of 
type int64_t are capable of storing negative integer values.




Things I have found.

https://ffmpeg.org/ffmpeg-filters.html#fps-1
  "...trim any frames with a negative PTS."
That implies that PTS can be negative (ergo, is a signed integer).


Yes, I believe that FFmpeg will accept and generate streams which have 
negative values for PTS.




http://svn.ffmpeg.org/doxygen/1.0/structAVFrame.html
Is AVFrame the structure of frames in the filter pipeline? If so, then
"int64_t pts
" presentation timestamp in time_base units (time when frame 
should be shown to user) If "AV_NOPTS_VALUE then frame_rate = 
1/time_base will be assumed."

appears to answer my question, unless it's a different 'frame'...

...What exactly is 'AVFrame'?


I am not sure. I won't try to answer this question.



http://svn.ffmpeg.org/doxygen/1.0/avformat_8h-source.html
  "00320 typedef struct AVFrac {
  "00321 int64_t val, num, den;
  "00322 } AVFrac;"
http://svn.ffmpeg.org/doxygen/1.0/structAVFrac.html#_details
  "The exact value of the fractional number is: 'val + num / den'."
That appears to be a definition of something called "PTS" but seems to 
not be what's assigned to a frame in the filter pipeline.


That code looks to me like it defines a data type for storing rational 
numbers. The copyright notice on that module says year 2001, and 
"Fabrice Bellard", the original developer of FFmpeg. That hints that 
this module is old code. A mention of PTS there is perhaps a statement 
of 20-year-old intentions, rather than a claim about what the current 
code does. The fact that the code defines a data type does not say 
whether the code actually uses that data type.



The label (name) of what is actually assigned to frames in the filter 
pipeline as 'PTS' is unknown to me.


I don't know how to answer this question. See above about the concept of 
a "filter pipeline".



Best regards,
  —Jim DeLaHunt

___
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] repeat a frame

2021-03-02 Thread Carl Eugen Hoyos
Am Di., 2. März 2021 um 17:50 Uhr schrieb Mark Filipak (ffmpeg)
:
>
> I've searched the docs one-by-one. I seek a simpler way to repeat a frame.

Increase the frame rate, either with the fps filter or the ffmpeg option "-r".
They differ in their greediness and verbosity on the status line.

Carl Eugen
___
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] repeat a frame

2021-03-02 Thread Mark Filipak (ffmpeg)

On 2021-03-02 11:53, Paul B Mahol wrote:

On Tue, Mar 2, 2021 at 5:50 PM Mark Filipak (ffmpeg) 
wrote:


I've searched the docs one-by-one. I seek a simpler way to repeat a frame.

This:

split[1][2],[1]setpts=(N+floor(N/4))/FR/TB[3],[2]select=eq(mod(n\,4)\,3),setpts=(N*5+4)/FR/TB[4],[3][4]interleave

works, but perhaps there's an easier way that I'm just not seeing.


What timestamps repeated frame should have?


Hey Paul. Thanks.

'PTS's don't matter. I can manipulate 'TB' & 'PTS's as needed ...The stream is 
CFR.

If 'shuffleframes' could insert frames, for example

shuffleframes=0 1 2 3 +3

I'd do that, but 'shuffleframes' doesn't have a '+' operator.

I do have a method that works (above). I'm just wondering whether there's a 
simpler way.

Thanks!
___
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] repeat a frame

2021-03-02 Thread Paul B Mahol
On Tue, Mar 2, 2021 at 5:50 PM Mark Filipak (ffmpeg) 
wrote:

> I've searched the docs one-by-one. I seek a simpler way to repeat a frame.
>
> This:
>
>
> split[1][2],[1]setpts=(N+floor(N/4))/FR/TB[3],[2]select=eq(mod(n\,4)\,3),setpts=(N*5+4)/FR/TB[4],[3][4]interleave
>
> works, but perhaps there's an easier way that I'm just not seeing.
>

What timestamps repeated frame should have?

>
> Suggestions are welcome. Thanks!
>
> - Mark.
> ___
> 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] repeat a frame

2021-03-02 Thread Mark Filipak (ffmpeg)

I've searched the docs one-by-one. I seek a simpler way to repeat a frame.

This:

split[1][2],[1]setpts=(N+floor(N/4))/FR/TB[3],[2]select=eq(mod(n\,4)\,3),setpts=(N*5+4)/FR/TB[4],[3][4]interleave

works, but perhaps there's an easier way that I'm just not seeing.

Suggestions are welcome. Thanks!

- Mark.
___
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] Issue when adding a title to an audio stream within a mp4 file

2021-03-02 Thread Moritz Barsnick
On Mon, Mar 01, 2021 at 15:17:40 +0100, PPRJ01 wrote:
> But ... I don't understand what you are planning to do.

I'm not planning to do anything. I checked whether this could easily be
fixed, but it cannot with my knowledge.

> Please tell me if I'm right or wrong :
> - ffprobe/ffmpeg will display the data contained in the "name" atom to 
> stdout/stderr

No. When reading a file, ffmpeg does not understand it.

> BUT
> - ffmpeg will NOT be able to copy the audio stream "title" to a new MP4 
> output file by using the -c copy option

Correct, ffmpeg does not understand your title when reading, and can
therefore also not convey it to an output file.

An ffmpeg developer, especially one who knows their way around atoms,
might be able to fix this. (I can give more details what my issues
were, if anyone picks this up.)

Moritz
___
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] [help]does ffmpeg support AJA kona as input devices

2021-03-02 Thread Carl Eugen Hoyos


> Am 02.03.2021 um 07:37 schrieb 梦开始的地方 <382607...@qq.com>:
> 
> I use it on linux,how to compile ffmpeg with video4linux support kona

Every Linux binary by default comes with video4linux2 support, you have to 
actively disable it if you don’t want it.

Carl Eugen
___
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] Linux 64 bit ffmpeg compilation

2021-03-02 Thread Carl Eugen Hoyos


> Am 02.03.2021 um 03:41 schrieb KRISHNAKUMAR N K :
> 
> I have followed ffmpeg compilation guide "
> https://trac.ffmpeg.org/wiki/CompilationGuide/Centos; and its successful,
> would like to know FFmpeg is 64bit by default (or) should i need to enable
> any flags / properties.

This only depends on your toolchain:
If you don’t specify a compiler when calling configure the default system 
compiler will be used.
On Intel 64bit systems, the system compiler most likely will default to 64bit. 
But this is not necessarily always the case, and on non-Intel 64bit systems it 
is common for the system compiler to default to 32bit.

There is a configure option „--cc“ that you can use to force 32 or 64 bit 
compilation:
./configure --cc=gcc -m32
(Needs parentheses around gcc -m32!!)

Carl Eugen 
___
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".