Opened 11 years ago

Closed 7 years ago

#5943 closed Bug Report - General (Won't Fix)

mytharchivehelper sometimes returns negative start_time and/or duration=1

Reported by: cowbutt6@… Owned by: paulh
Priority: major Milestone: unknown
Component: Plugin - MythArchive Version: Master Head
Severity: high Keywords: mytharchivehelper negative
Cc: Ticket locked: no

Description

I have an MPEG which is a recording of a UK DVB-T broadcast. Unfortunately, mytharchive cannot burn it to DVD because mytharchive determines that the video length is 1 seconds, and therefore each chapter will be 0 seconds, based on the information mytharchivehelper determines:

From mythburn.log:

Pre-processing recording 3: '/myth/video/1009_20080504185700.mpg' 2008-11-27 13:15:37.182 Opening /myth/video/1009_20080504185700.mpg Input #0, mpegts, from '/myth/video/1009_20080504185700.mpg':

Duration: N/A, bitrate: N/A

Stream #0.0[0xc9]: Video: mpeg2video, inf tb(c) Stream #0.1[0x12d]: Data: 0x0000 Stream #0.2[0x12e]: Data: 0x0000 Stream #0.3[0x12f]: Data: 0x0000 Stream #0.4[0x130]: Data: 0x0000 Stream #0.5[0x131]: Data: 0x0000 Stream #0.6[0x132]: Data: 0x0000 Stream #0.7[0x133]: Data: 0x0000 Stream #0.8[0x191](eng): Audio: mp3 Stream #0.9[0x192](eng): Audio: mp3 Stream #0.10[0x259](eng): Subtitle: dvbsub

2008-11-27 13:15:37.252 duration = 2217714954 2008-11-27 13:15:37.252 Extracting details from: 1009_20080504185700.mpg 2008-11-27 13:15:37.254 chanid: 1009 starttime:2008-05-04T18:57:00 2008-11-27 13:15:37.266 File is a Myth recording. 2008-11-27 13:15:37.268 cutframes = 14108 2008-11-27 13:15:37.268 cutduration = 0 streaminfo.xml :- <?xml version="1.0" ?><!DOCTYPE FILEINFO><file cutduration="2217714954" duration="2217714954" filename="/myth/video/1009_20080504185700.mpg" type="mpegts">

<streams count="11">

<video aspectratio="N/A" bitrate="0" codec="mpeg2video" ffmpegindex="0" fps="90000" height="0" id="201" start_time="-2077252342.-775808" streamindex="0" width="0"/> <data codec="Data: 0x0000" streamindex="1"/> <data codec="Data: 0x0000" streamindex="2"/> <data codec="Data: 0x0000" streamindex="3"/> <data codec="Data: 0x0000" streamindex="4"/> <data codec="Data: 0x0000" streamindex="5"/> <data codec="Data: 0x0000" streamindex="6"/> <data codec="Data: 0x0000" streamindex="7"/> <audio bitrate="0" channels="0" codec="mp3" ffmpegindex="1" id="401" language="eng" samplerate="0" start_time="-2077252342.-775808" streamindex="8"/> <audio bitrate="0" channels="0" codec="mp3" ffmpegindex="2" id="402" language="eng" samplerate="0" start_time="-2077252342.-775808" streamindex="9"/> <subtitle codec="dvbsub" ffmpegindex="3" id="601" language="eng" streamindex="10"/>

</streams>

</file>

Inside the Medieval Mind

Video resolution is 0 by 0

Project-X has the right idea:

summary of created media files: .Video (m2v): 85033 Frames 00:56:41.320 '/tmp/mytharchive-temp/work/3/1009_20080504185700.m2v' Audio 00 (mp2): 141722 Frames 00:56:41.328 0-0-2-0 '/tmp/mytharchive-temp/work/3/1009_20080504185700.mp2' SubPicture? 00: 586 subpictures '/tmp/mytharchive-temp/work/3/1009_20080504185700.sup' => 1,575,838,096 bytes written...

Of course, a 1 second long video results in some rather short chapters:

Sub-menu 3 Video length is 1 seconds. Each chapter will be 0 seconds Extracting thumbnail images from: /tmp/mytharchive-temp/work/3/stream.mv2 - at 0,0,0,0,0,0,0,0, Destination file /tmp/mytharchive-temp/work/3/chapter-%1.jpg [mpeg2video @ 0x5cf9000]warning: first frame is no keyframe [mpeg2video @ 0x5cf9000]warning: first frame is no keyframe Image (720, 576) into space of (145, 110) at (55, 45) Image resized to (145, 110) at (55, 45) Added image /tmp/mytharchive-temp/work/3/chapter-1.jpg Wrapped text = 00:00:00 .1 Wrapped text = Inside the Medieval Mind Wrapped text = Belief Wrapped text = (Sun May 04 07:00 PM (00:00:01 Wrapped text = Leading authority on the Middle Ages, Professor Robert Bartlett, presents a series Wrapped text = which examines the way we thought during Medieval times. Our forebears believed Wrapped text = they shared the world with the dead and that angels and demons battled for control of Wrapped text = human souls. As the church's grip on our beliefs increased, men and women were Wrapped text = .dragged before religious courts and multitudes were killed in the name of God Image (720, 576) into space of (145, 110) at (210, 45) Image resized to (145, 110) at (210, 45) Added image /tmp/mytharchive-temp/work/3/chapter-2.jpg Wrapped text = 00:00:00 .2 Image (720, 576) into space of (145, 110) at (365, 45) Image resized to (145, 110) at (365, 45) Added image /tmp/mytharchive-temp/work/3/chapter-3.jpg Wrapped text = 00:00:00 .3 Image file (/tmp/mytharchive-temp/work/3/chapter-4.jpg) does not exist Image file does not exist '/tmp/mytharchive-temp/work/3/chapter-4.jpg' Wrapped text = 00:00:00 .4 Image file (/tmp/mytharchive-temp/work/3/chapter-5.jpg) does not exist Image file does not exist '/tmp/mytharchive-temp/work/3/chapter-5.jpg' Wrapped text = 00:00:00 .5 Image file (/tmp/mytharchive-temp/work/3/chapter-6.jpg) does not exist Image file does not exist '/tmp/mytharchive-temp/work/3/chapter-6.jpg' Wrapped text = 00:00:00 .6 Image file (/tmp/mytharchive-temp/work/3/chapter-7.jpg) does not exist Image file does not exist '/tmp/mytharchive-temp/work/3/chapter-7.jpg' Wrapped text = 00:00:00 .7 Image file (/tmp/mytharchive-temp/work/3/chapter-8.jpg) does not exist Image file does not exist '/tmp/mytharchive-temp/work/3/chapter-8.jpg' Wrapped text = 00:00:00 .8

but eventually, the killer is mythburn.py trying to calcSyncOffset():

Traceback (most recent call last):

File "/usr/share/mythtv/mytharchive/scripts/mythburn.py", line 5429, in main

processJob(job)

File "/usr/share/mythtv/mytharchive/scripts/mythburn.py", line 5185, in processJob

calcSyncOffset(filecount))

File "/usr/share/mythtv/mytharchive/scripts/mythburn.py", line 676, in calcSyncOffset

video_start = float(video.attributesstart_time?.value)

ValueError?: invalid literal for float(): -2077252342.-775808

Unfortunately none of mytharchivehelper's 3 length calculation methods help:

Method 0:

2008-11-27 14:36:22.368 Opening /myth/video/1009_20080504185700.mpg Input #0, mpegts, from '/myth/video/1009_20080504185700.mpg':

Duration: N/A, bitrate: N/A

Stream #0.0[0xc9]: Video: mpeg2video, inf tb(c) Stream #0.1[0x12d]: Data: 0x0000 Stream #0.2[0x12e]: Data: 0x0000 Stream #0.3[0x12f]: Data: 0x0000 Stream #0.4[0x130]: Data: 0x0000 Stream #0.5[0x131]: Data: 0x0000 Stream #0.6[0x132]: Data: 0x0000 Stream #0.7[0x133]: Data: 0x0000 Stream #0.8[0x191](eng): Audio: mp3 Stream #0.9[0x192](eng): Audio: mp3 Stream #0.10[0x259](eng): Subtitle: dvbsub

2008-11-27 14:36:22.481 duration = 2217714954 2008-11-27 14:36:22.481 Extracting details from: 1009_20080504185700.mpg 2008-11-27 14:36:22.485 chanid: 1009 starttime:2008-05-04T18:57:00 2008-11-27 14:36:22.530 File is a Myth recording. 2008-11-27 14:36:22.531 cutframes = 14108 2008-11-27 14:36:22.531 cutduration = 0

Method 1:

2008-11-27 14:36:26.027 Opening /myth/video/1009_20080504185700.mpg Input #0, mpegts, from '/myth/video/1009_20080504185700.mpg':

Duration: N/A, bitrate: N/A

Stream #0.0[0xc9]: Video: mpeg2video, inf tb(c) Stream #0.1[0x12d]: Data: 0x0000 Stream #0.2[0x12e]: Data: 0x0000 Stream #0.3[0x12f]: Data: 0x0000 Stream #0.4[0x130]: Data: 0x0000 Stream #0.5[0x131]: Data: 0x0000 Stream #0.6[0x132]: Data: 0x0000 Stream #0.7[0x133]: Data: 0x0000 Stream #0.8[0x191](eng): Audio: mp3 Stream #0.9[0x192](eng): Audio: mp3 Stream #0.10[0x259](eng): Subtitle: dvbsub

2008-11-27 14:36:26.068 Calculating frame count [NULL @ 0x5cf9000]Junk in packet 2008-11-27 14:37:28.262 frames = 103095 2008-11-27 14:37:28.262 duration = 1 2008-11-27 14:37:28.265 Extracting details from: 1009_20080504185700.mpg 2008-11-27 14:37:28.268 chanid: 1009 starttime:2008-05-04T18:57:00 2008-11-27 14:37:28.308 File is a Myth recording. 2008-11-27 14:37:28.310 cutframes = 14108 2008-11-27 14:37:28.310 cutduration = 0

Method 2:

2008-11-27 14:38:02.014 Opening /myth/video/1009_20080504185700.mpg Input #0, mpegts, from '/myth/video/1009_20080504185700.mpg':

Duration: N/A, bitrate: N/A

Stream #0.0[0xc9]: Video: mpeg2video, inf tb(c) Stream #0.1[0x12d]: Data: 0x0000 Stream #0.2[0x12e]: Data: 0x0000 Stream #0.3[0x12f]: Data: 0x0000 Stream #0.4[0x130]: Data: 0x0000 Stream #0.5[0x131]: Data: 0x0000 Stream #0.6[0x132]: Data: 0x0000 Stream #0.7[0x133]: Data: 0x0000 Stream #0.8[0x191](eng): Audio: mp3 Stream #0.9[0x192](eng): Audio: mp3 Stream #0.10[0x259](eng): Subtitle: dvbsub

2008-11-27 14:38:02.074 Extracting details from: 1009_20080504185700.mpg 2008-11-27 14:38:02.076 chanid: 1009 starttime:2008-05-04T18:57:00 2008-11-27 14:38:02.081 File is a Myth recording. 2008-11-27 14:38:02.170 frames = 99145 2008-11-27 14:38:02.171 duration = 1 2008-11-27 14:38:02.171 Extracting details from: 1009_20080504185700.mpg 2008-11-27 14:38:02.171 chanid: 1009 starttime:2008-05-04T18:57:00 2008-11-27 14:38:02.174 File is a Myth recording. 2008-11-27 14:38:02.175 cutframes = 14108 2008-11-27 14:38:02.175 cutduration = 0

Presumably, the MPEG source file is corrupt in some way, but that's broadcast for you; mytharchivehelper needs to find a way of handling it.

Change History (9)

comment:1 Changed 11 years ago by Dibblah

Status: newassigned

comment:2 Changed 11 years ago by paulh

Status: assignedinfoneeded

I'd like to see if I can reproduce this myself what channel was this recorded on? Could it be one of the part time channels like BBC3/4 and you started recording before it had started properly and was still showing the interactive banner thing?

comment:3 in reply to:  2 Changed 11 years ago by anonymous

Replying to paulh:

Yup, channel 1009 is BBC 4. I made the original recording many months ago, but looking at my current listings, it appears that BBC 4 doesn't start until 1900 hrs today, so assuming that was still the case in May, I expect the recording probably does have three minutes of 'Welcome to BBC 4' banner at the beginning, so your theory is entirely plausible.

comment:4 Changed 10 years ago by danielk

Resolution: invalid
Status: infoneededclosed

Appears to have been due to broadcaster not being officially broadcasting yet and transmitting bogus data.

comment:5 Changed 10 years ago by danielk

Resolution: invalid
Status: closednew

Sorry, misunderstood. The recording starts not before the channel goes on-line at all, but just before it goes on-line for the day. We should of course be able to handle that.

comment:6 Changed 10 years ago by stuartm

Component: mytharchivePlugin - MythArchive
Status: newassigned

comment:7 Changed 8 years ago by cowbutt6@…

I've uploaded a short (80MB) sample to http://www.mediafire.com/?37rievx1dp2bab4 which should demonstrate this problem.

comment:8 Changed 7 years ago by stuartm

Type: defectBug Report - General
Version: unknownMaster Head

comment:9 Changed 7 years ago by paulh

Resolution: Won't Fix
Status: assignedclosed

This is a 3 year old ticket that needs to be put out of its misery. If someone wants to provide a patch I will look at it but not something I want to spend any time on. Not even sure if it's still a problem after all this time?

Note: See TracTickets for help on using tickets.