jasonmc / forked-daapd

A re-write of the firefly media server (mt-daapd). It's released under GPLv2+. Please note that this git repository is a mirror of the official one at git://git.debian.org/~jblache/forked-daapd.git
http://blog.technologeek.org/2009/06/12/217
GNU General Public License v2.0
328 stars 45 forks source link

Ubuntu server, ffmpeg, and a whole lost of deprecated declarations #102

Open thesimonweaver opened 11 years ago

thesimonweaver commented 11 years ago

I am currently on ubuntu sever 12.10, I could not get the apt-get version to work, so I have compiled everything from scratch, i have tried 4 different versions of ffmpeg, each and every time spits out a different variation of these warnings and errors when i try to 'make' ffmpeg.

I am honsetly not sure if I should be posting this here or on the ffmpeg, as it issues seems to mostly revolve around avcodec. either way here is my output using the latest version of ffmpeg.

make all-recursive make[1]: Entering directory /home/simon/Downloads/forked-daapd' Making all in sqlext make[2]: Entering directory/home/simon/Downloads/forked-daapd/sqlext' /bin/bash ../libtool --tag=CC --mode=compile clang -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c -o sqlext.lo sqlext.c libtool: compile: clang -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c sqlext.c -fPIC -DPIC -o .libs/sqlext.o mv -f .deps/sqlext.Tpo .deps/sqlext.Plo /bin/bash ../libtool --tag=CC --mode=link clang -g -O2 -Wall -D_LARGEFILE_SOURCE -avoid-version -module -shared -o forked-daapd-sqlext.la -rpath /usr/lib/forked-daapd sqlext.lo -lunistring libtool: link: clang -shared -fPIC -DPIC .libs/sqlext.o -lunistring -O2 -Wl,-soname -Wl,forked-daapd-sqlext.so -o .libs/forked-daapd-sqlext.so libtool: link: ( cd ".libs" && rm -f "forked-daapd-sqlext.la" && ln -s "../forked-daapd-sqlext.la" "forked-daapd-sqlext.la" ) make[2]: Leaving directory /home/simon/Downloads/forked-daapd/sqlext' Making all in src make[2]: Entering directory/home/simon/Downloads/forked-daapd/src' antlr3 -depend DAAP2SQL.g > DAAP2SQL.u antlr3 -depend DAAP.g > DAAP.u antlr3 -depend RSP2SQL.g > RSP2SQL.u antlr3 -depend RSP.g > RSP.u make[2]: Leaving directory /home/simon/Downloads/forked-daapd/src' make[2]: Entering directory/home/simon/Downloads/forked-daapd/src' antlr3 DAAP.g antlr3 RSP.g if gperf daap_query.gperf > daap_query_hash.c.tmp; then \ mv daap_query_hash.c.tmp daap_query_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm daap_query_hash.c.tmp; \ exit 1; \ else \ rm daap_query_hash.c.tmp; \ touch daap_query_hash.c; \ fi if gperf rsp_query.gperf > rsp_query_hash.c.tmp; then \ mv rsp_query_hash.c.tmp rsp_query_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm rsp_query_hash.c.tmp; \ exit 1; \ else \ rm rsp_query_hash.c.tmp; \ touch rsp_query_hash.c; \ fi if gperf dacp_prop.gperf > dacp_prop_hash.c.tmp; then \ mv dacp_prop_hash.c.tmp dacp_prop_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm dacp_prop_hash.c.tmp; \ exit 1; \ else \ rm dacp_prop_hash.c.tmp; \ touch dacp_prop_hash.c; \ fi if gperf dmap_fields.gperf > dmap_fields_hash.c.tmp; then \ mv dmap_fields_hash.c.tmp dmap_fields_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm dmap_fields_hash.c.tmp; \ exit 1; \ else \ rm dmap_fields_hash.c.tmp; \ touch dmap_fields_hash.c; \ fi antlr3 RSP2SQL.g antlr3 DAAP2SQL.g make all-am make[3]: Entering directory /home/simon/Downloads/forked-daapd/src' clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-main.o -MD -MP -MF .deps/forked_daapd-main.Tpo -c -o forked_daapd-main.otest -f 'main.c' || echo './'main.c mv -f .deps/forked_daapd-main.Tpo .deps/forked_daapd-main.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-db.o -MD -MP -MF .deps/forked_daapd-db.Tpo -c -o forked_daapd-db.otest -f 'db.c' || echo './'db.c mv -f .deps/forked_daapd-db.Tpo .deps/forked_daapd-db.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-logger.o -MD -MP -MF .deps/forked_daapd-logger.Tpo -c -o forked_daapd-logger.otest -f 'logger.c' || echo './'logger.c mv -f .deps/forked_daapd-logger.Tpo .deps/forked_daapd-logger.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-conffile.o -MD -MP -MF .deps/forked_daapd-conffile.Tpo -c -o forked_daapd-conffile.otest -f 'conffile.c' || echo './'conffile.c mv -f .deps/forked_daapd-conffile.Tpo .deps/forked_daapd-conffile.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-filescanner.o -MD -MP -MF .deps/forked_daapd-filescanner.Tpo -c -o forked_daapd-filescanner.otest -f 'filescanner.c' || echo './'filescanner.c mv -f .deps/forked_daapd-filescanner.Tpo .deps/forked_daapd-filescanner.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-filescanner_ffmpeg.o -MD -MP -MF .deps/forked_daapd-filescanner_ffmpeg.Tpo -c -o forked_daapd-filescanner_ffmpeg.otest -f 'filescanner_ffmpeg.c' || echo './'filescanner_ffmpeg.c mv -f .deps/forked_daapd-filescanner_ffmpeg.Tpo .deps/forked_daapd-filescanner_ffmpeg.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-filescanner_urlfile.o -MD -MP -MF .deps/forked_daapd-filescanner_urlfile.Tpo -c -o forked_daapd-filescanner_urlfile.otest -f 'filescanner_urlfile.c' || echo './'filescanner_urlfile.c mv -f .deps/forked_daapd-filescanner_urlfile.Tpo .deps/forked_daapd-filescanner_urlfile.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-filescanner_m3u.o -MD -MP -MF .deps/forked_daapd-filescanner_m3u.Tpo -c -o forked_daapd-filescanner_m3u.otest -f 'filescanner_m3u.c' || echo './'filescanner_m3u.c mv -f .deps/forked_daapd-filescanner_m3u.Tpo .deps/forked_daapd-filescanner_m3u.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-filescanner_itunes.o -MD -MP -MF .deps/forked_daapd-filescanner_itunes.Tpo -c -o forked_daapd-filescanner_itunes.otest -f 'filescanner_itunes.c' || echo './'filescanner_itunes.c mv -f .deps/forked_daapd-filescanner_itunes.Tpo .deps/forked_daapd-filescanner_itunes.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-mdns_avahi.o -MD -MP -MF .deps/forked_daapd-mdns_avahi.Tpo -c -o forked_daapd-mdns_avahi.otest -f 'mdns_avahi.c' || echo './'mdns_avahi.c mv -f .deps/forked_daapd-mdns_avahi.Tpo .deps/forked_daapd-mdns_avahi.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-network.o -MD -MP -MF .deps/forked_daapd-network.Tpo -c -o forked_daapd-network.otest -f 'network.c' || echo './'network.c mv -f .deps/forked_daapd-network.Tpo .deps/forked_daapd-network.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-remote_pairing.o -MD -MP -MF .deps/forked_daapd-remote_pairing.Tpo -c -o forked_daapd-remote_pairing.otest -f 'remote_pairing.c' || echo './'remote_pairing.c mv -f .deps/forked_daapd-remote_pairing.Tpo .deps/forked_daapd-remote_pairing.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-avio_evbuffer.o -MD -MP -MF .deps/forked_daapd-avio_evbuffer.Tpo -c -o forked_daapd-avio_evbuffer.otest -f 'avio_evbuffer.c' || echo './'avio_evbuffer.c mv -f .deps/forked_daapd-avio_evbuffer.Tpo .deps/forked_daapd-avio_evbuffer.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-http.o -MD -MP -MF .deps/forked_daapd-http.Tpo -c -o forked_daapd-http.otest -f 'http.c' || echo './'http.c mv -f .deps/forked_daapd-http.Tpo .deps/forked_daapd-http.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-httpd.o -MD -MP -MF .deps/forked_daapd-httpd.Tpo -c -o forked_daapd-httpd.otest -f 'httpd.c' || echo './'httpd.c mv -f .deps/forked_daapd-httpd.Tpo .deps/forked_daapd-httpd.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-httpd_rsp.o -MD -MP -MF .deps/forked_daapd-httpd_rsp.Tpo -c -o forked_daapd-httpd_rsp.otest -f 'httpd_rsp.c' || echo './'httpd_rsp.c mv -f .deps/forked_daapd-httpd_rsp.Tpo .deps/forked_daapd-httpd_rsp.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-httpd_daap.o -MD -MP -MF .deps/forked_daapd-httpd_daap.Tpo -c -o forked_daapd-httpd_daap.otest -f 'httpd_daap.c' || echo './'httpd_daap.c mv -f .deps/forked_daapd-httpd_daap.Tpo .deps/forked_daapd-httpd_daap.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-httpd_dacp.o -MD -MP -MF .deps/forked_daapd-httpd_dacp.Tpo -c -o forked_daapd-httpd_dacp.otest -f 'httpd_dacp.c' || echo './'httpd_dacp.c mv -f .deps/forked_daapd-httpd_dacp.Tpo .deps/forked_daapd-httpd_dacp.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-dmap_common.o -MD -MP -MF .deps/forked_daapd-dmap_common.Tpo -c -o forked_daapd-dmap_common.otest -f 'dmap_common.c' || echo './'dmap_common.c mv -f .deps/forked_daapd-dmap_common.Tpo .deps/forked_daapd-dmap_common.Po clang -DHAVE_CONFIG_H -I. -I.. -D_GNU_SOURCE -DDATADIR="\"/usr/share/forked-daapd\"" -DCONFDIR="\"/etc\"" -DSTATEDIR="\"/var\"" -DPKGLIBDIR="\"/usr/lib/forked-daapd\"" -DFLAC -DMUSEPACK -DITUNES -fblocks -D_REENTRANT -I/usr/local/include -I/usr/local/include/taglib -D_THREAD_SAFE -D_REENTRANT -I/usr/include/libxml2 -I/usr/include/alsa -D_FORTIFY_SOURCE=2 -g -O2 -Wall -D_LARGEFILE_SOURCE -MT forked_daapd-transcode.o -MD -MP -MF .deps/forked_daapd-transcode.Tpo -c -o forked_daapd-transcode.otest -f 'transcode.c' || echo './'transcode.c make[3]: Leaving directory/home/simon/Downloads/forked-daapd/src' make[2]: Leaving directory /home/simon/Downloads/forked-daapd/src' make[1]: Leaving directory/home/simon/Downloads/forked-daapd'

and here is what its saying in the Terminal screen with the errors

main.c:519:3: warning: implicit declaration of function 'avcodec_init' is invalid in C99 [-Wimplicit-function-declaration] avcodec_init(); ^ 1 warning generated. filescanner_ffmpeg.c:344:9: warning: 'av_find_stream_info' is deprecated [-Wdeprecated-declarations] ret = av_find_stream_info(ctx); ^ filescanner_ffmpeg.c:349:7: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ filescanner_ffmpeg.c:411:7: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ filescanner_ffmpeg.c:620:4: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ filescanner_ffmpeg.c:628:4: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ filescanner_ffmpeg.c:638:4: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ filescanner_ffmpeg.c:651:3: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx); ^ 7 warnings generated. transcode.c:168:11: warning: 'avcodec_decode_audio3' is deprecated [-Wdeprecated-declarations] used = avcodec_decode_audio3(ctx->acodec, ^ transcode.c:193:17: warning: 'audio_resample' is deprecated [-Wdeprecated-declarations] buflen = audio_resample(ctx->resample_ctx, ctx->re_abuffer, ctx->abuffer, buflen / ctx->input_size); ^ transcode.c:369:9: warning: 'av_find_stream_info' is deprecated [-Wdeprecated-declarations] ret = av_find_stream_info(ctx->fmtctx); ^ transcode.c:412:9: warning: 'avcodec_open' is deprecated [-Wdeprecated-declarations] ret = avcodec_open(ctx->acodec, ctx->adecoder); ^ transcode.c:428:35: error: use of undeclared identifier 'SAMPLE_FMT_S16'; did you mean 'AV_SAMPLE_FMT_S16'? if ((ctx->acodec->sample_fmt != SAMPLE_FMT_S16) ^~~~~~ AV_SAMPLE_FMT_S16 /usr/local/include/libavutil/samplefmt.h:52:5: note: 'AV_SAMPLE_FMT_S16' declared here AV_SAMPLE_FMT_S16, ///< signed 16 bits ^ transcode.c:434:27: warning: 'av_audio_resample_init' is deprecated [-Wdeprecated-declarations] ctx->resample_ctx = av_audio_resample_init(2, ctx->acodec->channels, ^ transcode.c:436:8: error: use of undeclared identifier 'SAMPLE_FMT_S16'; did you mean 'AV_SAMPLE_FMT_S16'? SAMPLE_FMT_S16, ctx->acodec->sample_fmt, ^~~~~~ AV_SAMPLE_FMT_S16 /usr/local/include/libavutil/samplefmt.h:52:5: note: 'AV_SAMPLE_FMT_S16' declared here AV_SAMPLE_FMT_S16, ///< signed 16 bits ^ transcode.c:451:4: warning: 'audio_resample_close' is deprecated [-Wdeprecated-declarations] audio_resample_close(ctx->resample_ctx); ^ transcode.c:478:3: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx->fmtctx); ^ transcode.c:491:3: warning: 'av_close_input_file' is deprecated [-Wdeprecated-declarations] av_close_input_file(ctx->fmtctx); ^ transcode.c:497:7: warning: 'audio_resample_close' is deprecated [-Wdeprecated-declarations] audio_resample_close(ctx->resample_ctx); ^ 9 warnings and 2 errors generated. make[3]: * [forked_daapd-transcode.o] Error 1 make[2]: * [all] Error 2 make[1]: * [all-recursive] Error 1 make: * [all] Error 2

couteau commented 11 years ago

Are you trying to compile ffmpeg or forked-daapd? The output in your message looks like it comes from trying to make forked-daapd. Do you have libav*-dev installed? The errors messages in your output suggest you don't. One easy way to make sure you have all the dependencies for building from source is to do apt-get build-dep forked-daapd.

thesimonweaver commented 11 years ago

I have absolutely everything installed, i have it 'working' at the moment, but it certainly isn't stable. But i'm not stressing it anymore, im just streaming music via plex atm. but I am keeping an eye on the project for now, as i dont really have the time atm to mess with it

ejurgensen commented 11 years ago

I think you are getting these errors because avcodec_init and SAMPLE_FMT_S16 have been removed from newer versions of ffmpeg. I've made a fork where forked-daapd has been patched against this, you can give it a try: https://github.com/ejurgensen/forked-daapd. It's the non-GCD-version of forked-daapd. I haven't been able to test it much yet.

freultwah commented 10 years ago

I also made a patch to enable compiling against newer ffmpeg/libav and almost everything worked, but I ran into a problem I could not solve – the newer ffmpeg/libav knows how to extract cover art, which means that there is no longer just one stream reported to forked-daapd, which in turn means that many MP3s get picked up as JPG or MPG and won't get inserted in the database. Does your version fix that, ejurgensen?

ejurgensen commented 10 years ago

No, I just fixed avcodec_init and SAMPLE_FMT_S16 since they were preventing compilation. I began cleaning up the deprecated ones too, but didn't finish that. If you did that I'd like to use it! Do you have your patch available somewhere? I haven't looked at the problem with MP3's with artwork, but I certainly agree it needs fixing. I haven't got any of those MP3's myself, though.

freultwah commented 10 years ago

My set of patches is located at https://www.wuala.com/freultwah/forked-daapd/?key=34hrajGPKyZ3. They apply cleanly to the original 0.19 (non-GCD, but maybe GCD too), but probably will need some tweaking to apply to your tree after all the changes you have made so far. It appears that I also dealt with the SAMPLE_FMT_S16 issue, but I think I did it more inclusively than you had, even if I say so myself, by redefining it and invoking it based on LIBAVCODEC_VERSION_MAJOR. It also seems that I did something with the avcodec_init thing, but I am not really a programmer, so I don't know what I did except that I googled for functions that had been changed/renamed and went over the code with the aim of making it compile. Everything is pretty much self-explanatory: conditional use of libav/ffmpeg functions, plus one change regarding reported file type (ALAC is Apple Lossless, not AAC).

As for the files with embedded artwork, here's a comparison between what libav prior to 0.9 saw them like and what happened after that. As you can see, embedded artwork gets reported as a new stream and an MJPEG one at that, so that file gets picked up as an unknown movie and thus discarded by forked-daapd. If I recall correctly, the fake video stream is not always numbered #0.1, it can also appear before the audio stream. I think one of the ways to go about this is to specify that in the case of audio files – based on the extension (m4a, mp3, ogg, flac) – the scanner only pays attention to the audio stream. Hopefully somebody can make it work, but my own set of skills is sadly not up to the task. (I think I've already posted the output under some other issue here, so sorry for the dupe.)

x<0.9

avconv version 0.8.8, Copyright (c) 2000-2013 the Libav developers built on Jul 15 2013 14:03:21 with clang 3.3 (tags/RELEASE_33/final 183502) [mp3 @ 0x80346a420] max_analyze_duration reached Input #0, mp3, from 'At War With Self. Torn Between Dimensions/01. The God Interface.mp3': Metadata: album : Torn Between Dimensions artist : At War With Self album_artist : At War With Self genre : Progressive Metal title : The God Interface track : 1/10 replaygain_album_peak: 1.00000000 dB replaygain_track_gain: -6.67 dB replaygain_track_peak: 1.00000000 dB replaygain_album_gain: -6.01 dB date : 2005 Duration: 00:04:04.34, start: 0.000000, bitrate: 262 kb/s Stream #0.0: Audio: mp3, 44100 Hz, stereo, s16, 254 kb/s At least one output file must be specified

x>0.9

ffmpeg version 2.0.1 Copyright (c) 2000-2013 the FFmpeg developers built on Aug 20 2013 19:03:19 with Apple LLVM version 4.2 (clang-425.0.27) (based on LLVM 3.2svn) Input #0, mp3, from 'At War With Self. Torn Between Dimensions/01. The God Interface.mp3': Metadata: album : Torn Between Dimensions artist : At War With Self album_artist : At War With Self genre : Progressive Metal title : The God Interface track : 1/10 replaygain_album_peak: 1.00000000 dB replaygain_track_gain: -6.67 dB replaygain_track_peak: 1.00000000 dB replaygain_album_gain: -6.01 dB date : 2005 Duration: 00:04:04.35, start: 0.000000, bitrate: 262 kb/s Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 254 kb/s Stream #0:1: Video: mjpeg, yuvj420p, 1000x884 [SAR 72:72 DAR 250:221], 90k tbr, 90k tbn, 90k tbc Metadata: title : Front comment : Cover (front) At least one output file must be specified

ejurgensen commented 10 years ago

Thank you for your patches, I'm going to see about applying them to my fork. You did it a better way by adding those conditionals. There might be a small issue with your patch to main.c, where you add a call to avcodec_register_all(). I think that call is already there (look around line 581).

I can see I'll need to upgrade my ffmpeg/libav, all my boxes are still running versions old enough to not have the audio/jpeg issue.

freultwah commented 10 years ago

Looking at the code now I realise that there is much more to clean up (CODEC_ID to AV_CODEC_ID and some more deprecated functions to update), but as long as they're only deprecated and compile, I could not be arsed. :) Maybe some other day.

freultwah commented 10 years ago

@ejurgensen There's another patch for you at the same address, under the name of patch-src_filescanner_icy.c. It allows for compiling under FreeBSD.

ejurgensen commented 10 years ago

Awesome, thank you!