2015-06-19 18 views
7

Viene visualizzato il seguente registro degli errori H264. Questo registro arriva mentre decodifica un flusso video RTSP con l'aiuto di FFMPEG. L'immagine visualizzata è sfocata dopo 5/6 secondi. L'immagine lo recupererebbe di volta in volta. Tuttavia, rimane sfocato per la maggior parte del tempo.Registro errori di decodifica H.264 dal flusso RTSP

MODIFICA: alcuni forum di discussione FFMPEG suggerivano di aggiornare la versione FFMPEG per evitare questi registri. Ho aggiornato l'ultima build FFMPEG del 19 giugno 2015. Ancora il log rimane lì e l'immagine è ancora sfocata.

MODIFICA 2: Lo stream RTSP proviene da una telecamera GANZ. Questa fotocamera è collegata tramite una connessione LAN.

[h264 @ 0abb2aa0] Cannot use next picture in error concealment 
[h264 @ 0abb2aa0] concealing 1933 DC, 1933 AC, 1933 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 131 packets 
[h264 @ 0abb3300] error while decoding MB 66 25, bytestream (-9) 
[h264 @ 0abb3300] Cannot use next picture in error concealment 
[h264 @ 0abb3300] concealing 1583 DC, 1583 AC, 1583 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 8 packets 
[h264 @ 0b113e40] error while decoding MB 54 30, bytestream (-11) 
[h264 @ 0b113e40] Cannot use next picture in error concealment 
[h264 @ 0b113e40] concealing 1195 DC, 1195 AC, 1195 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 118 packets 
[h264 @ 0ac79960] error while decoding MB 13 20, bytestream (-13) 
[h264 @ 0ac79960] Cannot use next picture in error concealment 
[h264 @ 0ac79960] concealing 2036 DC, 2036 AC, 2036 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 198 packets 
[h264 @ 0ad4f500] error while decoding MB 21 9, bytestream (-5) 
[h264 @ 0ad4f500] Cannot use next picture in error concealment 
[h264 @ 0ad4f500] concealing 2908 DC, 2908 AC, 2908 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 108 packets 
[h264 @ 0abb3300] error while decoding MB 1 14, bytestream (-5) 
[h264 @ 0abb3300] Cannot use next picture in error concealment 
[h264 @ 0abb3300] concealing 2528 DC, 2528 AC, 2528 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 106 packets 
[h264 @ 0b1149c0] error while decoding MB 12 5, bytestream (-7) 
[h264 @ 0b1149c0] Cannot use next picture in error concealment 
[h264 @ 0b1149c0] concealing 3237 DC, 3237 AC, 3237 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed -65402 packets 
[h264 @ 0b1155a0] error while decoding MB 50 38, bytestream (-7) 
[h264 @ 0b1155a0] Cannot use next picture in error concealment 
[h264 @ 0b1155a0] concealing 559 DC, 559 AC, 559 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 150 packets 
[h264 @ 0af65740] error while decoding MB 48 31, bytestream (-15) 
[h264 @ 0af65740] Cannot use next picture in error concealment 
[h264 @ 0af65740] concealing 1121 DC, 1121 AC, 1121 MV errors in P frame 
[h264 @ 098e5c80] RTP: missed 4 packets 
[h264 @ 0ac79960] error while decoding MB 35 38, bytestream (-41) 
[h264 @ 0ac79960] Cannot use next picture in error concealment 
[h264 @ 0ac79960] concealing 574 DC, 574 AC, 574 MV errors in P frame 

Ho scaricato il flusso RTSP in un file avi utilizzando ffmpeg e non ci sono errori. C: \ Users \ Matlab> ffmpeg -i rtsp: //192.168.1.67/gnz_media/main 123.avi

Non ci sono errori di decodifica H.264. Qualcuno può aiutare con gli errori di decodifica di cui sopra utilizzando ffmpeg api.

+1

Si prega di non chiedere alla [stessa domanda] (http://superuser.com/questions/930955/h-264-decoding-error-log-from-rtsp-stream) su più siti Stack Exchange. – LordNeckbeard

+0

@tariq: puoi fare quanto segue: 'ffplay << RTSP STREAM >>' e postare l'output qui? 'ffplay' fa parte del toolkit ffmpeg, non è sicuro come funziona su Windows però ... – EladG

+0

Stai solo decodificando o ricodificando il flusso? Sembra solo una codifica ffmpeg troppo occupata, quindi salta semplicemente i pacchetti in arrivo, causando errori. Prova a usare una risoluzione più piccola. –

risposta

-2

Questo problema viene generato dalla fotocamera, quindi aggiornare l'ultimo firmware della fotocamera tramite il supporto tecnico GANZ. Questa compressione video h.264 non è supportata dalla fotocamera.

+0

Hai affrontato lo stesso problema? Come è stato aggiornato il firmware della videocamera GANZ – Tariq

+0

L'aggiornamento del firmware non ha risolto il problema – Tariq

2

Se si utilizza UDP, ci si può aspettare che i fotogrammi vengano eliminati - fa parte del design UDP, che favorisce la velocità rispetto all'affidabilità. I pacchetti mancanti rappresentano un problema serio per il formato H264 in quanto un determinato pacchetto può leggere i pacchetti in anticipo o dietro di esso. Quindi, usare UDP produrrà molti errori a partire da "RTP: pacchetti XXX persi".

Passare al TCP più affidabile ma più lento passando l'opzione rtsp_transport="tcp" a av_open_input. Esempio:

AVDictionary * opts = NULL; 
av_dict_set(&opts, "rtsp_transport", "tcp", 0); 
int error = avformat_open_input(&rtsp_format_context, "rtsp://your url here", NULL, &opts)); 
if (error < 0) 
    ; // Connection error. Add your error handling here. 

Ciò interromperà i pacchetti che rimuoveranno il danneggiamento del video.

Problemi correlati