Opened 13 years ago

Closed 12 years ago

#2209 closed defect (fixed)

failed (firewire) recordings should fail, not leave 0 byte mpg

Reported by: xris Owned by: jwestfall
Priority: minor Milestone: 0.21
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Just got back from vacation to discover that my house-sitters had apparently turned off my cable box, preventing mythtv from recording anything while I was gone. I'm now left with a dozen or so 0-byte files that I have to "delete and rerecord" -- it would have been nice if mythtv would just fail on these and try to record them later, rather than pretending like they recorded fine.

Change History (7)

comment:1 Changed 13 years ago by jwestfall

Milestone: 0.20
Owner: changed from Isaac Richards to jwestfall

comment:2 Changed 13 years ago by danielk

This is a duplicate of #1648, just a different symptom.

comment:3 Changed 13 years ago by jwestfall

Milestone: 0.200.21

comment:4 Changed 13 years ago by jwestfall

(In [11210]) verify the node is an STB, handle errors from avc1394_transaction_block()

refs #2209

comment:5 Changed 13 years ago by jwestfall

(In [11226]) check power state of the STB, power-on if its off

refs #2209

comment:6 Changed 12 years ago by danielk

(In [12384]) Refs 1648. Refs #2209. Refs #2722. Creates a branch to work on FireWire? recorder.

comment:7 Changed 12 years ago by danielk

Resolution: fixed
Status: newclosed

(In [12618]) Fixes #1648. Fixes #2209. Fixes #2722. Fixes various Firewire problems.

This is a sync from the mythtv-firewire branch, see it for detailed descriptions.

This removes any existing Firewire cards, these must be recreated with GUID. The Linux firewire recorder used the port and node on the bus the STB was on to identify a recorder, this is not unique across bus resets and is not unique in the presence of firewire hubs. The Mac firewire recorder just randomly selected STB's for the recorders. This changes the code to use the GUID, which is unique to each firewire device, to identify which one to use for each recorder.

We required the user to select the STB model, even when we knew this from the vendor and model ID. This automatically selects the proper STB model if we know it, otherwise we default to a channel changer that will work with any AV/C compliant recorder (though it may be slower).

IEEE-1394 Bus resets were not handled properly, particularly in the Linux firewire recorder. This adds a reset handler which will find the recorder if it is still on the bus and resume recording.

We always leaked memory when using libavc later than 5.3, configure will now detect the version and if MythTV is compiled with 5.3 present it will require it and will not leak memory. MythTV will still compile with older versions, but we will still leak memory if the user later upgrades to 5.3 without updating MythTV.

This also merges the IPTV & Firewire TS packet listener classes to a single class in mpeg/streamlisteners.h and merges some Mac & Linux Firewire classes to avoid code duplication.

There is still no channel scanner for firewire and the automatic bus reset code (to deal with 5C channels) has been disabled in the merge due to remaining problems, use the mythtv-firewire branch if you want the latest and greatest.

Note: See TracTickets for help on using tickets.