I have some code that worked without issue up until now. When I pass a file 
path into avformat_open_input  I can create a pFormatCtx, but none of the 
streams have any codec information associated with them, ie 
pFormatCtx->streams[i]->codecpar is null. I assume that my codecs are not being 
opened? I know that av_register_all() is deprecated, but otherwise 
avformat_open_input doesn’t work. I am using 3.4.2 of ffmpeg. Any assistance is 
appreciated.

Patrick


    av_register_all();
    int error = avformat_open_input(&pFormatCtx, filePath, NULL, NULL);
    if(error != 0){
        char * errorString= (char*)malloc(AV_ERROR_MAX_STRING_SIZE);
        (void) av_strerror(error, errorString, AV_ERROR_MAX_STRING_SIZE);
        printf("%s\n", errorString);
        status = K_CANT_OPEN_FILE; // Couldn't open file
        return;
    }
    
    if(avformat_find_stream_info(pFormatCtx, NULL)<0){
       status = K_NO_STREAM_INFO;  //NO STREAM INFO
        return;
    }

    videoStream = -1;
    for(i = 0; i < pFormatCtx->nb_streams; i++){
        AVStream * stream = pFormatCtx->streams[i];
        if(pFormatCtx->streams[i]->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) 
{. // <—codecpar is NULL
            videoStream=i;
            break;
        }
    }
_______________________________________________
Libav-user mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/libav-user

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to