[mythtv-commits] Ticket #12512: Transcoding corrupts most files

MythTV noreply at mythtv.org
Tue Sep 29 22:40:51 UTC 2015


#12512: Transcoding corrupts most files
----------------------------------------+------------------------
     Reporter:  toad@…                  |      Owner:  jyavenard
         Type:  Bug Report - General    |     Status:  new
     Priority:  minor                   |  Milestone:  unknown
    Component:  MythTV - Mythtranscode  |    Version:  0.27-fixes
     Severity:  medium                  |   Keywords:
Ticket locked:  0                       |
----------------------------------------+------------------------
 The first few seconds of the file can be played normally and then the rest
 have no sound and half-speed video. Even with -v, mythfrontend does not
 report any consistent error messages when playing the corrupted files.
 This appears to be a video problem rather than a sound problem, as mplayer
 says "Too many video packets" etc (both mplayer and vlc play the video but
 the sound drops out). This happens for a large proportion of transcoded
 files. It may be related to errors in transcoding (apparently in audio),
 but the transcodes complete successfully, replacing the MPG with an NUV.
 People on IRC said that this is because MythTV uses a fork of XViD
 internally which is unsupported and flaky, but at least the documentation
 should be fixed in that case.

 This is using packages built from the packaging repo and the 0.27-fixes
 branch. Settings include MPEG4 with high bitrates (1900kbps), 1 for audio
 (i.e. copy it), and high quality and 4MV.

 Odd transcoding messages:

 Sep 23 13:40:28 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext main.cpp:569 (main) Transcoding from
 /stuff/mp3/video/mythtv/1001_20150923123600.mpg to
 /stuff/mp3/video/mythtv/1001_20150923123600.mpg.tmp
 ...
 Sep 23 13:40:37 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext transcode.cpp:111 (GetProfile) Transcode: Looking for
 autodetect profile: Autodetect from 576i
 Sep 23 13:40:37 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext transcode.cpp:136 (GetProfile) Transcode: Using autodetect
 profile: Autodetect from 576i
 Sep 23 13:40:37 localhost mythtranscode: mythtranscode[26173]: I
 CoreContext transcode.cpp:1020 (TranscodeFile) Copying Audio while
 transcoding Video

 ****
 Sep 23 13:42:02 localhost mythtranscode: mythtranscode[26173]: E
 VideoDecodeBuffer avformatdecoder.cpp:4773 (ProcessAudioPacket) AFD:
 Unknown audio decoding error
 Sep 23 13:42:04 localhost mythtranscode: mythtranscode[26173]: E
 VideoDecodeBuffer avformatdecoder.cpp:4955 (GetFrame) decoding
 error#012#011#011#011eno: Unknown error 541478725 (541478725)
 ****

 Sep 23 13:42:04 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext main.cpp:700 (main) Transcoding
 /stuff/mp3/video/mythtv/1001_20150923123600.mpg done
 Sep 23 13:42:04 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext main.cpp:818 (WaitToDelete) Transcode: delete old file:
 waiting while program is in use.
 Sep 23 13:42:04 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext main.cpp:850 (WaitToDelete) Transcode: program is no longer in
 use.
 Sep 23 13:42:05 localhost mythtranscode: mythtranscode[26173]: N
 CoreContext main.cpp:749 (transUnlink) Requesting delete for file
 'myth://Default@servalan/1001_20150923123600.mpg.old'.
 Sep 23 13:42:05 localhost mythtranscode: mythtranscode[26173]: I
 CoreContext mythcontext.cpp:1194 (~MythContext) Waiting for threads to
 exit.

 mythbackend.log: Complains about a missing file, but then it uses the NUV
 anyway:

 Sep 23 13:40:27 localhost mythbackend: mythbackend[20111]: I
 Transcode_5411648 jobqueue.cpp:1991 (DoTranscodeThread) JobQueue:
 Transcode Starting for "Test3 (Manual Record)":"2015-09-23 13:35:00":
 Autodetect (85.3 MB)

 Sep 23 13:42:11 localhost mythbackend: mythbackend[20111]: E
 Transcode_5411648 programinfo.cpp:2358 (GetPlaybackURL)
 ProgramInfo(1001_20150923123600.mpg): GetPlaybackURL:
 '1001_20150923123600.mpg' should be local, but it can not be found.

 Sep 23 13:42:11 localhost mythbackend: mythbackend[20111]: I
 Transcode_5411648 jobqueue.cpp:2087 (DoTranscodeThread) JobQueue:
 Transcode Finished: "Test3 (Manual Record)":"2015-09-23 13:35:00": could
 not stat
 'GetPlaybackURL/UNABLE/TO/FIND/LOCAL/FILE/ON/servalan/1001_20150923123600.mpg'

 Watching the directory:

 -rw-r--r-- 1 mythtv mythtv   89495896 Sep 23 13:40 1001_20150923123600.mpg
 -rw-r--r-- 1 mythtv mythtv   73929822 Sep 23 13:42
 1001_20150923123600.mpg.tmp
 ->
 -rw-r--r-- 1 mythtv mythtv   73946735 Sep 23 13:42 1001_20150923123600.nuv

 This makes documented functionality unusable for me, in spite of there not
 being any warnings about it. If the default transcoder options are likely
 to eat your files, this should be documented.

--
Ticket URL: <https://code.mythtv.org/trac/ticket/12512>
MythTV <http://www.mythtv.org>
MythTV Media Center


More information about the mythtv-commits mailing list