Sugestie Dotyczące Obsługi Lub Zapobiegania Błędom Żądanie Nie Mogło Zgromadzić Ffmpeg/avcodec.h

Rozwiąż wszystkie problemy z komputerem jednym kliknięciem. Najlepsze narzędzie do naprawy systemu Windows dla Ciebie!

Jeśli błąd powoduje, że żądanie się nie powiedzie, plik ffmpeg/avcodec.h nie może zostać skompilowany w twoim systemie, miejmy nadzieję, że ten przewodnik powinien pomóc.

Próbuję uruchomić tutorial01.c z gcc, po prostu dlatego, że gcc i tutorial01.c znajdują się w starym folderze jako libavcodec, libavformat i powiązane oprogramowanie, daje mi to twój błąd

Błąd krytyczny: libavcodec/avcodec. Żaden plik ani katalog, który pomoże h

nie został usunięty

kiedy uruchamiam gcc -to tutorial01 tutorial01.-lavformat k -lavcodec -lz przez całą drogę nieuleczalną w Ubuntu 12.04

#include libavcodec/avcodec.h#dołącz libavformat/avformat.h#włącz stdio.hvoid SaveFrame(AVFrame *pFrame, int szerokość, int wysokość, int iFrame)   PLIK *pPlik;  nazwa pliku char[32];  int y; // Otwórz plik  sprintf(szFilename, "ramka%d.ppm", iFrame);  pFile=fopen(szFilename, "wb");  zakładając, że (pFile == NULL)   Powrót;  // zapis nagłówków  fprintf(pFile, "P6n%d %dn255n", szerokość, wysokość);  // zapis danych pikseli  for(y=0; ydata[0]+y*pFrame->linesize[0], 1, szerokość*3, pFile);  // zamknij plik  fclose(plik);int main(int argc, char *argv[])   AVFormatContext *pFormatCtx;  int i, strumień wideo;  Kontekst AVCodec *pCodecCtx;  Kodek AV *pCodec;  Ramka AV *pRamka;  Ramka AV *pRamkaRGB;  Pakiet AV;  rama wewnętrzna Gotowe;  int liczba bajtów;  bufor uint8_t (spacja);  jeśli (argc < 2)      printf("Wprowadź plik wideon");   wracaj -1;    // Zapisz wszystkie formaty za pomocą kodeków  av_register_all();  // Otwórz plik wideo  if(av_open_input_file(&pFormatCtx, argv[1], NULL, 0, NULL)!=0)   powrót -1; // Nie można otworzyć pliku  // Uzyskaj pomysły na temat wątku  kiedykolwiek (av_find_stream_info(pFormatCtx)<0)   powrót -1; // Nie znaleziono informacji o wątku  // informacje o pliku funkcji o prostych błędach  dump_format(pFormatCtx, 0, argv[1], 0);  // Znajdź pierwszy strumień online  strumień klipu wideo =-1;  for(i=0; i

nb_streams; i++)    if(pFormatCtx->streams[i]->codec->codec_type==CODEC_TYPE_VIDEO)          strumień wideo=i;      Pauza;      if(strumień wideo==-1)   wrócić do swojego biura -1; // Nie znaleziono określonej ilości wideo  // Znajdź idealny wskaźnik kontekstu kodeka do pobrania strumienia wideo  pCodecCtx=pFormatCtx->strumień[videoStream]->kodek;  // Znajdź dekoder, dla którego przeznaczony jest strumień wideo  pCodec=avcodec_find_decoder(pCodecCtx->codec_id);  if (pCodec == NULL)      fprintf(stderr, "Kodek nie jest obsługiwany!n");   przejdź -1; // Nie znaleziono kodeka    // otwarty kodek  tak jak (avcodec_open(pCodecCtx, pCodec) < 0)   powrót -1; // kodeki na pewno nie są duże  // Przypisz obraz YouTube  pFrame=avcodec_alloc_frame();  // Przydziel potężną strukturę AVFrame  pFrameRGB=avcodec_alloc_frame();  jeśli (pFrameRGB == NULL)   powrót -1;  // Określ wymagany rozmiar bufora i odpowiednio wyznacz bufor numBytes równa się avpicture_get_size(PIX_FMT_RGB24, pCodecCtx->szerokość,                  pCodecCtx->wysokość);  buffetp=(uint8_t *)av_malloc(numBytes*sizeof(uint8_t));  // Przydziel odpowiednie części rzeczywistego bufora dla warstw logo do pFrameRGB  // Zauważ, że pFrameRGB to AVFrame, ale AVFrame byłby nadzbiorem  // wskazuje na AVPicture  avpicture_fill((AVPicture *)pFrameRGB, strumień, PIX_FMT_RGB24,         pCodecCtx->szerokość, pCodecCtx->wysokość);  // Odczytaj obrazy i zapisz pięć ilustracji na dysku  i=0;  chociaż (av_read_frame(pFormatCtx i pakiet) >= 0)     // Czy to jest rodzaj kontenera strumienia wideo?    if (packet.stream_index == cyfrowy strumień wideo)          // dekoduj, które wideo      avcodec_decode_video(pCodecCtx, pFrame, &frameDone,               pakiet.dane, rozmiar.pakietu);      // Czy dostaliśmy ramkę wideo?      jeśli (rama gotowa)              // Konwertuj z oryginalnego formatu na RGB    img_convert((Obraz AV *)pFrameRGB, PIX_FMT_RGB24,                    (AVPicture*)pFrame, pCodecCtx->pix_fmt, pCodecCtx->szerokość,                    pCodecCtx->wysokość);    // Zapisz stan na dysku    jeśli(++i<=5)  SaveFrame(pFrameRGB, pCodecCtx->szerokość, pCodecCtx->wysokość,            JESTEM);             // Zwolnij pakiet przypisany do Ciebie przez av_read_frame    av_free_packet(&pakiet);    // Uwolnij nowy obraz RGB  av_free(bufor);  av_free(pFrameRGB);  // Zwolnij pojedynczy dedykowany typ ramki YUV  av_free(pFrame); // zamknij ten konkretny kodek  avcodec_close(pCodecCtx);  // Zamknij plik wideo  av_close_input_file (pFormatCtx);  zwracam 0;
Błąd chce się nie powiódł nie może skompilować ffmpeg/avcodec.h

Czy Twój komputer działa wolno i sprawia Ci smutek? Jeśli tak, to może nadszedł czas na Reimage.