You are not logged in.
I've been using guvcview to capture video chats three times a week since November. Between Friday (2016-01-29) and today (2016-02-02) something has changed and video is no longer recorded. I did perform a full system update (`pacman -Syu`) at least twice in that period.
Here are some facts:
* I'm using the same setup as all previous times
* Same webcam
* Same usb port
* Symptoms are the same after a fresh boot
Here are the symptoms:
* When launched, the preview feed in guvcview works as expected.
* When recording begins, everything seems to be functioning. The feed updates, the volume indicator moves, etc.
* After recording has finished, the resulting mkv file is suspiciously small
* When played, the mkv file features the first frame of video, as a still frame, with the audio playing back properly.
I've not really paid too much attention to the guvcview output on the console, but I do believe the following items are new:
rdahlgren@athas:~ $ guvcview
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: Could not grab image (select timeout): Directory not empty
V4L2_CORE: Could not grab image (select timeout): Directory not empty
V4L2_CORE: Could not grab image (select timeout): Directory not empty
Later, after approximately one second of recording video, some logging from matroska about packet buffers being in use is emitted. The following snippet includes recording video for ~2 seconds before stopping.
rdahlgren@athas:~ $ guvcview
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: No such file or directory
V4L2_CORE: Could not grab image (select timeout): Directory not empty
V4L2_CORE: Could not grab image (select timeout): Directory not empty
V4L2_CORE: Could not grab image (select timeout): Directory not empty(guvcview:2120): Gdk-CRITICAL **: gdk_device_get_n_axes: assertion 'gdk_device_get_source (device) != GDK_SOURCE_KEYBOARD' failed
(guvcview:2120): Gdk-CRITICAL **: gdk_device_get_n_axes: assertion 'gdk_device_get_source (device) != GDK_SOURCE_KEYBOARD' failed
GUVCVIEW: (status) saving video to /home/rdahlgren/my_video-9.mkv
ENCODER: add stream 0 to stream list
ENCODER: add stream 1 to stream list
ENCODER: (matroska) add seekhead entry 0 (max 10)
ENCODER: (matroska) add seekhead entry 1 (max 10)
AUDIO: Pulseaudio pa_stream_get_latency() failed
ENCODER: (matroska) packet buffer [0] is in use: flushing cached data
ENCODER: (matroska) packet buffer [1] is in use: flushing cached data
ENCODER: (matroska) packet buffer [2] is in use: flushing cached data
ENCODER: (matroska) packet buffer [3] is in use: flushing cached data
ENCODER: (matroska) packet buffer [4] is in use: flushing cached data
ENCODER: (matroska) packet buffer [5] is in use: flushing cached data
ENCODER: (matroska) packet buffer [6] is in use: flushing cached data
ENCODER: (matroska) packet buffer [7] is in use: flushing cached data
ENCODER: (matroska) packet buffer [8] is in use: flushing cached data
ENCODER: (matroska) packet buffer [9] is in use: flushing cached data
ENCODER: (matroska) packet buffer [10] is in use: flushing cached data
ENCODER: (matroska) packet buffer [11] is in use: flushing cached data
ENCODER: (matroska) packet buffer [12] is in use: flushing cached data
ENCODER: (matroska) packet buffer [13] is in use: flushing cached data
ENCODER: (matroska) packet buffer [14] is in use: flushing cached data
ENCODER: (matroska) packet buffer [15] is in use: flushing cached data
ENCODER: (matroska) packet buffer [16] is in use: flushing cached data
ENCODER: (matroska) packet buffer [17] is in use: flushing cached data
ENCODER: (matroska) packet buffer [18] is in use: flushing cached data
ENCODER: (matroska) packet buffer [19] is in use: flushing cached data
ENCODER: (matroska) packet buffer [20] is in use: flushing cached data
ENCODER: (matroska) packet buffer [21] is in use: flushing cached data
ENCODER: (matroska) packet buffer [22] is in use: flushing cached data
ENCODER: (matroska) packet buffer [23] is in use: flushing cached data
ENCODER: (matroska) packet buffer [24] is in use: flushing cached data
ENCODER: (matroska) packet buffer [25] is in use: flushing cached data
ENCODER: (matroska) packet buffer [26] is in use: flushing cached data
ENCODER: (matroska) packet buffer [27] is in use: flushing cached data
ENCODER: (matroska) packet buffer [28] is in use: flushing cached data
ENCODER: (matroska) packet buffer [29] is in use: flushing cached data
ENCODER: (matroska) packet buffer [30] is in use: flushing cached data
ENCODER: (matroska) packet buffer [31] is in use: flushing cached data
ENCODER: (matroska) packet buffer [32] is in use: flushing cached data
ENCODER: (matroska) packet buffer [33] is in use: flushing cached data
ENCODER: (matroska) packet buffer [34] is in use: flushing cached data
ENCODER: (matroska) packet buffer [35] is in use: flushing cached data
ENCODER: (matroska) packet buffer [36] is in use: flushing cached data
ENCODER: (matroska) packet buffer [37] is in use: flushing cached data
ENCODER: (matroska) packet buffer [38] is in use: flushing cached data
ENCODER: (matroska) packet buffer [39] is in use: flushing cached data
ENCODER: (matroska) packet buffer [40] is in use: flushing cached data
ENCODER: (matroska) packet buffer [41] is in use: flushing cached data
ENCODER: (matroska) packet buffer [42] is in use: flushing cached data
ENCODER: (matroska) packet buffer [43] is in use: flushing cached data
ENCODER: (matroska) packet buffer [44] is in use: flushing cached data
ENCODER: (matroska) packet buffer [45] is in use: flushing cached data
ENCODER: (matroska) packet buffer [46] is in use: flushing cached data
ENCODER: (matroska) packet buffer [47] is in use: flushing cached data
ENCODER: (matroska) packet buffer [48] is in use: flushing cached data
ENCODER: (matroska) packet buffer [49] is in use: flushing cached data
ENCODER: (matroska) packet buffer [50] is in use: flushing cached data
ENCODER: (matroska) packet buffer [51] is in use: flushing cached data
ENCODER: (matroska) packet buffer [52] is in use: flushing cached data
ENCODER: (matroska) packet buffer [53] is in use: flushing cached data
ENCODER: (matroska) packet buffer [54] is in use: flushing cached data
ENCODER: (matroska) packet buffer [55] is in use: flushing cached data
ENCODER: (matroska) packet buffer [56] is in use: flushing cached data
ENCODER: (matroska) packet buffer [57] is in use: flushing cached data
ENCODER: (matroska) packet buffer [58] is in use: flushing cached data
ENCODER: (matroska) packet buffer [59] is in use: flushing cached data
ENCODER: Maximum of 50 delayed video frames reached...(guvcview:2120): Gdk-CRITICAL **: gdk_device_get_n_axes: assertion 'gdk_device_get_source (device) != GDK_SOURCE_KEYBOARD' failed
ENCODER: (matroska) packet buffer [60] is in use: flushing cached data
ENCODER: (matroska) packet buffer [61] is in use: flushing cached data
ENCODER: (matroska) packet buffer [62] is in use: flushing cached data
ENCODER: (matroska) packet buffer [63] is in use: flushing cached data
ENCODER: (matroska) closing context
ENCODER: (matroska) closing cluster
ENCODER: (matroska)writing cues
ENCODER: (matroska)add seekhead
ENCODER: (matroska) add seekhead entry 2 (max 10)
ENCODER: (matroska)write seekhead
ENCODER: (matroska) end duration = 3479 (3479.000000)
I think something that I updated over the weekend broke guvcview :-/
Any guidance is appreciated. I'll continue digging in the mean time.
EDIT
`libmatroska` was updated Friday afternoon (after I recorded my morning video chat). Here's the package info for the version I have:
rdahlgren@athas:~ $ pacman -Qi libmatroska
Name : libmatroska
Version : 1.4.4-1
Description : Matroska library
Architecture : x86_64
URL : http://dl.matroska.org/downloads/libmatroska/
Licenses : LGPL
Groups : None
Provides : libmatroska.so=6-64
Depends On : libebml.so=4-64
Optional Deps : None
Required By : vlc
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 792.00 KiB
Packager : Maxime Gauduin <alucryd@archlinux.org>
Build Date : Sat 09 Jan 2016 01:29:46 PM EST
Install Date : Fri 29 Jan 2016 01:39:22 PM EST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
Last edited by rdahlgren (2016-02-02 16:50:53)
Offline
Changing the guvcview output file format from mkv to avi does not fix the issue.
I changed the video codec from 'MPEG4-ASP' to 'MPEG4-AVC (H264)' and video recording is functioning properly again. I don't think this solves the issue so much as it mitigates it. I'll do some more digging later about that video codec and see what could have broken it.
Offline