mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-14 22:22:59 +02:00
avdevice/v4l2enc: Allow writing non-rawvideos to v4l2.
Signed-off-by: David Manouchehri <david.manouchehri@riseup.net>
This commit is contained in:
parent
d0bd00c8eb
commit
d0705ecb2b
@ -47,8 +47,7 @@ static av_cold int write_header(AVFormatContext *s1)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (s1->nb_streams != 1 ||
|
if (s1->nb_streams != 1 ||
|
||||||
s1->streams[0]->codecpar->codec_type != AVMEDIA_TYPE_VIDEO ||
|
s1->streams[0]->codecpar->codec_type != AVMEDIA_TYPE_VIDEO) {
|
||||||
s1->streams[0]->codecpar->codec_id != AV_CODEC_ID_RAWVIDEO) {
|
|
||||||
av_log(s1, AV_LOG_ERROR,
|
av_log(s1, AV_LOG_ERROR,
|
||||||
"V4L2 output device supports only a single raw video stream\n");
|
"V4L2 output device supports only a single raw video stream\n");
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
@ -56,7 +55,12 @@ static av_cold int write_header(AVFormatContext *s1)
|
|||||||
|
|
||||||
par = s1->streams[0]->codecpar;
|
par = s1->streams[0]->codecpar;
|
||||||
|
|
||||||
v4l2_pixfmt = ff_fmt_ff2v4l(par->format, AV_CODEC_ID_RAWVIDEO);
|
if(par->codec_id == AV_CODEC_ID_RAWVIDEO) {
|
||||||
|
v4l2_pixfmt = ff_fmt_ff2v4l(par->format, AV_CODEC_ID_RAWVIDEO);
|
||||||
|
} else {
|
||||||
|
v4l2_pixfmt = ff_fmt_ff2v4l(AV_PIX_FMT_NONE, par->codec_id);
|
||||||
|
}
|
||||||
|
|
||||||
if (!v4l2_pixfmt) { // XXX: try to force them one by one?
|
if (!v4l2_pixfmt) { // XXX: try to force them one by one?
|
||||||
av_log(s1, AV_LOG_ERROR, "Unknown V4L2 pixel format equivalent for %s\n",
|
av_log(s1, AV_LOG_ERROR, "Unknown V4L2 pixel format equivalent for %s\n",
|
||||||
av_get_pix_fmt_name(par->format));
|
av_get_pix_fmt_name(par->format));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user