Re: [FFmpeg-user] the trim filter

2024-07-06 Thread Jim DeLaHunt

On 2024-07-05 18:18, Mark Filipak wrote:


...
Well, I separated video & audio into separate streams but got the same 
result:
"Media type mismatch between the 'Parsed_split_0' filter output pad 1 
(video) and the 'Parsed_atrim_2' filter input pad 0 (audio)"

So, the video stream is going right through '[o5v],[i5a]' 


That's not how I interpret the wording "between the 'Parsed_split_0' 
filter output pad 1 (video) and the 'Parsed_atrim_2' filter input pad 0 
(audio)".


I suspect that "'Parsed_split_0' filter" refers to filter 
"split=8[i5v][i5a][i6v][i6a][i7v][i7a][i8v][i8a]". "Output pad 1" (in 
0-based numbering) of that filter is "[i5a]". The "(video)" says that 
"[i5a]" is a video stream.


I suspect that the "'Parsed_atrim_2' filter" refers to filter 
"[i5a]atrim=start=20.062:end=5590.835[o5a]". This filter expects an 
audio stream at its input pad.


G:\>ffmpeg -i g:\00305+00306+00307+00308.m2ts -filter_complex 
"split=8[i5v][i5a][i6v][i6a][i7v][i7a][i8v][i8a], 
[i5v]trim=start_frame=481:end_frame=134047[o5v], 
[i5a]atrim=start=20.062:end=5590.835[o5a], [o5v][o5a]interleave[o5], 
[i6v]trim=start_frame=138745:end_frame=246719[o6v], 
[i6a]atrim=start=5786.823:end=10290.197[o6a], 
[o6v][o6a]interleave[o6], 
[i7v]trim=start_frame=251486:end_frame=10[o7v], 
[i7a]atrim=start=10489.062:end=13901.805[o7a], 
[o7v][o7a]interleave[o7], [i8v]trim=start_frame=338018[o8v], 
[i8a]atrim=start=14098.167[o8a], 
[o8v][o8a]interleave[o8],[o5][o6][o7][o8]concat=n=4[o]" -map "[o]" 
-c:v libx265 -x265-params crf=16 -c:a dts -strict -2 -sn 
-start_at_zero e:\00305+00306+00307+00308.mp4


Just a wild guess: try adding ":a" after each input label before 
"atrim". So, "[i5a]atrim=start=20.062:end=5590.835[o5a]" becomes 
"[i5a:a]atrim=start=20.062:end=5590.835[o5a]". And so on for the other 
three atrim filters.


What error message results after that change?



...I've never had to do this before. I'm in unknown territory


Oh yeah, me too.

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] the trim filter

2024-07-05 Thread Jim DeLaHunt

On 2024-07-04 15:50, Mark Filipak wrote:


...Here's the interesting terminal output (slightly beautified):

[Parsed_trim_1 @ 00620040]
 Media type mismatch between the 'Parsed_trim_1' filter output pad 0 
(video) and the 'Parsed_atrim_2' filter input pad 0 (audio)


[AVFilterGraph @ 0061c7c0] Error linking filters

Failed to set value
 'split=2[i5][i6],
 [i5]trim=start_frame=481:end_frame=134047, 
atrim=start_sample=962962:end_sample=268360092[o5],

 [i6]trim=start_frame=138745:end_frame=246719[o6],
 [o5][o6]concat=n=2'
for option 'filter_complex': Invalid argument
Error parsing global options: Invalid argument


I think there is a clue in the previous part of the output:

[Parsed_trim_1 @ 00620040] Media type mismatch between the 
'Parsed_trim_1' filter output pad 0 (video) and the 'Parsed_atrim_2' 
filter input pad 0 (audio)
I see "media type mismatch", so what is not matched?  I see a mention of 
"filter output pad 0 (video)" and "filter input pad 0 (audio)". I can 
imagine that media "video" does not match media "audio".



...Here's my trim commands for the first segment:

trim=start_frame=481:end_frame=134047,atrim=start_sample=962962:end_sample=268360093 



Consulting the filtergraph syntax documentation 
<https://ffmpeg.org/ffmpeg-filters.html#Filtergraph-syntax-1>,


A filterchain consists of a sequence of connected filters, each one 
connected to the previous one in the sequence. A filterchain is 
represented by a list of ","-separated filter descriptions. 
It looks like your trim commands for the first segment consist of a 
`trim` filter which reads video media from input pad [i5] and writes 
video media to an implicit output pad, connected to an `atrim` filter 
which wants reads audio media from an implicit input pad. But the 
implicit output pad is giving video media to a filter which wants audio 
media.


That looks like a type mismatch to me.

Maybe you should rewrite the filtergraph so that you break apart the 
video and audio parts of your input media into separate flows? Then 
apply `trim` to the video media, and separately apply `atrim` to the 
audio media.  Then recombine the video and audio into your output.


I think the documentation is not doing you any favours here.  As I read 
the `trim` filter doc <https://ffmpeg.org/ffmpeg-filters.html#trim> and 
the `atrim` doc <https://ffmpeg.org/ffmpeg-filters.html#atrim>, neither 
talk about being limited to video or audio types of media.


I don't know enough about `ffmpeg` to say off the top of my head how to 
separate the audio media from the video media and feed them to each 
their own filters. Maybe the documentation on "Stream Selection" 
<https://ffmpeg.org/ffmpeg-all.html#Stream-selection> has the answer. 
Maybe you can append stream specifiers like [i5:v] and [i5:a] to get the 
video and audio streams separately.  I will leave that to others to 
figure out.


I hope this helps,
    —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".


[FFmpeg-user] Giving fish vs teaching how to fish [was: Re: I found the bugs]

2024-06-19 Thread Jim DeLaHunt

On 2024-06-19 16:01, Mark Filipak wrote:

…Jim DeLaHunt is fine. He just likes to preach and sing Kumbaya 
without actually contributing at lot.…


It's called "coaching", Mark. Something about giving a person a fish vs 
teaching them how to fish. But it doesn't always take.


But I'm gratified to have been rated "fine". Thank you.


___
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 found the bugs

2024-06-19 Thread Jim DeLaHunt

On 2024-06-19 10:25, Paul B Mahol wrote:


It could be ffmpeg libavformat m2ts demuxer bug. Get the m2ts stream
inspector tool to confirm.


Paul, could you please specify which "m2ts stream inspector tool" you 
are referring to?


From a web search for "m2ts stream inspector tool", I found:

 * TSPE - Transport Stream Packet Editor / Analyser, by BitStreamTools
   <https://bitstreamtools.com/>
 * MPEG-2 Transport Stream Packet Analyser, by daniep01
   <https://github.com/daniep01/MPEG-2-Transport-Stream-Packet-Analyser>
 * tsMuxeR, from VideoHelp <https://www.videohelp.com/software/tsMuxeR>
 * TSInspector, by AlexanderCaesar
   <https://github.com/AlexanderCaesar/TSInspector>
 * Inspector, by Twitch <https://inspector.twitch.tv>

There are more.

Which tool do you mean, please? What is a URL or other specific 
identifier for the tool?


Thank you,
 —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] About trac (bug reporting)

2024-06-18 Thread Jim DeLaHunt

On 2024-06-18 08:16, Greg Oliver wrote:


On Tue, Jun 18, 2024 at 9:45 AM Mark Filipak
wrote:


…There needs to be a triage facility between ffmpeg-user and trac in which
ideas are discussed,
problems are thought out, and good problem statements are formulated. The
triage needs to be led by
senior users (volunteers) who have been around here a while.

Mark,

You should join this list and send these inquiries there..

https://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Wow, Greg, you have more confidence in the welcoming atmosphere and 
patience with mentoring on the ffmpeg-devel list than I do. When I 
followed that list, I did not see that attitude often. Maybe it has 
changed recently.

___
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] About trac (bug reporting)

2024-06-18 Thread Jim DeLaHunt

On 2024-06-18 07:45, Mark Filipak wrote:

There needs to be a triage facility between ffmpeg-user and trac in 
which ideas are discussed, problems are thought out, and good problem 
statements are formulated. The triage needs to be led by senior users 
(volunteers) who have been around here a while


Wait, are you saying that the FFmpeg project would work better if it put 
more effort into mentoring contributors and helping them improve their 
contributions? What an idea! What could be next, enforcing the 
ffmpeg-user code of conduct rules against rudeness? ;-)


I would be delighted but surprised if the project were to set up 
something like that. The Python Core Mentorship Program 
 might be a good example to 
follow.


In the meantime, I can suggest one form of existing mentorship which 
present contributors can try: read and actually follow the bug reporting 
guidelines already at .


MasterQuestionable appears to be the boss of trac.… The language from 
MasterQuestionable … with a wealth of experience and a common language 
and a particular viewpoint. The language is extremely terse and hard 
to follow.…
I didn't get the impression that MasterQuestionable is the boss of trac. 
I do get the impression that MasterQuestionable is doing us the kindness 
of working extra hard in trac, because English seems not to be their 
native language. By comparison, I have an easy time with writing in trac.


___
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 found the bugs

2024-06-16 Thread Jim DeLaHunt

On 2024-06-16 01:19, Mark Filipak wrote:


On 16/06/2024 03.51, Jim DeLaHunt wrote:

On 2024-06-15 23:04, Mark Filipak wrote:

On 15/06/2024 23.39, Jim DeLaHunt wrote:

On 2024-06-15 19:27, Mark Filipak wrote:

It would be nice if folks from here went here:
https://trac.ffmpeg.org/ticket/11055
and saw what is going on. It's up to 76 comments now, so what I 
ask will take you a while.

What's going on is a crime.


What's the crime, detective?  All I see is two people talking past 
each other and not being clear about their evidence. I posted a 
comment with my feedback for you two.


You posted an irrelevant comment supporting inadmissible info from 
one of the accused: FFprobe show_frames.


_Who_ posted the criminal comment (the comment you describe as 
"What's going on is a crime")?  _I_ posted it?  Check again.


No, Jim. I posted "it's a crime" here way before your comment on 
ticket 11055.…


Precisely. I did not appreciate that your reply to me, "you posted an 
irrelevant comment…", maligned me as the author of what you did not 
like. I'm trying to help you here. Your mistaken hostility in reply is 
reducing the amount of help you get.



It doesn't matter, Jim. Do I have to find EVERY problem?…


No. This is a project with volunteer contributions. You don't have to 
find ANY problems. Contribute to the extent you wish.


You did find one problem, and started a bug ticket about it. Good. But, 
you have not yet finished that one job. You are being offered advice and 
help to turn that ticket into a complete report, which describes the 
problem in a way that helps others investigate. Finishing that one job 
is not the same as having to find EVERY problem.


I suspect you would benefit if someone were to diagnose and fix this 
issue you found.  You don't yourself have the expertise to do that. 
Fine. However, I think you are capable of completing that ticket. If you 
do complete it, and cooperate with others who show up to help, you might 
make a fix more likely. Instead, to those who are interested in the 
issue, you are mostly reacting with hostility.  That is making a fix 
less likely.


…This all stinks and I'm sick of it.… I don't give a damn if FFmpeg 
wants to bury the news and leave everything unchanged. I'm finished 
with it. I got no support here and I see the picture clearly.


There is a saying, you get out what you put in.


___
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 found the bugs

2024-06-16 Thread Jim DeLaHunt

On 2024-06-15 23:04, Mark Filipak wrote:


On 15/06/2024 23.39, Jim DeLaHunt wrote:

On 2024-06-15 19:27, Mark Filipak wrote:


It would be nice if folks from here went here:
https://trac.ffmpeg.org/ticket/11055
and saw what is going on. It's up to 76 comments now, so what I ask 
will take you a while.

What's going on is a crime.


What's the crime, detective?  All I see is two people talking past 
each other and not being clear about their evidence. I posted a 
comment with my feedback for you two.


You posted an irrelevant comment supporting inadmissible info from one 
of the accused: FFprobe show_frames.


_Who_ posted the criminal comment (the comment you describe as "What's 
going on is a crime")?  _I_ posted it?  Check again.


Note that the XML file which MasterQuestionable attached is from 
ffprobe's -show_entries, not -show_frames. If you want to assert that 
those are the same thing, and that -show_entries data is untrustworthy 
for the same reason that -show_frames data is, then you should have some 
evidence for that assertion.



What's the crime? MasterQuestionable is kicking up dust to ...


That's not a _crime_. That's just ineffective technical discussion.  
Getting carried away with a crime & trial courtroom theme pretty soon 
dilutes the technical discussion as well.



___
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 found the bugs

2024-06-15 Thread Jim DeLaHunt

On 2024-06-15 19:27, Mark Filipak wrote:


It would be nice if folks from here went here:
https://trac.ffmpeg.org/ticket/11055
and saw what is going on. It's up to 76 comments now, so what I ask 
will take you a while.

What's going on is a crime.


What's the crime, detective?  All I see is two people talking past each 
other and not being clear about their evidence. I posted a comment with 
my feedback for you two.



___
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] ticket/11055 FFmpeg reports inconsistent PTS, DTS between 3 invocations [was: Re: I found the bugs]

2024-06-14 Thread Jim DeLaHunt
 H.264. I think there might be an effect on DTSes 
& PTSes.

Can you help me out with this?
=

Can all who read this message help me out, and thereby help yourself? 
Ask and I'll tell you how.


FYI, it is not clear to me what you are asking people to do to "help 
[you] out". But I think I am not your target audience.  My purpose is to 
help you make #11055 be a well-formed bug report which affords 
developers fixing one bug in FFmpeg. I suspect that helping you achieve 
your goals will require multiple, incremental, bug fixes.


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] I found the bugs

2024-06-13 Thread Jim DeLaHunt

On 2024-06-13 16:23, Mark Filipak wrote:

I don't see a clear statement of what you are trying to accomplish. I 
think it is: "I am trying to generate a video file which has correct 
PTS and DTS values and which plays correctly on MPV and FFplay, by 
splicing two video files together." But maybe it is: "I am trying to 
get FFmpeg's -vf showinfo filter and its -show_frames option to 
output consistent numbers."


I have no control over what '-vf showinfo' & '-show_frames' report. 
The issue is that they output different numbers and that the numbers 
are different from reality.


Maybe your statement could be, "I have a 99-frame video and I want 
ffmpeg's -vf showinfo filter and its -show_frames option to output 
consistent numbers. The current output is inconsistent."


But ticket #11055 does seem to lack a clear statement of purpose, and it 
will be a better report when it has one.



You do supply the exact command lines you used. You also specified 
which version of FFmpeg you used. Good for you! But I don't see that 
you supplied "The full, uncut console output provided by ffmpeg -v 9 
-loglevel 99"….


The console output for the 3 command lines is summarized in the table. 
Their actual outputs are files.


Great! I suggest you attach them to the ticket.

In the ticket UI, under the heading "Attachments", there is a button, 
"Attach file". Try using that to attach the files containing the actual 
full, uncut console output.



I don't see where you supply the required input files to reproduce 
the 99-frame output video or the diagnostics you list.


I uploaded the 4 second video twice and it was acknowledged. Isn't it 
there? The ...whateveritis is so cryptic. It's made for programmers, 
not human beings. 


The instructions at <https://ffmpeg.org/bugreports.html> say to "Email 
the ffmpeg mailing list and indicate the filename of the sample."  Have 
you done that?   Also, it might be helpful to state the filename of the 
sample as a sample in ticket #11055.


Also consider including the URL of a page listing those uploaded files, 
<https://streams.videolan.org/ffmpeg/incoming/11055/>. (IMHO this URL 
should be included in the instructions at bugreports.html, but that is a 
separate issue.)


On 2024-06-13 20:56, Mark Filipak wrote:
At https://trac.ffmpeg.org/ticket/11055, there's someone with an alias 
of "MasterQuestionable" who is harassing the heck out of me.


For what it's worth, I have read those comments and they don't strike me 
as "harassing".  I do actually see some progress in clarifying the 
information of the bug report.


A lot of the time I don't know what meaning "MasterQuestionable" is 
trying to communicate[1][2]. However sometimes I don't know what you are 
trying to communicate either.  Writing clearly about complicated data 
structures is hard, I guess.


Best regards,
    —Jim DeLaHunt

[1] "Technically DTS (Decoding Timestamps) shall be run-time decided. 
And shouldn't (also couldn't) be of concern before when." 
<https://trac.ffmpeg.org/ticket/11055#comment:15>
[2] "The ideal container format #3" 
<https://github.com/MasterInQuestion/talk/discussions/3#discussion-5219034> 
(I don't understand what this says about "DTS shall be run-time decided".


___
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 found the bugs

2024-06-13 Thread Jim DeLaHunt

On 2024-06-13 13:16, Mark Filipak wrote:

On 13/06/2024 02.16, Carl Zwanzig wrote:

On 6/12/2024 2:44 PM, Mark Filipak wrote:


I need someone more knowledgeable about FFmpeg to triage. 


They're often called 'developers'.


Okay, Carl. https://trac.ffmpeg.org/ticket/11055

Since there are so many things wrong, I predict the devs will do nothing.


Mark, I agree with Carl that it is a better choice to turn your findings 
into a bug report than to wait for replies to an ffmpeg-user list post.  
Good for you for writing ticket #11055.


However, let me anticipate the feedback of developers reading this 
ticket: it is not yet a good bug report.  The FFmpeg project has advice 
on what to include in a bug report at 
<https://ffmpeg.org/bugreports.html>. The advice includes:



// When writing your bug report, please include (uncompressed):

  * What you were trying to accomplish (e.g., "I am trying to
transcode from this format to that format...")
  * The problem you encountered (e.g., "ffmpeg crashed, see the gdb
and valgrind output below" or "The output video was all green")
  * The exact command line you were using (e.g., "|ffmpeg -i input.mov
-an -vcodec foo output.avi|")
  * The full, uncut console output provided by |ffmpeg -v 9 -loglevel
99 -i | followed by the name of your input file (copy/pasted from
the console, including the banner that indicates version and
configuration options), paste ffplay or ffprobe output only if
your problem is not reproducible with ffmpeg.
  * Sufficient information, including any required input files, to
reproduce the bug and confirm a potential fix.

I don't see a clear statement of what you are trying to accomplish. I 
think it is: "I am trying to generate a video file which has correct PTS 
and DTS values and which plays correctly on MPV and FFplay, by splicing 
two video files together." But maybe it is: "I am trying to get FFmpeg's 
-vf showinfo filter and its -show_frames option to output consistent 
numbers."


I think you made a good faith effort to state the problem you 
encountered, but I think you did not follow through and explain your 
data. You don't explain what each of your columns depict (though maybe 
someone more expert than me would understand from just your column 
headers). You say, "'-vf showinfo' disagree: 53 frames, gap & 
duplicates.", but you don't say with what showinfo disagrees, and you 
don't point out which frames demonstrate the disagreement, which 
demonstrate gaps, which demonstrate duplicates. Maybe an additional 
column or so would be a good place to codes to denote disagreement, 
gaps, and/or duplicates.


You do supply the exact command lines you used. You also specified which 
version of FFmpeg you used. Good for you! But I don't see that you 
supplied "The full, uncut console output provided by ffmpeg -v 9 
-loglevel 99"….


I don't see where you supply the required input files to reproduce the 
99-frame output video or the diagnostics you list.


Part of the process of bug fixing is to convert information from the bug 
reporter's context and frame of reference to the bug fixer's context and 
frame of reference. Someone has to do that work.  One of the reasons why 
bugs don't get fixed is that the work doesn't get done.  If you really 
want the bug to get fixed, maybe you will have to do more of that work 
than you prefer to.


I hope this is helpful.  And, I hope your work turns into a solid 
improvement in FFmpeg. It has good potential to.

 —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] FFmpeg

2024-05-16 Thread Jim DeLaHunt

Keith:

On 2024-05-16 21:42, 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?

Keith


Welcome to the fun, fun world of FFmpeg!

Apologies for asking an elementary question, but, the FFmpeg program 
runs from the Command window. Are you opening a Command window and 
typing "ffmpeg" at the command prompt?


If these terms are unfamiliar, then a good next step might be to get a 
tutorial on using the Windows command prompt. Be sure to look for 
details on how to use quotes around command parameters. This list is not 
a good place to get that tutorial; people here mostly assume that 
everyone already knows how to use command-line interface programs, like 
FFmpeg and many others.


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] Configure error with fontconfig

2024-04-30 Thread Jim Worrall


> On Apr 30, 2024, at 13:53, Jim Worrall  wrote:
> 
> 
> 
>> On Apr 30, 2024, at 11:29, Jim Worrall  wrote:
>> 
>> 
>> 
>>> On Apr 30, 2024, at 09:41, Jim Worrall  wrote:
>>> 
>>> 
>>> 
>>>> On Apr 29, 2024, at 23:00, Ferdi Scholten  wrote:
>>>> 
>>>> This may not be due to ffmpeg itself, but I would appreciate some help.
>>>>> Configure says that pkg-config can’t find fontconfig.pc, but it seems to 
>>>>> be
>>>>> in the PKG_CONFIG_PATH.
>>>>> 
>>>>> # ./configure --cc=/usr/bin/gcc \
>>>>> --prefix=$TARGET \
>>>>> --pkg-config-flags="--static" \
>>>>> --extra-cflags="-I/usr/local/include" \
>>>>> --extra-ldflags="-L/usr/local/lib" \
>>>>> --extra-libs="-lpthread -ldl -lstdc++" \
>>>>> --enable-static --disable-shared \
>>>>> --enable-nonfree --enable-gpl --enable-version3 \
>>>>> --enable-libfribidi --enable-libfreetype --enable-libfontconfig \
>>>>> --enable-libfdk-aac --enable-libx264 --enable-libx265 --disable-lzma
>>>>> ERROR: fontconfig not found using pkg-config
>>>>> 
>>>>> ffbuild/config.log:
>>>>> . . .
>>>>> require_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>>> check_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>>> test_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>>> pkg-config --exists --print-errors fontconfig
>>>>> Package fontconfig was not found in the pkg-config search path.
>>>>> Perhaps you should add the directory containing `fontconfig.pc'
>>>>> to the PKG_CONFIG_PATH environment variable
>>>>> Package 'fontconfig', required by 'virtual:world', not found
>>>>> ERROR: fontconfig not found using pkg-config
>>>>> 
>>>>> Here is fontconfig.pc:
>>>>> # ll /usr/local/ffmpeg/packages/pkg-config/check/gtk/
>>>>> total 224K
>>>>> drwxr-xr-x 2 root root  28 Apr 28 11:14 ./
>>>>> drwxr-xr-x 7 root root  72 Apr 28 11:14 ../
>>>>> -rw-r--r-- 1 root root 232 Apr 28 11:14 atk.pc
>>>>> -rw-r--r-- 1 root root 287 Apr 28 11:14 cairo-gobject.pc
>>>>> -rw-r--r-- 1 root root 388 Apr 28 11:14 cairo.pc
>>>>> -rw-r--r-- 1 root root 269 Apr 28 11:14 fontconfig.pc
>>>>> 
>>>>> The last path in PKG_CONFIG_PATH contains fontconfig.pc:
>>>>> 
>>>>> # echo $PKG_CONFIG_PATH
>>>>> /lib:/usr/lib:usr/local:/usr/local/lib:/usr/local/lib/pkgconfig:
>>>>> /usr/libdata/pkgconfig:/usr/local/libdata/:/usr/local/libdata/pkgconfig:
>>>>> /usr/local/ffmpeg/target/lib:/usr/local/ffmpeg/target/lib/pkgconfig:
>>>>> /usr/local/ffmpeg/target/share/pkgconfig:
>>>>> /usr/local/ffmpeg/build/pkg-config/check/gtk/
>>>>> ___
>>>> 
>>>> Most likely the fontconfig package on your system is a shared library, it 
>>>> is not distributed as a static library. It therefor cannot be used in a 
>>>> static build with --disable-shared.
>>>> 
>>>> 
>>>> Try building ffmpeg with shared libraries if you need fontconfig.
>>> 
>>> Thank you.  Before changing all the ffmpeg dependencies to shared 
>>> libraries, 
>>> I tried making a static fontconfig.  I removed the packaged fontconfig 
>>> parts 
>>> and built my own static fontconfig, but got the same “fontconfig not found" 
>>> error.  
>>> There is no .so file on the system with *fontconfig* in its name.
>>> 
>>> The relevant files may be:
>>> /usr/local/ffmpeg/target/include/fontconfig/fontconfig.h
>>> /usr/local/ffmpeg/target/lib/libfontconfig.la <http://libfontconfig.la/>
>>> /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
>>> /usr/local/ffmpeg/target/lib/libfontconfig.a
>>> 
>>> 
>>> 
>>> fontconfig.pc contains:
>>> # cat /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
>>> prefix=/usr/local/ffmpeg/target
>>> exec_prefix=${prefix}
>>> libdir=${exec_prefix}/lib
>>> includedir=${prefix}/include
>>> sysconfdir=${prefix}/etc
>>> localstatedir=${prefix}/var
>>> PACKAGE=fontconfig
>>> confdir=$

Re: [FFmpeg-user] Configure error with fontconfig

2024-04-30 Thread Jim Worrall


> On Apr 30, 2024, at 11:29, Jim Worrall  wrote:
> 
> 
> 
>> On Apr 30, 2024, at 09:41, Jim Worrall  wrote:
>> 
>> 
>> 
>>> On Apr 29, 2024, at 23:00, Ferdi Scholten  wrote:
>>> 
>>> This may not be due to ffmpeg itself, but I would appreciate some help.
>>>> Configure says that pkg-config can’t find fontconfig.pc, but it seems to be
>>>> in the PKG_CONFIG_PATH.
>>>> 
>>>> # ./configure --cc=/usr/bin/gcc \
>>>> --prefix=$TARGET \
>>>> --pkg-config-flags="--static" \
>>>> --extra-cflags="-I/usr/local/include" \
>>>> --extra-ldflags="-L/usr/local/lib" \
>>>> --extra-libs="-lpthread -ldl -lstdc++" \
>>>> --enable-static --disable-shared \
>>>> --enable-nonfree --enable-gpl --enable-version3 \
>>>> --enable-libfribidi --enable-libfreetype --enable-libfontconfig \
>>>> --enable-libfdk-aac --enable-libx264 --enable-libx265 --disable-lzma
>>>> ERROR: fontconfig not found using pkg-config
>>>> 
>>>> ffbuild/config.log:
>>>> . . .
>>>> require_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>> check_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>> test_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>>> pkg-config --exists --print-errors fontconfig
>>>> Package fontconfig was not found in the pkg-config search path.
>>>> Perhaps you should add the directory containing `fontconfig.pc'
>>>> to the PKG_CONFIG_PATH environment variable
>>>> Package 'fontconfig', required by 'virtual:world', not found
>>>> ERROR: fontconfig not found using pkg-config
>>>> 
>>>> Here is fontconfig.pc:
>>>> # ll /usr/local/ffmpeg/packages/pkg-config/check/gtk/
>>>> total 224K
>>>> drwxr-xr-x 2 root root  28 Apr 28 11:14 ./
>>>> drwxr-xr-x 7 root root  72 Apr 28 11:14 ../
>>>> -rw-r--r-- 1 root root 232 Apr 28 11:14 atk.pc
>>>> -rw-r--r-- 1 root root 287 Apr 28 11:14 cairo-gobject.pc
>>>> -rw-r--r-- 1 root root 388 Apr 28 11:14 cairo.pc
>>>> -rw-r--r-- 1 root root 269 Apr 28 11:14 fontconfig.pc
>>>> 
>>>> The last path in PKG_CONFIG_PATH contains fontconfig.pc:
>>>> 
>>>> # echo $PKG_CONFIG_PATH
>>>> /lib:/usr/lib:usr/local:/usr/local/lib:/usr/local/lib/pkgconfig:
>>>> /usr/libdata/pkgconfig:/usr/local/libdata/:/usr/local/libdata/pkgconfig:
>>>> /usr/local/ffmpeg/target/lib:/usr/local/ffmpeg/target/lib/pkgconfig:
>>>> /usr/local/ffmpeg/target/share/pkgconfig:
>>>> /usr/local/ffmpeg/build/pkg-config/check/gtk/
>>>> ___
>>> 
>>> Most likely the fontconfig package on your system is a shared library, it 
>>> is not distributed as a static library. It therefor cannot be used in a 
>>> static build with --disable-shared.
>>> 
>>> 
>>> Try building ffmpeg with shared libraries if you need fontconfig.
>> 
>> Thank you.  Before changing all the ffmpeg dependencies to shared libraries, 
>> I tried making a static fontconfig.  I removed the packaged fontconfig parts 
>> and built my own static fontconfig, but got the same “fontconfig not found" 
>> error.  
>> There is no .so file on the system with *fontconfig* in its name.
>> 
>> The relevant files may be:
>> /usr/local/ffmpeg/target/include/fontconfig/fontconfig.h
>> /usr/local/ffmpeg/target/lib/libfontconfig.la <http://libfontconfig.la/>
>> /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
>> /usr/local/ffmpeg/target/lib/libfontconfig.a
>> 
>> 
>> 
>> fontconfig.pc contains:
>> # cat /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
>> prefix=/usr/local/ffmpeg/target
>> exec_prefix=${prefix}
>> libdir=${exec_prefix}/lib
>> includedir=${prefix}/include
>> sysconfdir=${prefix}/etc
>> localstatedir=${prefix}/var
>> PACKAGE=fontconfig
>> confdir=${sysconfdir}/fonts
>> cachedir=${localstatedir}/cache/${PACKAGE}
>> 
>> Name: Fontconfig
>> Description: Font configuration and customization library
>> Version: 2.15.0
>> Requires:  freetype2 >= 21.0.15
>> Requires.private:  libxml-2.0 >= 2.6
>> Libs: -L${libdir} -lfontconfig
>> Libs.private:  
>> Cflags: -I${includedir}  
>> 
>> fontconfig.pc seems to be pointing to the right places (except 
>> sysconfdir=${prefix}/etc doesn’t exist; I don’t know what it would be 
>> looking for there).  I’m perplexed.
> 
> Small error; ${prefix}/etc DOES exist.  It contains a fonts directory.
> 

Many times the problem seems to actually be not finding lzma.  
But I have --disable-lzma in my configure command.
Here’s the end of config.log this time:
. . .
brotlicommon -lxml2 -licui18n -licuuc -licudata -lz -llzma -lm
/usr/bin/ld: cannot find -llzma: No such file or directory
collect2: error: ld returned 1 exit status
ERROR: fontconfig not found using pkg-config



___
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] Configure error with fontconfig

2024-04-30 Thread Jim Worrall


> On Apr 30, 2024, at 09:41, Jim Worrall  wrote:
> 
> 
> 
>> On Apr 29, 2024, at 23:00, Ferdi Scholten  wrote:
>> 
>> This may not be due to ffmpeg itself, but I would appreciate some help.
>>> Configure says that pkg-config can’t find fontconfig.pc, but it seems to be
>>> in the PKG_CONFIG_PATH.
>>> 
>>> # ./configure --cc=/usr/bin/gcc \
>>> --prefix=$TARGET \
>>> --pkg-config-flags="--static" \
>>> --extra-cflags="-I/usr/local/include" \
>>> --extra-ldflags="-L/usr/local/lib" \
>>> --extra-libs="-lpthread -ldl -lstdc++" \
>>> --enable-static --disable-shared \
>>> --enable-nonfree --enable-gpl --enable-version3 \
>>> --enable-libfribidi --enable-libfreetype --enable-libfontconfig \
>>> --enable-libfdk-aac --enable-libx264 --enable-libx265 --disable-lzma
>>> ERROR: fontconfig not found using pkg-config
>>> 
>>> ffbuild/config.log:
>>> . . .
>>> require_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>> check_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>> test_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>>> pkg-config --exists --print-errors fontconfig
>>> Package fontconfig was not found in the pkg-config search path.
>>> Perhaps you should add the directory containing `fontconfig.pc'
>>> to the PKG_CONFIG_PATH environment variable
>>> Package 'fontconfig', required by 'virtual:world', not found
>>> ERROR: fontconfig not found using pkg-config
>>> 
>>> Here is fontconfig.pc:
>>> # ll /usr/local/ffmpeg/packages/pkg-config/check/gtk/
>>> total 224K
>>> drwxr-xr-x 2 root root  28 Apr 28 11:14 ./
>>> drwxr-xr-x 7 root root  72 Apr 28 11:14 ../
>>> -rw-r--r-- 1 root root 232 Apr 28 11:14 atk.pc
>>> -rw-r--r-- 1 root root 287 Apr 28 11:14 cairo-gobject.pc
>>> -rw-r--r-- 1 root root 388 Apr 28 11:14 cairo.pc
>>> -rw-r--r-- 1 root root 269 Apr 28 11:14 fontconfig.pc
>>> 
>>> The last path in PKG_CONFIG_PATH contains fontconfig.pc:
>>> 
>>> # echo $PKG_CONFIG_PATH
>>> /lib:/usr/lib:usr/local:/usr/local/lib:/usr/local/lib/pkgconfig:
>>> /usr/libdata/pkgconfig:/usr/local/libdata/:/usr/local/libdata/pkgconfig:
>>> /usr/local/ffmpeg/target/lib:/usr/local/ffmpeg/target/lib/pkgconfig:
>>> /usr/local/ffmpeg/target/share/pkgconfig:
>>> /usr/local/ffmpeg/build/pkg-config/check/gtk/
>>> ___
>> 
>> Most likely the fontconfig package on your system is a shared library, it is 
>> not distributed as a static library. It therefor cannot be used in a static 
>> build with --disable-shared.
>> 
>> 
>> Try building ffmpeg with shared libraries if you need fontconfig.
> 
> Thank you.  Before changing all the ffmpeg dependencies to shared libraries, 
> I tried making a static fontconfig.  I removed the packaged fontconfig parts 
> and built my own static fontconfig, but got the same “fontconfig not found" 
> error.  
> There is no .so file on the system with *fontconfig* in its name.
> 
> The relevant files may be:
> /usr/local/ffmpeg/target/include/fontconfig/fontconfig.h
> /usr/local/ffmpeg/target/lib/libfontconfig.la <http://libfontconfig.la/>
> /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
> /usr/local/ffmpeg/target/lib/libfontconfig.a
> 
> 
> 
> fontconfig.pc contains:
> # cat /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
> prefix=/usr/local/ffmpeg/target
> exec_prefix=${prefix}
> libdir=${exec_prefix}/lib
> includedir=${prefix}/include
> sysconfdir=${prefix}/etc
> localstatedir=${prefix}/var
> PACKAGE=fontconfig
> confdir=${sysconfdir}/fonts
> cachedir=${localstatedir}/cache/${PACKAGE}
> 
> Name: Fontconfig
> Description: Font configuration and customization library
> Version: 2.15.0
> Requires:  freetype2 >= 21.0.15
> Requires.private:  libxml-2.0 >= 2.6
> Libs: -L${libdir} -lfontconfig
> Libs.private:  
> Cflags: -I${includedir}  
> 
> fontconfig.pc seems to be pointing to the right places (except 
> sysconfdir=${prefix}/etc doesn’t exist; I don’t know what it would be looking 
> for there).  I’m perplexed.

Small error; ${prefix}/etc DOES exist.  It contains a fonts directory.

___
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] Configure error with fontconfig

2024-04-30 Thread Jim Worrall


> On Apr 29, 2024, at 23:00, Ferdi Scholten  wrote:
> 
> This may not be due to ffmpeg itself, but I would appreciate some help.
>> Configure says that pkg-config can’t find fontconfig.pc, but it seems to be
>> in the PKG_CONFIG_PATH.
>> 
>> # ./configure --cc=/usr/bin/gcc \
>> --prefix=$TARGET \
>> --pkg-config-flags="--static" \
>> --extra-cflags="-I/usr/local/include" \
>> --extra-ldflags="-L/usr/local/lib" \
>> --extra-libs="-lpthread -ldl -lstdc++" \
>> --enable-static --disable-shared \
>> --enable-nonfree --enable-gpl --enable-version3 \
>> --enable-libfribidi --enable-libfreetype --enable-libfontconfig \
>> --enable-libfdk-aac --enable-libx264 --enable-libx265 --disable-lzma
>> ERROR: fontconfig not found using pkg-config
>> 
>> ffbuild/config.log:
>> . . .
>> require_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>> check_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>> test_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
>> pkg-config --exists --print-errors fontconfig
>> Package fontconfig was not found in the pkg-config search path.
>> Perhaps you should add the directory containing `fontconfig.pc'
>> to the PKG_CONFIG_PATH environment variable
>> Package 'fontconfig', required by 'virtual:world', not found
>> ERROR: fontconfig not found using pkg-config
>> 
>> Here is fontconfig.pc:
>> # ll /usr/local/ffmpeg/packages/pkg-config/check/gtk/
>> total 224K
>> drwxr-xr-x 2 root root  28 Apr 28 11:14 ./
>> drwxr-xr-x 7 root root  72 Apr 28 11:14 ../
>> -rw-r--r-- 1 root root 232 Apr 28 11:14 atk.pc
>> -rw-r--r-- 1 root root 287 Apr 28 11:14 cairo-gobject.pc
>> -rw-r--r-- 1 root root 388 Apr 28 11:14 cairo.pc
>> -rw-r--r-- 1 root root 269 Apr 28 11:14 fontconfig.pc
>> 
>> The last path in PKG_CONFIG_PATH contains fontconfig.pc:
>> 
>> # echo $PKG_CONFIG_PATH
>> /lib:/usr/lib:usr/local:/usr/local/lib:/usr/local/lib/pkgconfig:
>> /usr/libdata/pkgconfig:/usr/local/libdata/:/usr/local/libdata/pkgconfig:
>> /usr/local/ffmpeg/target/lib:/usr/local/ffmpeg/target/lib/pkgconfig:
>> /usr/local/ffmpeg/target/share/pkgconfig:
>> /usr/local/ffmpeg/build/pkg-config/check/gtk/
>> ___
> 
> Most likely the fontconfig package on your system is a shared library, it is 
> not distributed as a static library. It therefor cannot be used in a static 
> build with --disable-shared.
> 
> 
> Try building ffmpeg with shared libraries if you need fontconfig.

Thank you.  Before changing all the ffmpeg dependencies to shared libraries, 
I tried making a static fontconfig.  I removed the packaged fontconfig parts 
and built my own static fontconfig, but got the same “fontconfig not found" 
error.  
There is no .so file on the system with *fontconfig* in its name.

The relevant files may be:
/usr/local/ffmpeg/target/include/fontconfig/fontconfig.h
/usr/local/ffmpeg/target/lib/libfontconfig.la
/usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
/usr/local/ffmpeg/target/lib/libfontconfig.a

fontconfig.pc contains:
# cat /usr/local/ffmpeg/target/lib/pkgconfig/fontconfig.pc
prefix=/usr/local/ffmpeg/target
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
sysconfdir=${prefix}/etc
localstatedir=${prefix}/var
PACKAGE=fontconfig
confdir=${sysconfdir}/fonts
cachedir=${localstatedir}/cache/${PACKAGE}

Name: Fontconfig
Description: Font configuration and customization library
Version: 2.15.0
Requires:  freetype2 >= 21.0.15
Requires.private:  libxml-2.0 >= 2.6
Libs: -L${libdir} -lfontconfig
Libs.private:  
Cflags: -I${includedir}  

fontconfig.pc seems to be pointing to the right places (except 
sysconfdir=${prefix}/etc doesn’t exist; I don’t know what it would be looking 
for there).  I’m perplexed.
___
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] Configure error with fontconfig

2024-04-29 Thread Jim Worrall
This may not be due to ffmpeg itself, but I would appreciate some help.  
Configure says that pkg-config can’t find fontconfig.pc, but it seems to be
in the PKG_CONFIG_PATH.

# ./configure --cc=/usr/bin/gcc \
--prefix=$TARGET \
--pkg-config-flags="--static" \
--extra-cflags="-I/usr/local/include" \
--extra-ldflags="-L/usr/local/lib" \
--extra-libs="-lpthread -ldl -lstdc++" \
--enable-static --disable-shared \
--enable-nonfree --enable-gpl --enable-version3 \
--enable-libfribidi --enable-libfreetype --enable-libfontconfig \
--enable-libfdk-aac --enable-libx264 --enable-libx265 --disable-lzma 
ERROR: fontconfig not found using pkg-config

ffbuild/config.log:
. . . 
require_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
check_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
test_pkg_config libfontconfig fontconfig fontconfig/fontconfig.h FcInit
pkg-config --exists --print-errors fontconfig
Package fontconfig was not found in the pkg-config search path.
Perhaps you should add the directory containing `fontconfig.pc'
to the PKG_CONFIG_PATH environment variable
Package 'fontconfig', required by 'virtual:world', not found
ERROR: fontconfig not found using pkg-config

Here is fontconfig.pc:
# ll /usr/local/ffmpeg/packages/pkg-config/check/gtk/
total 224K
drwxr-xr-x 2 root root  28 Apr 28 11:14 ./
drwxr-xr-x 7 root root  72 Apr 28 11:14 ../
-rw-r--r-- 1 root root 232 Apr 28 11:14 atk.pc
-rw-r--r-- 1 root root 287 Apr 28 11:14 cairo-gobject.pc
-rw-r--r-- 1 root root 388 Apr 28 11:14 cairo.pc
-rw-r--r-- 1 root root 269 Apr 28 11:14 fontconfig.pc

The last path in PKG_CONFIG_PATH contains fontconfig.pc:

# echo $PKG_CONFIG_PATH
/lib:/usr/lib:usr/local:/usr/local/lib:/usr/local/lib/pkgconfig:
/usr/libdata/pkgconfig:/usr/local/libdata/:/usr/local/libdata/pkgconfig:
/usr/local/ffmpeg/target/lib:/usr/local/ffmpeg/target/lib/pkgconfig:
/usr/local/ffmpeg/target/share/pkgconfig:
/usr/local/ffmpeg/build/pkg-config/check/gtk/
___
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 make IDR cuts

2024-04-21 Thread jim shupert
yes , sorry.
thanks for noticing
We are not sure what happened there.
The current theories are:
1. something super natural
2. I am new to email
3. I was sleepy
;)

cheers

On Sat, Apr 20, 2024 at 7:42 PM David Niklas via ffmpeg-user <
ffmpeg-user@ffmpeg.org> wrote:

> Just a quick heads-up, you seem to have forgotten to put any text in your
> message, Mr. Shupert. It just quotes mark's email.
>
> You're welcome,
> David
>
> On Sat, 20 Apr 2024 17:26:20 -0400
> jim shupert  wrote:
> > On Wed, Apr 3, 2024 at 8:02 AM Mark Filipak 
> > wrote:
> >
> > > Is there more to this? If there is, it's not evident to me.
> > >
> > > If there are several B-frames in a row, then adjust your mind to 'see'
> > > larger shifts across the
> > > multiple B-frames and adjust PTSs & DTSs to match.
> > >
> > >
> > > Cutting off a leading open GOP:
> > >  <open GOP>  <—closed GOP——>
> > > PTS order  [_I_][_B_][_P_][_B_][_I_][_B_][_P_][_B_][_P_][_I_]
> > >__/  ___¦___/  ___¦___/  ___¦___/  ___¦___/  __/
> > >   //   ¦ /   ¦ /   ¦ /   ¦ /
> > > DTS order [_I_][_P_][_B_][_I_][_B_][_P_][_B_][_P_][_B_][_I_]
> > >  XXX X
> > >
> > > PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]
> > >__/  ___¦___/  ___¦___/  __/
> > >   //   ¦ /   ¦ /
> > > DTS order [_I_][_P_][_B_][_P_][_B_][_I_]
> > >
> > > Cut on PTS, then fix up the 1st DTS & packet SCRs.
> > >
> > > Or, I don't think it's going to hurt anything to leave this:
> > > PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]
> > >   ___/  ___¦___/  ___¦___/  __/
> > >  / /   ¦ /   ¦ /
> > > DTS order[_I_] [_P_][_B_][_P_][_B_][_I_]
> > > and just fix-up the packet SCRs.
> > >
> > > =
> > > Cutting off a leading closed GOP:
> > >  <—closed GOP——>  <open GOP>
> > > PTS order  [_I_][_B_][_P_][_B_][_P_][_I_][_B_][_P_][_B_][_I_]
> > >__/  ___¦___/  ___¦___/  __/  ___¦___/  ___¦___/
> > >   //   ¦ /   ¦ //   ¦ /   ¦
> > > DTS order [_I_][_P_][_B_][_P_][_B_][_I_][_P_][_B_][_I_][_B_]
> > >  XXXXX
> > >
> > > PTS order   [_I_][_B_][_P_][_B_][_I_]
> > > __/  ___¦___/  ___¦___/
> > >//   ¦ /   ¦
> > > DTS order  [_I_][_P_][_B_][_I_][_B_]
> > >
> > > Just cut it and fix-up the packet SCRs.
> > >
> > > =
> > > Cutting off a trailing GOP from a closed GOP:
> > >  <—closed GOP——>
> > > PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]..
> > >__/  ___¦___/  ___¦___/
> > >   //   ¦ /   ¦
> > > DTS order [_I_][_P_][_B_][_P_][_B_]
> > >
> > > Just cut at the end of the closed GOP.
> > >
> > > =
> > > Cutting off a trailing GOP from an open GOP:
> > >  <open GOP>
> > > PTS order  [_I_][_B_][_P_][_B_][_I_]..
> > >__/  ___¦___/  ___¦___/
> > >   //   ¦ /   ¦
> > > DTS order [_I_][_P_][_B_][_I_][_B_]
> > >
> > > PTS order  [_I_][_B_][_P_][_B_][_I_]
> > >__/  ___¦___/  ___¦___/
> > >   //   ¦ /   ¦
> > > DTS order [_I_][_P_][_B_][_I_][_B_]
> > >
> > > Cut retaining an ending I-frame, only.
> > >
> > >
> > > Honestly, I don't know why the MPEG folks don't supply illustrations
> > > instead of their torturous text.
> > >
> > > This isn't magic, it's Legos.
> > > ___
> > > 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".
>
___
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 make IDR cuts

2024-04-20 Thread jim shupert
On Wed, Apr 3, 2024 at 8:02 AM Mark Filipak 
wrote:

> Is there more to this? If there is, it's not evident to me.
>
> If there are several B-frames in a row, then adjust your mind to 'see'
> larger shifts across the
> multiple B-frames and adjust PTSs & DTSs to match.
>
>
> Cutting off a leading open GOP:
>    <—closed GOP——>
> PTS order  [_I_][_B_][_P_][_B_][_I_][_B_][_P_][_B_][_P_][_I_]
>__/  ___¦___/  ___¦___/  ___¦___/  ___¦___/  __/
>   //   ¦ /   ¦ /   ¦ /   ¦ /
> DTS order [_I_][_P_][_B_][_I_][_B_][_P_][_B_][_P_][_B_][_I_]
>  XXX X
>
> PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]
>__/  ___¦___/  ___¦___/  __/
>   //   ¦ /   ¦ /
> DTS order [_I_][_P_][_B_][_P_][_B_][_I_]
>
> Cut on PTS, then fix up the 1st DTS & packet SCRs.
>
> Or, I don't think it's going to hurt anything to leave this:
> PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]
>   ___/  ___¦___/  ___¦___/  __/
>  / /   ¦ /   ¦ /
> DTS order[_I_] [_P_][_B_][_P_][_B_][_I_]
> and just fix-up the packet SCRs.
>
> =
> Cutting off a leading closed GOP:
>  <—closed GOP——>  
> PTS order  [_I_][_B_][_P_][_B_][_P_][_I_][_B_][_P_][_B_][_I_]
>__/  ___¦___/  ___¦___/  __/  ___¦___/  ___¦___/
>   //   ¦ /   ¦ //   ¦ /   ¦
> DTS order [_I_][_P_][_B_][_P_][_B_][_I_][_P_][_B_][_I_][_B_]
>  XXXXX
>
> PTS order   [_I_][_B_][_P_][_B_][_I_]
> __/  ___¦___/  ___¦___/
>//   ¦ /   ¦
> DTS order  [_I_][_P_][_B_][_I_][_B_]
>
> Just cut it and fix-up the packet SCRs.
>
> =
> Cutting off a trailing GOP from a closed GOP:
>  <—closed GOP——>
> PTS order  [_I_][_B_][_P_][_B_][_P_][_I_]..
>__/  ___¦___/  ___¦___/
>   //   ¦ /   ¦
> DTS order [_I_][_P_][_B_][_P_][_B_]
>
> Just cut at the end of the closed GOP.
>
> =
> Cutting off a trailing GOP from an open GOP:
>  
> PTS order  [_I_][_B_][_P_][_B_][_I_]..
>__/  ___¦___/  ___¦___/
>   //   ¦ /   ¦
> DTS order [_I_][_P_][_B_][_I_][_B_]
>
> PTS order  [_I_][_B_][_P_][_B_][_I_]
>__/  ___¦___/  ___¦___/
>   //   ¦ /   ¦
> DTS order [_I_][_P_][_B_][_I_][_B_]
>
> Cut retaining an ending I-frame, only.
>
>
> Honestly, I don't know why the MPEG folks don't supply illustrations
> instead of their torturous text.
>
> This isn't magic, it's Legos.
> ___
> 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] Is there a way to cut a video at an exact time ?

2024-04-13 Thread Jim Worrall


> On Apr 13, 2024, at 01:57, bbb  wrote:
> 
> Sorry for bothering you. It only behaves like this when I use "-codec copy". 
> Without that option it accepts the exact time I've specified.
> 
> On 4/13/24 13:47, bbb wrote:
>> I want to cut off the start of a video. When I tell ffmpeg to start at an 
>> exact time, it refuses to do so and instead starts at a time that's somehow 
>> "convenient" for ffmpeg. I can only assume that it's probably depending on 
>> something like a keyframe or an important frame for the compression 
>> algorithm but I don't really know.
>> 
>> the command:
>> ffmpeg -ss 0:32.08 -i video.mkv -codec copy -map 0 video.cut.mkv
>> makes the output start around 0:31 (even when I change the parameter value a 
>> bit, the result is exactly the same).
>> 
>> Is there a way to make ffmpeg start at the exact time that I specified?
>> Does it maybe depend on the codec and would it help if I recode it before 
>> cutting?
>> 
>> It would be even better if I were able to start at a specific frame number 
>> but I didn't find a parameter to set that. To set a frame offset seems only 
>> possible when you're exporting to images.
>> ___

I think this has everything you need to know.  Bottom line as I understand it: 
it’s not possible to cut video precisely while copying streams.
https://trac.ffmpeg.org/wiki/Seeking
___
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 Jim Worrall


> On Mar 8, 2024, at 03:20, Gyan Doshi  wrote:
> 
> 
> 
> 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

Thank you Gyan.  I just pulled again and everything went smoothly.
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] compile failure during make

2024-03-07 Thread Jim Worrall
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:

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


Re: [FFmpeg-user] Illustration review, Streams and GOP Frame Reordering [was: a couple of things to look at]

2024-03-03 Thread Jim DeLaHunt


On 2024-03-03 16:11, Mark Filipak wrote:

On 03/03/2024 18.33, Jim DeLaHunt wrote:
Regarding the Streams illustration 
<https://markfilipak.github.io/Video-Object-Notation/Streams.html>:


The macroblock to slice to picdata transition is clear. Showing 45 
macroblocks in a horizontal slice works.  Good work.


... It is hard to count out 45 from single-digit numbers. 00..44 
would be much clearer.


I agree, and I would have "0..44" if I could. If I used 2-digit 
numbers, I'd have to almost double the table width. The issue is that 
FireFox doesn't support 'font-size' style, so making the font smaller 
to fit can't be done.

Hence, elide some of the table, and use ellipses.
The complete list of 0..29 slices is visually overwhelming, and not 
necessary.  I think you could keep slices 0..2, elide slices 3..27 
with a vertical ellipsis, and keep slices 28..29.  That would get the 
slice structure across.


I'm going for visual impact, too. Do you find what I have confusing?

Confusing, yes, and overwhelming, and not necessary.
The slice structure lacks a comment with size, of the sort you 
included for macroblock and picdata. The full slice structure does 
not leave any room for such a comment.


Well, I felt that with all 30 slices and all 1350 macroblocks 
explicitly shown, comments were superfluous. They will get looked at 
one time, then ignored for the rest of time.
The diagram implied, but did not say, that one slice contains the full 
pixel width of the frame. I had to count to 45 macroblocks in a slice 
(difficult, because part of the macroblock index was left out), and 
multiply by 16, to get to 720. A comment could just explicitly state 
this information. That would have been clearer to me.


   —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] Illustration review, Streams and GOP Frame Reordering [was: a couple of things to look at]

2024-03-03 Thread Jim DeLaHunt

Mark:

On 2024-03-02 19:51, Mark Filipak wrote:

I have a couple of things to look at.

https://markfilipak.github.io/Video-Object-Notation/Streams.html
https://markfilipak.github.io/Video-Object-Notation/GOP%20%26%20Frame%20Reordering.html 



Comments are welcome. Please be brutal. 'Streams' is crucial.


Good work! I think both of these illustrations are helpful.  The Streams 
illustration is improved since the draft I saw earlier.


Regarding the Streams illustration 
:


The macroblock to slice to picdata transition is clear. Showing 45 
macroblocks in a horizontal slice works.  Good work.


In fact, I think the complete list of 45 macroblocks in a horizontal 
slice is not necessary. You could keep, say, blocks 0..11, elide blocks 
12..42 with a horizontal ellipsis, and keep blocks 43..44. With the 
horizontal space saved, make the block numbers two digits. It is hard to 
count out 45 from single-digit numbers. 00..44 would be much clearer.


The complete list of 0..29 slices is visually overwhelming, and not 
necessary.  I think you could keep slices 0..2, elide slices 3..27 with 
a vertical ellipsis, and keep slices 28..29.  That would get the slice 
structure across.


The slice structure lacks a comment with size, of the sort you included 
for macroblock and picdata. The full slice structure does not leave any 
room for such a comment. But the vertical ellipsis for slices 3..27 will 
be horizontally compact, so you could place a comment with the slice 
size next to the ellipsis.


Regarding the GOP & Frame Reordering illustration, 
:


Time is plastic in illustration space also. You have term definitions 
which happen after the first use of those terms. It would be easier to 
follow if the term definitions could come at first use.


The opening text, "an I-frame followed by P-frames and optional 
B-frames", could be improved by adding term definitions. e.g. "an 
I-frame (complete unto itself, sometimes called keyframe) followed by 
P-frames (predictive based on differences with the preceding I-frame) 
and optional B-frames (bipredictive based on differences with the 
preceding P-frame and I-frame)".


The first rectangle, GOP specimen, gives a particular frame order.  
Which order is this? Is this the order of frames in the incoming data 
stream, before reording? That specimen seems to be in PTS order.  Is 
this necessary, or coincidental?


What reordering happens in the first step?  Is it reordering from 
incoming stream order to DTS order?


I don't get how the conveyor belt metaphor and illustrations add value. 
You could just show frames in DTS order, and say that the decoder 
operates on them in DTS sequence.  Maybe show the frames in DTS order, 
with arrows from each P-frame to the corresponding I-frame, and from 
each B-frame to the corresponding I-frame and P-frame.


Then show arrows from that sequence down to the same frames, in PTS order.

It is not clear to me why the final two B-frames have later DTSs than 
the following I-frame, but earlier PTSs.  Why would these B-frames not 
be relative to the first I-frame?  If they are relative to the second 
I-frame, why would that I-frame not have an earlier DTS?  Are the 
B-frames relative to the final P-frame before them?  What is going on 
visually that the encoder would choose to sequence things this way?


It is great to have a reference to the specification which you are 
illustrating, "ITU-T H.262 (02/2012)". It would be even better to have 
that at the beginning. The illustration might explain its goal, e.g. 
"This illustrates the Group of Pictures and frame reordering operations 
as described in ITU-T H.262 (02/2012)."


And, these diagrams are amazing works of character graphics. They would 
be even more amazing as works of vector graphics. But drawing them in 
vector graphics would require a different skill-set.


Keep up the good work!


___
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-23 Thread Jim DeLaHunt

Mark:

On 2024-02-19 17:31, Mark Filipak wrote:

On 19/02/2024 18.49, Jim DeLaHunt wrote:

On 2024-02-19 15:04, Mark Filipak wrote:
If I recall correctly, each of the two segments was a couple hundred 
bytes. The two sources total 27 GB and are copyrighted.


If the sources are 27GB, then that is not really minimal.


The 27 GB sources are _not_ the problem.


The topic in my messages[1][2], to which you reply[3], is whether you 
have have "have created a (1) minimal, (2) reproducible (3) usecase with 
(4) all required files to reproduce it, and (5) said files uploaded 
somewhere accessible".


You brought up "each of the two segments" in response to my asking if 
what you created was (1) minimal. It is not clear what are these "two 
segments", and how they diff from "the two sources".  Your initial 
message[3] showed ffmpeg command lines with took one input, a file named 
"this.m2ts".


When you say "The 27 GB sources are _not_ the problem", it seems like 
you are digressing to a different topic: whether the 27 GB sources are 
structurally correct. So let's go back to the need for a minimal usecase.


What is the command which invokes ffmpeg for the minimal usecase?

What are the required files to run that command?  One "this.m2s", or 
"two sources [totalling 27 GB], or "two segments [of] a couple hundred 
bytes"?


Describe the files, as an interim step before uploading them. File 
names, for the purpose of clear discussion?  File formats? File byte counts?


The two trims are a large problem if '-ss -to -i' is used. They are a 
huge problem if '-i -ss -to' is used.


But the two trims are not the problem if '-bsf noise' is used to trim 
the sources. So, I used '-bsf noise'. The two trims are structurally 
beautiful, seemingly perfect.


Your initial message[4] gave three ffmpeg invocations, each operating on 
a single input "this.m2s", each using "-bsf:v noise=". So this talk 
about "the two trims are a large problem" seems to be a different 
subject, and should be a different email thread and a different trac 
submission.


The problem occurs after the join. The final B-frame before the ending 
I-frame (at the join) is flagged as corrupt. Is it corrupted when cut? 
Or is it corrupted when concatenated? Or is the complaint that it's 
corrupt bogus? I don't know any of the answers.


OK, which "problem" are you referring to now? Do you mean, the error 
message which indicates a problem occurs after you run ffmpeg to join 
two short video files together?  That itself is a third bug subject.  
Maybe the error indicates that ffmpeg is taking perfect input files and 
making a mistake during the join. Maybe the error indicates that ffmpeg 
is doing the join operation perfectly, but that input files are 
structurally incorrect, and this is not apparent until the join 
operation reveals it.



How can I prepare a trac submission on so little information?
By being clear and methodical about the topic, by staying on topic, and 
by creating (1) minimal, (2) reproducible (3) usecase with (4) all 
required files to reproduce it, and (5) said files uploaded somewhere 
accessible".
I need help. I need help to determine the truth. Then I can prepare a 
trac report. I cannot prepare a trac report until then. You are asking 
for a miracle.


I think you have the wrong sequence in mind.  First, create the usecase. 
Second, file the trac report about the usecase. Third, use the minimal, 
reproducible usecase in the trac report to diagnose the root cause of 
the problem.  Fourth, fix the root cause.


You are getting lots of help to create a minimal, reproducible usecase. 
You will get help to make a trac report. But you need to accept it.


Best regards,
  —Jim DeLaHunt

[1] <https://ffmpeg.org/pipermail/ffmpeg-user/2024-February/057674.html> 
Mon Feb 19 23:45:11 EET 2024
[2] <https://ffmpeg.org/pipermail/ffmpeg-user/2024-February/057676.html> 
Tue Feb 20 01:49:55 EET 2024
[3] <https://ffmpeg.org/pipermail/ffmpeg-user/2024-February/057677.html> 
Tue Feb 20 03:31:13 EET 2024
[3] <https://ffmpeg.org/pipermail/ffmpeg-user/2024-February/057655.html> 
Sun Feb 18 10:15:31 EET 2024


___
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-19 Thread Jim DeLaHunt

Mark:

On 2024-02-19 15:04, Mark Filipak wrote:

On 19/02/2024 16.45, Jim DeLaHunt wrote:

Mark:

On 2024-02-19 13:23, Mark Filipak wrote:



Best to create minimal reproducible usecase with all required files to
reproduce it, upload it somewhere and link it on ffmpeg trac site.


I did that. It didn't get any interest.
Really, you "did that"? I do not recall that you have created a (1) 
minimal,


Yes I did. ...


OK, it looks like we move on to the "what is a minimal, reproducible 
usecase" tutorial.


…If I recall correctly, each of the two segments was a couple hundred 
bytes. The two sources total 27 GB and are copyrighted.


If the sources are 27GB, then that is not really minimal.  Find 
alternate sources which are much smaller, and still demonstrate the 
problem.  Is that easy?  Often, no. But _someone_ has to do that in 
order to fix the bug. If the bug reporter does not do that work, then 
they are expecting the developer to do it.


And if the sources are copyrighted, that may be an obstacle to sharing 
with others. That means the usecase is not reproducible.




(2) reproducible


I don't know what makes something reproducible. Do you mean I should 
run the test twice?


Reproducible means both that you can make the behaviour happen on demand 
— it is not intermittent — and that others can follow your instructions 
to make it happen on demand. What is lacking in the current case is a 
set of steps which someone else can follow, with their own copy of 
ffmpeg on their own computer, to make the behaviour happen.




(3) usecase with


Is that the command lines? Is that a description? I've certainly done 
that.


It is a set of specific instructions for how to reproduce the behaviour, 
and a description of what behaviour you observe and believe is 
incorrect, and a description of what the correct behaviour is that you 
expect.


Here is a pretty good tutorial: "Bug Writing Guidelines", by the 
Bugzilla team 
<https://bugzilla.mozilla.org/page.cgi?id=bug-writing.html>. But search 
for "how to write a good bug report", and you will find any number of 
guides.


The exact commands lines, which refer to the minimal input files, and 
are reproducible by others, are certainly part of a good report. Parts 
of the output from the command might be relevant, parts will not be. 
Often it's good to include the complete output from the command anyway.




(4) all required files to reproduce it, and


Like I wrote, the two sources total 27 GB and are copyrighted.


Then you have the challenge of finding other, smaller sources which 
demonstrate the problem and which you can share.




(5) said files uploaded somewhere accessible, and


I did not do that. What I did was attach the framecrc files to my 
posting.


And without the files to reproduce it, your report is probably not 
reproducible.




(6) written an FFmepg Trac report


I did not do that. In all projects in which I've participated, there 
are design reviews prior to commitment.


Filing a bug report is not the same as committing changes to the 
program's code.  In all the projects in which you've participated, did 
you have to go through a design review in order to report, "this thing 
ain't working right"?


For the FFmpeg project, the instructions on reporting bugs is at 
<https://ffmpeg.org/bugreports.html>.  It says, "Once you have gathered 
this information, you can submit a report to the FFmpeg bug tracker." No 
design review required.



I've asked for help and have gotten no response. 


I think you have gotten lots of responses. Many were of the form, you 
need to do (1) (2) (3) (4) (5) (6) to take the next step. I understand 
that you probably don't want that response. But you have gotten it.


Yes, it is tedious. But at least the pay (for this volunteer labour) is 
lousy.


 —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] Packet corrupt on cut, notice on concat

2024-02-19 Thread Jim DeLaHunt

Mark:

On 2024-02-19 13:23, Mark Filipak wrote:



Best to create minimal reproducible usecase with all required files to
reproduce it, upload it somewhere and link it on ffmpeg trac site.


I did that. It didn't get any interest.
Really, you "did that"? I do not recall that you have created a (1) 
minimal, (2) reproducible (3) usecase with (4) all required files to 
reproduce it, and (5) said files uploaded somewhere accessible, and (6) 
written an FFmepg Trac report, containing the (3) which is (1) and (2) 
with links to (4) at (5).


If you think you have done that, can you please give us the URL of the 
FFmepg Trac report and a report number?



Methinks it would be best for someone to confirm it before going to trac.


OK, so you have not actually "done that"?  Can you at least point to an 
email sent to the ffmpeg-user list with (1), (2), (3), (4), and (5)? The 
best reference is to a URL of the message in the ffmpeg-user list 
archives, but the exact Subject: and Date: lines of the message header 
will do.


I do recall that you have claimed that you can reproduce a problem, but 
you have not published a (3) description which is (2) reproducible by 
others than yourself, and have not shared (4) the required files to 
reproduce it, much less (5) somewhere accessible. Once others see the 
description of usecase, they can advise you if it is (1) minimal.


I think that the lack of (1), (2), (3), (4), and (5) are one of the 
obstacles to you making progress with this problem.  It is one thing to 
be unskilled at reading C code. It is another not to be able to produce 
a reproducible usecase. I suggest you devote more effort to 
communicating the reproducible usecase.


 —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] Codec copy with -ss before -i and after -i is not documented [was: Re: Why are these different?]

2024-02-11 Thread Jim DeLaHunt

Paul:

On 2024-02-11 13:42, Paul B Mahol wrote:

Codec copy with -ss before -i and after -i is not documented that it gives 
different results because
once you do not decode everything from start you basically can notexpect to get 
always (for any
container and for any input) frame-accurate results in both cases.


I think you are saying something important here, but I am having a hard 
time understanding what you mean.  This sentence uses the word "not" 
three times. I get lost.


Let me see if I can figure it out. Is this what you mean, Paul?

[Definition of "codec copy operation": the copying of content from one 
file to another by demuxing packets from the input container (file), 
then muxing them unchanged into the output container (file). The "-c 
copy" option tells FFmpeg to perform a codec copy operation.]


The FFmpeg documentation does not say that FFmpeg gives different 
results if you do a codec copy operation with a "-ss" option before 
the input argument, compared to a code copy operation with the same 
"-ss" option after the input argument. Nor does it say that FFmpeg 
gives the same results.


It is unreasonable to expect FFmpeg to give frame-accurate results 
from a given "-ss" option both when the option is before and is after 
the input argument, for every container and for every input. Instead, 
one should expect that for some containers and for some inputs, and 
for some cases of the "-ss" option before or after the input argument, 
FFmpeg will give results which are inexact in the number of frames 
passed to the output.


But one should not expect the FFmpeg documentation to be clear about 
which cases have frame-accurate results and which do not. The FFmpeg 
documentation leaves any statement of results being the same or 
different based on the position of the "-ss" option. The result of 
this is that the FFmpeg documentation does not need to engage with the 
task of clearly describing which cases give frame-accurate results and 
which do not.



I think Mark Filipak asked a reasonable and (eventually) well-defined 
question. This thread has so far been 30 messages. I get the impression 
that the answer to his question is:


Because the FFmpeg project includes different implementations for 
different containers, input types, and "-ss" option positions, but:


 1. The project does not require any of the implementations to give
frame-accurate results for the codec copy operation, (though it is
allowed), and
 2. The project does not require the documentation to describe whether
the results are frame-accurate or not, and
 3. The project does not require the documentation to confess either
#1 or #2.
 4. Because of #1, any answer to whether or not a particular case is
frame-accurate, or the the way in which it is inaccurate, or why,
must come from studying the code.

So one should not expect a person on this list to have the answer 
easily at hand. Mark's answer must come from studying the code.




I suspect Mark will not be delighted with that answer.

    —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] '-t' versus '-to'

2024-01-13 Thread Jim DeLaHunt

Mark:

On 2024-01-13 12:50, Mark Filipak wrote:

What's the difference?

-t duration (input/output)
    When used as an input option (before -i), limit the duration of 
data read from the input file.

    When used as an output option (before an output url),
    stop writing the output after its duration reaches duration.
    duration must be a time duration specification, see
    (ffmpeg-utils)the Time duration section in the ffmpeg-utils(1) 
manual.

    -to and -t are mutually exclusive and -t has priority.

-to position (input/output)
    Stop writing the output or reading the input at position.
    position must be a time duration specification, see
    (ffmpeg-utils)the Time duration section in the ffmpeg-utils(1) 
manual.

    -to and -t are mutually exclusive and -t has priority.
To be clear, I believe that the above two paragraphs are direct quotes 
from the FFMpeg documentation, 5.4 Main options 
<https://ffmpeg.org/ffmpeg-all.html#Main-options>.
'duration' and 'position' seem to both be duration. What's the 
difference?


That is a great question. The FFMpeg documentation should be clear about 
the meanings of these parameters, and the difference between the 
meanings of the terms "duration" and "position". It is not.


I do not see these terms defined outside of section 5.4. I see 95 
occurrences of the word 'position' in 
<https://ffmpeg.org/ffmpeg-all.html>. I count at least four meanings for 
this term: a moment in the timeline of a media file's events; the x,y 
coordinates of a pixel (more rigorously, the cartesian coordinates of a 
point in the two-dimensional display space); the byte offset of a piece 
of data in the data stream; and the index within a character string of a 
data field.  There are several parameters of various options and 
filters, documented by the word "position", with no explanation of the 
meaning FFMpeg assigns to the word.


> …'duration' and 'position' seem to both be duration.…

You use the word 'be'. Now technical writing is difficult, and I am not 
an expert at it. But my non-expert opinion is that the English verb 'to 
be' is often a poor choice for use in technical statements. The English 
language makes 'to be' carry a wide range of meanings, so statements 
using 'to be' might be unclear.


I would say, 'duration' and 'position' both take parameters having a 
syntactical format of 'time duration' as specified in the 
ffmpeg-utils(1) manual.


I am also not an FFmpeg expert. The true answer to your question 
probably lies in reading the code. And the code itself may have 
multiple, conflicting answers. But I will guess that 'duration' refers 
to a portion of a media file timeline, and 'position' refers to a moment 
in the media file timeline. They are perhaps analogous to 'line segment' 
and 'point' in geometry. 'position' is perhaps that moment in the 
timeline which occurs at the given timespan after the beginning of the 
timeline, though it could be the moment which has the given time value 
relative to time zero in the timeline.


Those are just my non-expert guesses. I will be interested to hear the 
correct answer(s). And I wish we could look up those answer(s) in the 
FFMpeg documentation.


Good question!
 —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] Towards better trims & concatenations

2024-01-07 Thread Jim DeLaHunt

On 2024-01-07 20:02, Mark Filipak wrote:

I don't think a synthetic video that ffmpeg creates is going do the 
job. I'll pass.…


As you wish.  If a synthetic video won't do the job, then you can find 
an easily accessible video which does, or share your test video where 
others can retrieve it. Whatever choice you make, your bug report will 
be more useful and more likely to get fixed if you base your report on 
source videos which any developer can reproduce.


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] Towards better trims & concatenations

2024-01-07 Thread Jim DeLaHunt


On 2024-01-07 18:54, Mark Filipak wrote:

On 1/7/24 20:24, Jim DeLaHunt wrote:

Also, what does "h:\BDMV\STREAM\00305.m2ts" refer to?


That's the mother video from which the clone and sons are made.


Is that a standard video which I can get a copy of somewhere?


Nope.


That presents an obstacle...


The 'mother' is an M2TS. I'll try trimming it '-to 34.076' while 
leaving the beginning intact. The problem is that ffmpeg changes the 
DTSs and PTSs of the copy.
…How can I trim 00305.m2ts '-to 34.076' without altering the TSs and 
other things?


How about a different approach: look for reference videos which also 
demonstrate the problems you see with your videos, and which others can 
also retrieve or construct.


For instance, this command:

> ffmpeg  -f lavfi -i "testsrc" -to 1:00 testpat.m2ts

generates a 60-second video with a test pattern. Anyone with recent 
FFmpeg can generate a video like this, though perhaps not identical. If 
you use this as your "mother" video, and apply your test method to it, 
does ffmpeg demonstrate the same bugs? If yes, then you can include 
instructions to generate that video in your bug reports.


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] Towards better trims & concatenations

2024-01-07 Thread Jim DeLaHunt


On 2024-01-06 19:24, Mark Filipak wrote:

On 1/6/24 17:20, Jim DeLaHunt wrote:

But what I am missing here is a concise problem statement.


There are many errors.


In that case you should file many bug reports. Each report should 
describe one problem.  Maybe you can include multiple test cases to 
reproduce that one problem.


If you are not sure whether two test cases are demonstrating a single 
problem or two problem, err on the side of filing two bug reports. Bug 
tracking systems make it easier to mark one bug report as a duplicate of 
(caused by the same underlying problem as) another, than to split one 
report describing two problems into two bug reports.


It may be that this test methodology reveals multiple bugs, which 
might be better pursued if reported separately.


How? How can they be separated?
Take one procedure for reproducing a problem. If that procedure 
demonstrates multiple problems (e.g. the PTSs are wrong, and the trim 
time is wrong), then treat each problem statement as a separate bug.


e.g. Bug report 1 is:
 - with command line "ffmpeg   ..."
 - Using mother video V_M.def...
 - Produces son video V_S.def...
 - Observed PTS of first frame is 1
 - Expected PTS of first frame is 0

and Bug report 2 is:
 - with command line "ffmpeg   ..."
 - Using mother video V_M.def...
 - Produces son video V_S.def...
 - Observed trim time is 1.23 sec
 - Expected trim time is 4.56 sec

The example commands you give seem to be a pretty specific set of 
instructions for "how to reproduce". 


It's a Windows command script that makes the clone and sons. ...it's a 
systematic method to investigate the trimming procedure to determine 
whether it works properly. That method mostly uses '-framecrc'. Some 
use '-showinfo' and others show what happens in MPV during play. 
It's great that you have a systematic method to investigate the trimming 
procedure. Don't put it in a bug report _as a systematic method_. Write 
instructions which use the method to produce a specific result.  Put 
those instructions in the bug report.


One systematic method might discover multiple problems, and lead to 
multiple bug reports. There is nothing wrong with that.



Also, what does "h:\BDMV\STREAM\00305.m2ts" refer to?


That's the mother video from which the clone and sons are made.


Is that a standard video which I can get a copy of somewhere?


Nope.

That presents an obstacle to getting your reports acted on.  It is 
important that your report let someone else be able to reproduce exactly 
what you are seeing.  If the mother video is what your instructions call 
for, but no-one else can get a copy of the mother video, then no-one 
else will be able to reproduce your bug.


What is the smallest, shortest, simplest video which will demonstrate 
these problems?


Can you use a video which is generated by another FFmpeg command, e.g. 
containing a test pattern?


Can you use a video which is already in the FFmpeg test suite?

Can you use a standard video which anyone can get a copy of, easily?

All those would be better than this unreachable mother video on which 
your instructions now rely.



Coming up with good bug reports can be gruelling, but without them, it 
is hard to get bugs fixed. Good luck!

 —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] Towards better trims & concatenations

2024-01-06 Thread Jim DeLaHunt

Mark:

On 2024-01-06 11:52, Mark Filipak wrote:
Below is what I plan to submit to trac. I welcome comments and 
corrections. …


Good for you, digging into the details and specifics of how FFMpeg 
performs trims and concatenations.


But what I am missing here is a concise problem statement.

You say you plan to "submit to trac". Is this a bug report? Your message 
does not say that directly.


If it is a bug report, what is the bug title? It should be a concise 
(1-10 words) statement of what is incorrect.


What is the bug summary? It should a concise (1 paragraph) summary of 
the problem.


The example commands you give seem to be a pretty specific set of 
instructions for "how to reproduce".


What is the "observed behaviour"?  Is it something to do with the total 
number of packets in the "son" videos?  Or the frame number of the first 
non-black frame?


What is the "expected behaviour"?

What number of packets, or frame number, do you expect to see in each video?

Without these parts spelled out, a bug report is hard to reproduce, and 
hard to confirm as fixed.  That makes it more or less non-actionable. 
And I am guessing you are hoping to motivate action.


Also, what does "h:\BDMV\STREAM\00305.m2ts" refer to?  Is that a 
standard video which I can get a copy of somewhere? I don't see that you 
explain that. Without having the same source material as you, it is hard 
to reproduce the same results.


It may be that this test methodology reveals multiple bugs, which might 
be better pursued if reported separately.


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] Question about random() expression

2023-12-27 Thread Jim DeLaHunt

Michael:

On 2023-12-27 15:20, Michael Koch wrote:

Am 27.12.2023 um 23:59 schrieb Jim DeLaHunt:

Michael:

On 2023-12-27 13:51, Michael Koch wrote:
...I'm using this command line to print four consecutive random 
numbers:

...
I do not have an answer to your question about the behaviour of the 
random() function. However, I cannot reproduce your results on my 
machine. I get an error complaining about the video filter syntax 
instead.


If not on a Windows machine, you may have to encapsulate the filter 
thread in double quotes.

Please try this command:
ffmpeg -filter_threads 1 -loglevel repeat -f lavfi -i 
color=gray:size=1x1,format=gray -vf 
"geq=lum='st(0,0.123);print(random(0));print(random(0));print(random(0));print(random(0))'" 
-frames 1 -y out.png


Right you are. Enclosing the filter expression in double quotes, I was 
able to reproduce your result. Four numbers printed out, and the first 
of them was 0.00. The remaining three were exactly the same as your 
output. That makes those numbers seem not very random.


Interestingly, when I change "random(0)" to "random(0.9)", I get the 
identical sequence of four numbers. The behaviour of the parameter is 
not the "seed" behaviour that I expect.


The documentation says, "x is the index of the internal variable which 
will be used to save the seed/state." 
(https://ffmpeg.org/ffmpeg-all.html#Expression-Evaluation). I don't know 
what it means by "index of the internal variable", and I don't know what 
"save" means. In a function named random(), I expect the parameter to be 
used as a seed. I guess this is one of the places where one has to read 
the source code.


Apologies for my confusion,
 —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] Question about random() expression

2023-12-27 Thread Jim DeLaHunt
], 25 tbr, 25 tbn, 25 tbc

Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> png (native))
Press [q] to stop, [?] for help
[Parsed_geq_0 @ 0x123705630] [Eval @ 0x16eefcef8] Missing ')' or too 
many args in 'st(0'
[AVFilterGraph @ 0x124807b20] Error initializing filter 'geq' with args 
'lum=st(0'

Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!
=

This is with FFMpeg 4.4.4 via MacPorts on macOS 12.7.2 Monterey.

Could you perhaps make a simpler command line invocation, which just 
runs random() and does not generate a grey image or write a file?


Hope this clears a way to helpful answers,
    —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] DAR/SAR

2023-02-28 Thread Jim Julian via ffmpeg-user
Hello,



   The problem turns out to be a poster thumbnail inserted as data. A closer 
look shows the thumbnail listed in ffprobe. I removed the thumbnail and the 
problem was removed as well.
Problem solved.

   I'm not used to this forum format so may have not recognized your response 
in a message that seemed all junk.

   I incorrectly assumed ffmpeg, VLC, and MediaInfo recognized the full set of 
Matroska and MPEG-4 tags, except, maybe, for the custom tags in the Matroska 
specification.

Thank you for your time and interest.
Jim Julian

Cogito ergo sum.
René Descartes circa 1685
“I think, therefore, I am.”

Sum ergo cogito.
Google 2004
“So, I’m thinking...”


> On Feb 28, 2023, at 6:36 PM, Steve Zemlicka  wrote:
> 
> Sorry, I just saw that you already ran an ffprobe.  If you run ffprobe
> again and look for Stream #0:0, does yours report the DAR as 4:3?  If so,
> perhaps you were looking at Stream #0:2 when you were seeing the DAR
> 17:25.  If not, then perhaps there's something else going on with your
> build.  If that's the case, let us know which version you're running
> (usually reported at the top of ffprobe/ffmpeg output)
> 
>> On Tue, Feb 28, 2023 at 5:34 PM Steve Zemlicka 
>> wrote:
>> 
>> if you run ffprobe [filename], you'll notice that it does indicate 4:3 for
>> stream#0:0
>>  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661),
>> yuv420p(progressive), 640x480, 792 kb/s, SAR 1:1 DAR 4:3, 23.98 fps, 23.98
>> tbr, 23981 tbn (default)
>> 
>> When dealing with aspect ratios, it's always good to do a ffprobe to
>> examine the details of how ffmpeg will interpret/recognize the files.  The
>> entire ffprobe for that file is as follows:
>> 
>> ffprobe version n5.1.2 Copyright (c) 2007-2022 the FFmpeg developers
>>  built with gcc 12.2.0 (GCC)
>>  configuration: --prefix=/usr --disable-debug --disable-static
>> --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm
>> --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl
>> --enable-ladspa --enable-libaom --enable-libass --enable-libbluray
>> --enable-libbs2b --enable-libdav1d --enable-libdrm --enable-libfreetype
>> --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack
>> --enable-libmfx --enable-libmodplug --enable-libmp3lame
>> --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg
>> --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg
>> --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh
>> --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab
>> --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp
>> --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2
>> --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc
>> --enable-opencl --enable-opengl --enable-shared --enable-version3
>> --enable-vulkan
>>  libavutil  57. 28.100 / 57. 28.100
>>  libavcodec 59. 37.100 / 59. 37.100
>>  libavformat59. 27.100 / 59. 27.100
>>  libavdevice59.  7.100 / 59.  7.100
>>  libavfilter 8. 44.100 /  8. 44.100
>>  libswscale  6.  7.100 /  6.  7.100
>>  libswresample   4.  7.100 /  4.  7.100
>>  libpostproc56.  6.100 / 56.  6.100
>> [mov,mp4,m4a,3gp,3g2,mj2 @ 0x557a198b11c0] stream 0, timescale not set
>> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Hallelujah (1929)._edit.mp4':
>>  Metadata:
>>major_brand : isom
>>minor_version   : 512
>>compatible_brands: isomiso2avc1mp41
>>iTunEXTC: mpaa|NR|600|
>>iTunMOVI: 
>>: > "http://www.apple.com/DTDs/PropertyList-1.0.dtd;>
>>: 
>>: 
>>: directors
>>: 
>>: 
>>: name
>>: King Vidor
>>: 
>>: 
>>: producers
>>: 
>>: 
>>: name
>>: Irving Thalberg
>>: 
>>: 
>>: screenwriters
>>: 
>>: 
>>: name
>>: Wanda Tuchock
>>: 
>>: 
>>: studio
>>: Metro-Goldwyn-Mayer
>>: 
>>: 
>>:
>>title   : Hallelujah
>>

[FFmpeg-user] DAR/SAR

2023-02-28 Thread Jim Julian via ffmpeg-user
I've just finished a dialogue with MediaInfo and there seems to be a difference 
in the Linux and Windows versions. I also tried using WSL and bash without 
success. The DAR/SAR are still reported incorrectly.
 680x1000 [SAR 1:1  DAR  17:25], where the movie is actually 640x480 and 
DAR=4:3.

For anyone interested in examing the movie (636Mb) , here's a dropbox link to 
the 
movie:https://www.dropbox.com/s/d66qlltgnpnru0d/Hallelujah%20%281929%29._edit.mp4?dl=0


___
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] DAR

2023-02-28 Thread Jim Julian via ffmpeg-user
Hello,
   The DAR/SAR reported by MediaInfo and ffprobe differ. Which is 
correct?example:
ffprobe "Hallelujah (1929)._edit.mp4"  reports: 680x1000 [SAR 1:1  DAR  17:25] 
MediaInfo has the DAR as 4:3 and the movie is displayed as 4:3.
Width                       : 640 pixelsHeight                      : 480 
pixelsDisplay aspect ratio        : 4:3
Thanks Jim J
___
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] Sending 2 camera outputs side by side to loopback device

2022-11-25 Thread Jim Ruxton
Thanks for the reply. I just rebooted my computer and tried again. There
must have been some locked up process that wasn't allowing me to see the
loopback device as it now works.

On Fri, Nov 25, 2022 at 2:56 AM Michael Koch 
wrote:

> Am 25.11.2022 um 08:02 schrieb Jim Ruxton:
> > I am on Ubuntu 22.04 and trying to combine 2 cameras into one stream that
> > is being sent to a loopback device. The command appears to work but I
> can't
> > see the stream in any way. I've tried VLC Cheese ffplay guvcview and none
> > of them work. The command I am using is
> > :
> > *ffmpeg -f v4l2 -vcodec rawvideo -i /dev/video0 -f v4l2 -vcodec rawvideo
> -i
> > /dev/video2 -filter_complex hstack,"scale=iw*.5:ih*1" -f v4l2 -vcodec
> mjpeg
> > /dev/video4 *
>
> It seems you forgot to specify an output file or pipe at the end of the
> command line.
>
> Michael
>
> ___
> 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] Sending 2 camera outputs side by side to loopback device

2022-11-24 Thread Jim Ruxton
I am on Ubuntu 22.04 and trying to combine 2 cameras into one stream that
is being sent to a loopback device. The command appears to work but I can't
see the stream in any way. I've tried VLC Cheese ffplay guvcview and none
of them work. The command I am using is
:
*ffmpeg -f v4l2 -vcodec rawvideo -i /dev/video0 -f v4l2 -vcodec rawvideo -i
/dev/video2 -filter_complex hstack,"scale=iw*.5:ih*1" -f v4l2 -vcodec mjpeg
/dev/video4 *

This should give me a combined output of 1280x720 and the following output
of ffmpeg shows that it is. Any idea what I am doing wrong? Ultimately I
want to send this combined output to Zoom. Thanks .Relevant output of the
ffmpeg command follows:

Input #0, video4linux2,v4l2, from '/dev/video0':
  Duration: N/A, start: 10914.045895, bitrate: 147456 kb/s
  Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1280x720,
147456 kb/s, 10 fps, 10 tbr, 1000k tbn, 1000k tbc
Input #1, video4linux2,v4l2, from '/dev/video2':
  Duration: N/A, start: 10915.081944, bitrate: 147456 kb/s
  Stream #1:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1280x720,
147456 kb/s, 10 fps, 10 tbr, 1000k tbn, 1000k tbc
Stream mapping:
  Stream #0:0 (rawvideo) -> hstack:input0
  Stream #1:0 (rawvideo) -> hstack:input1
  scale -> Stream #0:0 (mjpeg)
Press [q] to stop, [?] for help
[swscaler @ 0x55a69b913440] deprecated pixel format used, make sure you did
set range correctly
Output #0, video4linux2,v4l2, to '/dev/video4':
  Metadata:
encoder : Lavf58.76.100
  Stream #0:0: Video: mjpeg, yuvj422p(pc, progressive), 1280x720, q=2-31,
200 kb/s, 10 fps, 10 tbn (default)
Metadata:
  encoder : Lavc58.134.100 mjpeg
Side data:
  cpb: bitrate max/min/avg: 0/0/20 buffer size: 0 vbv_delay: N/A
[video4linux2,v4l2 @ 0x55a69b8fa900] Thread message queue blocking;
consider raising the thread_queue_size option (current value: 8)
___
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] datascope 16-bit

2022-11-21 Thread Jim DeLaHunt

On 2022-11-20 00:15, Michael Koch wrote:


Am 20.11.2022 um 02:39 schrieb list+ffmpeg-u...@jdlh.com:


On 2022-11-19 07:34, Michael Koch wrote:

Am 03.11.2022 um 10:10 schrieb Paul B Mahol:


Some things in sea of myriad others:
[...]
Why you claim that datascope does not support >8 bit formats where in
fact it does support it?


In some cases datascope works with 16-bit data, but not in all cases.
Here is an example where it doesn't work:

ffmpeg -f lavfi -i color=black:s=32x32,format=gray10le -lavfi 
geq=lum='X+32*Y',format=gray10le -frames 1 -y test.png


ffmpeg -i test.png -vf 
format=rgb48,showinfo,datascope=s=1280x1152:mode=color2:format=hex 
-y out.png


Perhaps clarify what you observe as "doesn't work", and what 
behaviour you expect?


Both those commands run for me without error, and I can view both 
test.png and out.png without problem. out.png has a cascade of 32 
2-digit hex numbers on the left half, and solid black on the right 
half. The hex numbers run from 00 to 7F, in white on a black to grey 
gradient background, and from 80 to FF, in black on a grey to white 
background.


I would expect 4-digit hex numbers, because the rgb48 pixel format is 
16-bit per channel.

For example, it works fine if "rgb48" is replaced by "gray16".


The phrase "works fine" appeals to some notion of what is "correct" 
behaviour. It seems that you have your own idea of "correct" behaviour 
for this filter. But it seems more helpful for communication on this 
list to use FFmpeg's idea of "correct" behaviour. And the best source we 
have for FFmpeg's idea of "correct" is the filter documentation 
<https://ffmpeg.org/ffmpeg-all.html#datascope>: "Video data analysis 
filter. This filter shows hexadecimal pixel values of part of video."


I think the description in the documentation is incomplete and unclear. 
I wish FFmpeg had a better description. But the actual behaviour does 
not conflict with this incomplete description. The description does not 
promise that the datascope filter shows the full-precision, untruncated 
pixel values. It might be (I did not check) that the 8-bit values which 
datascope displays for an rgb48 input image are the correct upper 8 bits 
of 16-bit pixel values.


So, you said, "In some cases datascope works with 16-bit data, but not 
in all cases."  If you had instead said, "In some cases datascope gives 
useful results with 16-bit data, but not in all cases", then I would be 
completely with you. It is clear that truncated 8 bit values for an 
rbg48 input are not as helpful as full-precision, untruncated 16-bit 
pixel values.


But the sad reality is the FFmpeg only does not always document its 
intended behaviour clearly, and does not seem to have a goal of always 
providing the most helpful behaviour. The culture here understands 
"doesn't support" or "doesn't work" to mean, "ffmpeg terminates 
prematurely with an error" or "ffmpeg fails to generate output". If you 
use those phrases when your objection is actually, "runs to completion 
and generates output, but output is not as helpful as it could be", then 
your message gets diluted by misunderstanding.


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] [EXTERNAL] Re: ffserver

2022-11-09 Thread Shupert, Jim via ffmpeg-user
when my goal is to get my security camers back up and running TODAY so I can 
catch this piece of shit who is robbing me blind? 

Friend,

When you calm down - maybe you might look at
https://zoneminder.com/

best wishes
___
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 Licence Query

2022-10-13 Thread Jim DeLaHunt

On 2022-10-13 15:46, Nicholas Cox via ffmpeg-user wrote:


Hi
I have searched around to find out if I need to obtain a licence for my project.
I want to include ffmpeg inside a Unity project targeting IOS and Android 
applications. I wish to use ffmpeg to rtmp a live broadcast to Youtube and 
Facebook. What licence would I need to do this? I will not be modifying the 
code in anyway and the sole intention is to use for live broadcasting.
Thanks
Nick


Hello, Nick:

I am not an FFmpeg insider, so I have no special expertise. However, the 
FFmpeg project has published a page, /
FFmpeg License and Legal Considerations/ <http://ffmpeg.org/legal.html>. 
When people have asked licence questions in the past, they have been 
directed to this page.


I observe that sometime people ask a question which boils down to, will 
the FFmpeg-user mailing list assure me that my intended use has no legal 
risk?  My impression is that neither this email list nor the FFmpeg 
project attempts to answer such questions. They way to get an answer to 
that kind of question is to hire a lawyer who knows your situation and 
your jurisdiction, and let them advise you.


I hope this is helpful,
    —Jim DeLaHunt, just another FFmpeg user

___
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] multiple flat videos in a equirectangular projection - v360 filter

2022-07-17 Thread Jim Hollingsworth
SPAM

On Sun, Jul 17, 2022 at 7:54 AM Michael Koch 
wrote:

> Am 17.07.2022 um 12:09 schrieb Denis Połeć:
> >
> >> Am 16.07.2022 um 22:12 schrieb Michael Koch <
> astroelectro...@t-online.de>:
> >>
> >> Am 16.07.2022 um 20:57 schrieb Denis Połeć:
>  Am 16.07.2022 um 11:46 schrieb Paul B Mahol :
> 
>  On Sat, Jul 16, 2022 at 11:22 AM Denis Połeć 
> wrote:
> 
> > Hello,
> > I wouldn't call myself a beginner, but I still need a little bit to
> become
> > a pro. :)
> > I have a question that might be easy to answer.
> >
> > I am working on a script to bring multiple flat videos into a
> > equirectangular projection by using v360 filter.
> > I have the problem that the edges of the input are very jagged.
> >
> > This did not lead to a good result when I play the equirectangular
> > projection in a 360 player. I have also already tried different
> > interpolation modes, which does not lead to a better result.
> > Does anyone have an idea how I can avoid that? Is there a better way
> to do
> > this task?
> >
> >
> > Here is an example code with the result. The video in the example
> has a
> > resolution of 1080p:
> >
> >
> > ffmpeg -i BRAIN.mp4 -lavfi "\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw='0':alpha_mask=1[fg1];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:alpha_mask=1[fg2];[fg2][fg1]overlay[a];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:alpha_mask=1[fg3];[fg3][a]overlay[b];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:alpha_mask=1[fg4];[fg4][b]overlay[c];\
> > \
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=45:alpha_mask=1[fg5];[fg5][c]overlay[d];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:roll=45:alpha_mask=1[fg6];[fg6][d]overlay[e];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:roll=-45:alpha_mask=1[fg7];[fg7][e]overlay[f];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:pitch=-45:alpha_mask=1[fg8];[fg8][f]overlay[g];\
> > \
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=-45:alpha_mask=1[fg9];[fg9][g]overlay[h];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:roll=-45:alpha_mask=1[fg10];[fg10][h]overlay[i];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:roll=45:alpha_mask=1[fg11];[fg11][i]overlay[j];\
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:pitch=45:alpha_mask=1[fg12];[fg12][j]overlay[k];\
> > \
> >
> >
> [0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=90:alpha_mask=1[fg13];[fg13][k]overlay[l];\
> >
> [0]drawbox=w=1:h=1:color=black,v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=-90:alpha_mask=1[fg14];[fg14][l]overlay"
> > -q:v 4 -vframes 1 -y test11.jpg
> >
> > Your filtergraph is extremely inefficient with that many cascaded
> overlays
>  and gives poor results. For proper stitching borders need to have
> small
>  transition from full opacity to no opacity.
> 
>  To add small transitions with opacity on borders could use blurring
> filters
>  for example on alpha plane only.
> >>> How could I achieve that? How can I blurry just the borders?
> >> You could apply some preprocessing to your input video, before you feed
> it to your script.
> >> The trick is to multiply all pixels at the edges by 0.5. This can be
> done with a white mask which has gray pixels at the edge.
> >>
> > Thank you for your reply.
> >
> >> ffmpeg -f lavfi -i color=color=white:size=1920x1080 -lavfi
> drawbox=color=gray:t=1 -frames 1 -y mask.png
> > This works.
> >
> >> ffmpeg -f lavfi -i testsrc2=size=1920x1080 -i mask.png -lavfi
> multiply=offset=0 -frames 1 -y test.png
> > But ffmpeg says multiply filter doesn’t exist.
>
> Get a newer version. The multiply filter was added not so long ago.
>
> Michael
>
> ___
> 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] generating `-map` options from ffmpeg-python [was: Re: How to embed subtitles into video using Python]

2022-07-13 Thread Jim DeLaHunt

On 2022-07-13 05:53, Moritz Barsnick wrote:


On Wed, Jul 06, 2022 at 13:36:30 -0700, Jim DeLaHunt wrote:

On 2022-07-06 02:46, Pavel Yermolenko via ffmpeg-user wrote:

In Python there is ffmeg support package: *ffmpeg-python*. ffmpeg-python
0.2.0 <https://pypi.org/project/ffmpeg-python/>
Unfortunately in the documentation [there] is no examples on how to
process subtitles.

So I guess that this asks you to do either (and stand by for a discussion of
the really big problem with this):

ffmpeg
     .input(input_dir+video_file)
     .input(input_dir+subtl_file)
     .get_args(map='0:v', map='0:a', c='copy', map='1', 'c:s:0'='mov_text', 
'metadata:s:s:0'='language=fra') ***Big problem!
     .output(input_dir+'output.mp4')
     .run()

In [the *ffmpeg-python*] test code, there is an "example" for maps:
https://github.com/kkroening/ffmpeg-python/blob/6189cd6861a90f6f52e6a8ba2db0fada54134194/ffmpeg/tests/test_ffmpeg.py#L657


args = ffmpeg.output(i1['1'], i1['2'], TEST_OUTPUT_FILE1).get_args()

for "-map 0:1 -map 0:2".

You can probably reverse-engineer that, if the documentation doesn't
suffice.


Good catch!  That line does generate `-map` options to FFmpeg. That 
proves it is possible.


The value of `i1` in that line is the return from a call to 
`ffmpeg.input()`. The documentation for that, at 
<https://kkroening.github.io/ffmpeg-python/index.html#ffmpeg.input>, 
does not suffice for me at least to understand what the type of `i1` is, 
and what is the result of getting the index '1' from `i1`. I think you 
are right, it will require reading the code.



Cheers,
Moritz

Thank you,

 —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] How to embed subtitles into video using Python

2022-07-06 Thread Jim DeLaHunt

On 2022-07-06 02:46, Pavel Yermolenko via ffmpeg-user wrote:


Hello,

I'm looking for a command format to embed subtitles into video (not to 
burn them).


This command, that I found somewhere on the web works fine - the 
subtitles are just embedded into video, quite rapid process.


ffmpeg -i video.mp4 -i video.srt -map 0:v -map 0:a -c copy -map 1 
-c:s:0 mov_text -metadata:s:s:0 language=fra output.mp4


I need to process many files in batch mode, so I decided to use Python.

Hello, Pavel. I am Jim. I have done quite a bit of work recently with 
Python programs which call FFmpeg. Let me see if I can help.



In Python there is ffmeg support package: *ffmpeg-python*. 
ffmpeg-python 0.2.0 <https://pypi.org/project/ffmpeg-python/>
Unfortunately in the documentation [there] is no examples on how to 
process subtitles.
For what it is worth, I looked at using the ffmpeg-python package for my 
work, and decided it did not do what I wanted. I construct my FFmpeg 
invocation as a Python list of strings, and invoke it using 
`subprocess.run()`. This is also what Carl Zwanzig suggests.


What option in the command I wrote at the beginning causes the 
subtitles to be embedded as metadata, and not rendered with particular 
frames?


I believe that in your example ffmpeg command above, it is `-c:s:0 
mov_text` which embeds the subtitles in the output, using the mov_text 
codec, with supporting roles by `-metadata:s:s:0 language=fra` and `-map 
1`. In the bad example you posted, the command uses the subtitles filter 
instead, and it burns subtitles into video frame instead of embedding 
subtitle text in metadata.


See <http://ffmpeg.org/ffmpeg-all.html#Main-options> for a description 
of the `-c` and `-metadata` options. See 
<http://ffmpeg.org/ffmpeg-all.html#Advanced-options> for a description 
of the `-map` option.


But perhaps you are asking, how to specify those options via the 
*ffmpeg-python* package?  You are right, the documentation does not 
describe this well. The clue seems to be in the .run() and .run_async() 
function documentation: "**kwargs – keyword-arguments passed to 
get_args()". (See: <https://kkroening.github.io/ffmpeg-python/#ffmpeg.run>).


So I guess that this asks you to do either (and stand by for a 
discussion of the really big problem with this):


ffmpeg
    .input(input_dir+video_file)
    .input(input_dir+subtl_file)
    .get_args(map='0:v', map='0:a', c='copy', map='1', 
'c:s:0'='mov_text', 'metadata:s:s:0'='language=fra') ***Big problem!

    .output(input_dir+'output.mp4')
    .run()

Or, because .run() and .run_async() take keyword args,

ffmpeg
    .input(input_dir+video_file)
    .input(input_dir+subtl_file)
    .output(input_dir+'output.mp4')
    .run(map='0:v', map='0:a', c='copy', map='1', 'c:s:0'='mov_text', 
'metadata:s:s:0'='language=fra') ***Big problem!


There is, of course, a big problem with this list of keyword args. That 
is that the syntax of Python keyword args is more limited than the 
syntax of ffmpeg command-line options. It is not valid to have the same 
key used multiple times in a kwargs group, but this FFmpeg command line 
uses `-map` three times.  It is not valid to have colons in keyword 
names, but this FFmpeg command line uses options like `-c:s:0`.


It might be that the author of `ffmpeg-python` thought about this 
problem, and has a solution. Finding it will probably require reading 
the source code. I have not taken the time to do this.  So I don't know 
how to solve the problem. My answer to these limitations, for my 
program, was to invoke FFmpeg directly using Python's `subprocess.run()`.


If you find out how `ffmpeg-python` deals with this limitation, I 
encourage you to post the answer here. It would be good for the archives 
of this list to have the answer. Also, consider making a pull request at 
the GitHub repo for `ffmpeg-python` which improves the documentation to 
answer this question. That will help future people in your situation, 
and in mine.


I hope this is helpful for you.

    --Jim DeLaHunt, Vancouver, Canada


___
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] Fluorescent White Balance Video Filters

2022-04-19 Thread Jim DeLaHunt


On 2022-04-19 11:38, Paul B Mahol wrote:

On Tue, Apr 19, 2022 at 8:25 PM Michael Koch
wrote:

I would do that with a color-look-up-table. The procedure is described
step-by-step in chapter 2.27 and an easier simplified version is
described in chapter 2.28 in my book:
http://www.astro-electronic.de/FFmpeg_Book.pdf


Your book multiple times calls multiple functionality in FFmpeg stupid.


Paul,

You say that as if it were a bad thing.

I have not read Micheal's FFmpeg Book, so I don't know what you are 
referring to. But I would like to know. Would you care to cite the 
specific places where the book calls FFmpeg stupid?


Having not read the passages, I cannot be sure. But my initial 
impression is that this might be accurate description. Not that the 
FFmpeg tool is stupid overall — it is quite capable and useful in many 
ways. But there are aspects of the tool, and its documentation, and its 
contributors' behaviour, and the project culture, which are indeed quite 
stupid. This is useful for users new to FFmpeg to know. If the book 
describes these aspects accurately as stupid, that makes it a better book.


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] avsynctest

2022-04-19 Thread Jim DeLaHunt

On 2022-04-19 02:09, Michael Koch wrote:

Hello,

it's unclear how the new "avsynctest" source is expected to work. The 
most simple command line


ffmpeg -f lavfi -i avsynctest=d=5 out.mov

gives this error message:


...[error message and console log omitted for brevity]...

I agree, Michael. The documentation[1] does not mention which output 
pad(s) (or input pad(s)) the filter uses. It also fails to give any 
example of the source in use. It is inadequate IMHO.


[1] http://ffmpeg.org/ffmpeg-all.html#avsynctest

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] Video Notation, A Video Lingua Franca

2022-02-09 Thread Jim DeLaHunt

On 2022-02-09 09:42, Bouke / edit 'B wrote:


On 9 Feb 2022, at 18:32, Mark Filipak  wrote:

Hello, All,

Bye Mark.go away!
Now. No time to waste. ...[inappropriate violent content deleted]...  I don’t 
care, just, stop.


Bouke:

This post violates the project's code of conduct, and is not acceptable. 
Your first words are rude. Your next words (which I won't let this 
message repeat) are violent. Please find a more professional way to 
express yourself.


Please see the recent posts by Phil Rhodes[1] and Carl Zwanzig[2]. In my 
opinion, they apply to you also. Please take them to heart.


    —Jim DeLaHunt

[1] https://lists.ffmpeg.org/pipermail/ffmpeg-user/2022-February/054267.html
[2] https://lists.ffmpeg.org/pipermail/ffmpeg-user/2022-February/054270.html

___
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: Video Notation, A Video Lingua Franca

2022-02-08 Thread Shupert, Jim via ffmpeg-user


-Original Message-
From: ffmpeg-user  On Behalf Of Mark Filipak
Sent: Tuesday, February 8, 2022 3:42 PM
To: ffmpeg-user@ffmpeg.org
Subject: [EXTERNAL] Re: [FFmpeg-user] Video Notation, A Video Lingua Franca

On 2022-02-08 11:44, Carl Zwanzig wrote:
> 
> On 2/7/2022 10:27 PM, Mark Filipak wrote:
>> On suggestion, I tried web hosting suppliers and failed.
> 
>  There must be thousands of them out there. Failed? You copy the 
> files to the hosting site and send out the URL. You may have to set up 
> an account in order to use it. This is not difficult, technically.

I contacted some hosting sites:
$7 to $30 per month, (for only 11 pages!), even without WordPress (which I 
don't need because I can write my own HTML and javascript), even without 
implementing a shopping cart etc.
And I would need my own domain.

I have a 16 year old ClarkCommunity server (now, ClearOS) on a Dell Octiplex 
machine that I could put in my router's DMZ and serve pages from my basement, 
but I'd still need a domain.

If you're too lazy to unzip the pages I've sent, that's fine, don't unzip them, 
okay?


Mark Filipak
Thanks for this info - I appreciate your effort.
I also see the value in having it "local" no internet connection is needed to 
read 
cheers
___
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] Video Notation, A Video Lingua Franca

2022-02-08 Thread Jim DeLaHunt

On 2022-02-08 00:19, Paul B Mahol wrote:


Please stop spamming this mailing list with unrelated stuff.


Paul:

Mark's stuff is not unrelated. Mark asked nicely if people were 
interested in his stuff. Multiple people said yes. His topic is video 
data structures, the same structures on which FFmpeg operates. If Mark's 
stuff is successful, the result will be that people have a language for 
understanding video data and FFmpeg's actions better. It is very related.


This list sees a number of messages which are ill-tempered arguments 
between FFmpeg core participants. I wish those people would stop 
spamming the list with _that_ unrelated stuff.


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] Video Notation, A Video Lingua Franca 1+2of11.zip (8.8 KB)

2022-02-06 Thread Jim DeLaHunt


On 2022-02-06 22:37, Mark Filipak wrote:

Greetings!

For those interested in an object-oriented video notation for concise 
descriptions of video structures...


  ___ This attachment:
 /
=> Video Notation.01.Preface.html
=> Video Notation.02.Teasers.html

   Video Notation.03.EnhancedTerminology.html
   Video Notation.04.Reference.html
   Video Notation.05.EncodingOfDVD
   Video Notation.06.AboutAudio.html
   Video Notation.07.RecoveringTheCameraShots.html
   Video Notation.08.BasicPrimitives.html
   Video Notation.09.PulldownPrimitives.html
   Video Notation.10.AdvancedInterpolations.html
   Video Notation.11.SeenInTheWild.html


Hmmm. ZIP archives of HTML files, sent by five email messages? Really?

It would be easier to review if you were to put these files on a web 
server. People could read them with a click in a web browser, instead of 
opening five ZIP archives and gathering the HTML files into one directory.


It would be easier to review if you were to name the files consistently 
with the link targets. e.g. in 01.html, link with text "Seen In The 
Wild, Repairing Video" has HREF="LinguaFranca.11.SeenInTheWild.html", 
but the corresponding file is named "Video 
Notation.11.SeenInTheWild.html", which is different. Thus the link does 
not work.


The uncompressed HTML files add up to only 120 kilobytes. What is the 
need, in this day and age, to compress 120kB of HTML files? Even more, 
what is the need to compress into not one but five separate archives?  I 
would be astonished if email systems these days had any trouble with a 
120kB of attachments.


And, the glossary is incomplete. 01.html uses a term "texipix", but 
neither that page nor 03.html defines the term.


And once you update 03.html, you face a problem of getting a new edition 
to your readers. If only the page was on a server where each reader, on 
each reading, got the most recent edition of the page….


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] [EXTERNAL] Re: An object oriented video notation

2022-02-01 Thread Shupert, Jim via ffmpeg-user
I would like to read

-Original Message-
From: ffmpeg-user  On Behalf Of Michael Koch
Sent: Monday, January 31, 2022 3:38 AM
To: ffmpeg-user@ffmpeg.org
Subject: [EXTERNAL] Re: [FFmpeg-user] An object oriented video notation

Am 31.01.2022 um 05:03 schrieb Mark Filipak (ffmpeg):
>
> During the past year, I've developed a set of true stream primitives 
> that are object oriented (frames, pictures, ...), plus a notation to 
> describe encodings and "mechanical" manipulations that are useful and 
> that are fairly easy to read and understand. Can the notation be used 
> as a frontend to FFmpeg? I don't know ...maybe.
>
> I have written 11 HTML documents to introduce the notation and to 
> present some novel use-cases.
>
>  1, Preface (8 KiB)
>  2, Teasers (20 KiB)
>  3, Enhanced Terminology (25 KiB)
>  4, Reference (19 KiB)
>  5, Encoding Of DVD & Bluray Content (18 KiB)
>  6, About Audio (9 KiB)
>  7, Recovering The Camera Shots (3 KiB)
>  8, Basic Primitives (21 KiB)
>  9, Pulldown Primitives (14 KiB)
> 10, Advanced Interpolations (12 KiB)
> 11, Seen In The Wild (11 KiB)
>
> Writing the docs took a long time and lot of work. Is there any 
> appetite here for them?

I'd like to read it.

Michael

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://urldefense.com/v3/__https://ffmpeg.org/mailman/listinfo/ffmpeg-user__;!!Ivohdkk!0F4MqE8JjLNK4puj37Ryj6E_zRFqEyeL5GSNqxzN-mNl3fMLNIdHdoNL61yB0WGRPw$
 

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] An object oriented video notation

2022-01-31 Thread Jim DeLaHunt

On 2022-01-30 20:03, Mark Filipak (ffmpeg) wrote:

During the past year, I've developed a set of true stream primitives 
that are object oriented (frames, pictures, ...), plus a notation to 
describe encodings and "mechanical" manipulations that are useful and 
that are fairly easy to read and understand. Can the notation be used 
as a frontend to FFmpeg? I don't know ...maybe.


You might also want to take a look at the architecture and concepts used 
by GStreamer <https://gstreamer.freedesktop.org/>. It is an open source 
a library for constructing graphs of media-handling components. I 
imagine you and the GStreamer designers were trying to solve similar 
problems. Looking at their design might be an indirect kind of feedback 
on your thoughts.



Writing the docs took a long time and lot of work. Is there any 
appetite here for them?


I imagine it did!  Writing good docs is hard. Especially if they also 
have to be concise. Congratulations on this accomplishment.


I'm not up for speculative reading in this area, sorry. I am trying to 
get projects done, and so I mostly read to figure out the path from 
where I am to whereever "done" turns out to be.


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] [EXTERNAL] Re: How to get video duration in a script using ffmpeg?

2022-01-19 Thread Shupert, Jim via ffmpeg-user


I have used mediainfo

mediainfo --Inform="Video;%Duration/String3%" $SrcDir/${f%.*}.*  > $HOME/t.txt
trt=$(<$HOME/t.txt)
___
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] New post

2021-12-29 Thread Jim DeLaHunt

On 2021-12-29 21:00, paul king wrote:

In the ffmpeg Documentation there is this command for Select the pass
number (1 or 2):
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y NUL
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y /dev/null



Where do you see this command? Could you provide a link to the specific 
section, please?  Just to make sure that we all are looking at the same 
documentation.




But it is only for Windows and Unix.

Does anyone know what the command is for Apple Mac?

Cheers,
 —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] [EXTERNAL] Frame Drops and Audio Sync Issues

2021-12-10 Thread Shupert, Jim via ffmpeg-user


-Original Message-
From: ffmpeg-user  On Behalf Of James Board via 
ffmpeg-user
Sent: Thursday, December 9, 2021 5:11 PM
To: ffmpeg-user@ffmpeg.org
Cc: James Board 
Subject: [EXTERNAL] [FFmpeg-user] Frame Drops and Audio Sync Issues

I captured some video from a hardware capture card.  It has a few hundred frame 
drops in one hour of video.  The container format is .avi.   When I play the 
captured file with mplayer, the audio is out of sync with the video



I might offer -  The core reason for the captured video to be out of sync and 
to have dropped frames might be disk IO.
Try a recapture with a raided for speed drive set.
This is more likely if what you are capturing is uncompressed and less likely 
if what you are capturing is highly ( low datarate) compressed.
cheers

___
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: attempting to extract srt from mpg

2021-10-23 Thread Shupert, Jim via ffmpeg-user


Hmmm. That message looks suspicious because it should not include the single 
quotes. I wonder if the issue is shell quoting? Perhaps you should try 
replacing single quotes (') with double (") or none at all. I am ignorant of 
99.9% of windows-related stuff, but it looks to me like your shell is passing 
the single quotes onto to ffmpeg, which is choking.

Leo

Yep -  double quotes

ffmpeg -f lavfi -i "movie=mtp_1.mpg[out0+subcc]"  -map s mtp_mpg_j.srt
the above worked

much 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] [EXTERNAL] Re: attempting to extract srt from mpg

2021-10-22 Thread Shupert, Jim via ffmpeg-user
command-line copying 
> seems
to
> have omitted stuff.

If I understand correctly, your command line uses the Libavfilter input virtual 
device and a multimedia source.

If the success of that command line depends on either, please clarify how in 
concept? I am unfamiliar with both and struggling to understand their 
contribution.


If it helps .
Here is a complete and uncut


ffmpeg -f lavfi -i 'movie=mtp_1.mpg[out0+subcc]'  -map s mtp_mpg_j.srt
ffmpeg version N-99707-g2b702015d8 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static 
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug 
--enable-shared --disable-static --disable-debug --enable-iconv --enable-zlib 
--enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp 
--enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf 
--enable-vulkan --enable-libvorbis --enable-amf --enable-libaom 
--enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec 
--enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
--enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
--enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
--enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
--enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
--enable-libx264 --e
 nable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg 
--extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread 
--extra-libs=-lgomp
  libavutil  56. 60.100 / 56. 60.100
  libavcodec 58.111.101 / 58.111.101
  libavformat58. 62.100 / 58. 62.100
  libavdevice58. 11.102 / 58. 11.102
  libavfilter 7. 88.100 /  7. 88.100
  libswscale  5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc55.  8.100 / 55.  8.100
[lavfi @ 0214a34fddc0] No such filter: 'movie=mtp_1.mpg[out0+subcc]'
'movie=mtp_1.mpg[out0+subcc]': Invalid argument

Thanks much

I also am struggling to understand
Best wishes
___
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] audio to text

2021-10-20 Thread Jim DeLaHunt

On 2021-10-20 13:42, Joao Carlos Palanca wrote:


hello guys, please help-me. Do ffmpg convert audio to text? if yes, coud
pass me the command line ?


By "convert audio to text", I assume that the audio is of spoken words 
in a human spoken language, rather than music or white noise. Another 
term for that operation is "speech recognition".


I have never tried to perform speech recognition with FFmpeg. However, I 
do see documentation for an "asr" filter:


http://ffmpeg.org/ffmpeg-all.html#asr

"Automatic Speech Recognition. This filter uses PocketSphinx for speech 
recognition. To enable compilation of this filter, you need to configure 
FFmpeg with |--enable-pocketsphinx|."


Perhaps this will help you make progress figuring out a command line. 
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] [EXTERNAL] Re: attempting to extract srt from mpg

2021-10-20 Thread Shupert, Jim via ffmpeg-user


Here is an example with ffmpeg:

$ /usr/bin/ffmpeg -f lavfi -i \
'movie=4131_2015081418.mpg[out0+subcc]' -t 00:01:00 -map s \ 
/tmp/4131_2015081418.mpg.srt

ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers 
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
configuration: --prefix=/usr --extra-version=1ubuntu0.1 --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-libja\ ck --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 --enabl\ e-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-opencl --enable-opengl 
--enable-\
sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc 
--enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil  56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat58. 29.100 / 58. 29.100
libavdevice58.  8.100 / 58.  8.100
libavfilter 7. 57.100 /  7. 57.100
libavresample   4.  0.  0 /  4.  0.  0
libswscale  5.  5.100 /  5.  5.100
libswresample   3.  5.100 /  3.  5.100
libpostproc55.  5.100 / 55.  5.100
[mpegts @ 0x558f9643a9c0] PES packet size mismatch Input #0, lavfi, from 
'movie=4131_2015081418.mpg[out0+subcc]':
Duration: N/A, start: 16071.108744, bitrate: N/A Stream #0:0: Video: rawvideo 
(I420 / 0x30323449), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 
tbr, 90k tbn, 90k tbc Stream #0:1: Subtitle: eia_608 Output #0, srt, to 
'/tmp/4131_2015081418.mpg.srt':
Metadata:
encoder : Lavf58.29.100
Stream #0:0: Subtitle: subrip (srt)
Metadata:
encoder : Lavc58.54.100 srt
Stream mapping:
Stream #0:1 -> #0:0 (eia_608 (cc_dec) -> subrip (srt)) Press [q] to stop, [?] 
for help
size=   2kB time=00:00:58.19 bitrate=   0.2kbits/s speed=6.59x
video:0kB audio:0kB subtitle:1kB other streams:0kB global headers:0kB muxing 
overhead: 45.037453%


mythtv-user@mythtv-server:/var/lib/mythtv/recordings$ cat 
/tmp/4131_2015081418.mpg.srt
1
00:00:00,000 --> 00:00:32,900
{\an7}\h\h\h\h- HI. I’M MURRAY FROM "SESAME STREET," AND 
I’M LOOKING


Thanks for the suggestion
But

My effort fails with
[lavfi @ 01c05b20df00] No such filter: 'movie=mtp_1.mpg[out0+subcc]'
'movie=mtp_1.mpg[out0+subcc]': Invalid argument
If I do a ffmpeg -filters
I do not see a lavfi in the listing with the "L"s  is that my problem?

When I run


C:\0h>ffmpeg -f lavfi -i 'movie=mtp_1.mpg[out0+subcc]'  s mtp_mpg_j.srt
ffmpeg version N-99707-g2b702015d8 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static 
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug 
--enable-shared --disable-static --disable-debug --enable-iconv --enable-zlib 
--enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp 
--enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf 
--enable-vulkan --enable-libvorbis --enable-amf --enable-libaom 
--enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec 
--enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
--enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
--enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
--enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
--enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
--enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid 
--enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= 
--extra-ldflags=-pthread --extra-libs=-lgomp
  libavutil  56. 60.100 / 56. 60.100
  libavcodec 58.111.101 / 58.111.101
  libavformat58. 62.100 / 58. 62.100
  libavdevice58. 11.102 / 58. 11.102
  libavfilter 7. 88.100 /  7. 88.100
  libswscale  5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc55.  8.100 / 55.  8.100
[lavfi @ 01c05b20df00] No such filter: 'movie=mtp_1.mpg[out0+subcc]'
'movie=mtp_1.mpg[out0+subcc]': Invalid argument



thanks











[FFmpeg-user] attempting to extract srt from mpg

2021-10-19 Thread Shupert, Jim via ffmpeg-user
-libdavs2 --enable-ffnvcodec 
--enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
--enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
--enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
--enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
--enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
--enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid 
--enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= 
--extra-ldflags=-pthread --extra-libs=-lgomp

Input #0, mpeg, from 'mtp_1.mpg':
  Duration: 00:58:55.79, start: 0.50, bitrate: 7681 kb/s
Stream #0:0[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
Stream #0:1[0x81]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Stream #0:2[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 
1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 29.97 fps, 29.97 tbr, 90k tbn, 
59.94 tbc
Side data:
  cpb: bitrate max/min/avg: 17598000/0/0 buffer size: 7995392 vbv_delay: N/A
Stream map '0:s:2' matches no streams.
To ignore this, add a trailing '?' to the map.

--
>4
C:\0h>ffmpeg -i  mtp_1.mpg -map 0:s:? mtp_mpg.srt
ffmpeg version N-99707-g2b702015d8 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static 
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug 
--enable-shared --disable-static --disable-debug --enable-iconv --enable-zlib 
--enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp 
--enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf 
--enable-vulkan --enable-libvorbis --enable-amf --enable-libaom 
--enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec 
--enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
--enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
--enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
--enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
--enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
--enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid 
--enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= 
--extra-ldflags=-pthread --extra-libs=-lgomp

Input #0, mpeg, from 'mtp_1.mpg':
  Duration: 00:58:55.79, start: 0.50, bitrate: 7681 kb/s
Stream #0:0[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
Stream #0:1[0x81]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Stream #0:2[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 
1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 29.97 fps, 29.97 tbr, 90k tbn, 
59.94 tbc
Side data:
  cpb: bitrate max/min/avg: 17598000/0/0 buffer size: 7995392 vbv_delay: N/A
Output #0, srt, to 'mtp_mpg.srt':
Output file #0 does not contain any stream


thanks

Jim Shupert, Jr.
Engineering Maintenance
[cid:image001.png@01D7C4FF.16EE4EA0]

___
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] add captions with a srt to mpeg 2 mxf

2021-10-16 Thread Shupert, Jim via ffmpeg-user


Friends,

I wish to add 708 captions to a mxf.
I have a mpg or mxf with mpeg 2 video @ 30 mbps and pcm audio.
I am wondering if a mxf can have captions and if so what is supported? Scc? 
Anything?
I could use a file.ts instead of mxf if that helps


ffmpeg.exe -i input.mxf -f srt -i input.srt -map 0:0 -map 0:1 -map 1:0 -c:v 
copy -c:a copy -c:s srt output.mxf
or
ffmpeg.exe -i input.mpg -f srt -i input.srt -map 0:0 -map 0:1 -map 1:0 -c:v 
copy -c:a copy -c:s srt -f mxf output.mxf
or
ffmpeg.exe -i input.ts -f srt -i input.srt -map 0:0 -map 0:1 -map 1:0 -c:v copy 
-c:a copy -c:s srt output.ts

Thanks much
Kind regards
Jim shupert
___
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: Parse a transport stream and get just 1 program

2021-10-12 Thread Shupert, Jim via ffmpeg-user



-Original Message-
From: ffmpeg-user  On Behalf Of Moritz Barsnick
Sent: Tuesday, October 12, 2021 10:02 AM
To: FFmpeg user discussions 
Subject: Re: [FFmpeg-user] [EXTERNAL] Re: Parse a transport stream and get just 
1 program

Hi Jim,

On Tue, Oct 12, 2021 at 12:27:15 +, FFmpeg user discussions wrote:
> I wonder what do you see that tells that the mapping is map 0:2 -map 
> 0:4

This part:
> >   Program 1
> > Stream #0:2[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
> > yuv420p(tv, top first), 1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 
> > 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
> > Side data:
> >   cpb: bitrate max/min/avg: 17598000/0/0 buffer size: 7995392 
> > vbv_delay: N/A
> > Stream #0:4[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 
> > 5.1(side), fltp, 384 kb/s
> > Stream #0:10[0x56](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 
> > Hz, stereo, fltp, 192 kb/s

It's the "#0:2", "#0:4", and so on, in the quoted text. You should also be able 
to map by program ID:

$ ffmpeg ... -map 0:p:1 ...
or by the the PIDs - they are the "0x51", "0x54" and "0x56" seen above.


Thanks 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] [EXTERNAL] Re: Parse a transport stream and get just 1 program

2021-10-12 Thread Shupert, Jim via ffmpeg-user



-Original Message-
From: Leo Butler  
Sent: Tuesday, October 12, 2021 7:34 AM
To: Shupert, Jim via ffmpeg-user 
Cc: Shupert, Jim 
Subject: [EXTERNAL] Re: [FFmpeg-user] Parse a transport stream and get just 1 
program

"Shupert, Jim via ffmpeg-user"  writes:

> -Original Message-
> From: ffmpeg-user  On Behalf Of Shupert, Jim 
> via ffmpeg-user
> Sent: Sunday, October 10, 2021 5:15 PM
> To: ffmpeg-user@ffmpeg.org
> Cc: Shupert, Jim 
> Subject: [EXTERNAL] [FFmpeg-user] Parse a transport stream and get just 1 
> program
>
> Friends,
> I have a file.ts
> It seems to contain 4 programs.
> I can see this by when I play it in VLC I can select what I want by Playback 
> - Program and picking the top of the 4 listed..
> Ffmpeg shows the following
>
> ffmpeg version N-99707-g2b702015d8 Copyright (c) 2000-2020 the FFmpeg 
> developers
>   built with gcc 9.3-win32 (GCC) 20200320
>   configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static 
> --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 
> --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug 
> --enable-shared --disable-static --disable-debug --enable-iconv --enable-zlib 
> --enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp 
> --enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf 
> --enable-vulkan --enable-libvorbis --enable-amf --enable-libaom 
> --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec 
> --enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
> --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
> --enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
> --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
> --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
> --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
> --enable-libx264 -
 -e
>  nable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg 
> --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread 
> --extra-libs=-lgomp
>   libavutil  56. 60.100 / 56. 60.100
>   libavcodec 58.111.101 / 58.111.101
>   libavformat58. 62.100 / 58. 62.100
>   libavdevice58. 11.102 / 58. 11.102
>   libavfilter 7. 88.100 /  7. 88.100
>   libswscale  5.  8.100 /  5.  8.100
>   libswresample   3.  8.100 /  3.  8.100
>   libpostproc55.  8.100 / 55.  8.100
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> Last message repeated 3 times
> [mpegts @ 01a960bfd900] DTS discontinuity in stream 3: packet 3 with DTS 
> 7640699639, packet 4 with DTS 16230637234 [mpeg2video @ 01a962a12dc0] 
> Invalid frame dimensions 0x0.
> Last message repeated 2 times
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> Last message repeated 1 times
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> Last message repeated 1 times
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
>Last message repeated 1 times
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> Last message repeated 2 times
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
> Last message repeated 4 times
> [mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
> [mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
> Last message repeated 13 times
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 4, dts = 8489776251).
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 10, dts = 8489790651).
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 6, dts = 8489805840).
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 7, dts = 8489805840).
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 8, dts = 7958876999).
> [mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
> 01a960bfd900] Packet corrupt (stream = 9, dts = 7958876999).
> [mpegts @ 01a960bfd900] stream 1 : no PTS found at end of file, duration 
> not set [mpegts @ 01a960bfd900] stream 3 : no PTS found at end of file, 
> duration not set Input #0, mpegts, from 'MTP.ts':
>   Durati

Re: [FFmpeg-user] Parse a transport stream and get just 1 program

2021-10-10 Thread Shupert, Jim via ffmpeg-user



-Original Message-
From: ffmpeg-user  On Behalf Of Shupert, Jim 
via ffmpeg-user
Sent: Sunday, October 10, 2021 5:15 PM
To: ffmpeg-user@ffmpeg.org
Cc: Shupert, Jim 
Subject: [EXTERNAL] [FFmpeg-user] Parse a transport stream and get just 1 
program

Friends,
I have a file.ts
It seems to contain 4 programs.
I can see this by when I play it in VLC I can select what I want by Playback - 
Program and picking the top of the 4 listed..
Ffmpeg shows the following

ffmpeg version N-99707-g2b702015d8 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3-win32 (GCC) 20200320
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static 
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug 
--enable-shared --disable-static --disable-debug --enable-iconv --enable-zlib 
--enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp 
--enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf 
--enable-vulkan --enable-libvorbis --enable-amf --enable-libaom 
--enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec 
--enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray 
--enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx 
--enable-libwebp --enable-libmfx --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e 
--enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt 
--enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab 
--enable-libx264 --e
 nable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg 
--extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread 
--extra-libs=-lgomp
  libavutil  56. 60.100 / 56. 60.100
  libavcodec 58.111.101 / 58.111.101
  libavformat58. 62.100 / 58. 62.100
  libavdevice58. 11.102 / 58. 11.102
  libavfilter 7. 88.100 /  7. 88.100
  libswscale  5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc55.  8.100 / 55.  8.100
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
Last message repeated 3 times
[mpegts @ 01a960bfd900] DTS discontinuity in stream 3: packet 3 with DTS 
7640699639, packet 4 with DTS 16230637234 [mpeg2video @ 01a962a12dc0] 
Invalid frame dimensions 0x0.
Last message repeated 2 times
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
Last message repeated 1 times
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
Last message repeated 1 times
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
   Last message repeated 1 times
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
Last message repeated 2 times
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
Last message repeated 4 times
[mpeg2video @ 01a962a12dc0] Invalid frame dimensions 0x0.
[mpeg2video @ 01a960c92480] Invalid frame dimensions 0x0.
Last message repeated 13 times
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 4, dts = 8489776251).
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 10, dts = 8489790651).
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 6, dts = 8489805840).
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 7, dts = 8489805840).
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 8, dts = 7958876999).
[mpegts @ 01a960bfd900] PES packet size mismatch [mpegts @ 
01a960bfd900] Packet corrupt (stream = 9, dts = 7958876999).
[mpegts @ 01a960bfd900] stream 1 : no PTS found at end of file, duration 
not set [mpegts @ 01a960bfd900] stream 3 : no PTS found at end of file, 
duration not set Input #0, mpegts, from 'MTP.ts':
  Duration: 27:29:39.15, start: 84896.562556, bitrate: 692 kb/s
  Program 1
Stream #0:2[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
yuv420p(tv, top first), 1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 29.97 
fps, 29.97 tbr, 90k tbn, 59.94 tbc
Side data:
  cpb: bitrate max/min/avg: 17598000/0/0 buffer size: 7995392 vbv_delay: N/A
Stream #0:4[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 
5.1(side), fltp, 384 kb/s
Stream #0:10[0x56](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, 
fltp, 192 kb/s
  Program 2
Stream #0:5[0x61]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
yuv420p(tv, top first), 640x480 [SAR 4:3 DAR 16:9], Closed Captions, 29.97 fps

[FFmpeg-user] Parse a transport stream and get just 1 program

2021-10-10 Thread Shupert, Jim via ffmpeg-user
 / 0x332D4341), 48000 Hz, stereo, 
fltp, 192 kb/s
  Program 3
Stream #0:3[0x71]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
yuv420p(tv, top first), 640x480 [SAR 4:3 DAR 16:9], Closed Captions, 29.97 fps, 
29.97 tbr, 90k tbn, 59.94 tbc
Side data:
  cpb: bitrate max/min/avg: 7810800/0/0 buffer size: 1835008 vbv_delay: N/A
Stream #0:8[0x74](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, 
fltp, 192 kb/s
Stream #0:9[0x76](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, 
fltp, 192 kb/s
  Program 7
Stream #0:0[0xb1]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
yuv420p(tv, progressive), 1280x720 [SAR 1:1 DAR 16:9], Closed Captions, 59.94 
fps, 59.94 tbr, 90k tbn, 119.88 tbc
Side data:
  cpb: bitrate max/min/avg: 9759200/0/0 buffer size: 7995392 vbv_delay: N/A
Stream #0:1[0xb4](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 
5.1(side), fltp, 384 kb/s
At least one output file must be specified

My goal is to have a file.ts that contains just the "1st" program
The video , audio and captions.

I think that is  would be this part

Program 1
Stream #0:2[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), 
yuv420p(tv, top first), 1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 29.97 
fps, 29.97 tbr, 90k tbn, 59.94 tbc
Side data:
  cpb: bitrate max/min/avg: 17598000/0/0 buffer size: 7995392 vbv_delay: N/A
Stream #0:4[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 
5.1(side), fltp, 384 kb/s
Stream #0:10[0x56](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, 
fltp, 192 kb/s

And I think I can solve this with mapping
Ending with a file.ts with just the 1 video,audio

What would be the  correct means to achive this?

Thanks much!

Jim shupert
___
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 build

2021-10-05 Thread Jim DeLaHunt

On 2021-10-05 15:21, jackblev...@mchsi.com wrote:

I noticed on the FATE page that an x64 build for windows 10 was successful.
Where can I get the source file to build it myself?


Jack:

Start at . There are 
instructions on cloning the source code repo via git.


___
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] ffmpeg producing invalid wav headers when merging two wav files

2021-09-13 Thread Jim McMaster via ffmpeg-user
We are using ffmpeg to merge two mono wav files into a single two-channel file. 
 When we do, we get a wav file that has an invalid header, and some of our 
other software cannot process it.In particular, the AudioFormat at offset 
20 has a value of ‘0700’ (little-endian) instead of ‘0100’.  The Subchunk2ID is 
‘6461’ instead of ‘74616461’ (“data”).  The Subchink2Size is a huge number 
(1937924468 or 0X73826174) which is much larger than the size of the audio file.

We are using the command:

/usr/bin/ffmpeg -ac 1 -ar 8000 -acodec pcm_s16le -f s16le -i-ac 1 
-ar 8000 -acodec pcm_s16le -f s16le -i-filter_complex "[1:a][2:a] 
amerge=inputs=2[a]" -map "[a]" 

This is generated in Java, so I hope I got it right.

So, what are we doing wrong?  How do we get ffmpeg to generate a valid wav 
header?

Thank you.

[signature_199644536]
[signature_924782017]
Jim McMaster
Senior Software Engineer

___
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] Integration of ffmpeg

2021-08-16 Thread Jim DeLaHunt

On 2021-08-16 17:38, The Admin wrote:


Hi,

   Here the command that works fine at the command prompt.
C:\progra~1\GloboTRAC\ffmpeg\bin\ffmpeg.exe -i a0.m3u8 -i a1.m3u8 -i
a2.m3u8 -filter_complex
"[0]adelay=0:all=1[0a];[1]adelay=17650:all=1[1a];[2]adelay=37510:all=1[2a];[0a][1a][2a]amix=inputs=3[a]"
-map "[a]"  -y all_audio.mp4

When I run the same command from the Process.Start command in C#, it just
hangs.  I've even tried triggering the execution from .bat file and it
hangs as well.

If it is the subprocess, I am open to any suggestions.

Any help would be appreciated.

Marc.


It may be that FFmpeg is trying to interact with stdin, and the 
subprocess is not responding like a live shell would. Try adding the 
`-nostdin` option to your command line. See answer 
<https://stackoverflow.com/a/47114881/1099571> to question, "ffmpeg 
hangs when run in background".


If that answer helps you, consider upvoting it.

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] Where are the list archives? [was: Re: RTMP stream from digital mic : interruptions]

2021-05-17 Thread Jim DeLaHunt

On 2021-05-17 07:44, ckxkexing wrote:

hello,
Do you know is it possible to see all history mailing list ?


Hello, ckxkexing, and welcome to the FFmpeg-user email list.

I think what you are asking is, are the archives (past messages sent to 
the list, or "history") of the ffmpeg-user list available on the web?


Answer: yes, at https://lists.ffmpeg.org/pipermail/ffmpeg-user/ .

For instance, your question is in the archive at
https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-May/052987.html

There is general information about the ffmpeg-user list at 
https://ffmpeg.org/mailman/listinfo/ffmpeg-user . That page gives a way 
for you to subscribe to the list.


Also, it looks like you sent your question to this list by replying to a 
message about a different topic. That is not the best way to do it. It 
is better to start off each new question with a new message to the list, 
using a new Subject: line. That is what I am doing here.


There are more rules for good use of the FFmpeg lists at 
https://ffmpeg.org/contact.html#MailingLists .


Does this answer your question?

Best regards, and I wish you much success using FFmpeg.
 —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] Possible to change pitch of audio in a downloaded mp4 file?

2021-04-29 Thread Jim DeLaHunt
Bo, I don't have expertise in using FFmpeg with audio. But I do want to 
point out that what you say you want appears to be different in 
different parts of your message. Maybe some of these sentences were not 
quite worded correctly?


On 2021-04-28 23:40, Bo Berglund wrote:

What I wanted was to change the *pitch* of the audio while retaining the
playback speed!
So the playback time of the video should be the same as before and the audio
pitch changed without losing lip sync.


Playback "speed": unchanged. Playback duration: unchanged. Pitch: changed.


On 2021-04-28 23:40, Bo Berglund wrote:

…What I am after is what VLC can do, namely speed up or down the video playback
while *retaining* the pitch of the audio without losing lip sync. …


Playback "speed": changed. Playback duration: unchanged. Pitch: unchanged.

Which do you want?

Also, your use of the term "speed" is not clear to me.  Speed is a count 
of something, per unit of time, e.g. beats per second or feet per 
second. Duration is the time taken for something. If you increase the 
beats per second of a recording, and keep the number of beats constant, 
then the duration will become shorter. If the duration changes, you lose 
lip sync. So, maybe you want:


Playback "speed": unchanged. Playback duration: unchanged. Pitch: changed.

___
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] "vibrance" video filter, default luma coefficients swapped?

2021-04-22 Thread Jim DeLaHunt

On 2021-04-19 00:55, Jim DeLaHunt wrote:


On 2021-04-14 22:33, Jim DeLaHunt wrote:
...So, luma = 0.2126 * r + 0.7152 * g + 0.0722 * b, a value in [0.0, 
1.0] for r, g, b in [0.0, 1.0]


But the default values I see in the FFmpeg vibrance filter are[4]:

  rlum (default 0.072186), glum (default 0.715158), blum (default 
0.212656)


Thus it looks like the default values for rlum and blum are swapped



I entered ticket #9195, "vibrance (video filter) incorrect defaults 
for luma", https://trac.ffmpeg.org/ticket/9195 , to track this.



Someone closed this ticket as "wontfix", without comment about why the 
current behaviour is correct, or if incorrect, why the ticket should be 
ignored. I suspect that person is the author of the vibrance filter. If 
that is true, then the author of the filter is declining to respond to a 
good-faith bug report about the filter.


That makes me despair of getting the filter corrected (if incorrect). I 
think that is a sad situation for the project.



___
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 Jim DeLaHunt

On 2021-04-22 08:26, Ulf Zibis wrote:

…with exact frame count instead unsing -ss, which only counts in seconds? 


Just to be sure the obvious is stated out loud: the parameter to -ss can 
be a floating-point number, meaning you can make it as precise as you 
like, to indicate the time when you expect a specific frame. e.g. "-ss 
22.0393" .


___
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] "vibrance" video filter, default luma coefficients swapped?

2021-04-19 Thread Jim DeLaHunt

On 2021-04-14 22:33, Jim DeLaHunt wrote:
...So, luma = 0.2126 * r + 0.7152 * g + 0.0722 * b, a value in [0.0, 
1.0] for r, g, b in [0.0, 1.0]


But the default values I see in the FFmpeg vibrance filter are[4]:

  rlum (default 0.072186), glum (default 0.715158), blum (default 
0.212656)


Thus it looks like the default values for rlum and blum are swapped



I entered ticket #9195, "vibrance (video filter) incorrect defaults for 
luma", https://trac.ffmpeg.org/ticket/9195 , to track this.


Again, thanks for contributing this "vibrance" filter. It's a nice 
feature to have.


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


[FFmpeg-user] "vibrance" video filter, default luma coefficients swapped?

2021-04-14 Thread Jim DeLaHunt

Paul:

I recently wondered if FFmpeg had a "vibrance" filter, and I was 
delighted to find the "vibrance" video filter[1]. It looks like you 
added this back in 2018[1].  Thank you for that! I think it might come 
in handy for me.


I'm curious about the default values for coefficients "rlum", "glum", 
and "blum". It looks like they are supposed to match the luma 
computation as defined in BT.709-6[3] or something similar. Wikipedia 
gives this formula as:



/R’G’B’/ coefficients 0.2126, 0.7152, and 0.0722 (together they add to 1)
So, luma = 0.2126 * r + 0.7152 * g + 0.0722 * b, a value in [0.0, 1.0] 
for r, g, b in [0.0, 1.0]


But the default values I see in the FFmpeg vibrance filter are[4]:

  rlum (default 0.072186), glum (default 0.715158), blum (default 0.212656)

Thus it looks like the default values for rlum and blum are swapped.

Luma would still yield a value in a value in [0.0, 1.0], but it wouldn't 
be the correct value per BT.709. Since the vibrance adjustments are 
relative to luma, they might be slightly off.


Am I reading that right? If so, would it be helpful for me to submit a 
patch to swap them back? Are there unit tests of vibrance to check?


[1] https://ffmpeg.org/ffmpeg-filters.html#vibrance
[2] commit b7b3e8c5c759350379eaf176f73334a65bfea2b4
[3] https://en.wikipedia.org/wiki/Rec._709

[4] % ffmpeg -h filter=vibrance
ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.10.44.4)
  configuration: --prefix=/opt/local --enable-swscale --enable-avfilter 
--enable-avresample --enable-libmp3lame --enable-libvorbis 
--enable-libopus --enable-librsvg --enable-libtheora 
--enable-libopenjpeg --enable-libmodplug --enable-libvpx 
--enable-libsoxr --enable-libspeex --enable-libass --enable-libbluray 
--enable-lzma --enable-gnutls --enable-fontconfig --enable-libfreetype 
--enable-libfribidi --disable-libjack --disable-libopencore-amrnb 
--disable-libopencore-amrwb --disable-indev=jack --enable-opencl 
--disable-outdev=xv --enable-audiotoolbox --enable-videotoolbox 
--enable-sdl2 --disable-securetransport --mandir=/opt/local/share/man 
--enable-shared --enable-pthreads --cc=/usr/bin/clang --enable-libdav1d 
--arch=x86_64 --enable-x86asm --enable-libx265 --enable-gpl 
--enable-postproc --enable-libx264 --enable-libxvid

  libavutil  56. 70.100 / 56. 70.100
  libavcodec 58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter 7.110.100 /  7.110.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale  5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
Filter vibrance
  Boost or alter saturation.
    slice threading supported
    Inputs:
   #0: default (video)
    Outputs:
   #0: default (video)
vibrance AVOptions:
  intensity   ..FV.T. set the intensity value 
(from -2 to 2) (default 0)
  rbal    ..FV.T. set the red balance value 
(from -10 to 10) (default 1)
  gbal    ..FV.T. set the green balance 
value (from -10 to 10) (default 1)
  bbal    ..FV.T. set the blue balance value 
(from -10 to 10) (default 1)
  rlum    ..FV.T. set the red luma 
coefficient (from 0 to 1) (default 0.072186)
  glum    ..FV.T. set the green luma 
coefficient (from 0 to 1) (default 0.715158)
  blum    ..FV.T. set the blue luma 
coefficient (from 0 to 1) (default 0.212656)
  alternate     ..FV.T. use alternate colors 
(default false)


This filter has support for timeline through the 'enable' option.
%


Again, thanks for contributing this "vibrance" filter. It's a nice 
feature to have.


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

[FFmpeg-user] Advice on getting help from ffmpeg-user list

2021-04-12 Thread Jim DeLaHunt

On 2021-04-11 23:58, Rohit Prajapati wrote:

I need help with some issues in the FFmpeg command.


*show error in android *



2021-04-09 11:25:01.052 31074-31074/com.daasuu.gpuvideoandroid
E/fsfdsfdfgfdffcszxczxczx: false: ffmpeg version n3.0.1 Copyright (c)
2000-2016 the FFmpeg developers

[… rest of message elided …]

On 2021-04-11 23:59, Rohit Prajapati wrote:

I need help with some issues in the FFmpeg command.


*show error in android *



2021-04-09 11:25:01.052 31074-31074/com.daasuu.gpuvideoandroid
E/fsfdsfdfgfdffcszxczxczx: false: ffmpeg version n3.0.1 Copyright (c)
2000-2016 the FFmpeg developers

[… rest of message elided …]



Hello, Rohit Prajapati:

Welcome to the FFmpeg-users email list. This can be a good place to get 
your questions on FFmpeg use answered. However, there are some best 
practices here. Follow them, and you are more likely to get useful 
responses.


1. Send your message only once. Don't send the same message repeatedly. 
You just sent what looks like the same identical message twice in quick 
succession. Once is enough, twice starts to be annoying.


2. Start a new thread for a new topic. Don't hijack an existing thread 
by replying to it to start a new topic. You just did this twice in quick 
succession. Note that I started a new thread. Don't hijack this thread 
either; send your (improved) question to the list as a fresh topic.


3. Use the current version of ffmpeg to reproduce your problem. Your 
output says, "ffmpeg version n3.0.1", but the current numbered version 
is 4.4.  Your output says,  "2000-2016", but the current version is 
dated 2021. If at all possible, take a build of the current day's 
sources and reproduce with that.  You may find that your problem is 
solved by changes in the last 5 years of development.


4. Reproduce your problem by running FFmpeg from the command on macOS, 
Linux, or Windows.  Your output is not from a command line on one of 
those systems; the syntax 'String cmd21[]={"-y","-i" ,inputFile1, "-i", 
inputFile2, "-filter_complex",' etc makes it look like you are calling 
from within a programming environment. It may be that your use of the 
programming environment is causing the problem. Eliminate that 
possibility by demonstrating your problem using a shell invocation of 
FFmpeg from one of the three main OSs.


5. Include the full command line, and the full, uncut command line 
output with your message.


6. Bottom-post: leave the message you are replying to at the top of the 
message, trim it as much as you can, and put your reply underneath or 
interleaved. This makes it easier to follow long threads of discussion.


7. Keep the discussion on-list: include the ffmpeg-user list address on 
all replies. Your message may help someone in the future who has the 
same problem.


So, please rewrite your query with the above improvements, and send it 
to the list as a new topic. If you have questions about my advice here, 
on using this ffmpeg-user list, then replying to this message is a good 
way to ask them.


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] Mystery error initializing complex filters -- bug?

2021-03-22 Thread Jim DeLaHunt

On 2021-03-21 22:40, Mark Filipak (ffmpeg) wrote:


Hi All,

A little help, please.

Using the latest git source, using '-filter_complex_script', I get a 
mystery error.


I have checked the filter_complex_script: 23fps.ffmpeg.filter.txt, for 
errors. Especially I've checked that every input pad (especially 
[AA1]) has one and only one matching output pad, and that every output 
pad (especially [AA1]) has one and only one matching input pad.


Can you suggest any other checks or should I file a bug now?


…



=== command line ===

ffmpeg -i "THE LAST EMPEROR.excerpt.24fps.mkv" -filter_complex_script 
23fps.ffmpeg.filter.txt -map 0 -codec:v libx265 -x265-params 
crf=16:qcomp=1.00 -codec:a copy -codec:s copy -dn "THE LAST 
EMPEROR.excerpt.60fps.mkv"


=== debug level report ===


...


[AVFilterGraph @ 020abb032040] No output pad can be associated to 
link label 'AA1'.
[Parsed_fps_2 @ 020ababb3180] 0 frames in, 0 frames out; 0 frames 
dropped, 0 frames duplicated.

Error initializing complex filters.
Invalid argument

...

=== filter_complex_script ===

[in]settb=expr=1/72,setpts=N*30030,fps=24000/1001,
separatefields,split[ABC][abc],
[ABC]tinterlace=mode=drop_odd,split[AC][B],
[AC]tinterlace=mode=drop_odd,split[AA5][AA3][AA1][AC1][AC3],
[AA5]select=eq(mod(N\,2)\,0),setpts=PTS+30030[A5],




I haven't read carefully enough to understand this whole filterchain and 
command output.  But reading the error message in a simple-minded way, 
it seems that FFmpeg is setting up the filter chain, it has a filter 
'split' which has a certain number of output filter pads, and it can't 
find a filter pad to assign to the label 'AA1'.  There are 5 labels 
after the split filter.  How many output filter pads does the split 
filter have?


The previous line has a split filter with two output pads.  'AA1' is the 
third label in the output list.  So perhaps the split filter had only 
two output pads when you use it this way?


At the Split filter documentation 
(http://ffmpeg.org/ffmpeg-all.html#split_002c-asplit), it says,


> To create 3 or more outputs, you need to specify the number of 
outputs, like in:

> [in] asplit=3 [out0][out1][out2]

Let's assume the `split` filter (video) works the same way as the 
`asplit` filter (audio).


Try changing your filter from:

> [AC]tinterlace=mode=drop_odd,split[AA5][AA3][AA1][AC1][AC3],

by adding '=5' after 'split', so it becomes:

> [AC]tinterlace=mode=drop_odd,split=5[AA5][AA3][AA1][AC1][AC3],

I haven't tried this myself.

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] FFmpeg list footer

2021-03-09 Thread Jim DeLaHunt

On 2021-03-09 02:48, mX wrote:


Can someone with list admin access (admins at foot of this email) please update 
the footer for this mailing list to assist new posters - because few people 
read the list FAQ and the devs and regulars spend too much time reminding 
posters of the list rules. I'm suggesting the following but please discuss: [… 
suggested text elided …]


As someone who is not a list admin but who has watched a lot happen on 
this list, I do not object to experimenting with this, but also I don't 
completely agree with the unstated premise of the suggestion.


Yes, few people read the list FAQ. Yes, the devs and regulars spend too 
much time reminding posters of the list rules. However, I think your 
unstated premise is that changing the footer will reduce the problem. I 
am skeptical about that.


Firstly, I think a number of people will overlook that footer. Just look 
at all the people who send an unsubscribe message to the list, not 
following the correct way to unsubscribe, which the footer already 
describes. (This thread even provoked an example of that, apparently 
[1].) Secondly, I think that explaining rules in enough detail to be 
effective would take more space than we want to use in a footer.


My alternate proposal is that we write a documentation page which 
explains the list rules, written for the list reader who is unfamiliar 
with the rules but who wants to follow them. We should say what 
behaviour we want on the list, and explain it clearly. Then we link to 
that page in the list footer. Also, by including good link anchors in 
the documentation, we can write list messages that remind about good 
behaviour with a link to the page. e.g. "Please don't top-post here. See 
.


I predict that in the course of writing this documentation page, we will 
discover that there is disagreement about what the rules actually are. 
So, thirdly, I think this exercise will be effective only if the project 
members with authority agree what the rules actually are, and if the 
documentation page reflects that agreement.


I also predict that having a difference between what the rules say and 
how people actually behave will be corrosive to good list behaviour. 
See, for example, [2]. So I predict that writing this documentation page 
will sharpen the problem of list admins not correcting bad behaviour.


But, there's no harm to experimenting with the list footer contents. I 
just have low confidence that it will reduce the problem.


Best regards,
     —Jim DeLaHunt

[1] https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-March/052349.html
[2] https://lists.ffmpeg.org/pipermail/ffmpeg-user/2021-March/052353.html





. Do not top-post i.e. reply *below* last thread message.
. Include complete terminal command/all information.
. Include uncut console output (trim excess/repeating lines).
. Upload sample video to public servers and include a link.
. Delete all footers, sigs, other junk before replying.

https://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".



List admins:

michae...@gmx.at
baptiste.coudur...@gmail.com
jamr...@gmail.com
thilo.borgm...@mail.de
eclip...@gmx.net

--
mX
___
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] FFmpeg list footer

2021-03-09 Thread Jim Hollingsworth
UNSUBSCRIBE

On Mar 9, 2021, at 7:09 AM, Jim Hollingsworth  wrote:

How about somebody remove those who have unsubscribed 10 times

On Mar 9, 2021, at 6:29 AM, Reindl Harald  wrote:



Am 09.03.21 um 12:23 schrieb Peter White:
>> sorry, but i fell insulted when i get explained how to walk on each and
>> every mail bottom
> I wouldn't. It is just an additional set of reminders which anybody who
> knows how to work can happily ignore.

i am annoyed by the current footer because it's large enough and get quoted as 
well as all sort of useless disclaimers again and again

>> how do you even think that would help?
> Maybe it would reduce the number of people doing this.

i doubt

>> look at that bunch of idiots which repleatly ignore the "don't top post" and
>> how do you imagine would a list-footer with the sentence change that
>> 
>> look at the bunch of idiots quoting the list footer 1,,2 or even 3 times in
>> their replies and you see they don't give a shit
>> 
>> look at the bunch of idiots taking a random message, press reply-all and
>> change the subject to "unsubscribe"
> Yes, there will always be those that ignore everything. But I think
> there are some who are just new or unfamiliar with the style of mailing
> lists. If only some of those read the footer and act accordingly, there
> would be less of those reminder messages.

this belongs in the welcome-message after subscrfiption and idiots which don't 
read or understand it have to be unsubscribed - case closed

>> so in the real world the bunch of idiots with no brain and no capabilities
>> for operate a mail client don't give a shit whatever spam you place at the
>> bottom of each mail
> I think it is not about that bunch of idiots but about the ignorant ones
> (as in: "sorry, didn't know that").

and you *really* think they would have read the list footer?

>> you only insult the others explaining them daily how to walk
> Do you really think that? I, for one, do not even notice the footer
> anymore, since I know its content. Maybe other subscribers do the same

i see this fucking footer quoted multiple times in the middle fo messages way 
too often
___
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] How to get he total number of frames

2021-03-09 Thread Jim Hollingsworth
UNSUBSCRIBE ! 

Best regards,

Jim Hollingsworth

On Mar 9, 2021, at 6:16 AM, Phil Rhodes via ffmpeg-user 
 wrote:

 I hit this once some time ago when creating an application which was intended 
to assign start timecodes to recorded video files and for which we needed a 
frame-accurate count. In that case the files were AVIs, which theoretically may 
have a header including a frame count, but in practice we found that this was 
often either missing, not set, or inaccurate in files we found in the wild, and 
there are further issues specifically with AVI over a certain length. Other 
file types have similar problems.
My conclusion was that the only reliable way to get a frame count is to have 
something like ffmpeg go over the file frame by frame. With the command lines 
suggested here (which are, if I remember correctly, close to what I used) then 
it tends to be reasonably fast and, as I say, I'm not sure there's much other 
option if you need a reasonable amount of reliability on arbitrary files.
If you're in a situation where all your files come from a known source and you 
are confident they will always have frame count headers that will always be 
accurate, great, but otherwise I'd recommend doing roughly what's been 
suggested here.
P
   On Tuesday, 9 March 2021, 10:54:09 GMT, Peter White  
wrote:  
Unless it happens to be one of those special cases that don't have that
info in their metadata, like matroska:



___
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] FFmpeg list footer

2021-03-09 Thread Jim Hollingsworth
How about somebody remove those who have unsubscribed 10 times

On Mar 9, 2021, at 6:29 AM, Reindl Harald  wrote:



Am 09.03.21 um 12:23 schrieb Peter White:
>> sorry, but i fell insulted when i get explained how to walk on each and
>> every mail bottom
> I wouldn't. It is just an additional set of reminders which anybody who
> knows how to work can happily ignore.

i am annoyed by the current footer because it's large enough and get quoted as 
well as all sort of useless disclaimers again and again

>> how do you even think that would help?
> Maybe it would reduce the number of people doing this.

i doubt

>> look at that bunch of idiots which repleatly ignore the "don't top post" and
>> how do you imagine would a list-footer with the sentence change that
>> 
>> look at the bunch of idiots quoting the list footer 1,,2 or even 3 times in
>> their replies and you see they don't give a shit
>> 
>> look at the bunch of idiots taking a random message, press reply-all and
>> change the subject to "unsubscribe"
> Yes, there will always be those that ignore everything. But I think
> there are some who are just new or unfamiliar with the style of mailing
> lists. If only some of those read the footer and act accordingly, there
> would be less of those reminder messages.

this belongs in the welcome-message after subscrfiption and idiots which don't 
read or understand it have to be unsubscribed - case closed

>> so in the real world the bunch of idiots with no brain and no capabilities
>> for operate a mail client don't give a shit whatever spam you place at the
>> bottom of each mail
> I think it is not about that bunch of idiots but about the ignorant ones
> (as in: "sorry, didn't know that").

and you *really* think they would have read the list footer?

>> you only insult the others explaining them daily how to walk
> Do you really think that? I, for one, do not even notice the footer
> anymore, since I know its content. Maybe other subscribers do the same

i see this fucking footer quoted multiple times in the middle fo messages way 
too often
___
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] How to get he total number of frames

2021-03-09 Thread Jim Hollingsworth
Unsubscribe!!!







On Mar 9, 2021, at 4:41 AM, Nicolas George  wrote:

Peter White (12021-03-09):
> If anybody on this list knows a better one, step up, please.

ffprobe, of course.

Regards,

-- 
 Nicolas George
___
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-03 Thread Jim DeLaHunt

On 2021-03-03 14:57, Mark Filipak (ffmpeg) wrote:

With TB = 1/(72 ticks/s), for a 24.976fps output,
deltaPTS = (1001/24000 frames/s)/(1/(72 ticks/s)) = 30030 ticks/frame

If working time_base (from the AVRational) has an effective resolution 
of int32 (i.e. ±2147483647 ticks), then frames past 0:49:42 will be 
dropped.



I see what you are getting at, but you are using the wrong terminology 
for this software product, so your statements sound garbled.


Remember that, in FFmpeg, the time_base is the time difference between 
frames, in seconds. It is an attribute of the stream, so its value does 
not change regardless of the length of the stream (unless something 
changes the time_base, creating a second stream derived from the first). 
Time_base is type AVRational, which is a rational number, not an 
integer, not a float.


Instead of "working time_base", i think you mean "time offset". This is 
the number of seconds since the zero time. FFmpeg can get a lot done 
without calculating the time offset.


Time offset = time_base * Presentation Timestamp (PTS).  Thus, PTS = 
time offset / time_base.


FFmpeg uses PTS values, related to the constant time_base, a lot.


If working time_base has an effective resolution of uint32 (i.e. 
4294967295 ticks), then frames past 1:39:26 will be dropped.
When it comes to integers, "resolution" is not the right term to use. 
"Maximum value" and "minimum value" are the most comment. "range" or 
"capacity" might also be used.  The number of bits in the integer is the 
"size".


The AVRational value is stored as an integer numerator and an integer 
denominator. The ranges of those integers are sufficient to store 1 and 
72,000. Beyond that, for this discussion it doesn't matter what their 
maximum values are.



I think that the successful transcode of a 2:21:19 video confirms that 
the working time_base is sufficient. I suspect it's a float but of 
course I don't know that and I don't know its resolution.


As we have discussed, PTS is stored as an int64_t, a signed integer with 
a size of 64 bits. The maximum value of an int64_t is (2^63)-1, about 9 
billion billion (9.2 * 10^18). FFmpeg may reserve a few of the maximum 
and minimum values to indicate special conditions, but 9 billion billion 
will do.


The time offset is calculated from an int64_t * (integer / integer). 
FFmpeg code can choose to store the result exactly as a rational number 
(assuming a numerator with a high enough maximum value), or 
approximately as an integer or a high-precision float, as the 
circumstances demand.


With a time_base of 1/720,000 secs, a near-maximum PTS of 9 billion 
billion indicates a near-maximum time offset of a little over 396,000 
years.


Most of your films will likely be shorter than that.

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

[FFmpeg-user] What the 'fps' video filter does. [was: Re: Matroska (.mkv) time resolution [was: Re: How can I force a 360kHz time base? ] ]

2021-02-27 Thread Jim DeLaHunt

On 2021-02-27 01:45, Mark Filipak (ffmpeg) wrote:


I thought that 'fps' just changes the 'frame_rate_code' metadata.



Not at all. Read [1] for part of the story of what the `fps` video 
filter actually does: "Convert the video to specified constant frame 
rate by duplicating or dropping frames as necessary.…"


Read [2] for more of the story: "Make a new video from the frames and 
presentation time stamps (PTSs) of the input. The new video has a 
specified constant frame rate, and new PTSs. It generally keeps frames 
from the old video, but might repeat or drop some frames. You can choose 
the method for rounding from input PTS to output PTS. This affects which 
frames fps keeps, repeats, or drops.…"


[1] http://ffmpeg.org/ffmpeg-all.html#fps-1

[2] http://blog.jdlh.com/en/2020/04/30/ffmpeg-fps-documented/

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] Matroska (.mkv) time resolution [was: Re: How can I force a 360kHz time base? ]

2021-02-27 Thread Jim DeLaHunt

On 2021-02-27 00:23, Mark Filipak (ffmpeg) wrote:


On 2021-02-27 02:57, list+ffmpeg-u...@jdlh.com wrote:

On 2021-02-26 23:20, Mark Filipak (ffmpeg) wrote:
showinfo reports 11880, 24120, 36000 because that's what ffmpeg has 
calculated based on rounded ms (milliseconds).


No, showinfo reports 11880, 24120, 36000 because that's what the 
input video's frame times are. The input video does not have constant 
frame time increments (so the evidence indicates).


This point can be settled. Would you like me to dig out the DVD and 
parse the headers and report back the PTSs? No, I suppose you'd say 
that I screwed the pooch when I transcoded it to MKV, eh? 


Precisely. It is the MKV file, not the the DVD, which is the input to 
your test of FFmpeg.



And you may be right -- I don't know how to parse MKVs to settle the 
point one way or the other.


I'll tell you what. How about I start with the DVD and extract a 5 
second clip into a non-KMV container? Then repeat all that I've done 
but using that clip? Would that work for you?


Mark, I didn't ask you to attempt this conversion, and I will not 
validate that you have succeeded.  But if you ask a question about 
FFmpeg which I know enough to answer, I may take the time to answer it.  
And if you make a claim about FFmpeg which I believe to be false, then 
for the benefit of other readers of this list, I may take the time to 
challenge it.



…would you kindly suggest a format for the remux. I've not had success 
remuxing with ffmpeg.… 


No, sorry, that does not belong to the set of questions which I know 
enough to answer.




Better yet, just complete this script command for me: …[snip]…
How's that sound?


I'd be happy to, as a paid consulting gig. Contact me off-list if you'd 
like to hire me. Others on this list would likely be more knowledgeable 
vendors, but I may be a more friendly vendor.



I really do understand what you wrote most recently about how MKV (at 
1ms resolution) is throwing off the PTSs and it does make sense to me. 
But I'm a bit skeptical because mpeg-ps doesn't store milliseconds. 
mpeg-ps stores fps and PTSs.…
What I read in Wikipedia says that mpeg-ps also specifies 90kHz and 
27MHz timebases for interpreting PTS values. Multiply a PTS value by a 
time base and you can compute frame times in seconds.
…What MKV does is unknown to me, but as a container, it shouldn't be 
able to alter the program stream it contains at all.…


"Shouldn't"? Says who?  Of course the designers of a container can 
decide what it will contain precisely, and leave it unable to contain 
other things precisely.



…But I confess that the MKV devs may have done a silly thing.… 


Or they may have done a very wise thing which meets their needs, but not 
yours.  It's on you to choose the right container for your needs.



So, an end-to-end test would be decisive, eh? I'm willing to spend the 
time if you're willing to stick with it.


This is not my circus, these are not my clowns. You asked questions. You 
got accurate answers. You appear to be getting the message that some of 
your beliefs about FFmpeg arithmetic and MKV accuracy are incorrect. If 
you want to stick with it until you prove it to yourself, that is up to you.


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] Matroska (.mkv) time resolution [was: Re: How can I force a 360kHz time base? ]

2021-02-26 Thread Jim DeLaHunt


On 2021-02-26 22:08, Mark Filipak (ffmpeg) wrote:

On 2021-02-27 00:55, Jim DeLaHunt wrote:

On 2021-02-26 18:36, Mark Filipak (ffmpeg) wrote:
That's exactly the point. It is not constant because ffmpeg 
calculates frame times in integer milliseconds, and thereby 
truncates or rounds.…



Mark, what makes you so sure that it is FFmpeg which is truncating or 
rounding?


The issue, Jim, is not with the MKV above. The issue is with the next 
video in the work flow: An MKV that was made from the MKV above but 
with '-vf settb=expr=1/36,showinfo'. That 'showinfo' should have 
shown a 36Hz time base. It does, but the PTSs are wrong.



Well, you are spinning up multiple issues, Mark.

Issue 1. Your contention that "ffmpeg calculates frame times in integer 
milliseconds". This branch of the thread is about that claim of yours.
Answer: No, FFmpeg calculates frame times exactly. You authored the 
input file to millisecond time resolution because that's what the format 
you chose encourages.


Issue 2. Given an input file `input1.mkv`, which has varying frame times 
in millisecond resolution which add up to 1001 ms per 30 frames, when 
you apply the FFmpeg `settb` filter, why are the output Presentation 
Timestamp (PTS) values 11880, 24120, 36000, … instead of 12012, 24024, 
36036, …?
Answer: Because the input frame presentation times are 11,880/360,000 = 
0.03300, 24,120/360,000 = 0.06700, 36,000/360,000 = 0.1, … which 
exactly matches the frame times of the input video, with a 360kHz time base.


Issue 3. What integer size does FFmpeg use to store PTS values? You 
initiated this thread with that question, remember?


On 2021-02-26 12:35, Mark Filipak (ffmpeg) wrote:

…With a 90kHz time base:
16777215 = largest 24-bit integer.
00:03:06.4135 = longest running time for 24-bit integer with 90kHz 
time base.
Conclusion: FFmpeg cannot be using 24-bit integers.… 


Hint: I gave you that answer a few days ago. FFmpeg stores PTS values in 
64-bit integers.


So, I suggest you stick to one issue at a time. The answers are in the 
various branches in this thread. People are giving you good information. 
It's up to you to take it in.


It looks like you are proving in this thread that FFmpeg already works 
as you claim you want it to work, and that your reference test file is 
leading you astray.


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

[FFmpeg-user] Matroska (.mkv) time resolution [was: Re: How can I force a 360kHz time base? ]

2021-02-26 Thread Jim DeLaHunt

On 2021-02-26 18:36, Mark Filipak (ffmpeg) wrote:

On 2021-02-26 20:42, Jim DeLaHunt wrote:

On 2021-02-26 17:24, 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 ]
[Parsed_showinfo_0 @ 013c877124c0] n:   2 pts: 67 
pts_time:0.067   pos: 9213 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:23A8A65F plane_checksum:[90DC2AA6 37E908C8 
779972F1] mean:[27 125 132 ] stdev:[14.8 7.1 1.9 ]
[Parsed_showinfo_0 @ 013c877124c0] n:   3 pts:    100 
pts_time:0.1 pos:    11086 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:1CDF7A80 plane_checksum:[089DE80E C537F4C0 
8C4E9D94] mean:[29 125 132 ] stdev:[15.2 6.6 2.3 ]

…[elided for brevity]…
[Parsed_showinfo_0 @ 013c877124c0] n:  28 pts:    934 
pts_time:0.934   pos:    45167 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:8D724A43 plane_checksum:[CD1CE198 DC377EA5 
3D51E9E8] mean:[70 113 148 ] stdev:[46.3 11.6 11.5 ]
[Parsed_showinfo_0 @ 013c877124c0] n:  29 pts:    968 
pts_time:0.968   pos:    40163 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:P checksum:8F6C0D42 plane_checksum:[385DA9F1 7EA37D5A 
AD78E5D9] mean:[70 113 148 ] stdev:[46.6 11.6 11.5 ]
[Parsed_showinfo_0 @ 013c877124c0] n:  30 pts:   1001 
pts_time:1.001   pos:    50467 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:B511B7BA plane_checksum:[9C9A49A0 B1D583BA 
FA0EEA51] mean:[70 113 148 ] stdev:[46.5 11.4 11.6 ]



This output shows a stream which has a varying frame rate. The change 
in pts_time is not constant from frame to frame.


That's exactly the point. It is not constant because ffmpeg calculates 
frame times in integer milliseconds, and thereby truncates or rounds.…



Mark, what makes you so sure that it is FFmpeg which is truncating or 
rounding?


Here's an alternate explanation: the tool which generated input1.mkv was 
what calculated frame times in integer milliseconds, and thereby 
truncated or rounded. That tool used millisecond time resolution, 
because that is what the Matroska format encourages. FFmpeg is 
faithfully reproducing the varying frame rates and millisecond 
resolution which input1.mkv contains.



On 2021-02-26 20:14, Gyan Doshi wrote:
The Matroska timebase is insufficient to precisely store 29.97 fps 
timestamps. Nothing to do with ffmpeg.


Gyan is helpful and informative, so let's dig into what Gyan said a 
little more. The extension `.mkv` indicates that file `input1.mkv` has a 
Matroska container. Take a look at the Matroska specification, section 
"TimestampScale" 
(https://www.matroska.org/technical/notes.html#timestampscale):


"The TimestampScale Element is used to calculate the Raw Timestamp of a 
Block. The timestamp is obtained by adding the Block’s timestamp to the 
Cluster’s Timestamp Element, and then multiplying that result by the 
TimestampScale. The result will be the Block’s Raw Timestamp in 
nanoseconds.… the default value of TimestampScale is 100."


The Matroska format stores timestamps as integers. Those integers are 
multiplied by the integer TimestampScale value to get times in 
nanoseconds. The default value of TimestampScale is 100. So the 
default resolution of timestamps in MKV containers is 1,000,000 
nanoseconds, or 1 millisecond.


So, Mark, unless your test file `input1.mkv` was specially crafted, it 
will have a time resolution of 1 ms. The truncation or rounding would 
happen as that file was authored.


And, if you want to prove your assertion that it is FFmpeg which is 
truncating or rounding, I suggest you follow Carl's good advice:


On 2021-02-26 19:53, Carl Zwanzig wrote:
Instead of using unknown data*, I suggest making your own test video 
so you're absolutely sure of all the parameters.… I'd also consider 
different containers.


There may also be some test files you can download that can be trusted.

*Unless _known_ to be fully compliant and well-formed, it's not 
precision test data; get as close to a primary standard as possible. I 
would not trust an extract from a generic dvd until verified as correct. 



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] How can I force a 360kHz time base?

2021-02-26 Thread Jim DeLaHunt

On 2021-02-26 17:53, Mark Filipak (ffmpeg) wrote:

… I'm concerned with the internal time base in the filter pipeline 
that's used to resolve frame ordering, both video and audio.…


That is the timebase which FFmpeg stores as a rational number, and is an 
attribute of the video stream, and can take various values.


As I read the code, it is stored in struct AVFilterLink, and is referred 
to as `link ->time_base`, and has type `AVRational`.




…Currently, the ffmpeg internal time base appears to be 1kHz.…


Reading the code, and especially the type AVRational for the time_base 
value in AVFilterLink, points away from this claim. The evidence you 
have presented so far does not prove this claim. The evidence could be 
explained by your specific file input1.mkv having a varying frame rate, 
rounded to 1ms increments.


  —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] How can I force a 360kHz time base?

2021-02-26 Thread Jim DeLaHunt

On 2021-02-26 17:24, Mark Filipak (ffmpeg) wrote:


On 2021-02-26 20:05, Jim DeLaHunt wrote:
Does input1.mkv in fact have a constant frame rate of 24/1.001 
frames/second?


No, it has a constant frame rate of 30/1.001 frames/second.


Sorry, my mistake.  I should have said, "Does input1.mkv in fact have a 
constant frame rate of 30/1.001 frames/second?"



'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 ]
[Parsed_showinfo_0 @ 013c877124c0] n:   2 pts: 67 
pts_time:0.067   pos: 9213 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:23A8A65F plane_checksum:[90DC2AA6 37E908C8 
779972F1] mean:[27 125 132 ] stdev:[14.8 7.1 1.9 ]
[Parsed_showinfo_0 @ 013c877124c0] n:   3 pts:    100 
pts_time:0.1 pos:    11086 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:1CDF7A80 plane_checksum:[089DE80E C537F4C0 
8C4E9D94] mean:[29 125 132 ] stdev:[15.2 6.6 2.3 ]

…[elided for brevity]…
[Parsed_showinfo_0 @ 013c877124c0] n:  28 pts:    934 
pts_time:0.934   pos:    45167 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:8D724A43 plane_checksum:[CD1CE198 DC377EA5 
3D51E9E8] mean:[70 113 148 ] stdev:[46.3 11.6 11.5 ]
[Parsed_showinfo_0 @ 013c877124c0] n:  29 pts:    968 
pts_time:0.968   pos:    40163 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:P checksum:8F6C0D42 plane_checksum:[385DA9F1 7EA37D5A 
AD78E5D9] mean:[70 113 148 ] stdev:[46.6 11.6 11.5 ]
[Parsed_showinfo_0 @ 013c877124c0] n:  30 pts:   1001 
pts_time:1.001   pos:    50467 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:B511B7BA plane_checksum:[9C9A49A0 B1D583BA 
FA0EEA51] mean:[70 113 148 ] stdev:[46.5 11.4 11.6 ]



This output shows a stream which has a varying frame rate. The change in 
pts_time is not constant from frame to frame.


Can you get some output which shows the timebase value, or the frame 
times, of input1.mkv, showing that there is a timebase which is a 
multiple of 1.001/30, or showing that the time value of each frame 
increments by a constant amount?


So far, the output you show is consistent with an input1.mkv which has a 
varying frame rate that is 30/1.001 fps, distorted to fit a 1/1000 
timebase. Can you show a diagnostic which eliminates that possibility?


    —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] How can I force a 360kHz time base?

2021-02-26 Thread Jim DeLaHunt

On 2021-02-26 16:53, Mark Filipak (ffmpeg) wrote:

…What I'm suggesting is that ffmpeg convert to a single, 36Hz time 
base for all videos, for all time. Then, rounding errors would be 
*zero*. PTSs would be exact. …



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. 
This already allows integer Presentation TImestamp (PTS) values to 
represent time values with zero rounding errors. You dismissed that as 
"The Matrix", but this is in fact the data structure which FFmpeg 
already uses.


Of course, to achieve zero rounding errors, the input video, and the 
user writing the FFmpeg command line, and FFmpeg itself, must all make 
wise choices so that the timebase is set to a rational number which 
suits the data.


I don't think it is wise for FFmpeg to switch from its present flexible 
data structure to a constant, 1/36 value for timebase. The examples 
you present do not make the case for such a change.


If you can establish that FFmpeg is imposing a 1/1000 timebase on a 
video with a 1001/24000 timebase, leading to rounding errors, that is 
evidence of a bug in FFmpeg's timebase calculation or something. It is 
not evidence of the timebase data structure being inadequate.



___
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 Jim DeLaHunt

On 2021-02-26 15:40, Mark Filipak (ffmpeg) wrote:

'ffmpeg -i input.mkv -vf "settb=expr=1/36,showinfo" -codec:a copy 
-codec:s copy -dn output.mkv'

partial output shown below.

input.mkv is 30.1.001fps constant frame rate. I expected deltaPTS to 
be 12012.


Look at the 1st frame:
(0.033s/frame)*(36ticks/s) = 11880ticks/frame,
instead of:
((1.001/30)s/frame)*(36ticks/s) = 12012ticks/frame.

Why is that? It destroys the resolution improvement of the 
1/(36Hz) time base.


[Parsed_showinfo_1 @ 0211128f2340] n:   1 pts:  11880 
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]
[Parsed_showinfo_1 @ 0211128f2340] n:   2 pts:  24120 
pts_time:0.067   pos: 9213 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:23A8A65F plane_checksum:[90DC2AA6 37E908C8 
779972F1] mean:[27 125 132] stdev:[14.8 7.1 1.9]
[Parsed_showinfo_1 @ 0211128f2340] n:   3 pts:  36000 
pts_time:0.1 pos:    11086 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:1CDF7A80 plane_checksum:[089DE80E C537F4C0 
8C4E9D94] mean:[29 125 132] stdev:[15.2 6.6 2.3]

…[elided for brevity]…
[Parsed_showinfo_1 @ 0211128f2340] n:  28 pts: 336240 
pts_time:0.934   pos:    45167 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:8D724A43 plane_checksum:[CD1CE198 DC377EA5 
3D51E9E8] mean:[70 113 148] stdev:[46.3 11.6 11.5]
[Parsed_showinfo_1 @ 0211128f2340] n:  29 pts: 348480 
pts_time:0.968   pos:    40163 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:P checksum:8F6C0D42 plane_checksum:[385DA9F1 7EA37D5A 
AD78E5D9] mean:[70 113 148] stdev:[46.6 11.6 11.5]
[Parsed_showinfo_1 @ 0211128f2340] n:  30 pts: 360360 
pts_time:1.001   pos:    50467 fmt:yuv420p sar:32/27 s:240x236 i:P 
iskey:0 type:B checksum:B511B7BA plane_checksum:[9C9A49A0 B1D583BA 
FA0EEA51] mean:[70 113 148] stdev:[46.5 11.4 11.6]



Does input1.mkv in fact have a constant frame rate of 24/1.001 
frames/second?  If you remove the settb video filter, and just use 
showinfo, what pts and pts_time values does it report for the first 30 
frames of input1.mkv?


It's important that input1.mkv have a constant Presentation Timestamp 
(PTS) increment, and a constant timebase which is a multiple of 24/1.001 
ticks/second. Obviously.


  —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] ffmpeg-lambda-layer and concat protocol

2021-02-24 Thread Jim DeLaHunt

On 2021-02-24 14:36, Maksym Portianoi wrote:


…Yeah I had a feeling that this mailing list is not the right place for me
to ask my question but wanted to try anyway because I found someone
elses' question on the same issue.
I am referring to this post:
https://lists.ffmpeg.org/pipermail/ffmpeg-user/2019-December/046299.html


Hello, Maksym, and welcome to the ffmpeg-users email list.

Yes, it also seems to me that this is the wrong place to ask questions 
about "ffmpeg-lambda-layer". If I look at the URL mentioned in the 
ffmpeg-user message you linked to,


<https://serverlessrepo.aws.amazon.com/applications/arn:aws:serverlessrepo:us
-east-1:145266761615:applications~ffmpeg-lambda-layer 
<https://serverlessrepo.aws.amazon.com/applications/arn:aws:serverlessrepo:us-east-1:145266761615:applications~ffmpeg-lambda-layer>>


I see a page which says, "FFmpeg/FFprobe Lambda Layer for Amazon Linux 2 
AMIs. Static build of FFmpeg/FFprobe for Amazon Linux 2, packaged as a 
Lambda layer." That says to me that the Lambda Layer is a mechanism 
defined by Amazon AWS. This list is about ffmpeg, as invoked on a 
command line on conventional PCs and similar. Thus it's reasonable that 
this is not the right place to get support for either the Lambda Layer 
mechanism or the ffmpeg-lambda-layer application.



Is there any way I can see the thread for that question?


Yes. If you look at the header of that archived message, you see a link,

"Next message (by thread): [FFmpeg-user] Problem with configuring with 
yasm".


The fact that the title of the next message is different than the title 
of the archived message says that there are no (more) replies in that 
thread.


Also, the next line of the archived message is:

" Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] "

If you click on the link, "[ thread ]", the archive takes you to a page 
listing all the messages to that list for that month, sorted by message 
thread. Find the original message in that listing. It is the only one in 
its thread.


The FFmpeg-user list archive behaves similarly to a number of other list 
archives. The same approach may work for you with other lists.


Good luck concatenating your mp3 files! 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".

[FFmpeg-user] Getting alsa xruns when sending video to v4l2 device and alsa

2021-02-24 Thread Jim Ruxton
Is there a way that I can avoid getting alsa buffer xruns when using the 
following command to send a video to a v4l2 device and sound out to alsa.


ffmpeg -re -i VideoInput.m4v -map 0:v -pix_fmt yuyv422 -f v4l2 
/dev/video0 -f alsa default


I tried sending sound to pulse instead as below which avoids xruns but 
the sound and video are way out of sync.


ffmpeg -re -i VideoInput.m4v -map 0:v -pix_fmt yuyv422 -f v4l2 
/dev/video0 -f pulse default


Thanks,

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

Re: [FFmpeg-user] PTS resolution[s]

2021-02-23 Thread Jim DeLaHunt

On 2021-02-22 21:35, Mark Filipak (ffmpeg) wrote:


On 2021-02-23 00: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.



MPEG PES (Presentation Elemental Stream) uses a 27MHz (exact) clock 
divided by 300 (exact), so that timebase is 1/(9Hz)…
I've read something similar. My understanding is that MPEG PES encodes 
Presentation Time Stamp values as integer tick counts in the data 
stream. Is the timebase of 1/(90,000Hz) encoded in the data stream, or 
it is only defined in the spec?
…(which is 0.01[1..]ms between ticks, exactly). 
Actually, for this discussion I think it's fair to say that 0.01[1..]ms 
is not exactly 1/90 ms, it is just an approximation. Finite decimal 
numbers will never get you the exact value. The rational number is 
exact. For this discussion, it will be clearer to use exact rational 
numbers.
…my best information so far is that, at least out of the encoder, 
ffmpeg encodes frames with PTS resolution = 1ms.


My impression from reading the FPS filter source code is that it is 
incomplete to talk about ffmpeg PTS values without also giving the 
corresponding timebase value. It looks to me like the FPS filter does 
not attempt to preserve the incoming PTS values or timebase. It sets a 
new time base of 1/frame_rate, and generates successive integer values 
for PTS. However, and this is crucial, it does seem to value being exact 
about the value of PTS*time_base.


So, that seems to say that your statement "at least out of the encoder, 
ffmpeg encodes frames with PTS resolution = 1ms" is not complete without 
stating the time base value ffmpeg sets out of the encoder.


To put this into perspective, a 24fps video has delta-PTS = 41.[6..]ms 
whereas a 24/1.001fps video has delta-PTS = 41.708[3..]milliseconds. 
That means that the difference between the two is less than the 
resolution of the ffmpeg timebase (at least, for the encoder -- I 
don't know about the decoder and the pipeline). That essentially means 
that ffmpeg can't differentiate between them based on the working PTSs 
that it keeps.


But what are the time base values which ffmpeg uses for these two 
cases?  If the time base is 1/24 in the first case, and 1,001/24,000 in 
the second case, then the same integer PTS values result in 
PTS*time_base products being exactly the correct time offsets from the 
first frame of the video in each of the two cases.



I seek someone who can either, 1, confirm what I think, or 2, tell me 
what the resolution of the decoder and pipeline actually is.


Implicit in your use of the definite article "the" is an apparent 
assumption that FFmpeg has only one resolution for the decoder and the 
pipeline. It looks to me like FFmpeg could well take the liberty of 
changing resolution at each stage of decoder and pipeline, as long as it 
preserves the values for PTS*time_base at each frame (or modifies them 
intentionally, as the FPS filter does).


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] PTS resolution

2021-02-22 Thread Jim DeLaHunt


On 2021-02-22 18:53, Mark Filipak (ffmpeg) wrote:

Are these correct?

ffmpeg PTS resolution is 1ms.…


This at least is not correct AFAIK.

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. 
In this case, 31 frames might have PTS values of 0, 1, 2, 3, …, 30. The 
difference in seconds between frame 31 and frame 1 is (30 - 
0)*(1001/3) = 1.001 seconds exactly. The PTS resolution is slightly 
under 1/30 second.


A different media stream might have a time base of of 1001/30,000,000. 
31 frames might have PTS values of 0, 1,000, 2,000, 3,000, …, 30,000. 
The difference in seconds between frame 31 and frame 1 is (30,000 - 
0)*(1001/30,000,000) = 1.001 seconds exactly. The PTS resolution is 
slightly under 1/30,000 second.


FFmpeg does not promise a relationship between the value of 
(pts*time_base) and wall clock time. Some media streams could be 
authored with such a relationship, but FFmpeg does not enforce it.  If 
two media streams have the same time base, and one stream has PTS values 
of 0, 1, 2, 3, and the other has 422, 423, 424, 425, then FFmpeg should 
make the same presentation time calculations for both streams.


This is all based on my limited reading of the source. There are many 
developers on this list who know the source better than I do. Perhaps 
some of them might step in to correct whatever I got wrong.


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] Naming chapters in Matroska video

2021-02-18 Thread Jim DeLaHunt

On 2021-02-18 15:05, Paul B Mahol wrote:


Everything  is explained in documentation. My time is very limited.


No, not everything about FFmpeg's handling of metadata is explained in 
FFmpeg's documentation. For example, the -map_metdata section[1] does 
not link to the -map_chapters[2] section nor to the Metadata[3] section 
of the documentation.  None of those three places explain FFmpeg's data 
model for metadata: that is, what metadata is, what its contents can be, 
how it relates to the media content. The -map_chapters section talks 
about "chapters" without defining what that term means.  I could list 
many more things which are not explained in the documentation.


Your are of course entitled to limit the time you spend answering 
questions here. You do regularly answer questions here, and that is a 
generous gift. Thank you. But you are not entitled to pretend that the 
documentation explains fully, when it does not.


[1] http://ffmpeg.org/ffmpeg-all.html#Advanced-options, search for 
"-map_metadata"
[2] http://ffmpeg.org/ffmpeg-all.html#Advanced-options, search for 
"-map_chapters"

[3] http://ffmpeg.org/ffmpeg-all.html#Metadata-1

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

  1   2   3   4   >