BtbN changed the topic of #ffmpeg to: Welcome to the FFmpeg USER support channel | Development channel: #ffmpeg-devel | Bug reports: https://ffmpeg.org/bugreports.html | Wiki: https://trac.ffmpeg.org/ | This channel is publically logged | FFmpeg 7.0 is released
SystemError has quit [Remote host closed the connection]
SystemError has joined #ffmpeg
fling has quit [Remote host closed the connection]
fling has joined #ffmpeg
iive has quit [Quit: They came for me...]
namazso has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ffmpeg
finsternis has joined #ffmpeg
namazso has joined #ffmpeg
fling has quit [Ping timeout: 260 seconds]
fling has joined #ffmpeg
<znf>
I'm confused, does -fps_mode even do anything if you're just -c copy ?
fling has quit [Ping timeout: 260 seconds]
fling has joined #ffmpeg
wyatt8750 has quit [Remote host closed the connection]
AbleBacon has quit [Read error: Connection reset by peer]
five61848033 has quit [Remote host closed the connection]
five61848033 has joined #ffmpeg
SystemError has quit [Remote host closed the connection]
SystemError has joined #ffmpeg
foul_owl has quit [Ping timeout: 268 seconds]
foul_owl has joined #ffmpeg
Suchiman has quit [Quit: Connection closed for inactivity]
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg
e^pi-1 has quit [Quit: WeeChat 4.2.2]
e^pi-1 has joined #ffmpeg
MisterMinister has joined #ffmpeg
<MisterMinister>
Greetings! Any advice on nvenc usage in docker (WSL2 Win11 host). Docker sees Nvidia and has a driver, but encoder won't run,.. https://pastebin.com/xDkxjBPZ
Tinos has joined #ffmpeg
acovrig60 has joined #ffmpeg
squeaktoy has quit [Read error: Connection reset by peer]
anticw has quit [Remote host closed the connection]
squeaktoy has joined #ffmpeg
anticw has joined #ffmpeg
anticw has quit [Remote host closed the connection]
Xaldafax has quit [Quit: Bye...]
jagannatharjun has joined #ffmpeg
vlm has joined #ffmpeg
TheSashmo has quit [Read error: Connection reset by peer]
mrelcee has quit [Ping timeout: 272 seconds]
e^pi-1 has quit [Ping timeout: 268 seconds]
e^pi-1 has joined #ffmpeg
scat117 has quit [Remote host closed the connection]
scat117 has joined #ffmpeg
rv1sr has joined #ffmpeg
vincejv has quit [Ping timeout: 256 seconds]
Livio has joined #ffmpeg
e^pi-1 has quit [Ping timeout: 256 seconds]
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
e^pi-1 has joined #ffmpeg
Livio has quit [Ping timeout: 240 seconds]
troyt has quit [Ping timeout: 272 seconds]
vincejv has joined #ffmpeg
mrelcee has joined #ffmpeg
SystemError has quit [Ping timeout: 260 seconds]
SystemError has joined #ffmpeg
Kei_N has joined #ffmpeg
Suchiman has joined #ffmpeg
lavaball has joined #ffmpeg
anticw has joined #ffmpeg
Tinos has quit [Remote host closed the connection]
fling_ has joined #ffmpeg
fling has quit [Ping timeout: 260 seconds]
xx has joined #ffmpeg
fling_ is now known as fling
Nact has quit [Ping timeout: 264 seconds]
YuGiOhJCJ has joined #ffmpeg
Nact has joined #ffmpeg
iliv has quit [Ping timeout: 264 seconds]
vampirefrog has quit [Ping timeout: 255 seconds]
zmt00 has joined #ffmpeg
swamp_ has joined #ffmpeg
zmt01 has quit [Ping timeout: 272 seconds]
lavaball has quit [Remote host closed the connection]
zmt00 has quit [Ping timeout: 256 seconds]
ivanich has joined #ffmpeg
squeaktoy has quit [Ping timeout: 268 seconds]
a0z has joined #ffmpeg
squeaktoy has joined #ffmpeg
Tinos has joined #ffmpeg
Blacker47 has joined #ffmpeg
kus has joined #ffmpeg
Livio has joined #ffmpeg
relue_ has quit [Ping timeout: 252 seconds]
squeaktoy has quit [Ping timeout: 240 seconds]
Livio has quit [Ping timeout: 245 seconds]
lavaball has joined #ffmpeg
Pixi` has joined #ffmpeg
Pixi has quit [Ping timeout: 252 seconds]
Tinos has quit [Remote host closed the connection]
Tinos has joined #ffmpeg
YuGiOhJCJ has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ffmpeg
Ox7C5__ has joined #ffmpeg
bertieb has joined #ffmpeg
e^pi-1 has quit [Quit: WeeChat 4.2.2]
<MisterMinister>
Greeting and Salutations :) What would the fastest path please, (maybe using CUDA) to go from "Video: prores (HQ), yuv422p10le(progressive)" to "Video: hevc (Main), yuv420p(tv, bt709/bt709/bt2020-10)"?
kasper93 has quit [Ping timeout: 256 seconds]
psykose has quit [Remote host closed the connection]
psykose has joined #ffmpeg
Kei_N has quit [Read error: Connection reset by peer]
Kei_N has joined #ffmpeg
squeaktoy has joined #ffmpeg
kaevum_07 has joined #ffmpeg
kaevum_07 has left #ffmpeg [#ffmpeg]
<MisterMinister>
This one seemed to work `ffmpeg -y -i '.\prores_03.mov' -c:v hevc_nvenc -b:v 35M -maxrate 35M -bufsize 40M -profile:v main -no-scenecut 1 -g 50 -tier high -preset:v slow -rc-lookahead 32 -t 5 -colorspace "bt709" -color_primaries "bt709" -color_trc "bt2020-10" -color_range "tv" -pix_fmt yuv420p 1.ts`
noobaroo has quit [Remote host closed the connection]
noobaroo has joined #ffmpeg
noobaroo has quit [Quit: Konversation terminated!]
noobaroo has joined #ffmpeg
bencoh has quit [Quit: leaving]
olafkewl has joined #ffmpeg
xx has quit [Remote host closed the connection]
bencoh_ has joined #ffmpeg
bencoh_ is now known as bencoh
<olafkewl>
Hi all, I have a question I don't find a real precise answer : is FFmpeg able to convert JPG to HEIC with Nvidia acceleration ?
<JEEB>
MisterMinister: you should not need to flag the color information with any recent enough FFmpeg (4.4+), unless your input explicitly has no color information there for whatever reason (and in that case it might make more sense to add those values for the input or in a filter with `-vf setparams` (see `ffmpeg -h filter=setparams` for options listing)
<JEEB>
olafkewl: given that HEVC is just HEVC, that part should be possible. JPEG hardware decoding is such a mess that you don't want to go there (not to mention that JPEG decoding is hilariously fast), so the last bit is just the HEIF writing which I'm not sure if it's implemented in the writer for mp4-likes
kasper93 has joined #ffmpeg
<olafkewl>
JEEB: thanks for your answers, test I've done with latest nvidia taggued image fails with this message "Requested output format 'heif' is not known" same whether if I try with "-f heic" or "-f heif"
<JEEB>
yes, I only see AVIF related code on the writer side. which is also a HEIF-based format
<olafkewl>
software encoding with libheif is so slow...
<olafkewl>
and it's frutrating to fight against MacOS that does it so fast with hardware capabilities
<JEEB>
nobody stops you from encoding HEVC that's according to HEIF limits and then using something to package it into HEIF container
<JEEB>
also HEVC encoding is not slow so if libheif is slow then someone set rather slow defaults for it for the HEVC encoder :P
Livio has joined #ffmpeg
waleee has joined #ffmpeg
coldfeet has joined #ffmpeg
rsx has joined #ffmpeg
pikapika_lunar is now known as militantorc
noobaroo has quit [Quit: Konversation terminated!]
noobaroo has joined #ffmpeg
ivanich has quit [Ping timeout: 272 seconds]
zmt01 has joined #ffmpeg
GTAXL has quit [Remote host closed the connection]
NotFaely has joined #ffmpeg
Hazza has joined #ffmpeg
Oksana has quit [Ping timeout: 260 seconds]
GTAXL has joined #ffmpeg
swamp_ has quit [Ping timeout: 260 seconds]
Haxxa has quit [Ping timeout: 260 seconds]
Faely has quit [Ping timeout: 260 seconds]
FH_thecat has quit [Quit: Leaving]
coldfeet has quit [Remote host closed the connection]
Oksana has joined #ffmpeg
FH_thecat has joined #ffmpeg
rv1sr has quit []
AbleBacon has joined #ffmpeg
coldfeet has joined #ffmpeg
noobaroo has quit [Quit: Konversation terminated!]
noobaroo has joined #ffmpeg
rsx has quit [Quit: rsx]
troyt has joined #ffmpeg
vampirefrog has joined #ffmpeg
<vincejv>
hello, may i ask how do i fix colors of the pngs generated by this cmd " ffmpeg -y -ss "$time_point" -i "$input_video1" -vframes 1 -pix_fmt rgb24 "$output_frame1" , it's showing different colors across different applications, researched about it, seems like something to do with the color profile in the png file
<vincejv>
diff applications meaning, showing different colors on GIMP and Chrome, and Gwenview
<vincejv>
Gimp is showing it accurately (limited range i guess), while chrome and gwen view is saturated (i guess showing the png file as full range)
Livio has quit [Ping timeout: 245 seconds]
todi has joined #ffmpeg
blueswan has quit [Remote host closed the connection]
iliv has joined #ffmpeg
rv1sr has joined #ffmpeg
rvalue has quit [Read error: Connection reset by peer]
Keshl has joined #ffmpeg
rvalue has joined #ffmpeg
KimK has quit [Quit: Leaving]
noobaroo has quit [Quit: Konversation terminated!]
noobaroo has joined #ffmpeg
a0z has quit [Quit: Leaving]
Tinos has quit [Remote host closed the connection]
Tinos has joined #ffmpeg
microchip_ has quit [Ping timeout: 256 seconds]
microchip__ has joined #ffmpeg
microchip__ is now known as microchip_
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #ffmpeg
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #ffmpeg
luva has quit [Ping timeout: 252 seconds]
rvalue- has joined #ffmpeg
rvalue has quit [Ping timeout: 256 seconds]
Ox7C5__ has quit [Quit: Lost terminal]
rvalue- is now known as rvalue
luva has joined #ffmpeg
intrac has quit [Ping timeout: 268 seconds]
<vincejv>
i fixed the colors by using imagemagick "convert -strip " idk what ffmpeg does why the gamma or color profile is wrong
vlm has quit [Remote host closed the connection]
<vincejv>
doesn't even match the colors when playing the video with mpv
<JEEB>
FFmpeg's scale video filter doesn't still by default set values according to the input color information, and will utilize the BT.601 matrix for the conversion. range will go from limited to full
<JEEB>
since RGB should always be full
<JEEB>
if you want to be in full control of the conversion, you can define it manually. also zscale is another filter that does similar things
<JEEB>
zscale will complain if there is something not well enough defined in the input (or output) definitions, so in that case post the full command and terminal output to a pastebin of your choice, and link here
jemius has joined #ffmpeg
<vincejv>
JEEB: cmd: `ffmpeg -y -ss 00:09:49.828 -v verbose -noauto_conversion_filters -i input.mkv` -vf "zscale,format=pix_fmts=gbrp,scale,format=pix_fmts=rgb24" -frames:v 1 test.png -> https://pastebin.com/SvTpp231 image comparison from ffmpeg, and after running convert -strip (which is the correct color)
<JEEB>
ooff, 4.4.x. my condolences for the 2020 version. so your input is BT.709 and limited range input, which is marked in the video stream's input (tv, bt709, left)
<JEEB>
aand zscale didn't log anything (although I don't recall whether it does not). at least scale filter is now only doing repacking of gbrp to rgb24
<vincejv>
it's the same with ffmpeg 7
<JEEB>
so the YCbCr to RGB conversion should be done by zscale there, which should be handling things correctly
<JEEB>
ahhh
<JEEB>
right, you might want to tell zscale that you actually want sRGB transfer and not bt709 :)
<JEEB>
the output definition in that log is `rgb24(pc, gbr/bt709/bt709, progressive, left)`
<JEEB>
so the gbr means that the matrix got applied and it's now RGB
<JEEB>
then BT.709 primaries is correct for sRGB, but that last one is probably transfer
<JEEB>
which zscale then did not change since it's not required
<JEEB>
replace just `zscale` with `zscale=t=iec61966-2-1` I think
<JEEB>
that is the identifier for sRGB transfer
<JEEB>
(the options for filters can be listed with `ffmpeg -h filter=zscale` for example
<JEEB>
FFmpeg's default scale filter does not affect the transfer, and it utilizes the BT.601 matrix even if your input is flagged as BT.709 like your input is.
intrac has joined #ffmpeg
rv1sr has quit []
<JEEB>
(the "not doing anything for transfer" used to be and kind of still is *really* common in various software, but we should start applying the correct matrix when flagged)
coldfeet has quit [Remote host closed the connection]
kasper93 has quit [Ping timeout: 246 seconds]
yans has quit [Quit: Let us play... Hide and Slay!]
Blacker47 has quit [Quit: Life is short. Get a V.90 modem fast!]
kasper93 has joined #ffmpeg
<vincejv>
thank you for trying to explain, trying to grasp the concept here so i can fix other color issues going forward, still outputs the wrong colors, tho, but darker this time lol... i'll fiddle with the available colors in "ffmpeg -h filter=zscale" thanks a lot
<vincejv>
the things i found online was change from limited to full and vice versa, nvr really did anything
<JEEB>
*extract to a random dir and run with full path
<JEEB>
that should at least have a newer zimg
<JEEB>
also compare with mpv --vo=gpu-next's output
<JEEB>
I think ye olde vo=gpu did not do transfer handling because when it was originally coded people were afraid of "doing it properly" since so much software just didn't adjust transfers for standard SDR content
<JEEB>
while vo=gpu-next does it by default
<JEEB>
basically when interpreting images there's like 3+1 variables (the +1 being range). matrix coefficients, color primaries and transfer.
<JEEB>
they are defined as part of H.273 now since people got tired of duplicating the list in H.264, H.265 and H.266 among other specifications
<JEEB>
so sRGB which PNG should be is: { matrix: identity (shows up as "gbr" in FFmpeg), primaries: bt.709, transfer: IEC 61966-2-1 } in full range
<JEEB>
your input is { matrix: bt.709, primaries: bt.709, transfer: bt.709 } in limited range
<JEEB>
so primaries match since sRGB utilizes BT.709 primaries, but matrix and transfer need to be adjusted, which at least modern zimg is able to do just fine.
<JEEB>
and the default range for RGB output is full
Hazza has quit [Quit: Haxxa flies away.]
Haxxa has joined #ffmpeg
<vincejv>
i used iec61966-2-4 instead of iec61966-2-1 now the colors are matching up, not sure if i have the time to check it out with master tho
<vincejv>
thanks again
<JEEB>
that is weird since you're interpreting BT.709 (I think that's BT.1886 in the background with zimg?), and then you encode it as IEC 61966-2-4
<JEEB>
that would require flagging in the png
<JEEB>
otherwise you're just causing the interpretation to match somehow :P
<JEEB>
since as I said, sRGB by default is those values and PNG default is sRGB
<JEEB>
the current master should be able to write color information (primaries, transfer etc) into PNG
<JEEB>
basically the stuff defined by H.273 (aka CICP) :P
<vincejv>
yeah weird, but it matches with the colors with gimp and imagemagick
Perflosopher has joined #ffmpeg
<JEEB>
and definitely check the current master build as it should bundle a new enough zimg
<JEEB>
compared to that 4.4.x from 2020
<vincejv>
so if i use the master i don't have to specify the colors?
<JEEB>
you will still need to tell zscale (zimg) that you actually want to change the transfer
<JEEB>
since conversion with the same transfer is possible
intrac has quit [Ping timeout: 252 seconds]
<JEEB>
also 2-4 and BT.709 look awfully similar in the math department :P
<JEEB>
so if old zimg is using BT.709 to get from it to linear (nowadays that's defined as BT.1886), and then 2-4 just goes back the same it's basically a no-op :P
gvg__ has joined #ffmpeg
<JEEB>
and then if the thing you're using to view it just assumes that your display is sRGB
<JEEB>
(and the PNG)
<JEEB>
and thus it does no transfer adjustment, and just shows it as-is :P
<JEEB>
in that case that would match the previously common handling where "lalala what transfer I can't hear you lalala" was common
gvg has quit [Ping timeout: 240 seconds]
<JEEB>
and yes, "handling BT.709 as BT.1886 when linearizing it" means that the encode and decode definitions differ :P welcome to CRT legacy of that transfer.
<JEEB>
(This is also why macOS and iOS will show BT.709 transfer flagged content differently, as macOS's handling was made before BT.1886, and iOS follows BT.1886)
ivanich has joined #ffmpeg
lavaball has quit [Quit: lavaball]
anticw has quit [Remote host closed the connection]
intrac has joined #ffmpeg
Tano has quit [Quit: WeeChat 4.2.1]
whatsupdoc has quit [Quit: Connection closed for inactivity]
ivanich has quit [Remote host closed the connection]
intrac has quit [Ping timeout: 256 seconds]
anticw has joined #ffmpeg
anticw has quit [Ping timeout: 264 seconds]
anticw has joined #ffmpeg
Muimi has joined #ffmpeg
jemius has quit [Quit: Leaving]
jagannatharjun has quit [Quit: Connection closed for inactivity]
Tano has joined #ffmpeg
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Tinos has quit [Remote host closed the connection]