Bug 32310 - Не собирается из-за того, что ожидает ffmpeg >= 2.6.0, а получает libav
Summary: Не собирается из-за того, что ожидает ffmpeg >= 2.6.0, а получает libav
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: qtox (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Vitaly Lipatov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on: 32312
Blocks:
  Show dependency tree
 
Reported: 2016-07-25 14:04 MSK by Vitaly Lipatov
Modified: 2017-06-17 16:48 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vitaly Lipatov 2016-07-25 14:04:18 MSK
src/video/videoframe.cpp: In constructor 'VideoFrame::VideoFrame(AVFrame*, int, int, int, std::function<void()>)':
src/video/videoframe.cpp:43:24: error: 'AV_PIX_FMT_YUVJ411P' was not declared in this scope
     else if (pixFmt == AV_PIX_FMT_YUVJ411P)
                        ^
src/video/videoframe.cpp: In member function 'bool VideoFrame::convertToRGB24(QSize)':
src/video/videoframe.cpp:158:98: error: 'av_image_get_buffer_size' was not declared in this scope
     int imgBufferSize = av_image_get_buffer_size(AV_PIX_FMT_RGB24, size.width(), size.height(), 1);
                                                                                                  ^
src/video/videoframe.cpp:170:95: error: 'av_image_fill_arrays' was not declared in this scope
     av_image_fill_arrays(data, linesize, buf, AV_PIX_FMT_RGB24, size.width(), size.height(), 1);
                                                                                               ^
src/video/videoframe.cpp: In member function 'bool VideoFrame::convertToYUV420()':
src/video/videoframe.cpp:218:84: error: 'av_image_get_buffer_size' was not declared in this scope
     int imgBufferSize = av_image_get_buffer_size(AV_PIX_FMT_RGB24, width, height, 1);
                                                                                    ^
src/video/videoframe.cpp:230:83: error: 'av_image_fill_arrays' was not declared in this scope
     av_image_fill_arrays(data, linesize, buf, AV_PIX_FMT_YUV420P, width, height, 1);
Comment 1 Vitaly Lipatov 2016-07-25 15:14:22 MSK
В репозитории есть это изменение, не вошедшее ни в один релиз:

commit e2ad0b66fa273c5c823978e8f601f2c0d9ee42f8
Author: Stefano Sabatini <stefasab@gmail.com>
Date:   Wed Dec 10 12:20:49 2014 +0000

    imgutils: create misc functions for dealing with buffers
    
    Move the lavc/imgconvert functions and rename them as follows:
      avpicture_get_size -> av_image_get_buffer_size()
      avpicture_fill     -> av_image_fill_arrays()
      avpicture_layout   -> av_image_copy_to_buffer()
    
    The new functions have an align parameter, which allows to define the
    linesize alignment assumed in the buffer (which is set or read).
    
    The names of the functions are consistent with the lavu/samples API
    (av_samples_get_buffer_size(), av_samples_fill_arrays()).
    
    A redundant check has been dropped from av_image_fill_arrays().
    
    Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Comment 2 Vitaly Lipatov 2017-06-17 16:48:00 MSK
Собрано с ffmpeg:
* Fri Jun 09 2017 Vitaly Lipatov <lav@altlinux.ru> 1.6.0-alt1
- new version (1.6.0) with rpmgs script
- rebuild with ffmpeg