[FFmpeg-devel] [PATCH 1/3] decklink: add fourCC of display mode to list_format output

Matthias Hunstock atze at fem.tu-ilmenau.de
Thu Mar 16 23:38:26 EET 2017


Am 16.03.2017 um 20:55 schrieb Marton Balint:
> 
> 
> On Thu, 16 Mar 2017, Matthias Hunstock wrote:
> 
>> ---
>> libavdevice/decklink_common.cpp | 11 +++++++----
>> 1 file changed, 7 insertions(+), 4 deletions(-)
>>
>> diff --git a/libavdevice/decklink_common.cpp
>> b/libavdevice/decklink_common.cpp
>> index 8b499c5..131d186 100644
>> --- a/libavdevice/decklink_common.cpp
>> +++ b/libavdevice/decklink_common.cpp
>> @@ -276,6 +276,7 @@ int ff_decklink_list_formats(AVFormatContext
>> *avctx, decklink_direction_t direct
>>     struct decklink_ctx *ctx = (struct decklink_ctx *)cctx->ctx;
>>     IDeckLinkDisplayModeIterator *itermode;
>>     IDeckLinkDisplayMode *mode;
>> +    char fourcc[32];
>>     int i=0;
>>     HRESULT res;
>>
>> @@ -297,13 +298,15 @@ int ff_decklink_list_formats(AVFormatContext
>> *avctx, decklink_direction_t direct
>>             return AVERROR(EIO);
>>     }
>>
>> -    av_log(avctx, AV_LOG_INFO, "Supported formats for '%s':\n",
>> +    av_log(avctx, AV_LOG_INFO, "Supported formats for
>> '%s':\n\tmode\tfourCC\tdescription",
>>                avctx->filename);
>>     while (itermode->Next(&mode) == S_OK) {
>>         BMDTimeValue tb_num, tb_den;
>>         mode->GetFrameRate(&tb_num, &tb_den);
>> -        av_log(avctx, AV_LOG_INFO, "\t%d\t%ldx%ld at %d/%d fps",
>> -                ++i,mode->GetWidth(), mode->GetHeight(),
>> +        av_get_codec_tag_string(fourcc, sizeof(fourcc),
>> mode->GetDisplayMode());
>> +        av_log(avctx, AV_LOG_INFO, "\n\t%d\t%c%c%c%c\t%ldx%ld at
>> %d/%d fps",
>> +                ++i, fourcc[3], fourcc[2], fourcc[1], fourcc[0],
>> +                mode->GetWidth(), mode->GetHeight(),
> 
> fourcc is a string, is there a reason why you don't simply print it
> using "%s"?

Yes, unfortunately the order is reversed then, and I considered 'cstn'
or '05iH' harder to remember and use than 'ntsc' or 'Hi50'. Did not find
any util function that does the fourCC conversion in that reverse order.

Matthias



More information about the ffmpeg-devel mailing list