[FFmpeg-user] The device does not support the streaming I/O method.

Thomas Seilund tps at netmaster.dk
Sun Jan 25 15:42:28 CET 2015


Thomas Seilund writes:

> Moritz Barsnick writes:
>
>> On Sat, Jan 24, 2015 at 12:23:26 +0100, Thomas Seilund wrote:
>>> If I supply input format then I get this error message
>>>
>>> tps at t420:~/AMC/test$ ffmpeg -f v4l2 -list_formats all -f mpegts -i /dev/video1
>>> ffmpeg version N-69238-g2699a37 Copyright (c) 2000-2015 the FFmpeg
>>> developers
>>>    built on Jan 24 2015 11:51:09 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
>>>    configuration: --enable-gpl --enable-libmp3lame --enable-libvpx --enable-
>>> libx264 --enable-version3 --enable-libvorbis --enable-x11grab --enable-
>>> libfreetype --enable-libv4l2 --enable-libfdk-aac --enable-nonfree
>>>    libavutil      54. 17.100 / 54. 17.100
>>>    libavcodec     56. 20.100 / 56. 20.100
>>>    libavformat    56. 19.100 / 56. 19.100
>>>    libavdevice    56.  4.100 / 56.  4.100
>>>    libavfilter     5.  8.101 /  5.  8.101
>>>    libswscale      3.  1.101 /  3.  1.101
>>>    libswresample   1.  1.100 /  1.  1.100
>>>    libpostproc    53.  3.100 / 53.  3.100
>>> Option list_formats not found.
>>
>> You can't supply two input formats "-f" to one input. ffmpeg is using
>> the second one.
>>
>>> tps at t420:~/AMC/test$ v4l2-ctl --device=/dev/video1 --list-formats-ext
>>> ioctl: VIDIOC_ENUM_FMT
>>>         Index       : 0
>>>         Type        : Video Capture
>>>         Pixel Format: 'MPEG' (compressed)
>>>         Name        : MPEG2-TS with AVC/AAC streams
>>
>> Can you dump the capabilities of the device? (I use v4l-info for that.)
>> IIUC it needs to have the capabilities VIDEO_CAPTURE and STREAMING to
>> be supported by ffmpeg. (I don't know anything about Linux's hdpvr
>> device driver.)
>>
>>> Venlig hilsen
>>
>> Mvh,
>> Moritz
>> _______________________________________________
>> ffmpeg-user mailing list
>> ffmpeg-user at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> Hi Moritz
>
> I did not know about the program v4l-info
>
> Here comes the output:
>
> ### v4l2 device info [/dev/video1] ###
> general info
>     VIDIOC_QUERYCAP
> 	driver                  : "hdpvr"
> 	card                    : "Hauppauge HD PVR"
> 	bus_info                : "usb-0000:00:1a.0-1.1"
> 	version                 : 3.13.11
> 	capabilities            : 0x81020001 [VIDEO_CAPTURE,AUDIO,READWRITE,(null)]
>
> standards
>     VIDIOC_ENUMSTD(0)
> 	index                   : 0
> 	id                      : 0xb000 [NTSC_M,NTSC_M_JP,?]
> 	name                    : "NTSC"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(1)
> 	index                   : 1
> 	id                      : 0x1000 [NTSC_M]
> 	name                    : "NTSC-M"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(2)
> 	index                   : 2
> 	id                      : 0x2000 [NTSC_M_JP]
> 	name                    : "NTSC-M-JP"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(3)
> 	index                   : 3
> 	id                      : 0x8000 [?]
> 	name                    : "NTSC-M-KR"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(4)
> 	index                   : 4
> 	id                      : 0x4000 [?]
> 	name                    : "NTSC-443"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(5)
> 	index                   : 5
> 	id                      : 0xff  
> [PAL_B,PAL_B1,PAL_G,PAL_H,PAL_I,PAL_D,PAL_D1,PAL_K]
> 	name                    : "PAL"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(6)
> 	index                   : 6
> 	id                      : 0x7 [PAL_B,PAL_B1,PAL_G]
> 	name                    : "PAL-BG"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(7)
> 	index                   : 7
> 	id                      : 0x8 [PAL_H]
> 	name                    : "PAL-H"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(8)
> 	index                   : 8
> 	id                      : 0x10 [PAL_I]
> 	name                    : "PAL-I"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(9)
> 	index                   : 9
> 	id                      : 0xe0 [PAL_D,PAL_D1,PAL_K]
> 	name                    : "PAL-DK"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(10)
> 	index                   : 10
> 	id                      : 0x100 [PAL_M]
> 	name                    : "PAL-M"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(11)
> 	index                   : 11
> 	id                      : 0x200 [PAL_N]
> 	name                    : "PAL-N"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(12)
> 	index                   : 12
> 	id                      : 0x400 [PAL_Nc]
> 	name                    : "PAL-Nc"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(13)
> 	index                   : 13
> 	id                      : 0x800 [PAL_60]
> 	name                    : "PAL-60"
> 	frameperiod.numerator   : 1001
> 	frameperiod.denominator : 30000
> 	framelines              : 525
>     VIDIOC_ENUMSTD(14)
> 	index                   : 14
> 	id                      : 0xff0000  
> [SECAM_B,SECAM_D,SECAM_G,SECAM_H,SECAM_K,SECAM_K1,SECAM_L,?ATSC_8_VSB]
> 	name                    : "SECAM"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(15)
> 	index                   : 15
> 	id                      : 0x10000 [SECAM_B]
> 	name                    : "SECAM-B"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(16)
> 	index                   : 16
> 	id                      : 0x40000 [SECAM_G]
> 	name                    : "SECAM-G"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(17)
> 	index                   : 17
> 	id                      : 0x80000 [SECAM_H]
> 	name                    : "SECAM-H"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(18)
> 	index                   : 18
> 	id                      : 0x320000 [SECAM_D,SECAM_K,SECAM_K1]
> 	name                    : "SECAM-DK"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(19)
> 	index                   : 19
> 	id                      : 0x400000 [SECAM_L]
> 	name                    : "SECAM-L"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>     VIDIOC_ENUMSTD(20)
> 	index                   : 20
> 	id                      : 0x800000 [?ATSC_8_VSB]
> 	name                    : "SECAM-Lc"
> 	frameperiod.numerator   : 1
> 	frameperiod.denominator : 25
> 	framelines              : 625
>
> inputs
>     VIDIOC_ENUMINPUT(0)
> 	index                   : 0
> 	name                    : "Component"
> 	type                    : CAMERA
> 	audioset                : 7
> 	tuner                   : 0
> 	std                     : 0x0 []
> 	status                  : 0x0 []
>     VIDIOC_ENUMINPUT(1)
> 	index                   : 1
> 	name                    : "S-Video"
> 	type                    : CAMERA
> 	audioset                : 7
> 	tuner                   : 0
> 	std                     : 0xffffff  
> [PAL_B,PAL_B1,PAL_G,PAL_H,PAL_I,PAL_D,PAL_D1,PAL_K,PAL_M,PAL_N,PAL_Nc,PAL_60 
> ,NTSC_M,NTSC_M_JP,?,?,SECAM_B,SECAM_D,SECAM_G,SECAM_H,SECAM_K,SECAM_K1,SECAM 
> _L,?ATSC_8_VSB]
> 	status                  : 0x0 []
>     VIDIOC_ENUMINPUT(2)
> 	index                   : 2
> 	name                    : "Composite"
> 	type                    : CAMERA
> 	audioset                : 7
> 	tuner                   : 0
> 	std                     : 0xffffff  
> [PAL_B,PAL_B1,PAL_G,PAL_H,PAL_I,PAL_D,PAL_D1,PAL_K,PAL_M,PAL_N,PAL_Nc,PAL_60 
> ,NTSC_M,NTSC_M_JP,?,?,SECAM_B,SECAM_D,SECAM_G,SECAM_H,SECAM_K,SECAM_K1,SECAM 
> _L,?ATSC_8_VSB]
> 	status                  : 0x0 []
>
> video capture
>     VIDIOC_ENUM_FMT(0,VIDEO_CAPTURE)
> 	index                   : 0
> 	type                    : VIDEO_CAPTURE
> 	flags                   : 1
> 	description             : "MPEG2-TS with AVC/AAC streams"
> 	pixelformat             : 0x4745504d [MPEG]
>     VIDIOC_G_FMT(VIDEO_CAPTURE)
> 	type                    : VIDEO_CAPTURE
> 	fmt.pix.width           : 1280
> 	fmt.pix.height          : 720
> 	fmt.pix.pixelformat     : 0x4745504d [MPEG]
> 	fmt.pix.field           : NONE
> 	fmt.pix.bytesperline    : 0
> 	fmt.pix.sizeimage       : 8192
> 	fmt.pix.colorspace      : SMPTE240M
> 	fmt.pix.priv            : 0
>
> controls
>     VIDIOC_QUERYCTRL(BASE+0)
> 	id                      : 9963776
> 	type                    : INTEGER
> 	name                    : "Brightness"
> 	minimum                 : 0
> 	maximum                 : 255
> 	step                    : 1
> 	default_value           : 128
> 	flags                   : 32
>     VIDIOC_QUERYCTRL(BASE+1)
> 	id                      : 9963777
> 	type                    : INTEGER
> 	name                    : "Contrast"
> 	minimum                 : 0
> 	maximum                 : 255
> 	step                    : 1
> 	default_value           : 64
> 	flags                   : 32
>     VIDIOC_QUERYCTRL(BASE+2)
> 	id                      : 9963778
> 	type                    : INTEGER
> 	name                    : "Saturation"
> 	minimum                 : 0
> 	maximum                 : 255
> 	step                    : 1
> 	default_value           : 64
> 	flags                   : 32
>     VIDIOC_QUERYCTRL(BASE+3)
> 	id                      : 9963779
> 	type                    : INTEGER
> 	name                    : "Hue"
> 	minimum                 : 0
> 	maximum                 : 30
> 	step                    : 1
> 	default_value           : 15
> 	flags                   : 32
>     VIDIOC_QUERYCTRL(BASE+27)
> 	id                      : 9963803
> 	type                    : INTEGER
> 	name                    : "Sharpness"
> 	minimum                 : 0
> 	maximum                 : 255
> 	step                    : 1
> 	default_value           : 128
> 	flags                   : 32
>
> Thanks
>
> Thomas S
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user




Hi Moritz

It seems I am able to read video from the device with this command - I will  
try that in the future - thanks

tps at t420:~/AMC/test$ ffmpeg -y -f mpegts -i /dev/video1 -c copy -f mpegts  
output.ts
ffmpeg version N-69238-g2699a37 Copyright (c) 2000-2015 the FFmpeg  
developers
   built on Jan 24 2015 11:51:09 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
   configuration: --enable-gpl --enable-libmp3lame --enable-libvpx --enable- 
libx264 --enable-version3 --enable-libvorbis --enable-x11grab --enable- 
libfreetype --enable-libv4l2 --enable-libfdk-aac --enable-nonfree
   libavutil      54. 17.100 / 54. 17.100
   libavcodec     56. 20.100 / 56. 20.100
   libavformat    56. 19.100 / 56. 19.100
   libavdevice    56.  4.100 / 56.  4.100
   libavfilter     5.  8.101 /  5.  8.101
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  1.100 /  1.  1.100
   libpostproc    53.  3.100 / 53.  3.100
Input #0, mpegts, from '/dev/video1':
   Duration: N/A, start: 0.390367, bitrate: N/A
   Program 1
     Stream #0:0[0x1011]: Video: h264 (Main) (HDMV / 0x564D4448),  
yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn,  
100 tbc
     Stream #0:1[0x1100]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000  
Hz, stereo, fltp, 130 kb/s
Output #0, mpegts, to 'output.ts':
   Metadata:
     encoder         : Lavf56.19.100
     Stream #0:0: Video: h264 (HDMV / 0x564D4448), yuv420p, 1280x720 [SAR  
1:1 DAR 16:9], q=2-31, 50 fps, 50 tbr, 90k tbn, 50 tbc
     Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 48000 Hz, stereo, 130  
kb/s
Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=  798 fps= 73 q=-1.0 Lsize=   14170kB time=00:00:15.97  
bitrate=7264.6kbits/s
video:12786kB audio:255kB subtitle:0kB other streams:0kB global headers:0kB  
muxing overhead: 8.656052%
Received signal 2: terminating.
tps at t420:~/AMC/test$


Regards

Thomas S

-- 
Venlig hilsen
Thomas Seilund
Løkketoften 46
2625 Vallensbæk


More information about the ffmpeg-user mailing list