Saya menggunakan ffmpeg untuk mengambil umpan mjpeg dari kamera IP dan mengubahnya menjadi serangkaian gambar jpeg yang masih. Inilah perintah yang saya gunakan:
ffmpeg -i http://xxx:[email protected]/vid.mjpg -f image2 -vcodec mjpeg %05d.jpg
Apakah ada yang tahu cara untuk menentukan tingkat kompresi jpg saat menggunakan ffmpeg untuk membuat foto?
-c:v copy -bsf:v mjpeg2jpeg
alih-alih daripadaq:v 1
.q
. Ini dia 24,8 misalnyaframe= 64 fps=5.0 q=24.8 Lsize=N/A time=00:00:16.00 bitrate=N/A dup=10 drop=299 speed=1.25x
$ ffmpeg -r 1/4 -i %03d.jpg -b 5000 -vcodec mjpeg -qscale 1 5000.avi
ATAU
$ ffmpeg -r 1/4 -i %03d.jpg -vcodec copy -qscale 1 copy.avi
Referensi:
sumber
Anda dapat mencoba untuk mengekspor ke PPM dan menggunakan beberapa alat lain untuk mengonversi menjadi JPEG.
Saya melihat ke ffmpeg / libavcodec / mjpeg.c. Saya percaya kualitasnya diatur ke nilai tetap.
Anda juga tampaknya mengkonversi video MJPEG menjadi bingkai foto JPEG. Saya pikir dalam hal ini kode dalam ffmpeg / libavcodec / mjpeg2jpeg_bsf.c berjalan dan data tidak dikodekan ulang. Jadi kualitas gambar tidak akan membaik.
Ini adalah definisi tabel kuantisasi, saya tidak melihat referensi ke * val_? C di mana nilai-nilai diskalakan sebelum digunakan.
sumber
-vcodec ppm
diperlukan untuk mengekspor ppm