Opened 13 years ago

Closed 13 years ago

Last modified 12 years ago

#2679 closed defect (fixed)

Unable to record from PVR250 - Error: SetIntOption(...mpeg2bitrate): Option not in profile

Reported by: garfield_99999@… Owned by: danielk
Priority: major Milestone: unknown
Component: mythtv Version: head
Severity: high Keywords:
Cc: Ticket locked: no

Description

mythtv svn revision 11723

Just upgraded to latest SVN version.

When I try to record from my PVR250 card I get:-

2006-11-13 10:54:18.575 Using runtime prefix = /usr/local
2006-11-13 10:54:18.723 New DB connection, total: 1
2006-11-13 10:54:18.737 Connected to database 'mythconverg' at host: localhost
2006-11-13 10:54:18.744 Current Schema Version: 1167
Starting up as the master server.
2006-11-13 10:54:18.777 New DB connection, total: 2
2006-11-13 10:54:18.788 Connected to database 'mythconverg' at host: localhost
2006-11-13 10:54:18.815 EITHelper: localtime offset 0:00:00
2006-11-13 10:54:18.962 DVBChan(0): Opening DVB channel
2006-11-13 10:54:18.966 DVBChan(0): Using DVB card 0, with frontend 'DiBcom 3000M-B DVB-T'.
2006-11-13 10:54:18.969 New DB connection, total: 3
2006-11-13 10:54:18.972 Connected to database 'mythconverg' at host: localhost
2006-11-13 10:54:18.981 ChannelBase(1): Input #1: 'DVBInput' schan(516) sourceid(1) ccid(1)
2006-11-13 10:54:18.983 ChannelBase(1): Current Input #1: 'DVBInput'
2006-11-13 10:54:18.984 DVBChan(0): SetChannelByString(516):
2006-11-13 10:54:18.990 DVBChan(0): 489833330 qam_16 a 3/4 3/4 8 2 1/32 n v
2006-11-13 10:54:18.991 DVBChan(0): Old Params: 0 auto a auto auto auto auto auto a v
                        DVBChan(0): New Params: 489833330 qam_16 a 3/4 3/4 8 2 1/32 n v
2006-11-13 10:54:18.992 DVBChan(0): Tune(): Tuning to 489833330Hz
2006-11-13 10:54:18.993 dvbchannel.cpp:wait_for_backend: Status:
2006-11-13 10:54:18.994 DVBChan(0): Tune(): Frequency tuning successful.
2006-11-13 10:54:18.994 DVBChan(0): SetChannelByString(516): Tuned to frequency.
2006-11-13 10:54:19.012 TVRec(1): SetFlags(RunMainLoop,) -> RunMainLoop,
2006-11-13 10:54:19.014 TVRec(1): ClearFlags(ExitPlayer,FinishRecording,) -> RunMainLoop,
2006-11-13 10:54:19.015 EITHelper: localtime offset 0:00:00
2006-11-13 10:54:19.021 Channel(/dev/video0): Device name 'Hauppauge WinTV PVR-250' driver 'ivtv'.
2006-11-13 10:54:19.025 ChannelBase(2): Input #2: 'Tuner 1' schan(57) sourceid(3) ccid(2)
2006-11-13 10:54:19.026 ChannelBase(2): Current Input #2: 'Tuner 1'
2006-11-13 10:54:19.028 Global TVFormat Setting 'PAL'
2006-11-13 10:54:19.029 Channel(/dev/video0): Input #2: 'Tuner 1' schan(57) tun() v4l1(PAL) v4l2(PAL)
2006-11-13 10:54:19.030 Channel(/dev/video0): SetFormat(Default) fmt(PAL) input(2)
2006-11-13 10:54:19.031 Channel(/dev/video0): SetInputAndFormat(2, PAL) (v4l v2)
2006-11-13 10:54:19.032 Channel(/dev/video0): SetFormat(PAL) fmt(PAL) input(2)
2006-11-13 10:54:19.035 Channel(/dev/video0)::SwitchToInput(in 2, '')
2006-11-13 10:54:19.036 Channel(/dev/video0): SetInputAndFormat(2, PAL) (v4l v2)
2006-11-13 10:54:19.037 Channel(/dev/video0): SetChannelByString(57)
QString::arg(): Argument missing: SetCachedATSCInfo(/dev/video0): -0, -1
2006-11-13 10:54:19.039 DTVChan(/dev/video0): SetCachedATSCInfo(/dev/video0): -0
2006-11-13 10:54:19.042 Channel(/dev/video0): SetFormat(Default) fmt(PAL) input(2)
2006-11-13 10:54:19.045 Channel(/dev/video0): Tune(759250000, , analog, )
2006-11-13 10:54:19.161 Channel(/dev/video0)::Tune(): Frequency is now 759250000
QString::arg(): Argument missing: SetCachedATSCInfo(/dev/video0): 57_0-57, -1
2006-11-13 10:54:19.162 DTVChan(/dev/video0): SetCachedATSCInfo(/dev/video0): 57_0-57
2006-11-13 10:54:19.163 TVRec(2): SetFlags(RunMainLoop,) -> RunMainLoop,
2006-11-13 10:54:19.166 TVRec(2): ClearFlags(ExitPlayer,FinishRecording,) -> RunMainLoop,
2006-11-13 10:54:19.167 New DB scheduler connection
2006-11-13 10:54:19.172 Connected to database 'mythconverg' at host: localhost
2006-11-13 10:54:19.178 Main::Starting HttpServer
2006-11-13 10:54:19.189 Main::Registering HttpStatus Extension
2006-11-13 10:54:19.200 mythbackend version: 0.20.20061112-1 www.mythtv.org
2006-11-13 10:54:19.201 Enabled verbose msgs:  important general record channel siparser eit
2006-11-13 10:54:19.203 AutoExpire: Found 2 recorders w/max rate of 210 MiB/min
2006-11-13 10:54:19.204 New DB connection, total: 4
2006-11-13 10:54:19.206 Connected to database 'mythconverg' at host: localhost
2006-11-13 10:54:19.209 AutoExpire: Required Free Space: 2.6 GB w/freq: 5 min
2006-11-13 10:54:21.221 Reschedule requested for id -1.
2006-11-13 10:54:21.472 Scheduled 68 items in 0.2 = 0.07 match + 0.18 place
2006-11-13 10:54:21.479 Recording starts soon, AUTO-Startup assumed
2006-11-13 10:54:21.485 TVRec(2): StartRecording(Homes under the Hammer)
2006-11-13 10:54:21.486 TVRec(2): ClearFlags(AskAllowRecording,) -> RunMainLoop,
2006-11-13 10:54:21.520 recording already exists...
2006-11-13 10:54:21.533 TVRec(2): StartedRecording(0x8244530) fn(/mnt/video/3081_20061113105401.mpg)
2006-11-13 10:54:21.536 TVRec(2): ClearFlags(CancelNextRecording,) -> RunMainLoop,
2006-11-13 10:54:21.537 TVRec(2): Changing from None to RecordingOnly
2006-11-13 10:54:21.538 TVRec(2): ClearFlags(FrontendReady,CancelNextRecording,) -> RunMainLoop,
2006-11-13 10:54:21.539 TVRec(2): SetFlags(AskAllowRecording,) -> RunMainLoop,AskAllowRecording,
2006-11-13 10:54:21.540 TVRec(2): Request: Program(yes) channel() input() flags(Recording,)
2006-11-13 10:54:21.543 TVRec(2): HW Tuner: 2->2
2006-11-13 10:54:21.545 TVRec(2): ClearFlags(PENDINGACTIONS,) -> RunMainLoop,AskAllowRecording,
2006-11-13 10:54:21.546 Channel(/dev/video0): Device name 'Hauppauge WinTV PVR-250' driver 'ivtv'.
2006-11-13 10:54:21.551 ChannelBase(2): Input #2: 'Tuner 1' schan(57) sourceid(3) ccid(2)
2006-11-13 10:54:21.552 ChannelBase(2): Current Input #2: 'Tuner 1'
2006-11-13 10:54:21.552 Global TVFormat Setting 'PAL'
2006-11-13 10:54:21.553 Channel(/dev/video0): Input #2: 'Tuner 1' schan(57) tun() v4l1(PAL) v4l2(PAL)
2006-11-13 10:54:21.554 Channel(/dev/video0): SetFormat(Default) fmt(PAL) input(2)
2006-11-13 10:54:21.554 Channel(/dev/video0)::SwitchToInput(in 2, '')
2006-11-13 10:54:21.555 Channel(/dev/video0): SetInputAndFormat(2, PAL) (v4l v2)
2006-11-13 10:54:21.555 Channel(/dev/video0): SetChannelByString(41)
QString::arg(): Argument missing: SetCachedATSCInfo(/dev/video0): -0, -1
2006-11-13 10:54:21.558 DTVChan(/dev/video0): SetCachedATSCInfo(/dev/video0): -0
2006-11-13 10:54:21.561 Channel(/dev/video0): SetFormat(Default) fmt(PAL) input(2)
2006-11-13 10:54:21.564 Channel(/dev/video0): Tune(631250000, , analog, )
2006-11-13 10:54:21.681 Channel(/dev/video0)::Tune(): Frequency is now 631250000
QString::arg(): Argument missing: SetCachedATSCInfo(/dev/video0): 41_0-41, -1
2006-11-13 10:54:21.682 DTVChan(/dev/video0): SetCachedATSCInfo(/dev/video0): 41_0-41
2006-11-13 10:54:21.684 TVRec(2): ClearFlags(NeedToStartRecorder,) -> RunMainLoop,AskAllowRecording,
2006-11-13 10:54:21.684 TVRec(2): SetFlags(NeedToStartRecorder,) -> RunMainLoop,AskAllowRecording,NeedToStartRecorder,
2006-11-13 10:54:21.695 TVRec(2): Starting Recorder
2006-11-13 10:54:21.712 Using profile 'Default' to record
2006-11-13 10:54:21.724 RecBase(/dev/video0) Error: SetIntOption(...mpeg2bitrate): Option not in profile.
2006-11-13 10:54:21.729 RecBase(/dev/video0) Error: SetIntOption(...mpeg2maxbitrate): Option not in profile.

Notice the ERROR for mpeg2bitrate and mpeg2maxbitrate

Change History (6)

comment:1 Changed 13 years ago by danielk

Owner: changed from Isaac Richards to danielk
Priority: minormajor
Severity: mediumhigh

comment:2 Changed 13 years ago by danielk

Status: newassigned

I've been able to reproduce this, working on a fix.

comment:3 Changed 13 years ago by danielk

(In [11725]) Refs #2679. Use SetStrOption?() convenience function for setting recording profile options in MPEGRecorder.

This prevents the segfault since the RecorderBase? convenience function does a NULL pointer check. I'm still working on the underlying problem which appears to be a problem with Triggered configuration groups that should be saving all their children, so this problem is only happening with new ivtv recorders you add (and probably some other recorders with required options where a null check on byName() is not performed).

comment:4 Changed 13 years ago by danielk

Resolution: fixed
Status: assignedclosed

(In [11726]) Fixes #2679. A change late I made while cleaning up the [11722] patch for SVN broke byName() inheritence...

I've also fixed problems with the TriggeredConfigurationGroup? load and save methods which contributed to the problem.

Unfortunately the fix breaks binary compatibility so I've incremented the binary version again..

comment:5 Changed 13 years ago by danielk

(In [11731]) Refs #2679. Fixes other places where the result of Settings::byName() was being used without checking for a null pointer.

Most of the recorders were already using the safe convenience methods, but the older NVR and Transcode weren't and TVRec had an unsafe method that wasn't being used anywhere and I've removed it to protect the innocent.

comment:6 Changed 12 years ago by mark@…

Did this not make it into 020-fixes, then? I recently updated and had to set up new video sources for SchedulesDirect? - but am experiencing this problem and the difference between the files in your patchsets between -fixes and head are significant.

Note: See TracTickets for help on using tickets.