[Cin] Record HDV cam Live video with IEC61883 failed
Terje J. Hanssen
terjejhanssen at gmail.com
Fri Jun 27 10:50:35 CEST 2025
Den 27.06.2025 09:10, skrev Andrew Randrianasulu:
>
>
> чт, 26 июн. 2025 г., 18:56 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>
>
> Den 20.06.2025 00:50, skrev Terje J. Hanssen:
>>
>>
>> Den 20.06.2025 00:43, skrev Andrew Randrianasulu:
>>>
>>>
>>> пт, 20 июн. 2025 г., 01:25 Terje J. Hanssen
>>> <terjejhanssen at gmail.com>:
>>>
>>>
>>>
>>> On 19.06.2025 12:43, Terje J. Hanssen wrote:
>>>>
>>>>
>>>> Den 18.06.2025 22:17, skrev Andrew Randrianasulu:
>>>>>
>>>>>
>>>>> ср, 18 июн. 2025 г., 23:13 Terje J. Hanssen via Cin
>>>>> <cin at lists.cinelerra-gg.org>:
>>>>>
>>>>> I tried CinGG-20250430-x86_64.AppImage to record HDV
>>>>> cam Live video connected via IEEE-1394 (Sony iLink,
>>>>> Firewire) using the iec61883 driver.
>>>>>
>>>>>
>>>>> "For the IEC 61883 driver, the compression must be DV."
>>>>> I think HDV (mpeg2) was never implemented there?
>>>>
>>>> I noticed "must be DV", but was not sure how literal "DV"
>>>> was meant(?)
>>>>
>>>> According to the ffmpeg man page for iec61883:
>>>> /The iec61883 capture device supports capturing from a
>>>> video device connected via IEEE1394 (FireWire), using
>>>> *libiec61883 *and the new Linux FireWire stack (juju). This
>>>> is the *default DV/HDV input method* in Linux Kernel 2.6.37
>>>> and later, since the old FireWire stack was removed.
>>>> Specify the FireWire port to be used as input file, or
>>>> "auto" to choose the first port connected.
>>>> /https://www.mankier.com/1/ffmpeg-devices#Input_Devices-iec61883/
>>>>
>>>> /Kernel 2.6.37 was released in Jan 2011.
>>>> And according to Phoronix:Linux Has A New Firewire
>>>> IEEE-1394 Maintainer - Intends To Maintain Support To 2029/
>>>> /https://www.phoronix.com/news/Linux-Firewire-New-Maintainer/
>>>> /
>>>>
>>>>> I am not sure if I can do anything even if changes very
>>>>> simple - I have no such hardware.....
>>>>
>>>> Yeah, I understand that will be difficult.
>>>> My legacy SuperMicro workstation had a Firewire port on its
>>>> front panel, which now is working with a
>>>> Texas Instruments XIO2200A IEEE-1394a-2000 Controller (pci)
>>>> mounted on the MSI mobo.
>>>>
>>>> libIEC 61883 has not been enabled on my system ffmpeg-7,
>>>> but recently I got this bug accepted by OBS, and iec61883
>>>> is just enabled in Factory.
>>>> So when it is available for Slowroll, I will try recording
>>>> with ffmpeg.
>>>
>
> Yeah, got an upgrade of ffmpeg-7 version 7.1.1-1699.6.0.6.pm.1
> (Packman) with libiec61883 enabled for openSUSE-Slowroll.
> Connected my 1080i HDV camera via Firewire and tested with the
> ffmpeg code examples from the documentation
> https://www.ffmpeg.org/ffmpeg-devices.html#Examples-3
>
> As seen the connection works straight off, so in that respect also
> Cingg Record ought to work:
>
> 1) Grab and show the input of a FireWire DV/HDV device.
>
> ffplay -f iec61883 -i auto
>
> libiec61883 error: Failed to get channels available.= 0B
> [mpeg2video @ 0x7fc11401d340] Invalid frame dimensions 0x0.
> [iec61883 @ 0x7fc114000c80] Could not find codec parameters for
> stream 0 (Unknown: none): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> [iec61883 @ 0x7fc114000c80] Could not find codec parameters for
> stream 3 (Unknown: none ([161][0][0][0] / 0x00A1)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> [iec61883 @ 0x7fc114000c80] Could not find codec parameters for
> stream 4 (Unknown: none ([160][0][0][0] / 0x00A0)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
>
> Input #0, iec61883, from 'auto':
> Duration: N/A, start: 53.733222, bitrate: 25384 kb/s
> Program 100
> Stream #0:1: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
> yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000
> kb/s, 25 fps, 25 tbr, 90k tbn
> Side data:
> cpb: bitrate max/min/avg: 25000000/0/0 buffer size:
> 7340032 vbv_delay: N/A
> Stream #0:2: Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003),
> 48000 Hz, stereo, fltp, 384 kb/s
> Stream #0:4: Unknown: none ([160][0][0][0] / 0x00A0)
> Stream #0:3: Unknown: none ([161][0][0][0] / 0x00A1)
> No Program
> Stream #0:0: Unknown: none
> ^Cterje at localhost:~> d= 0 aq= 46KB vq= 3757KB sq= 0B
>
>
> 2) Grab and record the input of a FireWire DV/HDV device, using a
> packet buffer of 100000 packets if the source is HDV.
>
> ffmpeg -hide_banner -f iec61883 -i auto -dvbuffer 100000 ffmpeg_fw.m2t
>
> libiec61883 error: Failed to get channels available.
> [mpeg2video @ 0x55dcc1538940] Invalid frame dimensions 0x0.
> Last message repeated 9 times
>
> [iec61883 @ 0x55dcc151aa00] Could not find codec parameters for
> stream 0 (Unknown: none): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> [iec61883 @ 0x55dcc151aa00] Could not find codec parameters for
> stream 3 (Unknown: none ([161][0][0][0] / 0x00A1)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> [iec61883 @ 0x55dcc151aa00] Could not find codec parameters for
> stream 4 (Unknown: none ([160][0][0][0] / 0x00A0)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
>
> Input #0, iec61883, from 'auto':
> Duration: N/A, start: 214.629222, bitrate: 25384 kb/s
> Program 100
> Stream #0:2: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
> yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], 25000
> kb/s, 25 fps, 25 tbr, 90k tbn
> Side data:
> cpb: bitrate max/min/avg: 25000000/0/0 buffer size:
> 7340032 vbv_delay: N/A
> Stream #0:1: Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003),
> 48000 Hz, stereo, fltp, 384 kb/s
> Stream #0:4: Unknown: none ([160][0][0][0] / 0x00A0)
> Stream #0:3: Unknown: none ([161][0][0][0] / 0x00A1)
> No Program
> Stream #0:0: Unknown: none
> Stream mapping:
> Stream #0:2 -> #0:0 (mpeg2video (native) -> mpeg2video (native))
> Stream #0:1 -> #0:1 (mp2 (native) -> mp2 (native))
> Press [q] to stop, [?] for help
>
> Output #0, mpegts, to 'ffmpeg_fw.m2t':
> Metadata:
> encoder : Lavf61.7.100
> Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, bt709, top
> coded first (swapped)), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 200
> kb/s, 25 fps, 90k tbn
> Metadata:
> encoder : Lavc61.19.101 mpeg2video
> Side data:
> cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0
> vbv_delay: N/A
> Stream #0:1: Audio: mp2, 48000 Hz, stereo, s16, 384 kb/s
> Metadata:
> encoder : Lavc61.19.101 mp2
> [out#0/mpegts @ 0x55dcc157c1c0] video:6855KiB audio:1485KiB
> subtitle:0KiB other streams:0KiB global headers:0KiB muxing
> overhead: 5.312824%
> frame= 778 fps= 26 q=31.0 Lsize= 8783KiB time=00:00:31.66
> bitrate=2271.9kbits/s speed=1.05x
> Exiting normally, received signal 2.
>
>
> As seen from the output above, both 1) ffplay and 2) ffmpeg codes
> works, but IMO not streamlined nor optimal:
>
> What surprise me is the warning messages, also reported by other
> "Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options"
> Tried to set both up to value 50M on the input side, while they
> still didn't disappear
>
> And next, why the default output bitrate=2271.9kbits/s is much
> lower than the standard m2t input 25000 kb/s
>
> I would have expected that the documentation had brought up
> something better to grab a standard HDV.m2t file format?
>
>
>
> try to add -c:v copy -c:a copy to your ffmpeg command, so it will not
> try to recompress streams?
>
Yes, I actually did afterwards with "-c copy" and that fixed (locked)
the output bitrate=input bitrate.
Also I had to re-change the /dev/fw* permissions to avoid the
"libiec61883 error: Failed to get channels available.<"
Obviously they automatic change back to "root node" permissions each
time (reboot, reconnection or etc).
I also tried suggestions on a Jellyfin forum and partly on Stack
Overlow, but that didn't remove the disturbing warnings
"Consider increasing the value for the 'analyzeduration' (0) and
'probesize' (5000000) options".
ffmpeg -hide_banner -f iec61883 -analyzeduration 1 -probesize 10M -i
auto -dvbuffer 100000 -c copy out4.m2t
[iec61883 @ 0x5589014f9a40] Could not find codec parameters for stream 0
(Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' (1) and
'probesize' (10000000) options
[iec61883 @ 0x5589014f9a40] Could not find codec parameters for stream 1
(Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' (1) and
'probesize' (10000000) options
[iec61883 @ 0x5589014f9a40] Could not find codec parameters for stream 2
(Video: mpeg2video ([2][0][0][0] / 0x0002), none): unspecified size
Consider increasing the value for the 'analyzeduration' (1) and
'probesize' (10000000) options
[iec61883 @ 0x5589014f9a40] Could not find codec parameters for stream 3
(Unknown: none): unknown codec
Consider increasing the value for the 'analyzeduration' (1) and
'probesize' (10000000) options
Input #0, iec61883, from 'auto':
Duration: N/A, start: 2742.717356, bitrate: 384 kb/s
Program 100
Stream #0:2: Video: mpeg2video ([2][0][0][0] / 0x0002), none, 90k
tbr, 90k tbn
Stream #0:4: Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003), 48000 Hz,
stereo, fltp, 384 kb/s
Stream #0:3: Unknown: none
Stream #0:1: Unknown: none
No Program
Stream #0:0: Unknown: none
Stream mapping:
Stream #0:2 -> #0:0 (copy)
Stream #0:4 -> #0:1 (copy)
Output #0, mpegts, to 'out4.m2t':
Metadata:
encoder : Lavf61.7.100
Stream #0:0: Video: mpeg2video ([2][0][0][0] / 0x0002), none, q=2-31,
90k tbr, 90k tbn
Stream #0:1: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo,
fltp, 384 kb/s
Press [q] to stop, [?] for help
[out#0/mpegts @ 0x558901526a80] video:53471KiB audio:825KiB
subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead:
2.437727%
frame= 438 fps= 25 q=-1.0 Lsize= 55620KiB time=00:00:17.59
bitrate=25900.1kbits/s speed= 1x
Exiting normally, received signal 2.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20250627/dce99841/attachment-0001.htm>
More information about the Cin
mailing list