요청이 Ffmpeg/avcodec.h를 컴파일하지 못했습니다 오류 수정을 위한 제안

클릭 한 번으로 모든 PC 문제를 해결하세요. 당신을 위한 최고의 Windows 복구 도구!

오류 요청이 자주 실패하면 ffmpeg/avcodec.h가 시스템에서 컴파일되지 않습니다. 이 가이드가 도움이 되기를 바랍니다.

gcc가 있는 tutorial01.c를 실행하려고 합니다. gcc와 tutorial01.c가 libavcodec, libavformat 및 관련 소프트웨어를 보고 있는 동일한 폴더에 있기 때문에 오류를 제공합니다.< /p><블록 인용>

치명적인 오류: libavcodec/avcodec. h

와 관련된 파일이나 인덱스가 삭제되지 않았습니다.

Ubuntu 12.04에서 incurable을 통해 gcc -o tutorial01 tutorial01.-lavformat t -lavcodec -lz를 실행할 때

#libavcodec/avcodec.h 포함#libavformat/avformat.h 포함#stdio.h 활성화void SaveFrame(AVFrame *pFrame, int 너비, int 높이, int iFrame)   파일 *p파일;  문자 파일 이름[32];  정수 Y; // 파일 열기  sprintf(sz파일명, "프레임%d.ppm", 아이프레임);  pFile=fopen(sz파일명, "wb");  if (pFile == NULL)   반품;  // 헤더 생성  fprintf(p파일, "P6n%d %dn255n", 너비, 높이);  // 픽셀 데이터 입력  for(y=0; y<높이; y++)    fwrite(pFrame->data[0]+y*pFrame->linesize[0], 1, 너비*3, pFile);  // 파일 닫기  fclose(파일);int main(int argc, char *argv[])   AVFormatContext *pFormatCtx;  int i, 미디어 플레이어 스트림;  AVCodecContext *pCodecCtx;  AV 코덱 *pCodec;  AVFrame *pFrame;  AVFrame *pFrameRGB;  AV패킷;  내부 프레임 완료;  정수 바이트;  uint8_t * 버퍼;  경우 (argc < 2)      printf("dvd 파일을 입력하세요n");   반환 -1;    // 코덱을 통해 모든 형식 저장  av_register_all();  // 비디오 파일 열기  if(av_open_input_file(&pFormatCtx, argv[1], NULL, 0, NULL)!=0)   돌아가기 -1; // 파일을 열 수 없음  // 스레드에 대한 정보를 얻습니다.  if (av_find_stream_info(pFormatCtx)<0)   뒤로 -1; // 스레드 정보를 거의 찾을 수 없음  // 단순 오류에 대한 파일 정보 표시  dump_format(pFormatCtx, 0, argv[1], 0);  // 온라인에서 가장 첫 번째 스트림을 찾습니다.  비디오 스트림=-1;  for(i=0; i

nb_streams; i++)    if(pFormatCtx->streams[i]->codec->codec_type==CODEC_TYPE_VIDEO)          웹 스트림에서=i;      정지시키다;      if(비디오 스트림==-1)   반환 -1; // 특정 비디오 스트림을 찾을 수 없음  // 영화 스트림을 가져오기 위한 포인터를 의미하는 이상적인 코덱을 가져옵니다.  pCodecCtx=pFormatCtx->스트림[비디오스트림]->코덱;  // 비디오 보기가 의도된 디코더를 찾습니다.  pCodec=avcodec_find_decoder(pCodecCtx->codec_id);  만일을 대비하여 (pCodec == NULL)      fprintf(stderr, "코덱이 지원되지 않을 수 있습니다!n");   반환 -1; // 코덱을 찾을 수 없음    // 코덱을 열어도  if (avcodec_open(pCodecCtx, pCodec) < 0)   사이트 다시 -1; // 코덱은 클 수 없습니다.  // YouTube 이미지 할당  pFrame=avcodec_alloc_frame();  // 강력한 AVFrame 구조 할당  pFrameRGB=avcodec_alloc_frame();  (pFrameRGB == NULL)만큼   계속 돌아와 -1;  // 필요한 배리어 크기를 결정하고 그에 따라 배리어를 할당합니다. numBytes = avpicture_get_size(PIX_FMT_RGB24, pCodecCtx->너비,                  pCodecCtx->높이);  뷔페 =(uint8_t *)av_malloc(numBytes*sizeof(uint8_t));  // pFrameRGB의 정확한 로고 레이어에 대한 버퍼의 가장 큰 부분을 할당합니다.  // pFrameRGB는 AVFrame이지만 AVFrame은 상위 집합입니다.  // AVPicture를 가리킨다.  avpicture_fill((AVPicture *)pFrameRGB, 스트림, PIX_FMT_RGB24,         pCodecCtx->너비, pCodecCtx->높이);  // 이미지를 읽고 5개의 이미지를 디스크에 저장합니다.  나는 = 0;  동안 (av_read_frame(pFormatCtx, & 패키지) >= 0)     // 이것은 비디오 제공 컨테이너입니까?    (packet.stream_index == 비디오 스트림)          // 비디오 디코딩      avcodec_decode_video(pCodecCtx, pFrame, &frameDone,               패킷 데이터, 패킷 크기);      // 많은 사람들이 비디오 프레임을 얻었습니까?      if(프레임 준비)              // 이미지를 원래 스타일에서 RGB로 변환    img_convert((AVPicture *)pFrameRGB, PIX_FMT_RGB24,                    (AVPicture*)pFrame, pCodecCtx->pix_fmt, pCodecCtx->폭,                    pCodecCtx->높이);    // 프레임을 디스크에 저장    if(++i<=5)  SaveFrame(pFrameRGB, pCodecCtx->너비, pCodecCtx->높이,            그래요);             // av_read_frame에서 할당한 제안을 해제합니다.    av_free_packet(&패킷);    // RGB 이미지 해제  av_free(버퍼);  av_free(pFrameRGB);  // YUV 프레임 유형 해제  av_free(pFrame); // 코덱을 닫습니다.  avcodec_close(pCodecCtx);  // 비디오 클립 클립 파일을 닫습니다.  av_close_input_file(pFormatCtx);  0을 반환합니다.
오류 요구 사항 실패 ffmpeg/avcodec.h를 수집할 수 없음

PC가 느리게 실행되어 슬픔을 느끼고 있습니까? 그렇다면 Reimage을 위한 시간이 될 수 있습니다.