[FFmpeg-trac] #8413(avformat:new): Demuxing embedded H.264 frames from mjpeg stream from Logitech webcam
FFmpeg
trac at avcodec.org
Thu Dec 5 02:23:44 EET 2019
#8413: Demuxing embedded H.264 frames from mjpeg stream from Logitech webcam
-------------------------------------+------------------------------------
Reporter: cmeister2 | Owner:
Type: enhancement | Status: new
Priority: normal | Component: avformat
Version: git-master | Resolution:
Keywords: mjpeg h264 | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+------------------------------------
Comment (by cmeister2):
Following up:
* I plugged in the other Logitech C920 camera that I bought, and that
exposes H.264 - so my immediate need here has suddenly been met. However,
I wanted to pursue this a bit more for future persons who are hitting
issues like this.
* Comparing the working camera and the non-working camera:
* the working camera has USB ID 046d:082d
* the non-working camera has USB ID 046d:0892
* the non-working camera does not expose the H.264 codec control
Extension GUID (A29E7641-DE04-47e3-8B2B-F4341AFF003B, as defined in [http
://gstreamer-
devel.966125.n4.nabble.com/attachment/4665838/0/USB_Video_Payload_H%20264_1%200.pdf
this document which details exactly how the MJPEG smuggling works], but
the working camera does.
* I plugged the -0892 camera into my Windows PC to see if it exposed H.264
or exposed H.264 over MJPEG - it did not.
* I have raised a ticket against Logitech to ask them whether this camera
even has H.264 natively or not; I don't know if I'll get back a response.
At this point, I'm unsure as to whether I can actually generate a video
file with the desired behaviour; so unsure as to whether you want to keep
this enhancement request open.
Other notes:
* The code at [https://gl.swmansion.com/bartosz.blaszkow/ffmpeg-
uvcvideo/tree/release/4.0] has support for doing UVCX_VIDEO_CONFIG_PROBE
(which I think is part of turning on H.264 support here)
* My guess for how you ask the camera to generate MJPEG in a container is
to twiddle some of the bits in `bStreamMuxOption` with
UVCX_VIDEO_CONFIG_COMMIT (Bit 6: MJPEG payload used as a container), but
without a camera to test on, I'm just guessing.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8413#comment:7>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list