[FFmpeg-devel] a64 encoder 7th round

Bitbreaker/METALVOTZE bitbreaker
Tue Jan 27 08:05:05 CET 2009

> is there any reason not to use 5col mode?

Yes, size (0xa00 vs. 0x600 bytes per frame @ a charset lifetime of 4 
frames) and thus displayspeed :-) As already mentioned about the other 
modes i implemented as well, they all have their advantages and 
disadvantages. There are just different ways on how to display graphics 
on a c64. Some have more dynamic range, some have color, some have more 
details, some use grayscale.
Just imagine it is like displaying on a pc in gray8, rgb32, bgr24. 
Though one format might be enough there are still more, for a good 
reason :-)
You might have a look at pages like this, that describes a few (there 
are way more) graphic modes of the c64:
There are still new modes coming up (for one i am doing a converter 
together with Deekay and Crossbow who are mentioned on that site) but 
that still makes other modes not obsolete.

>> +AVCodec a64multi_encoder = {
>> +    .name = "a64multi",
>> +    .type = CODEC_TYPE_VIDEO,
>> +    .id = CODEC_ID_A64_MULTI,
>> +    .priv_data_size = sizeof(A64Context),
>> +    .init = a64multi_init_encoder,
>> +    .encode = a64multi_encode_frame,
>> +    .close = a64multi_close_encoder,
>> +    .pix_fmts = (enum PixelFormat[]) {PIX_FMT_GRAY8, PIX_FMT_NONE},
>> +    .long_name = NULL_IF_CONFIG_SMALL("Multicolor charset for Commodore 64"),
>> +    .capabilities = CODEC_CAP_DELAY,
>> +};
> can be vertically aligned so = is at the same spot

All the examples i saw so far didn't do any alignment here (inlcuding 
the codec howto in the wiki) I even was so kind to use the name of all 
fields for better understanding. But if it is the last issue found, i'd 
even align it :-)

Kindest regards,


More information about the ffmpeg-devel mailing list