]
トップ «前の日記(2012-01-10) 最新 次の日記(2012-01-27)» 編集

Yukiharu YABUKI の tDiary



このtDiaryを検索します。

2012-01-22 [長年日記]

_ Princeton デジ造 映像版3(PCA-DAV3)

すいませんが、ちょっと前提の話が長いです

承前

講演や会議の記録をデジタル形式で残すために、ハンディカムSONY デジタルHDビデオカメラレコーダー CX560V ブラック HDR-CX560V/B を購入した。BTマイクも購入したので発表者はケーブルの取り回しを考えることなく発表に集中できる。*1

Debian GNU/Linux Squueze + Kernel(Linux version 2.6.38-cgroup-memcap (2.6.38) (root@yelona) (gcc version 4.4.5 (Debian 4.4.5-8) ) #1 SMP Mon Oct 3 23:02:18 JST 2011)*2で、usb mass strageでハンディカムの中を見て、拡張子 mts のフォーマットも再生できた。

ここまで来れば、次はこのハンディカムで ustream 配信をしてみたいところ。ieee 1394 がベストなのだが、カメラが高いので、アナログ出力を、Linuxに取り込むことを考える。ここで、ようやくタイトルのPC−DAV3の話になる。

この製品は、アナログ信号をusbでPCに取り込む機器だ。ひとつ前のPCA-DAV2に関しては、映像版デジ造PCA-DAV2 + Ubuntu 10.04 + Medibuntu でビデオ録画(http://www.ne.jp/asahi/techno/ostra/video-capture-on-linux.html)があるが、最近、後継機種 PCA-DAV3 でたので購入してみた。

下記のように認識しているが、/dev/video0ができていない。

[383311.356252] usb 1-1.2: new high speed USB device using ehci_hcd and address 13
[383311.451551] usb 1-1.2: New USB device found, idVendor=117f, idProduct=5207
[383311.451556] usb 1-1.2: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[383311.451559] usb 1-1.2: Product: USB 2861 Device
[383314.163627] usbcore: registered new interface driver snd-usb-audio
[383636.285317] Linux video capture interface: v2.00
[383636.295152] usbcore: registered new interface driver em28xx
[383636.295156] em28xx driver loaded
[383636.320791] IR NEC protocol handler initialized
[383636.329934] IR RC5(x) protocol handler initialized
[383636.342452] IR RC6 protocol handler initialized
[383636.347427] IR JVC protocol handler initialized
[383636.350186] IR Sony protocol handler initialized
[383636.362589] lirc_dev: IR Remote Control driver registered, major 250 
[383636.377672] IR LIRC bridge handler initialized

modprobe em28xx card=40 などして認識させたところ。video4linux2のモジュール(v4l2_common) とかも読み込まれているので、udevも見てみる必要がある気がする。

Module                  Size  Used by
em28xx                 66233  0 
v4l2_common            13215  1 em28xx
videodev               48418  2 em28xx,v4l2_common
videobuf_vmalloc       12621  1 em28xx
videobuf_core          17540  2 em28xx,videobuf_vmalloc
tveeprom               16473  1 em28xx
ir_lirc_codec          12651  0 
lirc_dev               12797  1 ir_lirc_codec
ir_sony_decoder        12403  0 
ir_jvc_decoder         12401  0 
ir_rc6_decoder         12401  0 
ir_rc5_decoder         12401  0 
ir_nec_decoder         12401  0 
rc_core                17813  7 em28xx,ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder
snd_usb_audio          66275  1 
snd_usbmidi_lib        18706  1 snd_usb_audio
usbhid                 31072  0 
hid                    59736  1 usbhid
nls_utf8               12416  0 
nls_cp437              12417  0 
btrfs                 415196  0 
crc32c                 12576  1 
libcrc32c              12394  1 btrfs
ufs                    60850  0 
qnx4                   12992  0 
hfsplus                70149  0 
hfs                    40573  0 
minix                  26769  0 
ntfs                  165605  0 
vfat                   16989  0 
msdos                  12822  0 
fat                    44149  2 vfat,msdos
jfs                   138429  0 
xfs                   533069  0 
exportfs               12527  1 xfs
reiserfs              174271  0 
ext4                  251726  0 
jbd2                   55701  1 ext4
sg                     21385  0 
sr_mod                 17418  0 
cdrom                  34631  1 sr_mod
rndis_host             12603  0 
cdc_ether              12546  1 rndis_host
usbnet                 17626  2 rndis_host,cdc_ether
mii                    12562  1 usbnet
usb_storage            34951  0 
uas                    12975  0 
usbmon                 22186  0 
veth                   12986  0 
ipt_MASQUERADE         12530  1 
iptable_nat            12800  1 
nf_nat                 17708  2 ipt_MASQUERADE,iptable_nat
nf_conntrack_ipv4      13649  5 iptable_nat,nf_nat
nf_defrag_ipv4         12443  1 nf_conntrack_ipv4
xt_conntrack           12535  2 
nf_conntrack           42383  5 ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4,xt_conntrack
ip6table_filter        12492  0 
ip6_tables             17069  1 ip6table_filter
acpi_cpufreq           12737  1 
mperf                  12387  1 acpi_cpufreq
cpufreq_conservative    13598  0 
cpufreq_userspace      12520  0 
ebtable_nat            12516  0 
cpufreq_stats          12670  0 
ebtables               16965  1 ebtable_nat
cpufreq_powersave      12422  0 
xt_multiport           12470  1 
iptable_filter         12488  1 
ip_tables              16998  2 iptable_nat,iptable_filter
x_tables               17967  9 ipt_MASQUERADE,iptable_nat,xt_conntrack,ip6table_filter,ip6_tables,ebtables,xt_multiport,iptable_filter,ip_tables
parport_pc             21895  0 
ppdev                  12621  0 
lp                     12858  0 
parport                27018  3 parport_pc,ppdev,lp
sco                    13219  2 
bridge                 55027  0 
stp                    12368  1 bridge
bnep                   17147  2 
rfcomm                 31960  4 
l2cap                  35435  6 bnep,rfcomm
crc16                  12327  2 ext4,l2cap
bluetooth              50119  6 sco,bnep,rfcomm,l2cap
kvm_intel              44826  0 
kvm                   220471  1 kvm_intel
binfmt_misc            12778  1 
uinput                 12984  1 
deflate                12495  0 
zlib_deflate           21186  2 btrfs,deflate
ctr                    12851  0 
twofish_generic        16529  0 
twofish_i586           12453  0 
twofish_common         20528  2 twofish_generic,twofish_i586
camellia               28953  0 
serpent                24847  0 
blowfish               16576  0 
cast5                  24773  0 
des_generic            20771  0 
xcbc                   12629  0 
rmd160                 16584  0 
sha512_generic         16649  0 
sha1_generic           12511  0 
hmac                   12649  0 
crypto_null            12636  0 
af_key                 30708  0 
fuse                   55640  1 
ext2                   53488  1 
loop                   17805  0 
snd_hda_codec_hdmi     21913  1 
snd_hda_codec_conexant    35784  1 
snd_hda_intel          21529  4 
arc4                   12418  2 
snd_hda_codec          57563  3 snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_hda_intel
thinkpad_acpi          46976  0 
snd_hwdep              12906  2 snd_usb_audio,snd_hda_codec
snd_pcm_oss            35864  0 
snd_mixer_oss          17649  1 snd_pcm_oss
option                 20658  0 
snd_pcm                52774  6 snd_usb_audio,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_pcm_oss
ecb                    12649  2 
usb_wwan               12950  1 option
snd_seq_midi           12744  0 
snd_rawmidi            22407  2 snd_usbmidi_lib,snd_seq_midi
snd_seq_midi_event     13124  1 snd_seq_midi
snd_seq                39172  2 snd_seq_midi,snd_seq_midi_event
usbserial              27298  2 option,usb_wwan
iwlagn                122417  0 
i915                  276436  2 
snd_timer              22171  2 snd_pcm,snd_seq
snd_seq_device         12995  3 snd_seq_midi,snd_rawmidi,snd_seq
iwlcore                50368  1 iwlagn
ehci_hcd               34889  0 
mac80211              156189  2 iwlagn,iwlcore
drm_kms_helper         26501  1 i915
snd                    38153  24 snd_usb_audio,snd_usbmidi_lib,snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_hda_intel,snd_hda_codec,thinkpad_acpi,snd_hwdep,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
psmouse                45863  0 
usbcore                99058  17 em28xx,snd_usb_audio,snd_usbmidi_lib,usbhid,rndis_host,cdc_ether,usbnet,usb_storage,uas,usbmon,option,usb_wwan,usbserial,ehci_hcd
drm                   124320  3 i915,drm_kms_helper
tpm_tis                12949  0 
cfg80211              106889  3 iwlagn,iwlcore,mac80211
tpm                    17476  1 tpm_tis
pcspkr                 12515  0 
serio_raw              12758  0 
i2c_i801               12670  0 
i2c_algo_bit           12706  1 i915
snd_page_alloc         12841  2 snd_hda_intel,snd_pcm
i2c_core               18989  9 em28xx,v4l2_common,videodev,tveeprom,i915,drm_kms_helper,drm,i2c_i801,i2c_algo_bit
battery                12957  0 
ac                     12552  0 
rfkill                 18510  6 bluetooth,thinkpad_acpi,cfg80211
evdev                  13084  22 
wmi                    13018  0 
soundcore              12878  1 snd
power_supply           13283  2 battery,ac
video                  17345  1 i915
processor              26983  5 acpi_cpufreq
e1000e                108717  0 
tpm_bios               12799  1 tpm
button                 12866  1 i915
nls_base               12649  9 nls_utf8,nls_cp437,hfsplus,hfs,ntfs,vfat,fat,jfs,usbcore
nvram                  12853  1 thinkpad_acpi
ext3                   98001  1 
jbd                    40818  1 ext3
mbcache                12810  3 ext4,ext2,ext3
sha256_generic         16709  2 
aes_i586               16608  8 
aes_generic            37066  1 aes_i586
cbc                    12659  4 
dm_crypt               17809  1 
dm_mod                 56394  9 dm_crypt
sd_mod                 34941  3 
crc_t10dif             12332  1 sd_mod
ahci                   20897  2 
libahci                22161  1 ahci
libata                127808  2 ahci,libahci
scsi_mod              134369  6 sg,sr_mod,usb_storage,uas,sd_mod,libata
thermal                13058  0 
thermal_sys            17667  3 video,processor,thermal
udevmonitor から udevadm monitorへ

udevの動作状況については、udevadm monitor で確認を行うことになったようだ。udevmonitorコマンドがなくなって、困っていたら?どうぞ(って、udevをやるような人は困らないか。...まあ将来の自分のためです)ログは、下記のような感じ

yelona:/usr/src/linux-source-2.6.38/drivers/media/video/em28xx# udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
 
KERNEL[1327161361.981585] remove   /bus/usb/drivers/em28xx (drivers)
KERNEL[1327161361.981945] remove   /module/em28xx (module)
UDEV  [1327161361.982396] remove   /bus/usb/drivers/em28xx (drivers)
UDEV  [1327161361.982415] remove   /module/em28xx (module)
KERNEL[1327161362.001283] remove   /module/v4l2_common (module)
UDEV  [1327161362.001819] remove   /module/v4l2_common (module)
KERNEL[1327161362.025655] remove   /class/video4linux (class)
KERNEL[1327161362.026079] remove   /module/videodev (module)
UDEV  [1327161362.026096] remove   /class/video4linux (class)
UDEV  [1327161362.026109] remove   /module/videodev (module)
KERNEL[1327161362.065869] remove   /module/videobuf_vmalloc (module)
UDEV  [1327161362.066283] remove   /module/videobuf_vmalloc (module)
KERNEL[1327161362.105920] remove   /module/videobuf_core (module)
UDEV  [1327161362.106208] remove   /module/videobuf_core (module)
KERNEL[1327161362.145615] remove   /module/tveeprom (module)
UDEV  [1327161362.146275] remove   /module/tveeprom (module)
KERNEL[1327161379.555502] add      /module/tveeprom (module)
UDEV  [1327161379.556183] add      /module/tveeprom (module)
KERNEL[1327161379.558329] add      /module/videobuf_core (module)
UDEV  [1327161379.558711] add      /module/videobuf_core (module)
KERNEL[1327161379.559360] add      /module/videobuf_vmalloc (module)
UDEV  [1327161379.559656] add      /module/videobuf_vmalloc (module)
KERNEL[1327161379.566405] add      /module/videodev (module)
UDEV  [1327161379.566822] add      /module/videodev (module)
KERNEL[1327161379.566935] add      /class/video4linux (class)
UDEV  [1327161379.567348] add      /class/video4linux (class)
KERNEL[1327161379.570083] add      /module/v4l2_common (module)
UDEV  [1327161379.570477] add      /module/v4l2_common (module)
KERNEL[1327161379.575913] add      /module/em28xx (module)
UDEV  [1327161379.576356] add      /module/em28xx (module)
KERNEL[1327161379.576602] add      /bus/usb/drivers/em28xx (drivers)
UDEV  [1327161379.577048] add      /bus/usb/drivers/em28xx (drivers)

udevの設定は、/etc/udevではなく、/lib/udevがメインになるようだ。/etcを探しても一部しか見つからないので、分担しているのだろう。

udevをちょっと覗いてみる。

カレントディレクトリを/lib/udevに移してみて、いろいろと嗅ぎ回ってみる。

yelona:/lib/udev# grep -rni video4linux *
rules.d/70-acl.rules:33:SUBSYSTEM=="video4linux", TAG+="udev-acl"
rules.d/60-persistent-v4l.rules:4:SUBSYSTEM!="video4linux", GOTO="persistent_v4l_end"
rules.d/91-permissions.rules:55:SUBSYSTEM=="video4linux",			GROUP="video"

今日のところは、これぐらいで、関連urlを貼り付けておきます。(以下どれも閲覧日2012/01/22)

*1 制約条件としては、マイクが単4電池の持続時間に左右されるが、これは予備を用意すれば良いこと

*2 このカーネルは、X201sの無線をカスタマイズしたので2.6.38が必要になり、lxcの関係で、vanilla kernelからカーネルの.configを変更している。