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
relue has joined #ffmpeg
squingly has quit [Quit: Leaving]
noobaroo has joined #ffmpeg
e^pi-1 has joined #ffmpeg
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Dagger has quit [Quit: Quit]
Dagger has joined #ffmpeg
lexano has quit [Ping timeout: 268 seconds]
Dotz0cat has quit [Ping timeout: 255 seconds]
Dotz0cat_ has joined #ffmpeg
Dotz0cat_ is now known as Dotz0cat
Dagger has quit [Ping timeout: 272 seconds]
five61848033 has quit [Remote host closed the connection]
five61848033 has joined #ffmpeg
waleee has quit [Ping timeout: 260 seconds]
Dagger has joined #ffmpeg
SystemError has quit [Remote host closed the connection]
e^pi-1 has quit [Quit: WeeChat 4.2.2]
SystemError has joined #ffmpeg
jtgd has quit [Quit: WeeChat 4.2.2]
markizano has quit [Remote host closed the connection]
markizano has joined #ffmpeg
jtgd has joined #ffmpeg
e^pi-1 has joined #ffmpeg
e^pi-1 has quit [Client Quit]
e^pi-1 has joined #ffmpeg
five61848033 has quit [Remote host closed the connection]
<MisterMinister>
Greeting and Salutations! Please advice on FFmpeg 7 static build with OpenCV4. Seem to encounter a number of issues there with OpenCV: https://pastebin.com/dG7tU9qX
AbleBacon has quit [Ping timeout: 264 seconds]
Wenbin_Chen_ has joined #ffmpeg
YuGiOhJCJ has joined #ffmpeg
Wenbin_Chen__ has quit [Read error: Connection reset by peer]
AbleBacon_ has quit [Read error: Connection reset by peer]
JavaBean has quit [Remote host closed the connection]
NaviTheFairy has quit [Quit: Oh no. A thing broke.]
NaviTheFairy has joined #ffmpeg
JavaBean has joined #ffmpeg
Wenbin_Chen__ has joined #ffmpeg
Wenbin_Chen_ has quit [Read error: Connection reset by peer]
Tinos has quit [Remote host closed the connection]
down200 has joined #ffmpeg
iliv has joined #ffmpeg
Wenbin_Chen_ has joined #ffmpeg
Wenbin_Chen__ has quit [Read error: Connection reset by peer]
chainik1 has quit [Quit: (╯°□°)╯︵ ┻━┻]
chainik1 has joined #ffmpeg
stolen has quit [Quit: Connection closed for inactivity]
Muimi has joined #ffmpeg
xx has joined #ffmpeg
Wenbin_Chen__ has joined #ffmpeg
Wenbin_Chen_ has quit [Remote host closed the connection]
Wenbin_Chen__ has quit [Read error: Connection reset by peer]
Wenbin_Chen__ has joined #ffmpeg
lavaball has joined #ffmpeg
Wenbin_Chen_ has joined #ffmpeg
Wenbin_Chen__ has quit [Ping timeout: 268 seconds]
Ox7C5 has quit [Ping timeout: 246 seconds]
luc4 has joined #ffmpeg
yssh has joined #ffmpeg
nillyhan has quit [Quit: Ping timeout (120 seconds)]
nillyhan has joined #ffmpeg
zsoltiv_ has quit [Quit: Left]
drew has quit [Quit: Quit]
zsoltiv_ has joined #ffmpeg
Starz0r has quit [Quit: No Ping reply in 180 seconds.]
drew has joined #ffmpeg
Starz0r has joined #ffmpeg
RetroPunk has quit [Quit: cya]
gordonfish has quit [Ping timeout: 256 seconds]
Wenbin_Chen__ has joined #ffmpeg
carpenter has quit [Quit: .]
Wenbin_Chen_ has quit [Ping timeout: 256 seconds]
gordonfish has joined #ffmpeg
five618480337 has joined #ffmpeg
yssh is now known as in_yssh
five61848033 has quit [Ping timeout: 256 seconds]
five618480337 is now known as five61848033
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
RetroPunk has joined #ffmpeg
Raz- has joined #ffmpeg
in_yssh has quit [Quit: Client closed]
e^pi-1 has quit [Quit: WeeChat 4.2.2]
e^pi-1 has joined #ffmpeg
thomas_D8 has quit [Ping timeout: 268 seconds]
carpenter has joined #ffmpeg
luc4 has quit [Ping timeout: 268 seconds]
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
lavaball has quit [Remote host closed the connection]
bitoff has joined #ffmpeg
deetwelve has quit [Quit: null]
thomas_D8 has joined #ffmpeg
bitoff_ has joined #ffmpeg
deetwelve has joined #ffmpeg
bitoff has quit [Ping timeout: 260 seconds]
bitoff has joined #ffmpeg
bitoff has quit [Max SendQ exceeded]
bitoff has joined #ffmpeg
bitoff_ has quit [Ping timeout: 252 seconds]
lavaball has joined #ffmpeg
bitoff has quit [Ping timeout: 264 seconds]
hightower3 has quit [Ping timeout: 246 seconds]
Blacker47 has joined #ffmpeg
lusciouslover has quit [Read error: Connection reset by peer]
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Kruppt has joined #ffmpeg
iconoclast_hero has joined #ffmpeg
<iconoclast_hero>
I'm on a branch of Ubuntu 24.04 and I did a rather large system upgrade a couple days ago....the self-compiled version of ffmpeg stopped working with the error,
<iconoclast_hero>
ffmpeg: error while loading shared libraries: libavdevice.so.61: cannot open shared object file: No such file or directory
<iconoclast_hero>
i've recompiled and it's not fixed it. apt says libavdevice-dev is already the newest version (7:6.1.1-3ubuntu5).
<iconoclast_hero>
the compiled version is the snapshot from today pulled via git. the package version works: ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers
SystemError has quit [Remote host closed the connection]
SystemError has joined #ffmpeg
<JEEB>
iconoclast_hero: always when building the actual shared libraries (since those are that the distro itself is utilizing), keep them away from wherever the distro installs things
<JEEB>
if you just need the ffmpeg cli, do not build shared but static, and just put the ffmpeg cli binary in either ~/ownapps/ffmpeg/bin or /usr/local/bin or so.
<JEEB>
because now it means that the shared libs that the ffmpeg cli is trying to load are not there :P
<iconoclast_hero>
ok, i think this is where the issue is: "do not build shared but static"
<iconoclast_hero>
because it was in /usr/local/bin
<iconoclast_hero>
they* were in...
<iconoclast_hero>
so the do static vs. shared is a ./configure option?
<furq>
yes
<iconoclast_hero>
--pkg-config-flags="--static" \
<JEEB>
that's just for pkg-config usage for dependencies
<JEEB>
so as long as you don't have enable-shared there, you should be OK
<furq>
well a static ffmpeg shouldn't be trying to open libavdevice.so
<iconoclast_hero>
well, that *IS* the penultimate ./configure option
<MetaNova>
honestly everything should be static built these days
<JEEB>
furq: indeed, so then he was not running the ffmpeg binary he was thinking he was running :P
<furq>
that's always an option
<JEEB>
so clearly he was executing a shared build :P
<iconoclast_hero>
which is clearly why it was overriding the default if enable-statis is default
<JEEB>
yes, enable-static is the default, so if you don't have enable-shared you are making a static build of FFmpeg's components (libav* and such)
<JEEB>
this does not mean that the dependencies are static but that FFmpeg's own code is
yssh has quit [Quit: Client closed]
<furq>
and --extra-ldflags=-static will prefer to link with static libs for the dependencies
<furq>
but only prefer, i don't think there's a way to force it
<furq>
at least not one i'd like seeing on my console every time i run ffmpeg
<iconoclast_hero>
ok, i don't understand what happened but now ./configure is saying that pkg-config can't find gnutils which is odd since i did this twice already today
<iconoclast_hero>
so this will take a while to test out, bbl
abhay has quit [Quit: Leaving]
<furq>
check the actual error in ffbuild/config.log
<iconoclast_hero>
does that get overwritten? i took out the ldflag option from above and ./configure completed.
<iconoclast_hero>
test/tmp/ffconf.hYwTrtQA/test.o -lgnutls -lgmp -lunistring -latomic -lnettle -lhogweed -lgmp -lnettle-ltasn1 -lidn2 -lunistring -lp11-kit -lpthread -lm /usr/bin/ld: cannot find -lp11-kit: No such file or directory collect2: error: ld returned 1 exit status ERROR: gnutls not found using pkg-config
<iconoclast_hero>
i commented this out: `# --extra-ldflags="-static"` \
<iconoclast_hero>
and it seems to work... I deleted /cache/ffmpeg_sources/ffmpeg/ffbuild prior to running ./configure
coldfeet has quit [Remote host closed the connection]
Dotz0cat has joined #ffmpeg
beaver has joined #ffmpeg
dreamon has quit [Ping timeout: 256 seconds]
rsx has quit [Quit: rsx]
mccobsta has joined #ffmpeg
beaver has quit [Remote host closed the connection]
beaver has joined #ffmpeg
Traneptora has quit [Quit: Quit]
Traneptora has joined #ffmpeg
dreamon has joined #ffmpeg
vulpine has quit [Quit: Connection reset by purr]
vulpine has joined #ffmpeg
mccobsta has quit [Ping timeout: 260 seconds]
gchound has joined #ffmpeg
Loborges has joined #ffmpeg
minimal has joined #ffmpeg
<Loborges>
i'm messing around with ffmpeg on android through termux , about avoptions is mediacodec currently not using them or something? typing ffmpeg -h encoder=h264_mediacodec prints out some options but none of them work
gchound has quit [Ping timeout: 268 seconds]
<Loborges>
i was trying to set something like a -crf option on x264 but the only way i managed to get it to use a higher quality was using -b:v
<another|>
well, what options does it print?
<another|>
and what exactly are you trying to do?
<Loborges>
-bitrate_mode with options to cq vbr cbr and cbr_fd 0-3 and -level (not sure what it does) from 0 to int_max
<Loborges>
both of those just error out and cancel the conversion
<Loborges>
i'm trying to find a similar option to -crf on x264 on the mediacodec encoder
<Loborges>
using ffmpeg -i media.mp4 -c:v h264_mediacodec -bitrate_mode 0 -g output.mp4 just prints out generic_error in an external library
<another|>
that cmdline is invalid
<another|>
`-g` requires an argument
<another|>
-bitrate_mode cq -global_quality xxx
<Loborges>
same error using ffmpeg -i media.mp4 -c:v h264_mediacodec -bitrate_mode cq -global_quality 30 output.mp4
<another|>
what error?
<Loborges>
generic error in external library , managed to make it work earlier using ffmpeg -i media.mp4 -c:v h264_mediacodec -c:a aac -b:v 1M -g 60 test.mp4 but adding any of the avoptions gives out "generic error in an external library"
<another|>
full output
<namazso>
sorry if this question is dumb, but do codecs like x264 and x265 do optimizations across the color panes?
<namazso>
so like, if i wanted to put different data in each of YUV, would it destroy more than if I encoded them separately as grey8s or whatever? (aside from chroma subsampling stuff)
<Loborges>
[h264_mediacodec @ 0xb400007b14e85db0] Use 1 as the default MediaFormat i-frame-interval, please set gop_size properly (>= fps)
<Loborges>
[h264_mediacodec @ 0xb400007b14e85db0] MediaCodec configure failed, Generic error in an external library
<Loborges>
[vost#0:0/h264_mediacodec @ 0xb4000079d4e810f0] Error while opening encoder - maybe incorrect parameters such as bit_rate, rate, width or height.
<Loborges>
Error while filtering: Generic error in an external library
<Loborges>
[out#0/mp4 @ 0xb400007af4e77dd0] Nothing was written into output file, because at least one of its streams received no packets.
<namazso>
i’d assume the very first line is the reason for error?
Livio has joined #ffmpeg
<Loborges>
yeah ,tried again using -g 60 same thing
<another|>
that is not the full output
gchound has joined #ffmpeg
Livio has quit [Ping timeout: 264 seconds]
<Loborges>
can't continue to troubleshoot it now but thanks for the help
stolen has quit [Quit: Connection closed for inactivity]
Loborges has quit [Quit: Leaving]
jemius has joined #ffmpeg
Kruppt has quit [Quit: Leaving]
MisterMinister has quit [Ping timeout: 252 seconds]
MisterMinister has joined #ffmpeg
kasper93 has quit [Ping timeout: 260 seconds]
kasper93 has joined #ffmpeg
microchip_ has quit [Quit: There is no spoon!]
microchip_ has joined #ffmpeg
Wenbin_Chen__ has joined #ffmpeg
Wenbin_Chen_ has quit [Remote host closed the connection]
Hackerpcs has quit [Quit: Hackerpcs]
Hackerpcs has joined #ffmpeg
Hackerpcs has quit [Max SendQ exceeded]
Tinos has quit [Remote host closed the connection]
Tinos has joined #ffmpeg
Livio has joined #ffmpeg
jess has quit []
<noobaroo>
I have some videos that are like 1.5mbps 1080p hevc and the audio is 640kbps so basically the video and the audio are like the same size
<noobaroo>
But if the amount of data per second is basically the same between audio and video, why does video take exponentially longer to encode? 0.2x vs over 1000x?
<noobaroo>
One would expect since its having to process the same amount of data, it would take the same amount of time
<sonicrules1234>
Because depending on the codec, figuring out what data to write for video takes longer than figuring out what data to write for the audio
<another|>
1) 1,5 Mb/s != 640 kb/s
Blacker47 has quit [Quit: Life is short. Get a V.90 modem fast!]
<another|>
2) uncompressed video is a lot bigger than uncompressed audio. figuring out how to make it as small as 1,5 Mb/s is a lot more work than for audio
<BtbN>
1.5mbps for 1080p is incredibly poor quality, even with hevc
lucasta has joined #ffmpeg
<noobaroo>
another| 1.5mbps is total, not just the video alone
<BtbN>
Then the video quality is just even worse than incredibly poor
<BtbN>
and the audio quality incredibly overkill
rv1sr has quit []
jemius has quit [Quit: Leaving]
Raz- has quit [Ping timeout: 255 seconds]
ivanich has quit [Remote host closed the connection]
<DeHackEd>
but it still has to examine around 2 million pixels per frame, multiplied by 30 frames per second (presumably). whereas audio is only about 40,000 to 100,000 samples per second, multiplied by number of channels (6?). I mean just look at the scales involved.
<DeHackEd>
encoders work with uncompressed material
wacko has quit [Ping timeout: 260 seconds]
<noobaroo>
BtbN or another| Is there a way to broadcoast a video OUT from my machine over LAN? SO I can go to local ip address of my machine on another machine and play the video
<noobaroo>
Preferably without transcoding
<BtbN>
If you control the entire LAN and it supports multicast, look into rtp. It's a mess and I have never seen it fully working.
<BtbN>
Other than that, set up an nginx-rtmp or something and stream to it
<noobaroo>
How do I know if my LAN supports multicast?
<noobaroo>
Its a pretty old router, I'm surprised its not 802.11g tbh. But it is 802.11n
<noobaroo>
it is my house though so i do control it
gchound has quit [Quit: Leaving]
bray90820 has joined #ffmpeg
<bray90820>
Is tehre a way to do something like this but frame by frame
HarshK23 has quit [Quit: Connection closed for inactivity]
<another|>
For example
<bray90820>
Thanks
dreamon has quit [Ping timeout: 256 seconds]
hightower2 has joined #ffmpeg
SakuraChan has joined #ffmpeg
Sakura`Kinomoto has quit [Ping timeout: 255 seconds]
bray90820 has quit [Read error: Connection reset by peer]
Livio has quit [Ping timeout: 252 seconds]
beaver has quit [Quit: /channel remove #libera Libera && /save &&]
beaver has joined #ffmpeg
hightower2 has quit [Read error: Connection reset by peer]
lavaball has quit [Remote host closed the connection]
hightower2 has joined #ffmpeg
hightower2 has quit [Client Quit]
beaver has quit [Quit: && /reload]
beaver has joined #ffmpeg
iive has joined #ffmpeg
<noobaroo>
BtbN I got rtmp streaming working but it seems to only support flv container, there has to be something a little more modern than this?
<BtbN>
nothing that's well established
<noobaroo>
Maybe HTML5 video streaming (but idk how)?
<BtbN>
HTML5 has no video streaming support.
<noobaroo>
How do webpages work then?
<BtbN>
With static video files mostly
<BtbN>
Live streaming in browsers is mostly done by playing a lot of very short video files in succession, basically
<BtbN>
since there is no support for actual streaming
<noobaroo>
So there must be a way to accomplish the same thing on a local network?
<BtbN>
Make ffmpeg write an hls playlist somewhere, and host it via your favourite http server
<noobaroo>
With what ffmpeg command to convert mp4 file to hls playlist? And also Im not at all experienced with http servers, which one do you recommend?
<another|>
What do you __actually__ want to achieve?
<noobaroo>
Also... Would you let me know if its just my device doesn't support, or if its a global thing here.. The only container I could get to actually work and receive was flv. The ffmpeg command would not go through at all with mp4. The ffmpeg command went through with "-f hls" and "-f mpegts" but would not receive on other device
<noobaroo>
another| Playing a video on other devices through LAN
<BtbN>
rtmp and flv are virtually the same thing, you can't get one without the other
SystemError has quit [Remote host closed the connection]
<another|>
do the devices have direct file access? are there any codec requirements/constraints?
SystemError has joined #ffmpeg
<noobaroo>
no USB ports if thats what you mean? trying to do this all wirelessly here
xx has quit [Ping timeout: 260 seconds]
<another|>
if all you want to do is play a file on a different computer, then something like smb, nfs or sshfs might suffice
<noobaroo>
as for codec requirements, unbeknownst to me, so far I have been limited to the codecs that flv container supports (h264 and aac 44.1) flv doesnt support eac3 or 48khz so I had to convert those
<noobaroo>
I havent been able to explore the true limitations of codecs yet
<BtbN>
you can ignore the 44.1kHz limit
<noobaroo>
I don't think my TV supports smb (samba right?) I doubt it supports sshfs and im not sure what nfs is
<noobaroo>
It, however, has a web browser and VLC media player
<another|>
Ah, so you want to stream to a TV?
<noobaroo>
Yeah, an amazon fire TV stick to be precise
<noobaroo>
But id really like to just get a working html5 video, that should be supported basically universally
Wenbin_Chen_ has joined #ffmpeg
<another|>
the easiest would be to just server them as static files from a webserver then
<noobaroo>
How?
<another|>
if you want something more like a netflix, look into jellyfin or plex
<noobaroo>
I think those are a little overkill
<noobaroo>
I feel like this is a really simple task here, i shouldnt need to install such heavyweight software?
Wenbin_Chen__ has quit [Ping timeout: 264 seconds]
<BtbN>
Just put mp4 files on a webserver really
<BtbN>
No point to mess with any live streaming stuff unless it actually is live
<noobaroo>
How?
<BtbN>
What do you mean, how?
<another|>
Install a webserver, point the to the files. Done.
<noobaroo>
Which webserver do you recommend?
<BtbN>
Whatever you are most comfortable with configuring really
<BtbN>
For serving some boring static files absolutely anything works
<noobaroo>
Well I already have nginx installed from this rtmp stuff
<noobaroo>
Thanks for that recommendation btw
<noobaroo>
can you list some other options?
<BtbN>
Yeah, nginx will do that very easily
<BtbN>
I don't know what webservers are common nowadays
<BtbN>
Apache and nginx are the big ones
<noobaroo>
Okay, is it too much to ask for a link to a guide ?
<BtbN>
But there's dozens and dozens of tzhem
beaver has quit [Remote host closed the connection]
<BtbN>
I'd have to google for a guide, so you might as well do that yourself.
<noobaroo>
okay, ill brb, gonna restart pc
<BtbN>
And most guides suck and/or are a decade out of date anyway
noobaroo has quit [Quit: Konversation terminated!]
beaver has joined #ffmpeg
Wenbin_Chen__ has joined #ffmpeg
Wenbin_Chen_ has quit [Ping timeout: 260 seconds]
down200 has quit [Ping timeout: 272 seconds]
down200 has joined #ffmpeg
iive has quit [Ping timeout: 256 seconds]
down200 has quit [Ping timeout: 252 seconds]
SuicideShow has quit [Ping timeout: 272 seconds]
down200 has joined #ffmpeg
SuicideShow has joined #ffmpeg
Livio has joined #ffmpeg
iive has joined #ffmpeg
noobaroo has joined #ffmpeg
noobaroo has quit [Client Quit]
beaver has quit [Remote host closed the connection]
beaver has joined #ffmpeg
bray90820 has joined #ffmpeg
<bray90820>
How can I do something ike this but cut the end of the video instead of the beninning ffmpeg -ss 82 -i in.mp4' -c:v copy out.mp4
<iive>
if you put -ss -t etc. options before -i they related to the input. put them before the out.mp4
<iive>
have in mind -t is duration
<iive>
aka, how long you want the output to be.
<another|>
oh, wait. yeah, you can actually use -t as an input option
<bray90820>
So like thus?So was I correct with ffmpeg -t 82 -i in.mp4' -c:v copy out.mp4?
<bray90820>
Sorry let me say that again
<bray90820>
So was I correct with ffmpeg -t 82 -i in.mp4' -c:v copy out.mp4?
<another|>
you might want to also copy audio
<bray90820>
I would like the audio to remain untouched
<bray90820>
Oh wait
<bray90820>
If I don't copy he audio will it be out of sync?
<bray90820>
Or wiull it just not be transcoded?
<another|>
neither
<DeHackEd>
you didn't specify, so I think you get the mp4 default audio codec transcoded
<another|>
it will be encoded to whatever is the default on your system
<another|>
-c copy
SystemError has quit [Remote host closed the connection]
<bray90820>
Would I get the same audio as I get with ffmpeg -i "input.mkv" -c:a copy "output.mp4"
SystemError has joined #ffmpeg
<bray90820>
If I don't spesify anyhing
<another|>
no
<bray90820>
So like this? ffmpeg -t 82 -i in.mp4' -c:a copy out.mp4?
<bray90820>
another|:
<another|>
-c copy
noobaroo has quit [Quit: Konversation terminated!]
<bray90820>
What would -c:a copy do?
<bray90820>
I want to passthrough the audio and not transcode it
<iive>
-c:v is like -codec:video and -c:a is like -codec:audio, if you don't specify :v or :a it would copy everything, including subtitles and meta data.
<another|>
meta data is not a stream and copied by default