Я использую ноутбук с Windows 11 и пытаюсь понять, как с помощью C# можно записывать видео через веб-камеру. Я загрузил пакет OpenCvSharp, но он не может сохранять файлы в формате mp4. При попытке получить следующую ошибку.
gOpenCV: FFMPEG: tag 0x34363258/'X264' is not supported with codec id 27 and format 'mp4 / MP4 (MPEG-4 Part 14)'
OpenCV: FFMPEG: fallback to use tag 0x31637661/'avc1'
Поэтому я пытался сохранить видео в формате avi, но как бы я ни старался, мне не удалось открыть это видео. Я попробовал медиаплеер VLC и проигрыватели Windows Media по умолчанию, но ни один из них не смог открыть указанный видеофайл. Есть ли у кого-нибудь предложения?
using System;
using System.Threading;
using OpenCvSharp;
namespace VideoCapture
{
public class Program
{
private static bool _isRecording = true;
static void Main(string[] args)
{
Console.WriteLine("Press any key to start recording...");
Console.ReadKey(); /
string outputPath = @"C:\Users\me\Example\RecordedVideo.avi";
Thread recordingThread = new Thread(() => RecordVideo(outputPath));
recordingThread.Start();
Console.WriteLine("Recording... Press any key to stop.");
Console.ReadKey();
_isRecording = false;
recordingThread.Join();
Console.WriteLine($"Recording stopped. Video saved to: {outputPath}");
}
static void RecordVideo(string outputPath)
{
using var capture = new VideoCapture(0);
capture.Set(VideoCaptureProperties.FrameWidth, 640);
capture.Set(VideoCaptureProperties.FrameHeight, 480);
capture.Set(VideoCaptureProperties.Fps, 30);
if (!capture.IsOpened())
{
Console.WriteLine("Failed to open the camera.");
return;
}
using var writer = new VideoWriter(outputPath, FourCC.MJPG, 30, new OpenCvSharp.Size(640, 480));
if (!writer.IsOpened())
{
Console.WriteLine("Failed to open the video writer.");
return;
}
while (_isRecording)
{
using var frame = new Mat();
capture.Read(frame); // Capture a frame
if (frame.Empty())
{
Console.WriteLine("Empty frame encountered. Stopping recording.");
break;
}
writer.Write(frame);
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... -supported
OpenCV VideoWriter выдает ошибку: FFMPEG: тег 0x34363258/'X264' не поддерживается ⇐ C#
Место общения программистов C#
1736870494
Anonymous
Я использую ноутбук с Windows 11 и пытаюсь понять, как с помощью C# можно записывать видео через веб-камеру. Я загрузил пакет OpenCvSharp, но он не может сохранять файлы в формате mp4. При попытке получить следующую ошибку.
gOpenCV: FFMPEG: tag 0x34363258/'X264' is not supported with codec id 27 and format 'mp4 / MP4 (MPEG-4 Part 14)'
OpenCV: FFMPEG: fallback to use tag 0x31637661/'avc1'
Поэтому я пытался сохранить видео в формате avi, но как бы я ни старался, мне не удалось открыть это видео. Я попробовал медиаплеер VLC и проигрыватели Windows Media по умолчанию, но ни один из них не смог открыть указанный видеофайл. Есть ли у кого-нибудь предложения?
using System;
using System.Threading;
using OpenCvSharp;
namespace VideoCapture
{
public class Program
{
private static bool _isRecording = true;
static void Main(string[] args)
{
Console.WriteLine("Press any key to start recording...");
Console.ReadKey(); /
string outputPath = @"C:\Users\me\Example\RecordedVideo.avi";
Thread recordingThread = new Thread(() => RecordVideo(outputPath));
recordingThread.Start();
Console.WriteLine("Recording... Press any key to stop.");
Console.ReadKey();
_isRecording = false;
recordingThread.Join();
Console.WriteLine($"Recording stopped. Video saved to: {outputPath}");
}
static void RecordVideo(string outputPath)
{
using var capture = new VideoCapture(0);
capture.Set(VideoCaptureProperties.FrameWidth, 640);
capture.Set(VideoCaptureProperties.FrameHeight, 480);
capture.Set(VideoCaptureProperties.Fps, 30);
if (!capture.IsOpened())
{
Console.WriteLine("Failed to open the camera.");
return;
}
using var writer = new VideoWriter(outputPath, FourCC.MJPG, 30, new OpenCvSharp.Size(640, 480));
if (!writer.IsOpened())
{
Console.WriteLine("Failed to open the video writer.");
return;
}
while (_isRecording)
{
using var frame = new Mat();
capture.Read(frame); // Capture a frame
if (frame.Empty())
{
Console.WriteLine("Empty frame encountered. Stopping recording.");
break;
}
writer.Write(frame);
}
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79354155/opencv-videowriter-throws-error-ffmpeg-tag-0x34363258-x264-is-not-supported[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия