Не могу увидеть логи x264 lib

0

У меня есть C++ решение, которое использует x264.lib. Я установил params.i_log_level = X264_LOG_DEBUG; чтобы увидеть некоторые записи из x264 lib. Однако во время отладки в окне вывода Visual Studio я не вижу никаких связанных с x264 журналов.

Как я могу увидеть эти журналы?

Теги:
visual-studio
logging
x264

1 ответ

1
Лучший ответ

Включение уровня журнала, вы оставляете обработчик ведения журнала по умолчанию для генерации вывода отладки. Это записывается в stderr и вывод не появляется в окне вывода Visual Studio.

static void x264_log_default( void *p_unused, int i_level, const char *psz_fmt, 
  va_list arg )
{
    // ...
    fprintf( stderr, "x264 [%s]: ", psz_prefix );
    vfprintf( stderr, psz_fmt, arg );

Вам необходимо предоставить свою собственную функцию журнала в params.pf_log и params.pf_log данные в OutputDebugString API. Таким образом, он появится в окне вывода VS.

  • 0
    Большое спасибо. У меня есть идея. Я реализовал свою собственную функцию: X264_log (void * p_unused, int i_level, const char * psz_fmt, va_list arg) Эта функция вызывается успешно, однако параметр arg содержит некоторые странные символы вместо обычных символов. В результате при передаче «arg» в OutputDebugString в окне вывода VS я вижу «???????» или другие странные символы.
  • 0
    Вы что-то делаете неправильно, возможно, вы неправильно обрабатываете строки Unicode. Вы можете взглянуть на реализацию x264_log_default в x264, чтобы увидеть, что именно она делает. Или вы можете вызвать OutputDebugStringA для доступа к строке аргумента ANSI.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню