https://github.com/mltframework/mlt/pull/1281/changes/68bceba12a3c3278ce6903... of course ffmpeg devs invented yet another way to get supported sample/pixel formats out of codec internals .... Will try to make mplayer work first, then may be cinelerra.
Oh no. Not sure why they consider this to be an improvement. On Sat, Sep 12, 2026, 13:34 Andrew Randrianasulu <randrianasulu@gmail.com> wrote:
https://github.com/mltframework/mlt/pull/1281/changes/68bceba12a3c3278ce6903...
of course ffmpeg devs invented yet another way to get supported sample/pixel formats out of codec internals ....
Will try to make mplayer work first, then may be cinelerra.
сб, 12 сент. 2026 г., 22:46 Phyllis Smith <phylsmith2017@gmail.com>:
Oh no. Not sure why they consider this to be an improvement.
Change itself fairly mechanical just it looks like we will need to apply it to 6-7 places grep sample_fmts -r cinelerra/*.C ~/cinelerra/cinelerra-5.1 $ grep sample_fmts -r cinelerra/*.C cinelerra/ffmpeg.C: const AVSampleFormat *sample_fmts, AVSampleFormat src_fmt) cinelerra/ffmpeg.C: for( int i=0; sample_fmts[i] >= 0; ++i ) { cinelerra/ffmpeg.C: AVSampleFormat sample_fmt = sample_fmts[i]; cinelerra/ffmpeg.C: if( av_codec && av_codec->sample_fmts ) cinelerra/ffmpeg.C: cin_fmt = find_best_sample_fmt_of_list(av_codec->sample_fmts, AV_SAMPLE_FMT_FLT); cinelerra/ffmpeg.C: sample_fmt = codec->sample_fmts ? codec->sample_fmts[0] : AV_SAMPLE_FMT_S16; cinelerra/ffmpeg.C: ret = av_opt_set_bin(buffersink_ctx, "sample_fmts", cinelerra/fileac3.C: codec_context->sample_fmt = codec->sample_fmts[0]; cinelerra/fileffmpeg.C: const AVSampleFormat *sample_fmts = av_codec ? av_codec->sample_fmts : 0; cinelerra/fileffmpeg.C: if( sample_fmts ) { cinelerra/fileffmpeg.C: for( int i=0; sample_fmts[i]>=0; ++i ) { cinelerra/fileffmpeg.C: const char *name = av_get_sample_fmt_name(sample_fmts[i]); cinelerra/pluginfclient.C: ret = av_opt_set_bin(fsink, "sample_fmts", ~/cinelerra/cinelerra-5.1 $ grep pix_fmts -r cinelerra/*.C cinelerra/ffmpeg.C:static AVPixelFormat get_hw_##fn(AVCodecContext *ctx, const enum AVPixelFormat *pix_fmts) { \ cinelerra/ffmpeg.C: const enum AVPixelFormat *pix_fmts) cinelerra/ffmpeg.C: for( const enum AVPixelFormat *p=pix_fmts; *p!=AV_PIX_FMT_NONE; ++p ) { cinelerra/ffmpeg.C: if( av_codec && av_codec->pix_fmts ) { cinelerra/ffmpeg.C: cin_fmt = avcodec_find_best_pix_fmt_of_list(av_codec->pix_fmts, cinelerra/ffmpeg.C: cin_fmt = av_codec->pix_fmts[0]; cinelerra/ffmpeg.C: pix_fmt = codec->pix_fmts ? codec->pix_fmts[0] : AV_PIX_FMT_YUV420P; cinelerra/ffmpeg.C: ret = av_opt_set_bin(buffersink_ctx, "pix_fmts", cinelerra/fileffmpeg.C: const AVPixelFormat *pix_fmts = av_codec ? av_codec->pix_fmts : 0; cinelerra/fileffmpeg.C: if( pix_fmts ) { cinelerra/fileffmpeg.C: for( int i=0; pix_fmts[i]>=0; ++i ) { cinelerra/fileffmpeg.C: const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmts[i]); cinelerra/pluginfclient.C: ret = av_opt_set_bin(fsink, "pix_fmts", ~/cinelerra/cinelerra-5.1 $ Patch for mplayer was already in Arch: https://gitlab.archlinux.org/archlinux/packaging/packages/mplayer/-/blob/mai...
On Sat, Sep 12, 2026, 13:34 Andrew Randrianasulu <randrianasulu@gmail.com> wrote:
https://github.com/mltframework/mlt/pull/1281/changes/68bceba12a3c3278ce6903...
of course ffmpeg devs invented yet another way to get supported sample/pixel formats out of codec internals ....
Will try to make mplayer work first, then may be cinelerra.
participants (2)
-
Andrew Randrianasulu -
Phyllis Smith