Your message dated Mon, 14 Mar 2016 21:35:33 +0000
with message-id <e1afa9f-0002qn...@franck.debian.org>
and subject line Bug#803810: fixed in ffdiaporama 1.5-5
has caused the Debian Bug report #803810,
regarding ffdiaporama: FTBFS with FFmpeg 2.9
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
803810: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=803810
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: ffdiaporama
Version: 1.5-4
Severity: important
Tags: patch
User: pkg-multimedia-maintainers@lists.alioth.debian.org
Usertags: ffmpeg2.9

Dear Maintainer,

your package fails to build with the upcoming ffmpeg 2.9.
This bug will become release-critical at some point when the
ffmpeg2.9 transition gets closer.

Attached is a patch replacing the deprecated functionality.
It also works with ffmpeg 2.8.
Please apply this patch and forward it upstream, if necessary.

These changes are non-trivial and should be runtime-tested.

Best regards,
Andreas

diff --git a/debian/patches/ffmpeg_2.9.patch b/debian/patches/ffmpeg_2.9.patch
new file mode 100644
index 0000000..2035493
--- /dev/null
+++ b/debian/patches/ffmpeg_2.9.patch
@@ -0,0 +1,161 @@
+Description: Replace deprecated FFmpeg API
+Author: Andreas Cadhalpun <andreas.cadhal...@googlemail.com>
+Last-Update: <2015-11-02>
+
+--- ffdiaporama-1.5.orig/src/engine/cBaseMediaFile.cpp
++++ ffdiaporama-1.5/src/engine/cBaseMediaFile.cpp
+@@ -1571,7 +1571,7 @@ void cVideoFile::CloseCodecAndFile() {
+     }
+ 
+     if (FrameBufferYUV!=NULL) {
+-        av_free(FrameBufferYUV);
++        av_frame_free(&FrameBufferYUV);
+         FrameBufferYUV=NULL;
+     }
+     FrameBufferYUVReady=false;
+@@ -1680,7 +1680,7 @@ void cVideoFile::ReadAudioFrame(bool Pre
+                     int SizeDecoded     =(AVCODEC_MAX_AUDIO_FRAME_SIZE*3)/2;
+                     int Len             =avcodec_decode_audio3(AudioStream->codec,(int16_t *)BufferToDecode,&SizeDecoded,&PacketTemp);
+                     #else
+-                    AVFrame *Frame      =avcodec_alloc_frame();
++                    AVFrame *Frame      =av_frame_alloc();
+                     int     SizeDecoded =0;
+                     int     Len         =avcodec_decode_audio4(AudioStream->codec,Frame,&SizeDecoded,&PacketTemp);
+                     #endif
+@@ -1723,7 +1723,7 @@ void cVideoFile::ReadAudioFrame(bool Pre
+                         LastAudioReadedPosition =int(FramePosition*1000);    // Keep NextPacketPosition for determine next time if we need to seek
+                     }
+                     #ifndef LIBAV_07
+-                    av_free(Frame);
++                    av_frame_free(&Frame);
+                     #endif
+                 }
+             }
+@@ -1857,9 +1857,9 @@ void cVideoFile::ReadAudioFrame(bool Pre
+                 ToLog(LOGMSG_CRITICAL,QString("Error in cVideoFile::VideoFilter_Open : avfilter_graph_create_filter: src"));
+                 return result;
+             }
+-            std::vector<PixelFormat> m_formats;
+-            m_formats.push_back(PIX_FMT_YUVJ420P);
+-            m_formats.push_back(PIX_FMT_NONE);      /* always add none to get a terminated list in ffmpeg world */
++            std::vector<AVPixelFormat> m_formats;
++            m_formats.push_back(AV_PIX_FMT_YUVJ420P);
++            m_formats.push_back(AV_PIX_FMT_NONE);      /* always add none to get a terminated list in ffmpeg world */
+             AVBufferSinkParams *buffersink_params=av_buffersink_params_alloc();
+             buffersink_params->pixel_fmts=&m_formats[0];
+             #ifdef FF_API_OLD_VSINK_API
+@@ -2043,11 +2048,8 @@ void cVideoFile::ReadAudioFrame(bool Pre
+                 return VC_ERROR;
+             }
+             while (Ret>=0) {
+-                AVFilterBufferRef *m_pBufferRef=NULL;
+-                Ret=av_buffersink_read(VideoFilterOut,&m_pBufferRef);
++                Ret=av_buffersink_get_frame(VideoFilterOut,FrameBufferYUV);
+                 if (Ret<0) break;
+-                avfilter_copy_buf_props(FrameBufferYUV,m_pBufferRef);
+-                FrameBufferYUV->opaque=m_pBufferRef;
+             }
+         #endif
+         return VC_BUFFER;
+@@ -2212,7 +2219,7 @@ QImage *cVideoFile::ReadVideoFrame(bool
+     }
+ 
+     // Allocate structure for YUV image
+-    if (FrameBufferYUV==NULL) FrameBufferYUV=avcodec_alloc_frame();
++    if (FrameBufferYUV==NULL) FrameBufferYUV=av_frame_alloc();
+     if (FrameBufferYUV==NULL) return NULL;
+ 
+     bool            DataInBuffer        =false;
+@@ -2281,13 +2288,6 @@ QImage *cVideoFile::ReadVideoFrame(bool
+         if (av_read_frame(ffmpegVideoFile,StreamPacket)==0) {
+ 
+             if (StreamPacket->stream_index==VideoStreamNumber) {
+-                #if LIBAVFILTER_VERSION_INT>=AV_VERSION_INT(3,1,0)
+-                if (FrameBufferYUV->opaque) {
+-                    avfilter_unref_buffer((AVFilterBufferRef *)FrameBufferYUV->opaque);
+-                    FrameBufferYUV->opaque=NULL;
+-                }
+-                #endif
+-
+                 int FrameDecoded=0;
+                 if (avcodec_decode_video2(VideoStream->codec,FrameBufferYUV,&FrameDecoded,StreamPacket)<0)
+                     ToLog(LOGMSG_INFORMATION,"IN:cVideoFile::ReadVideoFrame : avcodec_decode_video2 return an error");
+@@ -2380,9 +2380,9 @@ QImage *cVideoFile::ReadVideoFrame(bool
+ }
+ 
+ //====================================================================================================================
+-//#define PIXFMT      PIX_FMT_BGRA
++//#define PIXFMT      AV_PIX_FMT_BGRA
+ //#define QTPIXFMT    QImage::Format_ARGB32_Premultiplied
+-#define PIXFMT      PIX_FMT_RGB24
++#define PIXFMT      AV_PIX_FMT_RGB24
+ #define QTPIXFMT    QImage::Format_RGB888
+ 
+ QImage *cVideoFile::ConvertYUVToRGB(bool PreviewMode) {
+@@ -2401,7 +2401,7 @@ QImage *cVideoFile::ConvertYUVToRGB(bool
+     //if (PreviewMode && (H>270)) { if ((H==1088)&&(W=1920)) { NewH=271; NewW=480; } else { NewH=270; NewW=NewH*(double(W)/double(H)); } }    // H=270
+ 
+     QImage   RetImage(NewW,NewH,QTPIXFMT);
+-    AVFrame *FrameBufferRGB =avcodec_alloc_frame();  // Allocate structure for RGB image
++    AVFrame *FrameBufferRGB =av_frame_alloc();  // Allocate structure for RGB image
+ 
+     if (FrameBufferRGB!=NULL) {
+ 
+@@ -2440,7 +2440,7 @@ QImage *cVideoFile::ConvertYUVToRGB(bool
+         }
+ 
+         // free FrameBufferRGB because we don't need it in the future
+-        av_free(FrameBufferRGB);
++        av_frame_free(&FrameBufferRGB);
+     }
+ 
+     //return FinalImage;
+--- ffdiaporama-1.5.orig/src/engine/cDeviceModelDef.h
++++ ffdiaporama-1.5/src/engine/cDeviceModelDef.h
+@@ -57,7 +57,7 @@ extern "C" {
+ 
+     #include <libavutil/mathematics.h>
+     #include <libavutil/pixdesc.h>
+-    #include <libavutil/audioconvert.h>
++    #include <libavutil/channel_layout.h>
+ 
+     #include <libavcodec/avcodec.h>
+ 
+--- ffdiaporama-1.5.orig/src/ffDiaporama/DlgRenderVideo/DlgRenderVideo.cpp
++++ ffdiaporama-1.5/src/ffDiaporama/DlgRenderVideo/DlgRenderVideo.cpp
+@@ -1558,12 +1558,12 @@ void DlgRenderVideo::WriteRenderedMusicT
+         }
+ 
+             // Init frame
+-            AVFrame *frame=avcodec_alloc_frame();
++            AVFrame *frame=av_frame_alloc();
+             if (frame->extended_data!=frame->data) {
+                 av_free(frame->extended_data);
+                 frame->extended_data=NULL;
+             }
+-            avcodec_get_frame_defaults(frame);
++            av_frame_unref(frame);
+             frame->nb_samples=WriteWAV->RenderMusic.SoundPacketSize/(WriteWAV->AudioCodecContext->channels*av_get_bytes_per_sample(WriteWAV->AudioCodecContext->sample_fmt));
+ 
+             // fill buffer
+@@ -1601,7 +1601,7 @@ void DlgRenderVideo::WriteRenderedMusicT
+                 CustomMessageBox(this,QMessageBox::Critical,QApplication::translate("DlgRenderVideo","Render video"),"Error encoding sound!");
+                 *Continue=false;
+             }
+-            av_free(frame);
++            av_frame_free(&frame);
+ 
+         av_free(PacketSound);
+     }
+--- ffdiaporama-1.5.orig/src/ffDiaporama/mainwindow.cpp
++++ ffdiaporama-1.5/src/ffDiaporama/mainwindow.cpp
+@@ -383,9 +383,6 @@ MainWindow::~MainWindow() {
+ 
+     // Close some libav additionnals
+     #ifdef LIBAV_08
+-        #if defined(VIDEO_LIBAVFILTER) || defined(AUDIO_LIBAVFILTER)
+-            avfilter_uninit();
+-        #endif
+         avformat_network_deinit();
+     #endif
+ }
diff --git a/debian/patches/series b/debian/patches/series
index 48238b7..1c92bcb 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 fix_hardening_flags.patch
 libav_0.9.patch
 libav10.patch
+ffmpeg_2.9.patch

--- End Message ---
--- Begin Message ---
Source: ffdiaporama
Source-Version: 1.5-5

We believe that the bug you reported is fixed in the latest version of
ffdiaporama, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 803...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Sebastian Ramacher <sramac...@debian.org> (supplier of updated ffdiaporama 
package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Mon, 14 Mar 2016 21:17:15 +0100
Source: ffdiaporama
Binary: ffdiaporama ffdiaporama-data
Architecture: source all amd64
Version: 1.5-5
Distribution: unstable
Urgency: medium
Maintainer: Debian Multimedia Maintainers 
<pkg-multimedia-maintainers@lists.alioth.debian.org>
Changed-By: Sebastian Ramacher <sramac...@debian.org>
Description:
 ffdiaporama - Movie creator from photos and video clips
 ffdiaporama-data - Data files for ffDiaporama
Closes: 803810
Changes:
 ffdiaporama (1.5-5) unstable; urgency=medium
 .
   * Team upload.
 .
   [ Andreas Cadhalpun ]
   * Fix build with ffmpeg 3.0. (Closes: #803810)
 .
   [ Sebastian Ramacher ]
   * debian/control:
     - Update Standards-Version to 3.9.7.
     - Update Vcs-*.
   * debian/rules:
     - Remove unnecessary override.
     - Build with --parallel.
Checksums-Sha1:
 be171986f3aa588f2be8449c767601ae4a50a71b 2353 ffdiaporama_1.5-5.dsc
 4017ac0d7092b510c9c714b60dc6361f1677994f 12048 ffdiaporama_1.5-5.debian.tar.xz
 7968c4ec39a6800a21c7f6ea399b854779112dbc 13030382 
ffdiaporama-data_1.5-5_all.deb
 ce44956262ffe6a1589d0c4d2100cccf4e5a8fdb 12692132 
ffdiaporama-dbgsym_1.5-5_amd64.deb
 85334e8ec52ee3abf930d7520d57c40504dcf60e 1562790 ffdiaporama_1.5-5_amd64.deb
Checksums-Sha256:
 53b8fe1b71d0d73ebb45b6041780a03b899af52cc5a065340001d6e84117fd1b 2353 
ffdiaporama_1.5-5.dsc
 3c486ec6b56b4d2480287778987d2b7eb555e4c9b6b9b456663fabb05d2c75d6 12048 
ffdiaporama_1.5-5.debian.tar.xz
 b31b4fddb67d25b53447cc26163077635575163a29d0f40e890a0e88b77b0c08 13030382 
ffdiaporama-data_1.5-5_all.deb
 82d33d11b75d9f8c6db7bc0c14452c2ffb60ed094ad6dc91d439a846c9ba89dc 12692132 
ffdiaporama-dbgsym_1.5-5_amd64.deb
 b89c244792a22ca8fddf54946da7ec9019a37ddae811d15671bf6be177cc186a 1562790 
ffdiaporama_1.5-5_amd64.deb
Files:
 39005acc23127b585fa70ac7c18c4d3b 2353 graphics extra ffdiaporama_1.5-5.dsc
 b130007999994a7dfc31cc39c5d360ac 12048 graphics extra 
ffdiaporama_1.5-5.debian.tar.xz
 64c22bf5de57dd214c5ee205d7ef29ad 13030382 graphics extra 
ffdiaporama-data_1.5-5_all.deb
 447ee146eb1a4d93184cd8a780ac513c 12692132 debug extra 
ffdiaporama-dbgsym_1.5-5_amd64.deb
 e41a0e198443ecdb2a2d6659452f48b8 1562790 graphics extra 
ffdiaporama_1.5-5_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJW5yN5AAoJEGny/FFupxmTGwwP/je6VhJD58BgYZ35V63c+Tt8
zMAfwgmAyfOsuLwu7PEul9bt/v1ORd7+NMxrWHwzQwmLz+KwrtD4ny7sZB/gJv0e
LY8TpLhcC1c//0aAukZpixxmqTb+2FN4VvEzth0Az0fPsB4WKMnd4uHX822AxG5t
BeXJArMY3bz/LH35iV4eD0wRkDJiLL3646d9ftzB02KAXiHvOIHHh4l1MeguGkgv
7cyvojG7Yom7zWsOyixSEI1jaY6jd5MDuxyIb7r5Ks3x+Onw+9YqZeXAlVqOIAyD
CTCVg8BfA5aQPhMQ85xwwCUuie4reNRYdDF5H12Cp3/x2RkpkoZuDsDIdV5t69n3
IbGMB7jeK2zxe17PBz18cpnZiaEePOETVX5yBZeIqykG55XfHFHlqiDut8NGjCLH
a1wB9x2PBivVeEfvwzW56hg+8LVvcXLE5GmXyB2p+1UFdlXJRuFM3CrRjVN18OuC
/aksutj3XR9meYEH+1XAjEYUAV9104+6DbaIsQdvkzAlNeuMqAnr4jL80zvnLBYe
mqQ087j5YslvztXb+xPOJffoIyag9yuuV1pgcSLgqVEtUpCIuVuHK9zp9mGoz788
x99RYC36WDs7GaTTOHIARvjJQYQvVwzYPOeN1E6BTE1LFGvM77+p8qk4idBEBQuG
njQMsGC0uaNhELv85qfO
=Sdcu
-----END PGP SIGNATURE-----

--- End Message ---
_______________________________________________
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers

Reply via email to