Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#9595 closed Developer Task (fixed)

Remove use of V4L API or make it conditional on < 2.6.38 kernel

Reported by: superm1@… Owned by: danielk
Priority: minor Milestone: 0.25
Component: MythTV - Recording Version: Master Head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Kernel 2.6.38 is dropping support for the V4L API and only supporting V4L2. Consequently videodev.h is no longer available and it's not possible to compile MythTV with V4L support against 2.6.38.

Attachments (4)

mythtv-v4l2-fix.patch (21.3 KB) - added by mike.gh.larsen@… 13 years ago.
Patch against fixes/0.24
mythtv-v4l2-fix.2.patch (21.3 KB) - added by Mario Limonciello <superm1@…> 13 years ago.
move_rec2_to_v4l2.patch (20.9 KB) - added by warped <warpme@…> 13 years ago.
v4l2 patch for rec2 branch
comilation_error.log (143.7 KB) - added by warped <warpme@…> 13 years ago.
rec2 compilation error

Download all attachments as: .zip

Change History (17)

comment:1 Changed 13 years ago by beirdo

Summary: Video4Linux support no longer works against kernel 2.6.38Remove use of V4L API or make it conditional on < 2.6.38 kernel
Type: Bug ReportDeveloper Task

comment:2 Changed 13 years ago by beirdo

Summary: Remove use of V4L API or make it conditional on < 2.6.38 kernel[TASK] Remove use of V4L API or make it conditional on < 2.6.38 kernel

comment:3 Changed 13 years ago by theasp@…

Do you intend to remove V4L entirely or just the use of the V4L1 header? Removing V4L will result in not supporting many capture cards.

comment:4 Changed 13 years ago by stuartm

Ticket locked: set

Trac is not a discussion forum. A developer hasn't even looked at this ticket yet, let alone made any decisions.

comment:5 Changed 13 years ago by stuartm

Component: MythTV - GeneralMythTV - Recording
Milestone: unknown0.25
Owner: set to danielk
Status: newassigned
Summary: [TASK] Remove use of V4L API or make it conditional on < 2.6.38 kernelRemove use of V4L API or make it conditional on < 2.6.38 kernel

Changed 13 years ago by mike.gh.larsen@…

Attachment: mythtv-v4l2-fix.patch added

Patch against fixes/0.24

comment:6 Changed 13 years ago by Kenni Lund [kenni a kelu dot dk]

Ticket locked: unset

Changed 13 years ago by Mario Limonciello <superm1@…>

Attachment: mythtv-v4l2-fix.2.patch added

comment:7 Changed 13 years ago by Mario Limonciello <superm1@…>

Mike larsen accidentally posted that patch reversed. He added one to the corresponding Ubuntu launchpad bug (https://bugs.launchpad.net/ubuntu/+source/mythtv/+bug/717717) that is fixed. Here it is.

comment:8 Changed 13 years ago by danielk

It would be useful if the patch were available against the mythtv-rec2 branch as well. Also we should only disable V4L1 when the distro doesn't support it; I don't know if the patch already does that I'm not looking at multi-line patches to the recorder implementations in trunk right now.

comment:9 Changed 13 years ago by andrew@…

With this patch, I still see errors in the log file related to V4L1

2011-05-09 09:00:52.951 format_to_mode() does not recognize V4L1
2011-05-09 09:00:52.975 mythbackend: Problem with capture cards: Card 1failed init
2011-05-09 09:00:53.006 format_to_mode() does not recognize V4L1
2011-05-09 09:00:53.034 mythbackend: Problem with capture cards: Card 2failed init

Changed 13 years ago by warped <warpme@…>

Attachment: move_rec2_to_v4l2.patch added

v4l2 patch for rec2 branch

Changed 13 years ago by warped <warpme@…>

Attachment: comilation_error.log added

rec2 compilation error

comment:10 in reply to:  8 ; Changed 13 years ago by warped <warpme@…>

Replying to danielk:

It would be useful if the patch were available against the mythtv-rec2 branch as well. Also we should only disable V4L1 when the distro doesn't support it; I don't know if the patch already does that I'm not looking at multi-line patches to the recorder implementations in trunk right now.

Daniel, I ported patch to rec2 but unfortunately I can't successfully compile mythtc-rec2 0.25pre-2043-g53a8591 to verify is my port correct (I believe issue is not related to v4l2 patch). I'm attaching patch and log from compilation. I'm compiling on fresh ArchLinux? so maybe some sys libs are "too' new....

comment:11 in reply to:  10 Changed 13 years ago by gigem

Replying to warped <warpme@…>:

Daniel, I ported patch to rec2 but unfortunately I can't successfully compile mythtc-rec2 0.25pre-2043-g53a8591 to verify is my port correct (I believe issue is not related to v4l2 patch). I'm attaching patch and log from compilation. I'm compiling on fresh ArchLinux? so maybe some sys libs are "too' new....

Daniel, others and I discussed this patch a couple of weeks ago. The main problem with it is that it treats v4l1 and v4l2 independently and allows for a v4l1 only configuration which we do not support. The patch needs to be reworked so that it only supports v4l2 with or without v4l1. IOW, v4l1 support needs to be conditional on v4l2 being available.

comment:12 Changed 13 years ago by Github

Resolution: fixed
Status: assignedclosed

Fixes #9595. Allows MythTV to compile on newer Linux distro's that don't include V4L version 1 headers.

Branch: master Changeset: 893edf31f911c12d29530e2c2901da869217bd7c

comment:13 Changed 13 years ago by beirdo

Was referenced in pull request: https://github.com/MythTV/mythtv/pull/3

I will close that as this has it covered.

Note: See TracTickets for help on using tickets.