ffmpeg中连接不了audio_fifo.c,求帮忙

xiaoxiaospace 2016-06-24 12:02:41
环境:VS2013+MYSYS
编译动态库和静态库,都没问题。别的函数都正常
可是唯独调用audio_fifo.h里面的任何函数,都连接不了
包含av_audio_fifo_alloc,av_audio_fifo_free等等该文件的所有函数,都连接不了,提示
error LNK2019: 无法解析的外部符号 "void __cdecl av_audio_fifo_free(struct AVAudioFifo *)

我特意查看了下对应的DLL,是avutil-57.dll,这个动态库我看了,的确编译了该文件内的所有函数,包含出错提示的 av_audio_fifo_free,并且,源文件audio_fifo.c里也引用了audio_fifo.h

其他任何FFMPEG的库都正常,就这个文件里的函数连接不了,我就搞不懂个了,明明编译了,怎么就单独这个文件的函数连接不了呢
求帮忙,GOOGLE已经翻烂了,依然解决不了这个问题。
...全文
327 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
github_35472751 2018-05-02
  • 打赏
  • 举报
回复
extern "C" { #include "libavutil/audio_fifo.h" };
百灵工作室 2016-06-27
  • 打赏
  • 举报
回复
#include "libavutil/audio_fifo.h" #pragma comment(lib, "avutil.lib") 相应的库都要链接上
xiaoxiaospace 2016-06-26
  • 打赏
  • 举报
回复
问题已经解决,随便来人给分
xiaoxiaospace 2016-06-24
  • 打赏
  • 举报
回复
我可能没说明白 mysys编译,一切都正常,在VS2013调用很多FFMPEG函数,都没问题 可是一旦调用audio_fifo.h里的函数,就提示连接报错,但是audio_fifo.h引用,却一点没问题。
VLC 播放器,涉及到ffmpeg,视频播放等,是pascal 的使用实例delphi 头源码,欢迎使用包含l。 examples examples\avio_dir_cmd.dpr examples\avio_reading.dpr examples\decoding_encoding.dpr examples\demuxing_decoding.dpr examples\extract_mvs.dpr examples\FFUtils.pas examples\filtering_audio.dpr examples\filtering_video.dpr examples\filter_audio.dpr examples\LICENSE.txt examples\metadata.dpr examples\muxing.dpr examples\remuxing.dpr examples\resampling_audio.dpr examples\scaling_video.dpr examples\transcode_aac.dpr examples\transcoding.dpr headers headers\CompilerDefines.inc headers\FFTypes.pas headers\libavcodec.pas headers\libavcodec_avfft.pas headers\libavdevice.pas headers\libavfilter.pas headers\libavfilter_avcodec.pas headers\libavfilter_buffersink.pas headers\libavfilter_buffersrc.pas headers\libavfilter_formats.pas headers\libavformat.pas headers\libavformat_avio.pas headers\libavformat_url.pas headers\libavutil.pas headers\libavutil_audio_fifo.pas headers\libavutil_avstring.pas headers\libavutil_bprint.pas headers\libavutil_buffer.pas headers\libavutil_channel_layout.pas headers\libavutil_common.pas headers\libavutil_cpu.pas headers\libavutil_dict.pas headers\libavutil_display.pas headers\libavutil_error.pas headers\libavutil_eval.pas headers\libavutil_fifo.pas headers\libavutil_file.pas headers\libavutil_frame.pas headers\libavutil_imgutils.pas headers\libavutil_log.pas headers\libavutil_mathematics.pas headers\libavutil_md5.pas headers\libavutil_mem.pas headers\libavutil_motion_vector.pas headers\libavutil_opt.pas headers\libavutil_parseutils.pas headers\libavutil_pixdesc.pas headers\libavutil_pixfmt.pas headers\libavutil_rational.pas headers\libavutil_samplefmt.pas headers\libavutil_time.pas headers\libavutil_timestamp.pas headers\libswresample.pas headers\libswscale.pas headers\libversion.inc

-----FFmpeg SVN r12476 build-----
configured by:

./configure --prefix=d:/nextcodeccode/svn_build --enable-memalign-hack --enable-shared --disable-static --disable-encoder=snow --disable-decoder=ac3 --disable-decoder=vorbis --disable-encoder=vorbis --disable-vhook --enable-ffplay --disable-ffserver --disable-mpegaudio-hp --enable-pthreads --enable-liba52 --enable-nonfree --enable-libamr-nb --enable-libamr-wb --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libgsm --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-avisynth --enable-gpl --enable-swscale --enable-avfilter --enable-avfilter-lavf --enable-demuxer=vfwcap --enable-demuxer=rm --extra-cflags="-I/usr/local/include -I/usr/local/include/SDL" --extra-ldflags=-L/usr/local/lib --extra-libs=-lpthreadGC2

Note:
output_example.exe, tools/cws2fws.exe, tools/pktdumper.exe, tools/qt-faststart.exe, tools/trasher.exe are also compiled

Addins:
1) how to make a mp4 streamable with Adobe Flash Player?
You can use the following command to make a mp4/mov/3gp file streaming feature which is compatible with the latest Adobe Flash Player
eg:
qt-faststart.exe input.mp4 output.mp4

Now,output.mp4 can be rendered instantly by Flash Player

2)How to use avfilter?
Enabled filters:
crop graphfile scale
drawbox hflip setpts
fifo movie slicify
format negate split
fps noformat transpose
graph overlay vflip
graphdesc rotate

a)To vertically flip a video, you would do:

./ffplay -vfilters vflip input_video.avi
But the following commands(apply two vflip filter) will result in the orginal picture
./ffplay -vfilters vflip,vflip input_video.avi

b)To scale video to specific dimension, you would do:
./ffplay -vfilters scale=640:480 input_video.avi

c)avfilter can accepts many input files and generate many output files at the same time.
I will elaberate this feature on FFmpegSDK3.3


3) VFW camera capture
The following command will use your default camera device to preview&grap picture,and encode the picture to mpeg4

ffmpeg -f vfwcap -s 320x240 -r 25 -i 0 -b 400K -vcodec mpeg4 new.mp4

I will add audio capture on win32 in next major build

by mvp@mvplayer.net
2008/03/17

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧