[Cin] UPD: Re: DNxHR presets

Andrew Randrianasulu randrianasulu at gmail.com
Wed Nov 11 17:25:23 CET 2020


В сообщении от Wednesday 11 November 2020 17:03:46 Andrea paz via Cin написал(а):
> >
> > May be some pathes are too long?
> > Where exactly you put those profile files?
> >
> 
> /home/paz/cinelerra5/cinelerra-5.1/bin/ffmpeg/video/DNxHR_444.mov
> 
> about 70 characters.

Just compiled Cin with just one switch:

 ./configure --with-single-use

it worked with some local hacks (/usr/X11R7 for X libs, disabling swscale integration in x264 snapshot)

I can load my profile to

/dev/shm/cinelerra/cinelerra-5.1$ ls bin/ffmpeg/video/
DNxHR_HQX.mov

and it show up correctly and let me render.

Does your build enable vdpau/vaapi? As far as I can see those options loaded in

https://git.cinelerra-gg.org/git/?p=goodguy/cinelerra.git;a=blob;f=cinelerra-5.1/cinelerra/ffmpeg.C;h=97b6698acbb2ffc342f93049dbd54537d0a39235;hb=HEAD

2081 
2082 void FFMPEG::scan_video_options(Asset *asset, EDL *edl)
2083 {
2084         char cin_pix_fmt[BCSTRLEN];
2085         int cin_fmt = AV_PIX_FMT_NONE;
2086         const char *options = asset->ff_video_options;
2087         if( !get_ff_option("cin_pix_fmt", options, cin_pix_fmt) )
2088                         cin_fmt = (int)av_get_pix_fmt(cin_pix_fmt);
2089         if( cin_fmt < 0 ) {
2090                 char video_codec[BCSTRLEN];  video_codec[0] = 0;
2091                 AVCodec *av_codec = !get_codec(video_codec, "video", asset->vcodec) ?
2092                         avcodec_find_encoder_by_name(video_codec) : 0;
2093                 if( av_codec && av_codec->pix_fmts ) {
2094                         if( 0 && edl ) { // frequently picks a bad answer
2095                                 int color_model = edl->session->color_model;
2096                                 int max_bits = BC_CModels::calculate_pixelsize(color_model) * 8;
2097                                 max_bits /= BC_CModels::components(color_model);
2098                                 cin_fmt = avcodec_find_best_pix_fmt_of_list(av_codec->pix_fmts,
2099                                         (BC_CModels::is_yuv(color_model) ?
2100                                                 (max_bits > 8 ? AV_PIX_FMT_AYUV64LE : AV_PIX_FMT_YUV444P) :
2101                                                 (max_bits > 8 ? AV_PIX_FMT_RGB48LE : AV_PIX_FMT_RGB24)), 0, 0);
2102                         }
2103                         else
2104                                 cin_fmt = av_codec->pix_fmts[0];
2105                 }
2106         }
2107         if( cin_fmt < 0 ) cin_fmt = AV_PIX_FMT_YUV420P;


search for 'cin_pix_fmt'

so for some reason it fails to find best format via avcodec_find_best_pix_fmt_of_list ?

Also, I tried with default RGBA-8 colormodel ..... may be it fails with YUV/RGBA-float?

no, seems to work too ....

You can try and add printf("doing X \n"); in this function and see that branch it takes :} and also print out exact value of  cin_fmt

printf("cin_fmt= %i \n", cin_fmt);

something like this ...

> 
> @MatN
> can you try to put Andrew's presets in your CinGG to see if they work for you?
> The path should be:
> 
> /home/USER/cinelerra5/cinelerra-5.1/bin/ffmpeg/video/




More information about the Cin mailing list