Please read the Ticket HowTo before creating or commenting on a ticket. Failure to do so may cause your ticket to be rejected or result in a slower response.
Opened 4 years ago
Last modified 4 months ago
#7205 new Patch - Feature
Add Support for ASIRecorder style PSIP generation to FirewireRecorder
| Reported by: | Marc Randolph <mrand@…> | Owned by: | danielk |
|---|---|---|---|
| Priority: | minor | Milestone: | unknown |
| Component: | MythTV - Recording | Version: | Master Head |
| Severity: | medium | Keywords: | |
| Cc: | Ticket locked: | no |
Description
Forwarding from downstream. Problem as I understand it is that the SA8300HD works fine when using test-mpeg2, but myth has trouble capturing the stream. Here is an example:
http://dl.getdropbox.com/u/1578989/test.mpg
backend log:
2009-09-27 14:07:49.550 scheduler: Scheduled items: Scheduled 289 items in 1.6 = 0.00 match + 1.62 place 2009-09-27 14:07:49.559 TVRec(6): RecordPending on inputid 7 2009-09-27 14:07:49.560 TVRec(6): StartRecording(NFL Football) 2009-09-27 14:07:49.560 TVRec(6): ASK_RECORDING 6 0 0 0 2009-09-27 14:07:49.643 adding: mythtv as a client (events: 1) 2009-09-27 14:07:49.732 TVRec(6): StartedRecording(0x93bd2c8) fn(/tv/d3/1811_20090927140800.mpg) 2009-09-27 14:07:49.732 TVRec(6): ClearFlags(CancelNextRecording,) -> RunMainLoop, 2009-09-27 14:07:49.732 TVRec(6): Changing from None to Watching RecordingOnly 2009-09-27 14:07:49.732 TVRec(6): ClearFlags(FrontendReady,CancelNextRecording,) -> RunMainLoop, 2009-09-27 14:07:49.732 TVRec(6): Request: Program(yes) channel() input() flags(Recording,) 2009-09-27 14:07:49.733 TVRec(6): HW Tuner: 6->6 2009-09-27 14:07:49.734 TVRec(6): ClearFlags(PENDINGACTIONS,) -> RunMainLoop, 2009-09-27 14:07:49.734 TVRec(6): No recorder yet, calling TuningFrequency 2009-09-27 14:07:49.734 FireChan(0022CECC76B00000): Open() 2009-09-27 14:07:49.736 FireChan(0022CECC76B00000): SetChannelByString(3) 2009-09-27 14:07:49.738 SetChannelByNumber(81) 2009-09-27 14:07:49.738 FireDev(0022CECC76B00000): Requesting STB Power State 2009-09-27 14:07:49.740 FireDev(0022CECC76B00000): STB Power State: On 2009-09-27 14:07:49.740 SetChannel(model GENERIC, alt 0, chan 81) 2009-09-27 14:07:49.741 SetChannel() -- locked 2009-09-27 14:07:49.745 SetLastChannel(81): cleared: yes 2009-09-27 14:07:49.745 FireChan(0022CECC76B00000): SetChannelByString(3) success 2009-09-27 14:07:49.745 TVRec(6): Starting Signal Monitor 2009-09-27 14:07:49.745 TVRec(6): SetupSignalMonitor(1, 0) 2009-09-27 14:07:49.745 FireChan(0022CECC76B00000): Open() 2009-09-27 14:07:49.745 FireSM(0022CECC76B00000): ctor 2009-09-27 14:07:49.745 SM(0022CECC76B00000)::AddFlags: Seen() Match() Wait(Sig,) 2009-09-27 14:07:49.746 FireDev(0022CECC76B00000): Requesting STB Power State 2009-09-27 14:07:49.748 FireDev(0022CECC76B00000): STB Power State: On 2009-09-27 14:07:49.748 TVRec(6): Signal monitor successfully created 2009-09-27 14:07:49.748 TVRec(6): Setting up table monitoring. 2009-09-27 14:07:49.750 Using profile 'Live TV' to record 2009-09-27 14:07:49.751 TVRec(6): MPEG program number: 1 2009-09-27 14:07:49.751 DTVSM(0022CECC76B00000)::SetProgramNumber(1): 2009-09-27 14:07:49.751 SM(0022CECC76B00000)::RemoveFlags: Seen(PMT,Crypt,) Match(PMT,Crypt,) Wait() 2009-09-27 14:07:49.751 SM(0022CECC76B00000)::AddFlags: Seen() Match() Wait(PMT,) 2009-09-27 14:07:49.751 SM(0022CECC76B00000)::AddFlags: Seen() Match() Wait(PAT,PMT,Pos,) 2009-09-27 14:07:49.751 TVRec(6): Successfully set up MPEG table monitoring. 2009-09-27 14:07:49.751 SM(0022CECC76B00000)::Start: begin 2009-09-27 14:07:49.751 FireDev(0022CECC76B00000): Requesting STB Power State 2009-09-27 14:07:49.751 SM(0022CECC76B00000)::Start: end 2009-09-27 14:07:49.751 TVRec(6): SetFlags(SignalMonitorRunning,) -> RunMainLoop,SignalMonitorRunning, 2009-09-27 14:07:49.751 TVRec(6): ClearFlags(WaitingForSignal,) -> RunMainLoop,SignalMonitorRunning, 2009-09-27 14:07:49.751 TVRec(6): SetFlags(WaitingForSignal,) -> RunMainLoop,WaitingForSignal,SignalMonitorRunning, 2009-09-27 14:07:49.751 TVRec(6): ClearFlags(NeedToStartRecorder,) -> RunMainLoop,WaitingForSignal,SignalMonitorRunning, 2009-09-27 14:07:49.751 TVRec(6): SetFlags(NeedToStartRecorder,) -> RunMainLoop,WaitingForSignal,NeedToStartRecorder,SignalMonitorRunning, 2009-09-27 14:07:49.754 FireDev(0022CECC76B00000): STB Power State: On 2009-09-27 14:07:49.754 SM(0022CECC76B00000)::AddFlags: Seen(STB,) Match(STB,) Wait() 2009-09-27 14:07:49.754 FireSM(0022CECC76B00000): RunTableMonitor(): -- begin 2009-09-27 14:07:49.754 LFireDev(0022CECC76B00000): Starting Port Handler Thread 2009-09-27 14:07:49.754 LFireDev(0022CECC76B00000): Starting Port Handler Thread -- locked 2009-09-27 14:07:49.754 LFireDev(0022CECC76B00000): OpenPort() 2009-09-27 14:07:49.754 FireSM(0022CECC76B00000): UpdateValues() -- Waiting for table monitor to start 2009-09-27 14:07:49.755 LFireDev(0022CECC76B00000): OpenPort() -- got lock 2009-09-27 14:07:49.755 FireDev(0022CECC76B00000): AddListener() 1 2009-09-27 14:07:49.755 LFireDev(0022CECC76B00000): Opening P2P connection 2009-09-27 14:07:49.755 FireSM(0022CECC76B00000): UpdateValues() -- Table monitor started 2009-09-27 14:07:49.758 AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 15 min 2009-09-27 14:07:49.761 scheduler: Started recording: NFL Football "Kansas City Chiefs at Philadelphia Eagles": channel 1811 on cardid 6, sourceid 2 libiec61883 warning: Overlayed connection on channel 0. You may need to manually set the channel on the receiving node. 2009-09-27 14:07:49.763 LFireDev(0022CECC76B00000): OpenAVStream 2009-09-27 14:07:49.763 LFireDev(0022CECC76B00000): Opening A/V stream object 2009-09-27 14:07:49.763 LFireDev(0022CECC76B00000): Buffered packets 2000 (8000 KB) 2009-09-27 14:07:49.763 LFireDev(0022CECC76B00000): Starting A/V streaming -- really 2009-09-27 14:07:49.770 LFireDev(0022CECC76B00000): Starting A/V streaming -- done
$ mythbackend --version Please include all output in bug reports. MythTV Version : 22072 MythTV Branch : trunk Network Protocol : 48 Library API : 0.22.20090919-1 QT Version : 4.5.0 Options compiled in: linux debug using_oss using_alsa using_pulse using_jack using_backend using_dvb using_firewire using_frontend using_glx_proc_addr_arb using_hdhomerun using_hdpvr using_iptv using_ivtv using_joystick_menu using_libfftw3 using_lirc using_mheg using_opengl_video using_opengl_vsync using_qtwebkit using_v4l using_x11 using_xrandr using_xv using_xvmc using_xvmc_vld using_xvmcw using_bindings_perl using_bindings_python using_opengl using_vdpau using_ffmpeg_threads using_libavc_5_3 using_live using_mheg
Is the issue that it cannot find a PAT?
Not a new/recent breakage... its been like this forever.
Attachments (4)
Change History (16)
comment:1 Changed 4 years ago by mitchell.gore@…
comment:2 Changed 3 years ago by robertm
- Component changed from MythTV - General to MythTV - Recording
- Owner changed from ijr to danielk
comment:3 Changed 3 years ago by danielk
- Resolution set to invalid
- Status changed from new to closed
I can't access the mpg, but it appears that the PMT is missing. The MythTV tuning code requires at least a PAT and PMT as per spec. Any attempt to add support for building a PMT on the fly based on the content of the data on the wire would be a feature request. It's a sufficiently rare case that I'm not really interested in implementing that feature myself.
comment:4 Changed 23 months ago by Chase Douglas <chasedouglas@…>
- Resolution invalid deleted
- Status changed from closed to new
comment:5 Changed 23 months ago by Chase Douglas <chasedouglas@…>
I have created some patches to implement PAT and PMT generation. I will attach them to this bug.
I am new to MythTV as a contributor, so the patches may need coding standards or other rework. I also developed the patch on my system running 0.24-fixes and rebased to master, but I haven't tested the master version other than to see that it compiles properly.
The only known issue with the patch is that it assumes the audio stream is AAC and the video stream is MPEG2. Any guidance on how firewiredevice.cpp should be modified to allow for other codecs would be appreciated.
Thanks!
Changed 23 months ago by Chase Douglas <chasedouglas@…>
Changed 23 months ago by Chase Douglas <chasedouglas@…>
Changed 23 months ago by Chase Douglas <chasedouglas@…>
Changed 23 months ago by Chase Douglas <chasedouglas@…>
comment:6 Changed 22 months ago by chasedouglas@…
Please disregard the attached patches. I have reworked them and created a pull request on github:
comment:7 follow-up: ↓ 8 Changed 16 months ago by stuartm
- Milestone changed from unknown to 0.26
- Type changed from defect to Patch - Bug Fix
- Version changed from unknown to Master Head
Up to date patches supplied, but probably too many changes for 0.25. Setting milestone to 0.26 so they hopefully won't get overlooked for that release.
comment:8 in reply to: ↑ 7 Changed 14 months ago by rootrott@…
Replying to stuartm:
Up to date patches supplied, but probably too many changes for 0.25. Setting milestone to 0.26 so they hopefully won't get overlooked for that release.
Hello,
I have an rng110 that's experiencing this same issue. Is this still on deck to be included in .26? I compiled the latest git head and it's still broken there. It looks as if files are sufficiently different as to make these patches obsolete. I will try to merge by hand...
Thanks,
Seth
comment:9 Changed 11 months ago by danielk
- Summary changed from SA8300HD STB doesn't record reliably via firewire to Add Support for ASIRecorder style PSIP generation to FirewireRecorder
- Type changed from Patch - Bug Fix to Patch - Feature
comment:10 Changed 11 months ago by danielk
- Milestone changed from 0.26 to unknown
comment:11 Changed 5 months ago by dbavatar@…
This has been broken for me for a long time, and I think that would cover a lot of firewire users. I saw a couple list posts where clearly the user had this problem and gave up on mythtv+firewire. Without this patch, firewire recording is simply broken for a lot of people. I've been using locally hacked PSIP for about 2 years waiting for someone to fix this. Can we get this in please?
comment:12 Changed 4 months ago by yfilali@…
This looks like an easy fix, and yet still broken for so many. Any chance this could be scheduled again or at least made easy to patch in?

I am the one who filed the big report in mythbuntu. If you have any suggestions and patches please let me know.
Mitchell