On 2017-11-06 11:40 AM, Francesco, Cuzzocrea wrote:
Hi to all

I found that ffmpeg can decode PRORES, while it seems that avcodec doesn't.

If I issue:

ffmpeg.exe -i test_prores.mov test.mp4

it convert the mov prores file correctly, whilst using libavcodec doesn't.  Here is the snippet of code:

  vd_codec = avcodec_find_decoder(AV_CODEC_ID_PRORES);

  pCodecCtxFF = avcodec_alloc_context3(vd_codec);

  glob_frm = av_frame_alloc();   // allocate and init a re-usable frame

  avcodec_open2(pCodecCtxFF, vd_codec,NULL);

    av_init_packet(&thpkt);

// Read a single PRORES FRAME and put it into tempBuff
   fileSize = PutFileIntoBuffer(srcFile.c_str(),tempBuff);


   thpkt.size =  fileSize;    thpkt.data = tempBuff;

   conv_res = avcodec_send_packet(pCodecCtxFF, &thpkt);
   if(conv_res<0)
   {
     if(av_strerror(conv_res, errbuf, 512)==0)  stre.printf("Error sending packet : %s",errbuf);       else  stre.printf("Error %x returned from avcodec_send_packet : %s",errbuf);
      goto __exit_pres;
   }


result is the message "Error sending packet : Not yet implemented in FFmpeg, patches welcome".

I attempt to compile with and without --enable-version3 in the configure but nothing changes.

Anyone experienced decoding of PRORES frame ?

Regards



Are you registering the codec? IE: are you calling av_register_all() before using libav* code?

--
Philippe Gorley
Free Software Consultant | Montréal, Qc
Savoir-faire Linux

Confidentiality Message: This communication (including any files
transmitted with it) is intended solely for the person or entity to
whom it is addressed, and may contain confidential or privileged
information.
The disclosure, distribution or copying of this message is strictly
forbidden. Should you have received this communication in error,
kindly contact the sender promptly, destroy any copies and delete
this message from your computer system.
_______________________________________________
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to