this post was submitted on 27 Feb 2024
11 points (82.4% liked)
Linux Questions
1070 readers
1 users here now
Linux questions Rules (in addition of the Lemmy.zip rules)
- stay on topic
- be nice (no name calling)
- do not post long blocks of text such as logs
- do not delete your posts
- only post questions (no information posts)
Tips for giving and receiving help
- be as clear and specific
- say thank you if a solution works
- verify your solutions before posting them as facts.
Any rule violations will result in disciplinary actions
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Does top/htop/whatever show a large difference between encoding with and without audio? Do e.g. the pulse processes hog resources for some reason?
Do you get smooth recording if you reduce the screen resolution and do something that uses minimal resources (e.g., play Tetris at 640x480)?
Depending exclusively on the codecs I use, htop shows a CPU usage of 90-100% or 10-20%. So, I use those that don't require a huge CPU usage. Memory and Swap are not affected, as far as I know. But despite those circumstances, the outcome is the same. Recording with no sound = smoothness, 60 fps, recording with sound = choppiness, 10 fp5s.
Something I also noticed is that it also happens before I open Doom 2, so it doesn't matter whether I'm playing or not. Even with just the terminal and the file manager open.
Crazy idea, but what happens if you record audio and video with different ffmpeg processes? Just for debugging this might be useful to try. Perhaps there's something funny about the timestamps you're receiving from Pulse that causes weird behavior (or something along those lines).
Also, you mentioned this works better with other software
any idea if those settings are drastically different than your ffmpeg settings?
I have no idea what I'm talking about though, just throwing out ideas :)
I also tried that with the
-map
parameter, if that's what you mean. Same outcome.SimpleScreenRecorder is very basic, but it works well, except for some random dropped frames here and there. No big deal, but sometimes it's noticeable enough for me to feel uneasy. 1920x1080, 60 fps, PulseAudio, H.264 video codec, ultrafast preset (skipping frames) and vorbis audio codec at 128 kbps. Just that.
No, what I meant was to try recording video with ffmpeg, then open another terminal and record audio with ffmpeg. Does the video look ok when recorded like this?
Also, you said you tried various codecs, what happens if you dump the raw audio (PCM?) stream without reencoding at all?
Well, surprisingly, it works. Video runs smoothly, and I can merge the separate audio file to it witk Kdenlive. So, I guess the problem is solved. But I don't understand why it works this way and not with a single command in one terminal.
Weird! Yeah I don't understand either, but this info may help in further debugging.
Have you tried playing with the container format? I know .mkv is generally preferred but maybe try .mp4 or something else. My thinking here is that both audio and video work, but somehow muxing them is failing. Using a different container could maybe help since the muxing is different (???).
Other thing to try is of course making sure ffmpeg is up to date but it sounds like you're on top of that.
Good luck!