Ben yeni bir uint8_t dizisi olarak elde edilebilir H264 paketleri çözmek için mücadele FFmpeg için yeniyim. , H264 paketleri nasıl çözüleceği
araştırmaların birçoğu sonra, bunun sadece avcodec_decode_video2 tarafındanAVPacket *avpkt = (AVPacket *)malloc(sizeof(AVPacket) * 1);
av_init_packet(avpkt);
avpkt->data = ct; // ct is the array
avpkt->length =....
ve dekoder altında gibi bir AVPacket içine diziyi koymak gerekir düşünüyorum(). kodun bir kısmı ben düzgün gerekli tüm özellikleri ayarlamak tahmin
...
codec = avcodec_find_decoder(CODEC_ID_H264);
gVideoCodecCtx = avcodec_alloc_context();
gFrame = avcodec_alloc_frame();
avcodec_decode_video2(gVideoCodecCtx, gFrame, &frameFinished, packet);
...
gibidir ama bu işlev
ret geliyor sadece -1 :(Ben sadece bulundu
-1 dönüyor = avctx-> codec-> şifresini çözmek (avctx, resim, got_picture_ptr, avpkt); avcodec_decode_video2 içinde
(); ı H deşifre eğer
Aslında ne merak ediyorum olduğunu Avcodec_decode_video2() tarafından 264 paket (RTP başlığı olmadan).
Yardımlarınız için şimdiden teşekkür ederiz.
/////////// hala bir çözüm bulmaya çalışıyorum,
Tamam ekledi. Aşağıda
** Bu RTP akışında H264 akışı tarafından kodlanan
Şimdi ne yapıyorum olduğunu FU-Abir RTP pakete
göz ikinci bayt arasında ise alacak RTP üstbilgisi> 0 olan ilk pakettir (ve muhtemelen takip edilecek)
bir sonraki RTP paketinin ikinci baytında> 0'a sahip olup olmadığına bakın, o zaman önceki çerçevenin tam bir NAL olduğu anlamına gelir veya Bu < 0 ise, paket önceki pakete eklenmelidir.
Paketlerin tüm RTP üstbilgisini kaldırın, böylece yalnızca FU göstergesi gibi olur | FU başlığı | Ben FU göstergesini kaldırıp çok başlık gerekiyor .....
NAL
avcodec_decode_video2()
ile oynamak deneyin ancak yalnızca -1 dönüyor ??
herhangi bir öneri çok önceden
sayesinde takdir edilecektir.
Teşekkür Vibgyor aslında gönderen SpyDroid açık kaynak ve onun rtp başlığı birçok şeyi içeriyor görünmüyor, Kaynak Tanımlayıcıyı Senkronize Et ... bunlardan herhangi biri video akışı bilgisi anlamına mı geliyor? Ben öyle düşünmüyorum .. Hala üzerinde çalışıyorum ve ilerlememi güncelleyeceğim. – Jun