I have about 30 minutes worth of video and audio captured 10+ years ago by an older Panasonic web-cam. The two streams are in separate files:
- The
video-MP4V-ES-2
. 640x480.mplayer
says, it is 5 FPS, butmpv
claims 25 FPS. Thefile
-utility says:MPEG sequence, v4, video, simple @ L1
. I suspect, 5FPS is correct... - The
audio-G726-32-1
:adpcm_g726, 8000 Hz, mono, s16, 32 kb/s
. Not sure, if all of these parameters are correctly detected.
I'd like to make the best possible video from it, viewable by all (or most) players. The problems:
- The audio has some pervasive hum -- that was not there at the time of recording.
- What little conversations there are, are in low whisper -- I'd like to have those emphasized.
- The video has
multiple VOL headers
, which ffmpeg reports -- and ignores. - The video is grainy. Worse, what light comes from the window changes because of the moving clouds. And about 5 minutes into it the electric light is turned off -- so whatever video-filtering parameters anyone suggests, might have to be different for different sections.
- According to ffmpeg, there is one "timestamp discontinuity" in the video stream.
So far I tried the following audio-filtering: -af "highpass=f=200, lowpass=f=3000, afftdn=nf=-23"
, which seems to have improved things but only a little: there is still hum. Loud noises (things falling) are loud, which is fine, but the whispering conversations aren't enhanced.
ffmpeg -i video-MP4V-ES-2 -f g726 -i audio-G726-32-1 -af "highpass=f=200, lowpass=f=3000, afftdn=nf=-23" -vf "nlmeans" out.mp4
For video I tried the nlmeans
filter without any arguments. The result is nicer, than the original -- especially in the part, where the electric light is still on. But the darker part is still quite grainy.
The resulting video also plays way too fast -- probably, the artifact of the original being at 5 frames-per-second, which FFMpeg didn't account for? This can be overcome while watching -- with mpv
-- by lowering the speed repeatedly by pressing [
. (Same button is supposed to work with mplayer
, but does not...)
When trying to skip forward during playback (with mpv or mplayer), there are odd effects -- going back, for example, does not return you to the same moment, from where you just went forward -- probably, because of that "discontinuity"?
While playing the resulting file with mplayer, every once in a while it turns off the sound and complains:
Too many video packets in the buffer: (2987 in 33554782 bytes).
Maybe badly- or non-interleaved stream/file or the codec failed?
Fix the file or try the -ni option (can cause high memory usage).
How would I overcome these so that the video presents, what the eye would see and the ear would hear being there at the time, and is normally playable -- without losing any details recorded in the originals?