LINUX.ORG.RU

Codec_id в ffmpeg

 ,


0

1

Пытаюсь написать простой видеоплеер на основе Qt+FFMpeg.

if(avformat_open_input(&pFormatCtx, filename.toStdString().c_str(), NULL, NULL)!=0)
       return false; // Couldn't open file

   if(avformat_find_stream_info(pFormatCtx, NULL)<0)
       return false; // Couldn't find stream information

   av_dump_format(pFormatCtx, 0, filename.toStdString().c_str(), false);

   videoStream=-1;
   ffmpeg::AVMediaType a = ffmpeg::AVMEDIA_TYPE_VIDEO;
   for(unsigned i=0; i<pFormatCtx->nb_streams; i++)
       if(pFormatCtx->streams[i]->codec->codec_type==ffmpeg::AVMEDIA_TYPE_VIDEO)
       {
           videoStream=i;
           break;
       }
   if(videoStream==-1)
       return false; // Didn't find a video stream

   pCodecCtx=pFormatCtx->streams[videoStream]->codec;

   pCodec=avcodec_find_decoder(pCodecCtx->codec_id);
   if(pCodec==NULL)
       return false;

На последних строках оно валится, т.к. в codec_id вместо понятных ffmpeg обозначений (типа AV_CODEC_ID_MPEG2VIDEO) возвращает просто число (2147483648 например)

Кто-нибудь сталкивался?

★★★★★

Последнее исправление: upcFrost (всего исправлений: 1)

Нашел. include криво прописан

upcFrost ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.