Revision e146ce52

View differences:

ffmpeg.c
2567 2567
    for(i=0; i<opt_name_count; i++){
2568 2568
        const AVOption *opt;
2569 2569
        double d= av_get_double(avformat_opts, opt_names[i], &opt);
2570
        if(d==d && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2570
        if(!isnan(d) && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2571 2571
            av_set_double(ic, opt_names[i], d);
2572 2572
    }
2573 2573
    /* open the input file with generic libav function */
......
2615 2615
            for(j=0; j<opt_name_count; j++){
2616 2616
                const AVOption *opt;
2617 2617
                double d= av_get_double(avctx_opts[CODEC_TYPE_AUDIO], opt_names[j], &opt);
2618
                if(d==d && (opt->flags&AV_OPT_FLAG_AUDIO_PARAM) && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2618
                if(!isnan(d) && (opt->flags&AV_OPT_FLAG_AUDIO_PARAM) && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2619 2619
                    av_set_double(enc, opt_names[j], d);
2620 2620
            }
2621 2621
            //fprintf(stderr, "\nInput Audio channels: %d", enc->channels);
......
2628 2628
            for(j=0; j<opt_name_count; j++){
2629 2629
                const AVOption *opt;
2630 2630
                double d= av_get_double(avctx_opts[CODEC_TYPE_VIDEO], opt_names[j], &opt);
2631
                if(d==d && (opt->flags&AV_OPT_FLAG_VIDEO_PARAM) && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2631
                if(!isnan(d) && (opt->flags&AV_OPT_FLAG_VIDEO_PARAM) && (opt->flags&AV_OPT_FLAG_DECODING_PARAM))
2632 2632
                    av_set_double(enc, opt_names[j], d);
2633 2633
            }
2634 2634
            frame_height = enc->height;
......
2774 2774
        for(i=0; i<opt_name_count; i++){
2775 2775
             const AVOption *opt;
2776 2776
             double d= av_get_double(avctx_opts[CODEC_TYPE_VIDEO], opt_names[i], &opt);
2777
             if(d==d && (opt->flags&AV_OPT_FLAG_VIDEO_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2777
             if(!isnan(d) && (opt->flags&AV_OPT_FLAG_VIDEO_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2778 2778
                 av_set_double(video_enc, opt_names[i], d);
2779 2779
        }
2780 2780

  
......
2917 2917
        for(i=0; i<opt_name_count; i++){
2918 2918
            const AVOption *opt;
2919 2919
            double d= av_get_double(avctx_opts[CODEC_TYPE_AUDIO], opt_names[i], &opt);
2920
            if(d==d && (opt->flags&AV_OPT_FLAG_AUDIO_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2920
            if(!isnan(d) && (opt->flags&AV_OPT_FLAG_AUDIO_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2921 2921
                av_set_double(audio_enc, opt_names[i], d);
2922 2922
        }
2923 2923

  
......
2967 2967
        for(i=0; i<opt_name_count; i++){
2968 2968
             const AVOption *opt;
2969 2969
             double d= av_get_double(avctx_opts[CODEC_TYPE_SUBTITLE], opt_names[i], &opt);
2970
             if(d==d && (opt->flags&AV_OPT_FLAG_SUBTITLE_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2970
             if(!isnan(d) && (opt->flags&AV_OPT_FLAG_SUBTITLE_PARAM) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
2971 2971
                 av_set_double(subtitle_enc, opt_names[i], d);
2972 2972
        }
2973 2973
        subtitle_enc->codec_id = find_codec_or_die(subtitle_codec_name, CODEC_TYPE_SUBTITLE, 1);
......
3159 3159
    for(i=0; i<opt_name_count; i++){
3160 3160
        const AVOption *opt;
3161 3161
        double d = av_get_double(avformat_opts, opt_names[i], &opt);
3162
        if(d==d && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
3162
        if(!isnan(d) && (opt->flags&AV_OPT_FLAG_ENCODING_PARAM))
3163 3163
            av_set_double(oc, opt_names[i], d);
3164 3164
    }
3165 3165

  

Also available in: Unified diff