lusciouslover has quit [Ping timeout: 260 seconds]
waleee has quit [Ping timeout: 245 seconds]
wsc3 has joined #ffmpeg
wsc3 is now known as gchound
realies has joined #ffmpeg
Ogobaga has quit [Read error: Connection reset by peer]
Ogobaga has joined #ffmpeg
Kruppt has left #ffmpeg [Leaving]
navi has quit [Quit: WeeChat 4.0.4]
elastic_dog has quit [Ping timeout: 240 seconds]
elastic_dog has joined #ffmpeg
minimal has quit [Ping timeout: 256 seconds]
countach202020 has joined #ffmpeg
lusciouslover has joined #ffmpeg
lusciouslover has quit [Ping timeout: 260 seconds]
TheSilentLink_ has joined #ffmpeg
TheSilentLink has quit [Ping timeout: 256 seconds]
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
TheSilentLink_ is now known as TheSilentLink
thilo has quit [Ping timeout: 268 seconds]
MrZeus_ has quit [Ping timeout: 264 seconds]
thilo has joined #ffmpeg
Liver-K has joined #ffmpeg
Liver-K has quit [Client Quit]
whatsupdoc has quit [Quit: Connection closed for inactivity]
Lead has quit [Quit: Leaving]
lucasta has quit [Quit: Leaving]
Tano has quit [Quit: WeeChat 4.0.4]
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
whatsupdoc has joined #ffmpeg
lemourin has quit [Read error: Connection reset by peer]
lemourin has joined #ffmpeg
countach202020 has quit [Quit: WeeChat 4.1.1]
fling_ has joined #ffmpeg
fling has quit [Ping timeout: 240 seconds]
fling_ is now known as fling
lolok has joined #ffmpeg
gchound has quit [Quit: WeeChat 4.1.2]
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
vtorri has joined #ffmpeg
vtorri has quit [Ping timeout: 276 seconds]
vtorri has joined #ffmpeg
dangmoo has quit [Quit: Connection closed for inactivity]
Vonter has quit [Ping timeout: 268 seconds]
Vonter has joined #ffmpeg
faxmodem has quit [Remote host closed the connection]
faxmodem has joined #ffmpeg
jagannatharjun has joined #ffmpeg
indigo-oce has joined #ffmpeg
Tano has joined #ffmpeg
vampirefrog has quit [Ping timeout: 256 seconds]
YuGiOhJCJ2 has joined #ffmpeg
YuGiOhJCJ has quit [Ping timeout: 240 seconds]
Ogobaga has quit [Ping timeout: 276 seconds]
vampirefrog has joined #ffmpeg
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
vtorri has quit [Ping timeout: 255 seconds]
vampirefrog has quit [Ping timeout: 260 seconds]
Marth64 has joined #ffmpeg
vtorri has joined #ffmpeg
vtorri has quit [Ping timeout: 246 seconds]
vtorri has joined #ffmpeg
vtorri has quit [Ping timeout: 260 seconds]
vtorri has joined #ffmpeg
indigo-oce has quit [Ping timeout: 250 seconds]
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
theracermaster9 has joined #ffmpeg
theracermaster has quit [Read error: Connection reset by peer]
theracermaster9 is now known as theracermaster
AbleBacon has quit [Read error: Connection reset by peer]
theracermaster has quit [Quit: Ping timeout (120 seconds)]
theracermaster has joined #ffmpeg
ivanich has joined #ffmpeg
lexano has quit [Ping timeout: 245 seconds]
vtorri has quit [Ping timeout: 256 seconds]
rv1sr has joined #ffmpeg
vtorri has joined #ffmpeg
lexano has joined #ffmpeg
vampirefrog has joined #ffmpeg
<sss1>
hi all, i have weird problem with resolution during encoding, we also have similar problem if we encoding directly via libtheora, for theora it seems what make framebuffer resolution divisible by 16 resolves problem, and also this works for ffmpeg, but i do not see anywhere in ffmpeg documentation what frame resolution should be divisible bu 16, instead it should be divisible by 2, so i guess we
<galad>
from what I see in libtheoraenc.c it should automatically take care of the alignment
<galad>
it could be something is wrong in your conversion code, you could try to use libswscale to convert from rgb to ycbcr
scoobykj has quit [Quit: Konversation terminated!]
<galad>
usually video buffer have a line stride that is different than the width, probably you are copying the data and using the width to move to the next line instead of the stride
<furq>
those don't do anything unless you reencode the video
<furq>
also -b:v and -crf will override one another with x264
deus0ww has quit [Ping timeout: 256 seconds]
deus0ww has joined #ffmpeg
FH_thecat has joined #ffmpeg
Vonter has quit [Quit: WeeChat 4.1.1]
<AlexandrKirilov>
@furq thx
<AlexandrKirilov>
issue solved - there are camera that about to die
<sss1>
or cable
<AlexandrKirilov>
It's just saying me "no more streams, let me die"
AlexandrKirilov has quit [Quit: Leaving.]
<sss1>
any help with my scaling issue ?
<sss1>
some code samples will be preferable, if it exists
vtorri has joined #ffmpeg
MrZeus_ has joined #ffmpeg
function1 has quit [Ping timeout: 240 seconds]
minimal has quit [Quit: Leaving]
billchenchina has joined #ffmpeg
FH_thecat has quit [Ping timeout: 264 seconds]
function1 has joined #ffmpeg
alexherbo2 has joined #ffmpeg
cristian_c has quit [Read error: Connection reset by peer]
vtorri has quit [Ping timeout: 276 seconds]
vtorri has joined #ffmpeg
squid1 has joined #ffmpeg
<squid1>
Hi! I'm trying to build a minimal FFmpeg binary with Opus with this command: ./configure --target-os=linux --arch=mips --enable-cross-compile --enable-static --cross-prefix=/static/mipsel-linux-musl-cross/bin/mipsel-linux-musl- --prefix=/git/install --pkg-config-flags="--static" --extra-cflags="-I/git/install/include" --extra-ldflags="-L/git/install/lib" --pkgconfigdir=/git/install/lib/pkgconfig --disable-network --disable-doc --disable-
<squid1>
I encounter: ERROR: opus not found using pkg-config, I followed the Wiki to install Opus to the /git/install directory already(there is opus.pc under /git/install/lib/pkgconfig)
<squid1>
I have been looking and following any answer I could find but the error remains, may I ask for help here? Thank you
<squid1>
By removing the --enable-opus, the command works but it doesn't work when I add that option like the above
<squid1>
--enable-libopus, I mean
microchip_ has quit [Quit: There is no spoon!]
microchip_ has joined #ffmpeg
pah has joined #ffmpeg
kurosu has quit [Quit: Connection closed for inactivity]
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ffmpeg
waleee has joined #ffmpeg
vtorri has quit [Ping timeout: 256 seconds]
vtorri has joined #ffmpeg
AbleBacon has joined #ffmpeg
BillTorvalds has joined #ffmpeg
<BillTorvalds>
Is there an ffmpeg command I can use to check whether or not a given input .png is "fully black" (or >=95% black) with a yes/no? I've asked ChatGPT and searched online but can only find seemingly made-up answers or ones that apply to videos rather than images.
billchenchina has quit [Quit: Leaving]
<BillTorvalds>
There seems to be a "blackdetect" filter which seems relevant.
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
<meklu>
I'd imagine that to be a little easier to do with ImageMagick or the like
<BillTorvalds>
meklu: Well, if you have that installed and set up...
<meklu>
*shrug*
<BillTorvalds>
meklu: It just seems like ffmpeg has all kinds of tools to do this for images, moving or not.
<BillTorvalds>
I could load in the image in PHP's GD thing and loop over every pixel and keep track of how many pixels are black and count the percentage, but it seems like a lot of work and many issues on the way for something which is more than likely possible with ffmpeg.
<meklu>
It does seem likely. I'm just some random casual user idling on IRC.
<meklu>
It would then again be really easy to just downscale an image to 1x1 with whatever blend mode seems reasonable and then read that singular pixel and see whether it's close enough to #000 to matter.
<meklu>
Although it would admittedly seem a little wasteful.
vtorri has quit [Ping timeout: 268 seconds]
<BillTorvalds>
What if there is a black border around actual video and that 1x1 downscale picks black instead of whatever is in the middle?
<meklu>
Sounds like a data problem to me xD
vtorri has joined #ffmpeg
<LimeOn>
Hello, do you know how can a remove 'side data' from a video stream?
<JEEB>
the example patches at the top (end) implement CLL and MDCV writing in x264, x265 and SVT-AV1. those two are what are generally called "HDR10 metadata"
<JEEB>
but since this is the thankless plumbing stuff, it is definitely not limited to that
<LimeOn>
oh, thats a fresh WIP thing
<LimeOn>
its the first time i see the 'side-data' thing, there seems to not be much info in the web about that either
lusciouslover has joined #ffmpeg
<JEEB>
metadata was structureless. you just have a key and a value, both text
<JEEB>
side data is structured
<JEEB>
that's the main difference on API level
<LimeOn>
oh, thats true, metadata will 'answer' when you use the metadata tag and the 'attribute'
<LimeOn>
this seems to be 'called' in a different way
<JEEB>
side data has specific structures such as f.ex. AVContentLightMetadata or AVMasteringDisplayMetadata
<JEEB>
those actually have proper numbers and bytes etc
<JEEB>
also that is why there is no API yet to add side data other than that one display rotation one I made for ffmpeg :D
<JEEB>
well, I made not API but ffmpeg option
<LimeOn>
oh, i just realized that the side-data is removed xD
<LimeOn>
it confused me, because the 'Output' part mentioned it
<LimeOn>
but when i do 'ffmpeg -i FILE' it is not there ^^
<JEEB>
if the output cannot write it out, then it does nada
<JEEB>
it might be passed through in the tool or framework
<JEEB>
at least with codec copy
<JEEB>
but if the output module does not habla espanol, it will of course do nothing with that side data
<LimeOn>
genial ^^
<LimeOn>
i did not codec copy, so it is not there i guess
<JEEB>
it might be in the format still, not sure. but the encoder at least does not get it
<JEEB>
since that is what my patch set does
<JEEB>
it takes the side data from the first decoded+filtered AVFrame, and adds it to the encoder
<JEEB>
(since runtime changed information is then later received through those AVFrames)
navi has quit [Ping timeout: 268 seconds]
<JEEB>
but yea, at some point there will have to be an API to go from text (such as command line options) to side data
<JEEB>
since that is something that's lacking right now in a generic manner
<LimeOn>
it was 'cpb' which i do not know either what means
<JEEB>
coded picture buffer or so I think? basically has max|min|average bit rate and buffer size as info
<JEEB>
(which ones are filled depends on the source at hand)
<JEEB>
that will get overwritten by the encoder if it sets that info, which then the output container can write out
<LimeOn>
yes, it got written to 000/000/000 xD
<LimeOn>
then dissapeared, since its not shown anymore
<JEEB>
I recently added it to the SVT-AV1 encoder wrapper
<LimeOn>
but 'cpb' was an ambiguous term for the search engine and it did not show proper results haha
<JEEB>
in this case I check if any of the values are nonzero
<JEEB>
then if they are, I create a CPB side data entry
<JEEB>
since if it's all zeroes then there's no use :P
<LimeOn>
haha
<LimeOn>
those are 'guidances' for programs or for humans?
<LimeOn>
i mean, knowing the rate variation is useful in what case?
<JEEB>
the use case for me has mostly been about informing a live media origin that my media will have a certain maximum bit rate
<JEEB>
(or at least, my encoder is configured to such)
<JEEB>
uhh, maybe not maximum bit rate since the encoder can peak. just that it's the maximum average over the buffer size
waeking9 has joined #ffmpeg
<JEEB>
for example blu-ray is 40mbps over a buffer size of 40 megabits
<JEEB>
(which one can think of more or less as a single second worth of buffer)
waeking has quit [Ping timeout: 246 seconds]
waeking9 is now known as waeking
<LimeOn>
those seem to be far complex things to me, im just used to the basic options haha
<JEEB>
some formats like MPEG-2 Video, AVC or HEVC/VVC can also signal the parameters in the bit stream, which is why when probing some broadcast streams you can get that stuff
<JEEB>
get it on the input side, I mean
<LimeOn>
i usually look at resolution and sometimes bitrate
<LimeOn>
which is some kind of resumé of the file
<LimeOn>
summary*
<LimeOn>
but now i get its far complex than that
function1 has joined #ffmpeg
kurosu has joined #ffmpeg
navi has joined #ffmpeg
vtorri has joined #ffmpeg
Blacker47 has quit [Quit: Life is short. Get a V.90 modem fast!]
vtorri has quit [Ping timeout: 255 seconds]
jagannatharjun has quit [Quit: Connection closed for inactivity]
vtorri has joined #ffmpeg
ivanich has quit [Ping timeout: 264 seconds]
ZedHedTed has joined #ffmpeg
BillTorvalds has quit [Quit: Leaving]
vtorri has quit [Ping timeout: 268 seconds]
MrZeus_ has quit [Read error: Connection reset by peer]
YuGiOhJCJ has joined #ffmpeg
vlm has joined #ffmpeg
MrZeus has joined #ffmpeg
MrZeus has quit [Ping timeout: 264 seconds]
vtorri has joined #ffmpeg
wyatt8750 has quit [Remote host closed the connection]
wyatt8740 has joined #ffmpeg
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
rv1sr has quit []
qaph has joined #ffmpeg
kron has quit [Ping timeout: 256 seconds]
qaph is now known as kron
Estrella__ has quit [Ping timeout: 256 seconds]
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
Estrella has joined #ffmpeg
lavaball has quit [Remote host closed the connection]
vtorri has quit [Ping timeout: 240 seconds]
vtorri has joined #ffmpeg
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
<jkhsjdhjs>
hey, I have a question regarding the framesync filter options (eof_action, shortest). if eof_action is set to "endall", the documentation states that it ends both streams if EOF is encountered on the secondary stream. shouldn't this terminate the output? or what exactly does it mean to end both input streams? just asking because the behavior is different from shortest=1, and it explicitely states
<jkhsjdhjs>
that it terminates the output when the shortest input terminates
<jkhsjdhjs>
i.e. if I use shortest=1 with the overlay filter, it stops muxing once the shortest stream goes EOF (which is also the secondary stream). it still reads the whole input, but stops writing the ouput at this point.
<jkhsjdhjs>
on the other hand with eof_action=endall, it seems to ignore the EOF and never stops muxing, but transcodes the entire input
alexherbo2 has quit [Remote host closed the connection]
ivanich has joined #ffmpeg
vtorri has quit [Remote host closed the connection]
vtorri has joined #ffmpeg
wsc3 has joined #ffmpeg
wsc3 is now known as gchound
<furq>
it should terminate the output and it does for me