[mythtv] Unplayable CBS recordings
david at istwok.net
Sat May 2 00:49:04 UTC 2009
On Sat, May 02, 2009 at 09:20:18AM +1000, Mark Spieth wrote:
>> Could one of the resident MythTV ffmpeg experts take a look to see
>> they can determine the problem. I've placed a short sample at
>> http://istwok.net/ktvt.mpg . I'm also attaching the output I get when
>> I try to play the sample with "mythtv -v playback ktvt.mpg".
> this is amlost certainly an issue with mpeg being recorded with a packet
> at the start which is incorrectly interpreted for codec types (or leads
> to this) and never resyncs.
> a quick fix is something like
> mov f1.mpg f1a.mpg
> dd if=f1a.mpg of=f1.mpg bs=1M skip=1
> this will force a resync of the detected bytestream and will often get it
> right. smaller bs is probably ok too.
I tried that a couple of days ago when the problem first showed up.
It didn't help. It tried it again on a recording from today and still
> another way to properly fix this is if the detected codecs are nonsense
> (anthe they probably are),
> do a redetect starting on a different start byte offset of the file.
> not sure how mplayer gets around this problem.
> there is probably a solution there waiting to be found in mplayer file
> type detection code.
Myth does seem to be getting confused with respect to which stream/PID
to use. Here is a log snippet from an older recording that plays
2009-05-01 19:24:48.415 AFD: Stream #0, has id 0x1984 codec id MPEG2VIDEO, type Video, bitrate 20000000 at 0x0x43f0b070
2009-05-01 19:24:48.421 AFD: Stream #1, has id 0x1985 codec id AC3, type Audio, bitrate 384000 at 0x0x43f0b450
This is correct -- video on 0x1984 and audio on 0x1985. There is also
another stream on id 0x1986, but MythTV seems to ignore it. FWIW,
dvbsnoop identifies the streams on 0x1986 as "PS/PES:
private_stream_1" the same as it does the stream on 0x1985.
Here is the relevant snippet from the ktvt.mpg recording that doesn't
2009-05-01 17:36:07.982 mpegts_add_stream: at pid 0x7c2 with type 6
2009-05-01 17:36:07.982 mpegts_add_stream: stream #0, has id 0x7c2 and codec MPEG1VIDEO, type Video at 0x948fb80
2009-05-01 17:36:07.982 mpegts_add_stream: at pid 0x7c0 with type 2
2009-05-01 17:36:07.983 mpegts_add_stream: stream #1, has id 0x7c0 and codec MPEG2VIDEO, type Video at 0x9490a90
2009-05-01 17:36:07.983 mpegts_add_stream: at pid 0x7c1 with type 129
2009-05-01 17:36:07.983 mpegts_add_stream: stream #2, has id 0x7c1 and codec AC3, type Audio at 0x948f400
2009-05-01 17:36:10.514 AFD: Stream #0, has id 0x1986 codec id MPEG1VIDEO, type Video, bitrate 0 at 0x0x948fb80
2009-05-01 17:36:10.517 AFD: Stream #1, has id 0x1984 codec id MPEG2VIDEO, type Video, bitrate 17750000 at 0x0x9490a90
2009-05-01 17:36:10.521 AFD: Stream #2, has id 0x1985 codec id AC3, type Audio, bitrate 384000 at 0x0x948f400
MythTV seems to be misdetecting the stream on 0x1986 as MPEG1VIDEO and
trying to use it instead of the MPEG2VIDEO stream on 0x1984.
david at istwok.net
More information about the mythtv-dev