REGRESSION in ffmpeg support in transcode (intrepid)

Bug #305539 reported by Afiefh
10
Affects Status Importance Assigned to Milestone
transcode (Ubuntu)
Fix Released
Undecided
Unassigned
Intrepid
Fix Released
Undecided
Unassigned
Jaunty
Fix Released
Undecided
Unassigned

Bug Description

Hello,

Please consider this SRU for Intrepid.

This is entirely my fault, I'm afraid. I can only apologise and offer a fix now. A patch I applied to fix an FTBFS in the Intrepid cycle had a typo in it. This causes transcode to fail to encode using ffmpeg in some circumstances (I haven't pinned down exactly which, but I do have a simple testcase).

TEST CASE

Using the intrepid version of transcode, 2:1.0.2-0.8ubuntu10: Find an AVI, call it /path/to/file.avi. Call transcode thus:

  transcode -i path/to/file.avi -y ffmpeg -F mjpeg -N 0x2000

This should transcode the file into mjpeg video and AC3 audio, and send both to /dev/null. Observe the following error:

  transcode: symbol lookup error: /usr/lib/transcode/export_ffmpeg.so: undefined symbol: avcodec_regisiter_all

Install the proposed SRU version, 2:1.0.2-0.8ubuntu10.1 (debdiff at http://launchpadlibrarian.net/21038865/transcode-avcodec-sru.debdiff), and run the same command. The video is transcoded as expected:

  [transcode] encoded 11708 frames (0 dropped, 0 cloned), clip length 390.66 s

REGRESSION POTENTIAL

The functionality is totally broken at the moment, so any regression potential is minimal, barirng some unexpected interaction with other parts of the program. The benefits (being able to encode in more cases) outweigh these miniscule risks.

The bug will be fixed in Jaunty by upgrading to the new upstream version (bug #311202), which includes the correct version of this same patch.

Revision history for this message
Markus (markus-s-mnet-mail) wrote :

This is a typo-bug in the Patch 06_libavcodec.dpatch:
+++++++++++++
#! /bin/sh /usr/share/dpatch/dpatch-run
## 06_libavcodec.patch.dpatch by Iain Lane <email address hidden>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: transcode FTBFS due to libavcodec changes without this patch,
## DP: which was found at <http://bugs.sourcemage.org/show_bug.cgi?id=13866>

@DPATCH@
diff -urNad transcode-1.0.2~/export/aud_aux.c transcode-1.0.2/export/aud_aux.c
--- transcode-1.0.2~/export/aud_aux.c 2005-07-04 08:09:31.000000000 +0100
+++ transcode-1.0.2/export/aud_aux.c 2008-07-08 21:26:01.000000000 +0100
@@ -361,8 +361,7 @@

     pthread_mutex_lock(&init_avcodec_lock);
     avcodec_init();
- register_avcodec(&ac3_encoder);
- register_avcodec(&mp2_encoder);
+ avcodec_regisiter_all();
     pthread_mutex_unlock(&init_avcodec_lock);

     switch (o_codec) {
+++++++++++++++++++

According to http://bugs.sourcemage.org/show_bug.cgi?id=13866 it should read:
++++++++++++++++
- register_avcodec(&ac3_encoder);
- register_avcodec(&mp2_encoder);
+ avcodec_register_all();
++++++++++++++++

I wonder, why no other has experienced this bug?

Revision history for this message
Iain Lane (laney) wrote : Re: REGRESSION in ffmpeg support in transcode

transcode (2:1.0.2-0.8ubuntu10.1) intrepid-proposed; urgency=low

  * debian/patches/06_libavcodec.dpatch: Fix typo in function name which
    prevented encoding using ffmpeg in certain circumstances (LP: #305539).

 -- Iain Lane <email address hidden> Thu, 08 Jan 2009 23:00:45 +0000

description: updated
description: updated
Changed in transcode:
status: New → Confirmed
Revision history for this message
Lionel Le Folgoc (mrpouit) wrote :

This is already fixed in jaunty (2:1.0.7-0ubuntu1).

Changed in transcode:
status: Confirmed → Fix Released
status: New → Confirmed
Revision history for this message
Cody A.W. Somerville (cody-somerville) wrote :

ACK.

Changed in transcode:
assignee: nobody → mrpouit
status: Confirmed → In Progress
Revision history for this message
Lionel Le Folgoc (mrpouit) wrote :

Uploaded to -proposed, waiting for approval. Thanks for your work!

Changed in transcode:
assignee: mrpouit → nobody
status: In Progress → Triaged
Revision history for this message
Jonathan Riddell (jr) wrote :

Accepted into -proposed, please test.

Changed in transcode:
status: Triaged → Fix Committed
Revision history for this message
Iain Lane (laney) wrote :

Can somebody please verify this update works? Thanks

Revision history for this message
Andreas Wenning (andreas-wenning) wrote :

I can verify this.

Using the version from release, I get this error:
transcode: symbol lookup error: /usr/lib/transcode/export_ffmpeg.so: undefined symbol: avcodec_regisiter_all

Upgrading to the version from proposed, and the encoding works.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package transcode - 2:1.0.2-0.8ubuntu10.1

---------------
transcode (2:1.0.2-0.8ubuntu10.1) intrepid-proposed; urgency=low

  * debian/patches/06_libavcodec.dpatch: Fix typo in function name which
    prevented encoding using ffmpeg in certain circumstances (LP: #305539).

 -- Iain Lane <email address hidden> Thu, 08 Jan 2009 23:00:45 +0000

Changed in transcode:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.