Hangi FFmpeg dosyasının kullanıldığını nasıl belirleyebilirim


1

MJPEG kod çözücünün kodunu incelemek istiyorum. Kod çözücünün çalıştırma komutlarını kullanarak ve ardından hangi dosyanın kod çözme görevini gerçekleştirdiğini belirlemeye çalışıyorum.

Aşağıdaki komutu çalıştırdım:

ffmpeg -r 10 -i heli.mjpg -vcodec copy newheli.avi

Aşağıdaki çıktıyı üretti:

[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 372, current: 149; changing to 373. This may result in incorrect timestamps in the output file.
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 373, current: 150; changing to 374. This may result in incorrect timestamps in the output file.
....
....
....
....
....
....

[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 536, current: 215; changing to 537. This may result in incorrect timestamps in the output file.
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 537, current: 215; changing to 538. This may result in incorrect timestamps in the output file.
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 538, current: 216; changing to 539. This may result in incorrect timestamps in the output file.
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 539, current: 216; changing to 540. This may result in incorrect timestamps in the output file.
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 540, current: 216; changing to 541. This may result in incorrect timestamps in the output file.
frame=  542 fps=0.0 q=-1.0 Lsize=    2720kB time=00:00:54.20 bitrate= 411.1kbits/s    
video:2701kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.686601%

Çıktının başlangıç ​​kısmı görünmez. Hangi .c dosyasının MJPEG kod çözme işlemi yaptığını nasıl bulabilirim? Onu nasıl izole edebilirim, .c üzerinde değişiklikler yapabilir ve sonra çalıştırabilirim?

DÜZENLE:

İdeal olarak, MJPEG Kod Çözücüsünün kodunu Qt gibi bir IDE'ye aktarmak ve buradaki kodu analiz etmek istiyorum. MJPEG kod çözücüyü orada nasıl çalıştırabileceğimi anlamak için mücadele ediyorum.


en doğrudan rota, onu bir hata ayıklayıcısında (örn. gdb) çalıştırmaktır. çalıştırılabilir bir hata ayıklama uygulamasına ihtiyacınız olacak; bir -dbgpaketin kurulmasını veya ffmpegyerel olarak derlenmeyi içerebilecek platforma bağlı olarak.
quixotic

@quixotic Cevap için teşekkür ederiz. Yerel olarak derleyerekffmpeg ne demek istiyorsunuz ? Koşabiliyorum ffmpegve bu zaten derlediğim için. Buna pek aşina değilim, bu yüzden sorumun çok basit olması durumunda lütfen afedersiniz.
a_sid

Yazılım önceden oluşturulmuş ikili dosyalardan yüklendiğinde, paketleyici hata ayıklama sembollerini çalıştırılabilir dosyadan çıkardı. Bu, yerden tasarruf sağlar ancak hata ayıklayıcıları daha az netleştirir. ffmpegonları almak için yeniden derlemeniz gerekebilir ; komut dosyasını --disable-strippingyeniden çalıştırdığınızda bayrağı kullanın configure.
quixotic

@quixotic Yardımlarınız için teşekkürler. Ben komutu çalıştırdım. Bunu, MJPEG kod çözücünün kodunu Qt'ye aktarmak ve ardından mjpeg dosyalarının kodunu çözmek için nasıl kullanabilirim?
a_sid
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.