I'm trying to encode some Firefly episodes so that my wife can watch them on her netbook (no DVD drive!).

I'm using dvd::rip and transcode seems to randomly hang during encoding near the end of the file.

If I kill and restart the encoding, it'll sometimes get past the point where it failed, however I've come across one particular chapter where it consistently hangs.

The particular command is:
transcode -H 10 -a 0 -x vob -i ../vob/001-C006 -w 1437,50 -b 160,0,2 -s 1.496 --a52_drc_off -J normalize -f 30,4 -M 2 --export_par 118,100 -y xvid,null --psu_mode --nav_seek firefly1-001-C006-nav.log --no_split --progress_meter 1 --progress_rate 25 -o /dev/null -R 1

The last line it prints is:
encoding frames [0-5900], 59.76 fps, CFT: 0:03:16, (13| 0| 7)


I've also tried doing a 1-pass encode:
transcode -H 10 -a 0 -x vob -i ../vob/001-C002 -w 5 -b 160,0,2 -s 1.496 --a52_drc_off -J normalize -f 30,4 -M 2 --export_par 118,100 -y xvid,null --psu_mode --no_split --progress_meter 1 --progress_rate 1 -o ../avi/001/firefly1-001-C002.avi

sometimes it'll hang after printing:
encoding frames [0-10545], 41.21 fps, CFT: 0:05:51, (17| 0| 3)

And sometimes it'll complete:
[transcode] encoded 10546 frames (-2104 dropped, 0 cloned), clip length 351.88 s


Is there any debugging/further information that I can turn on? Does anybody have any suggestions?

Distro: openSuSE 11.2

Kernel uname -a: Linux challenger 2.6.31.8-0.1-desktop #1 SMP PREEMPT 2009-12-15 23:55:40 +0100 i686 i686 i386 GNU/Linux

Transcode version: transcode-1.1.5-0.pm.8.3.i586

link|improve this question
feedback

2 Answers

Have you tried another tool, like Handbrake? If it hangs in the same spot maybe you've got scratches on the disc that prevent getting a good rip of the source data.

Other Linux encoding tools to try would be ffmpeg and mencoder.


Update: Read through the Transcode FAQ about various problems. In particular, there's a known issue that results in hangs:

I still have a problem and it hasn't been discussed before.

If your problem is that transcode "hangs" immediately, or even after some time, you may be experiencing the venerable old thread-version problem.

If running transcode this way: "env LD_ASSUME_KERNEL=2.4.0 transcode ..." fixes the problem, then it's thread version issues, not transcode, that's at fault.

See: http://people.redhat.com/drepper/assumekernel.html

This advice seems old and very possibly outdated, but it won't hurt to try. I'm not sure what "venerable old thread-version" means; I assume it's referring to a mismatch between the thread library on your system, and the thread library used to compile the transcode package that you're using. (I'm also assuming you installed transcode as a binary package, probably through your system's package manager, possibly downloaded from a nonstandard repository?)

If that's the case, you may be able to get rid of the mismatch by compiling your own local copy of transcode. (For RPM-based package managers, this entails finding the SRPM that was used to compile your binary transcode package, installing whatever packages are necessary to compile transcode, and using RPM to build a new transcode package.)

link|improve this answer
+1 for the ffmpeg solution; doubtful about Handbrake: I tried and it seems not that mature. Do you have a nice experience with that software? – dag729 Jan 28 '10 at 16:50
The data is already ripped to disk and the data is good. As I noted afterwards, I can run it twice and have it hang once. – MikeyB Jan 28 '10 at 16:59
1  
@dag: i don't use any of these tools on a regular basis, just every once in a blue moon. Handbrake's been pretty highly recommended but no, i haven't used it. (also, side note, saying "+1 for this" without actually voting the answer up seems kinda rude.) – quack quixote Jan 28 '10 at 17:24
@quack: I tried but it says "Vote too old to be changed": something happened... – dag729 Jan 28 '10 at 17:53
1  
I use Handbrake. It's good stuff. Make sure you're using version 0.9.4 or higher. It's a major update. – Ryan Thompson Jan 28 '10 at 23:03
show 5 more comments
feedback

maybe it's not related to the very problem, but you used -o /dev/null, that (if I am not wrong) it is as to say "let drop my output away"...I would try to -o ~/Desktop/firefly_001.avi or whetever extension you wish.

I hope to hear from you soon,

Regards

link|improve this answer
-o /dev/null is correct for the first pass of a multi-pass encode. Besides, the problem isn't that no output is produced. – MikeyB Jan 28 '10 at 16:59
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.