Hi Javier,

I have just had a bash at using avresample headers in place of the
swresample ones in FFmpegHeaders.hpp :

#if 1
#include <libavresample/avresample.h>
#else
#include <libswresample/swresample.h>
#endif

But now I get the error:


[ 93%] Building CXX object
src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/FFmpegDecoderAudio.o
In file included from
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:1:0:
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.hpp:86:5:
error: 'SwrContext' does not name a type
     SwrContext *                        m_swr_context;  // Sw resampling
context
     ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:30:26:
error: 'SwrContext' has not been declared
                          SwrContext *swr_context,
                          ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:
In function 'int osgFFmpeg::decode_audio(AVCodecContext*, int16_t*, int*,
const uint8_t*, int, int*, int, int, AVSampleFormat)':
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:80:82:
error: 'swr_convert' was not declared in this scope
                         (const uint8_t **)frame->extended_data,
frame->nb_samples);

^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:
In constructor
'osgFFmpeg::FFmpegDecoderAudio::FFmpegDecoderAudio(osgFFmpeg::FFmpegDecoderAudio::PacketQueue&,
osgFFmpeg::FFmpegClocks&)':
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:128:5:
error: class 'osgFFmpeg::FFmpegDecoderAudio' does not have any field named
'm_swr_context'
     m_swr_context(NULL)
     ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:
In member function 'void osgFFmpeg::FFmpegDecoderAudio::open(AVStream*,
osgFFmpeg::FFmpegParameters*)':
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:188:13:
error: 'm_swr_context' was not declared in this scope
             m_swr_context = swr_alloc_set_opts(NULL,
             ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:195:29:
error: 'swr_alloc_set_opts' was not declared in this scope
                     0, NULL );
                             ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:197:45:
error: 'swr_init' was not declared in this scope
             int err = swr_init(m_swr_context);
                                             ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:203:40:
error: 'swr_free' was not declared in this scope
                 swr_free(&m_swr_context);
                                        ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:
In member function 'void osgFFmpeg::FFmpegDecoderAudio::close(bool)':
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:259:15:
error: 'm_swr_context' was not declared in this scope
     swr_free(&m_swr_context);
               ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:259:28:
error: 'swr_free' was not declared in this scope
     swr_free(&m_swr_context);
                            ^
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:
In member function 'size_t
osgFFmpeg::FFmpegDecoderAudio::decodeFrame(void*, size_t)':
/home/robert/OpenSceneGraph/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp:443:145:
error: 'm_swr_context' was not declared in this scope
             const int bytes_decoded = decode_audio(m_context,
reinterpret_cast<int16_t*>(buffer), &data_size, m_packet_data,
m_bytes_remaining, m_swr_context, m_out_sample_rate, m_out_nb_channels,
m_out_sample_format);

^
src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/build.make:80: recipe for
target
'src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/FFmpegDecoderAudio.o'
failed
make[2]: ***
[src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/FFmpegDecoderAudio.o]
Error 1
CMakeFiles/Makefile2:7070: recipe for target
'src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/all' failed
make[1]: *** [src/osgPlugins/ffmpeg/CMakeFiles/osgdb_ffmpeg.dir/all] Error 2
Makefile:106: recipe for target 'all' failed
make: *** [all] Error 2


It's end of day here in Scotland so I'm going to revert back to svn/trunk
without any of your submitted changes and wait for feedback from yourself.
FYI, I'm using Kubuntu 14.10.

Robert.
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to