Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 383513

Summary: >media-video/transcode-1.0.7 can handle only the first audio track when transcoding from media-video/dvdrip
Product: Gentoo Linux Reporter: Kai Damm <cepheus11>
Component: Current packagesAssignee: Gentoo Media-video project <media-video>
Status: UNCONFIRMED ---    
Severity: normal CC: pacho
Priority: Normal Keywords: PMASKED
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---

Description Kai Damm 2011-09-18 16:45:12 UTC
With transcode versions after 1.0.7, I cannot rip a DVD if I want more then one  audio track. I use media-video/dvdrip, container format AVI, video codec xvid.

Reproducible: Always

Steps to Reproduce:
1. Insert a DVD with a multi language movie.
2. Run media-video/dvdrip.
3. Create a new project, scan the drive and rip the suggested track.
4. Change to "Transcode" tab.
5. Under "Audio options", press "Multi" and select second source track as first target track, and first source track as second target track.
6. Press "Transcode" Button.

Actual Results:  
After a while, the process fails with an error message from avilib stating "file has no video output"

Expected Results:  
Successful transcoding of video and second source audio track, subsequent merge of first source audio track.

Dvdrip transcodes the second target audio track separately and then merges. The merge exits with a failure, but the actual problem is the first step: It creates an AVI file without a video track. Dvdrip does not catch the error, but stops on the unexpected resulting file.

This is the transcode command line and output, when run on its own:

$ transcode -Y 52,0,50,0 -A --progress_rate 25 -D 0 -w 1035,25 --progress_meter 2 -i /home/kai/dvdrip-data/Matrix/vob/001/ -y xvid -N 0x2000 -Z 720x406 -M 3 -x vob -a 1 -H 10 -o /home/kai/dvdrip-data/Matrix/avi/001/Matrix-001.avi -f 25.000
transcode v1.1.5 (C) 2001-2003 Thomas Oestreich, 2003-2009 Transcode Team
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdread: Couldn't find device name.
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdread: Couldn't find device name.
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
[transcode] V: auto-probing     | /home/kai/dvdrip-data/Matrix/vob/001/ (OK)
[transcode] V: import format    | MPEG 2 program stream in  (module=vob)
[transcode] A: auto-probing     | /home/kai/dvdrip-data/Matrix/vob/001/ (OK)
[transcode] A: import format    | AC3 in  (module=vob)
[transcode] V: AV demux/sync    | (3) sync AV at initial PTS
[transcode] V: import frame     | 720x576  1.25:1  encoded @ 16:9
[transcode] V: zoom             | 720x406  1.77:1 (Lanczos3)
[transcode] V: clip frame (->)  | 720x304
[transcode] V: bits/pixel       | 0.189
[transcode] V: decoding fps,frc | 25.000,0
[transcode] V: video format     | YUV420 (4:2:0) aka I420
[transcode] A: import format    | 0x2000  AC3          [48000,16,2]  384 kbps
[transcode] A: export format    | 0x2000  AC3          [48000,16,2]  384 kbps
[transcode] V: export format    | unknown (module dependant)
[transcode] V: encoding fps,frc | 25.000,3
[transcode] A: bytes per frame  | 7680 (7680.000000)
[transcode] A: adjustment       | 0@1000
[transcode] A: AV shift         | 23 ms [ 0 (A) | 23 ms ]
[transcode] V: IA32/AMD64 accel | sse3 sse2 sse mmx cmove asm 
[transcode] V: video buffer     | 10 @ 720x576 [0x2]
[transcode] A: audio buffer     | 10 @ 48000x2x16
[] v0.6.1 (2006-05-02) (video) MPEG-2 | (audio) MPEG/AC3/PCM | (subtitle)
[] v0.0.6 (2007-08-11) (video) XviD 1.0.x series (aka API 4.0) | (audio) MPEG/AC3/PCM
[] tccat -i "/home/kai/dvdrip-data/Matrix/vob/001/" -t vob -d 0 -S 0 | tcdemux -M 3 -a 1 -x ac3 -S 0 -d 0 | tcextract -t vob -a 0 -x ac3 -d 1 | tcextract -t raw -x ac3 -d 0
[] tccat -i "/home/kai/dvdrip-data/Matrix/vob/001/" -t vob -d 0 -S 0 | tcdemux -s 0x81 -x mpeg2 -S 0 -M 3 -d 0 | tcextract -t vob -a 0 -x mpeg2 -d 0 | tcdecode -x mpeg2 -d 0 -y yuv420p
[] warning: Error opening configuration file ./xvid4.cfg: No such file or directory
[transcode] AC3->AC3
[] warning: Usage of this module for audio encoding is deprecated.
[] warning: Consider switch to export_tcaud module.
[decode_mpeg2.c] libmpeg2 acceleration: mmxext
[iodir.c] warning: left out 3 directory entries
[decoder.c] cancelling the import threads
[transcode] encoded 0 frames (0 dropped, 0 cloned), clip length   0.00 s

The same with "-a 0" works. The text output until "libmpeg2 acceleration: mmxext" is the same. Then transcode spams the console with "[audio_trans.c] critical: Sorry, only PCM audio is supported for processing", but the resulting video file seems okay, including the DVD's first audio track.

Relevant package versions and use flags:

[ebuild   R    ] media-video/ffmpeg-0.7.4  USE="3dnow 3dnowext X aac alsa bzip2 encode hardcoded-tables mmx mmxext mp3 sdl ssse3 theora threads truetype vorbis x264 xvid zlib (-altivec) -amr -avx -bindist (-celt) -cpudetection -custom-cflags -debug -dirac -doc -faac -frei0r -gsm -ieee1394 -jack -jpeg2k -network -oss -pic -qt-faststart -rtmp -schroedinger -speex -static-libs -test -v4l -v4l2 -vaapi -vdpau -vpx" VIDEO_CARDS="-nvidia" 0 kB

[ebuild   R    ] media-video/transcode-1.1.5-r2  USE="X a52 aac alsa dvd iconv imagemagick jpeg mmx mp3 mpeg ogg sdl sse sse2 theora truetype vorbis x264 xml xvid -3dnow (-altivec) -dv -lzo -mjpeg -nuv -oss -postproc -quicktime -v4l2" 0 kB

[ebuild   R    ] media-video/dvdrip-0.98.11  USE="ffmpeg mplayer ogg subtitles vorbis xine xvid -fping -vcd" 0 kB

emerge --info:

Portage (default/linux/amd64/10.0/desktop/kde, gcc-4.4.5, glibc-2.12.2-r0, 2.6.39-gentoo-r3-io-20110717-02 x86_64)
System uname: Linux-2.6.39-gentoo-r3-io-20110717-02-x86_64-Intel-R-_Core-TM-2_Duo_CPU_E8400_@_3.00GHz-with-gentoo-2.0.3
Timestamp of tree: Sat, 17 Sep 2011 00:45:01 +0000
app-shells/bash:          4.1_p9
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.1-r1, 3.1.3-r1
dev-util/cmake:           2.8.4-r1
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.8.3-r1
sys-apps/sandbox:         2.4
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.4.5
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: (virtual/os-headers)
sys-libs/glibc:           2.12.2
Repositories: gentoo x-portage
CFLAGS="-march=native -O2 -pipe"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
EMERGE_DEFAULT_OPTS="--keep-going --with-bdeps y -j 4 --load-average=2"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync webrsync-gpg"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3 -l 2"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
USE="X a52 aac acl alsa amd64 berkdb bidi branding bzip2 cairo cdda cli consolekit cracklib crypt css cups custom-optimization cxx dbus declarative dri dts dvd dvdr emboss encode exif fam ffmpeg firefox flac fontconfig fortran gdbm gdu gif gnutls gpm graphviz gtk iconv imagemagick ipv6 java jpeg kde kipi lcms ldap libnotify lm_sensors lzma mad matroska mikmod mmx mng modules mp3 mp4 mpeg mtp mudflap multilib ncurses nls nptl nptlonly nsplugin nvidia offensive ogg opengl openmp pam pango pcre pdf perl phonon plasma png policykit ppds pppd python qt3support qt4 readline sdl semantic-desktop session spell sse sse2 sse3 sse4 ssl ssse3 startup-notification svg sysfs tcpd theora threads tiff truetype udev unicode usb vorbis x264 xcb xcomposite xine xml xorg xpm xscreensaver xulrunner xv xvid zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LINGUAS="de" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nouveau vesa" XFCE_PLUGINS="menu"
Comment 1 Kai Damm 2011-09-18 16:48:49 UTC
I forgot to mention that audio format is AC3 (passthrough) for both audio tracks (between steps 5 and 6).
Comment 2 Kai Damm 2011-10-15 10:35:58 UTC
tcextract seems to be broken. Commands are from transcode's output:

$ tccat -i "/home/kai/dvdrip-data/Matrix/vob/001/" -t vob -d 0 -S 0 | tcdemux -M 1 -a 1 -x ac3 -S 0 -d 0 > audio1.ac3
[iodir.c] warning: left out 3 directory entries

The above command creates an AC3 file with only the second audio track. If I add the next step (the first of two tcextract commands):

$ tccat -i "/home/kai/dvdrip-data/Matrix/vob/001/" -t vob -d 0 -S 0 | tcdemux -M 1 -a 1 -x ac3 -S 0 -d 0 | tcextract -t vob -a 0 -x ac3 -d 1 > audio1.ac3
[iodir.c] warning: left out 3 directory entries

This creates a 0-Byte audio1.ac3.
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2011-12-06 07:51:59 UTC
How is transcode-1.1.7?
Comment 4 Kai Damm 2011-12-06 10:08:44 UTC
No, same problem with transcode-1.1.7.
Comment 5 Pacho Ramos gentoo-dev 2015-03-21 16:24:57 UTC
Are you sure this is a transcode fault and not simply dvdrip breaking because of being stalled for some ages? (and then not being adapted to the recent tools) :/