mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
community/guvcview to 2.0.7-4
This commit is contained in:
parent
df6296a4cd
commit
efd4d0e348
2 changed files with 121 additions and 3 deletions
|
@ -8,7 +8,7 @@
|
||||||
pkgbase=guvcview
|
pkgbase=guvcview
|
||||||
pkgname=(guvcview guvcview-common guvcview-qt)
|
pkgname=(guvcview guvcview-common guvcview-qt)
|
||||||
pkgver=2.0.7
|
pkgver=2.0.7
|
||||||
pkgrel=3
|
pkgrel=4
|
||||||
pkgdesc='Simple interface for capturing and viewing video from v4l2 devices'
|
pkgdesc='Simple interface for capturing and viewing video from v4l2 devices'
|
||||||
arch=('x86_64')
|
arch=('x86_64')
|
||||||
url='http://guvcview.sourceforge.net/'
|
url='http://guvcview.sourceforge.net/'
|
||||||
|
@ -17,9 +17,11 @@ depends=('ffmpeg' 'gsl' 'gtk3' 'qt5-base' 'portaudio')
|
||||||
makedepends=('intltool')
|
makedepends=('intltool')
|
||||||
options=('!emptydirs' '!distcc')
|
options=('!emptydirs' '!distcc')
|
||||||
source=("https://downloads.sourceforge.net/$pkgbase/$pkgbase-src-$pkgver-2.tar.bz2"
|
source=("https://downloads.sourceforge.net/$pkgbase/$pkgbase-src-$pkgver-2.tar.bz2"
|
||||||
'0001-Update-AppStream-metadata-to-a-newer-version.patch')
|
'0001-Update-AppStream-metadata-to-a-newer-version.patch'
|
||||||
|
'ffmpeg5.patch')
|
||||||
sha256sums=('f0d1d7814597d42fddf1655f3654f74efd9f27e35bbe39ee4f0d42683de85c98'
|
sha256sums=('f0d1d7814597d42fddf1655f3654f74efd9f27e35bbe39ee4f0d42683de85c98'
|
||||||
'd9c65a9bf53eb28c48f9a9126035f5ebe520923124eae507d1cb2994e2a0d08f')
|
'd9c65a9bf53eb28c48f9a9126035f5ebe520923124eae507d1cb2994e2a0d08f'
|
||||||
|
'dbd24333d2a2ff02759e5bc21c0088382d093065a485376e8ee037809e066001')
|
||||||
noextract=($pkgbase-src-$pkgver-2.tar.bz2) # missing root dir
|
noextract=($pkgbase-src-$pkgver-2.tar.bz2) # missing root dir
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
|
@ -30,6 +32,9 @@ prepare() {
|
||||||
# Update AppStream metadata to a newer version
|
# Update AppStream metadata to a newer version
|
||||||
patch -Np1 -i ../0001-Update-AppStream-metadata-to-a-newer-version.patch
|
patch -Np1 -i ../0001-Update-AppStream-metadata-to-a-newer-version.patch
|
||||||
|
|
||||||
|
# Fix build with FFmpeg 5
|
||||||
|
patch -p1 -i ../ffmpeg5.patch
|
||||||
|
|
||||||
autoreconf -fi
|
autoreconf -fi
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
|
|
113
community/guvcview/ffmpeg5.patch
Normal file
113
community/guvcview/ffmpeg5.patch
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
diff --git a/gview_encoder/audio_codecs.c b/gview_encoder/audio_codecs.c
|
||||||
|
index 9050ac9..12f5850 100644
|
||||||
|
--- a/gview_encoder/audio_codecs.c
|
||||||
|
+++ b/gview_encoder/audio_codecs.c
|
||||||
|
@@ -409,7 +409,7 @@ int encoder_set_valid_audio_codec_list ()
|
||||||
|
int num_codecs = 0;
|
||||||
|
for ( ind = 0; ind < encoder_get_audio_codec_list_size(); ++ind)
|
||||||
|
{
|
||||||
|
- AVCodec *codec = avcodec_find_encoder(listSupCodecs[ind].codec_id);
|
||||||
|
+ const AVCodec *codec = avcodec_find_encoder(listSupCodecs[ind].codec_id);
|
||||||
|
if (!codec)
|
||||||
|
{
|
||||||
|
printf("ENCODER: no audio codec detected for %s\n", listSupCodecs[ind].description);
|
||||||
|
diff --git a/gview_encoder/encoder.c b/gview_encoder/encoder.c
|
||||||
|
index 8179bf0..fa10a89 100644
|
||||||
|
--- a/gview_encoder/encoder.c
|
||||||
|
+++ b/gview_encoder/encoder.c
|
||||||
|
@@ -223,7 +223,7 @@ void __attribute__ ((destructor)) gviewencoder_fini()
|
||||||
|
*
|
||||||
|
* returns: 1 - sample format is supported; 0 - is not supported
|
||||||
|
*/
|
||||||
|
-static int encoder_check_audio_sample_fmt(AVCodec *codec, enum AVSampleFormat sample_fmt)
|
||||||
|
+static int encoder_check_audio_sample_fmt(const AVCodec *codec, enum AVSampleFormat sample_fmt)
|
||||||
|
{
|
||||||
|
const enum AVSampleFormat *p = codec->sample_fmts;
|
||||||
|
|
||||||
|
@@ -446,10 +446,6 @@ static encoder_video_context_t *encoder_video_init(encoder_context_t *encoder_ct
|
||||||
|
|
||||||
|
video_codec_data->codec_context = avcodec_alloc_context3(video_codec_data->codec);
|
||||||
|
|
||||||
|
- avcodec_get_context_defaults3 (
|
||||||
|
- video_codec_data->codec_context,
|
||||||
|
- video_codec_data->codec);
|
||||||
|
-
|
||||||
|
if(video_codec_data->codec_context == NULL)
|
||||||
|
{
|
||||||
|
fprintf(stderr, "ENCODER: FATAL memory allocation failure (encoder_video_init): %s\n", strerror(errno));
|
||||||
|
@@ -712,7 +708,6 @@ static encoder_audio_context_t *encoder_audio_init(encoder_context_t *encoder_ct
|
||||||
|
}
|
||||||
|
|
||||||
|
audio_codec_data->codec_context = avcodec_alloc_context3(audio_codec_data->codec);
|
||||||
|
- avcodec_get_context_defaults3 (audio_codec_data->codec_context, audio_codec_data->codec);
|
||||||
|
|
||||||
|
if(audio_codec_data->codec_context == NULL)
|
||||||
|
{
|
||||||
|
diff --git a/gview_encoder/encoder.h b/gview_encoder/encoder.h
|
||||||
|
index 11c9522..a5697c1 100644
|
||||||
|
--- a/gview_encoder/encoder.h
|
||||||
|
+++ b/gview_encoder/encoder.h
|
||||||
|
@@ -130,7 +130,7 @@
|
||||||
|
*/
|
||||||
|
typedef struct _encoder_codec_data_t
|
||||||
|
{
|
||||||
|
- AVCodec *codec;
|
||||||
|
+ const AVCodec *codec;
|
||||||
|
AVDictionary *private_options;
|
||||||
|
AVCodecContext *codec_context;
|
||||||
|
AVFrame *frame;
|
||||||
|
diff --git a/gview_encoder/video_codecs.c b/gview_encoder/video_codecs.c
|
||||||
|
index ae86c3f..30e757b 100644
|
||||||
|
--- a/gview_encoder/video_codecs.c
|
||||||
|
+++ b/gview_encoder/video_codecs.c
|
||||||
|
@@ -974,7 +974,7 @@ int encoder_set_valid_video_codec_list ()
|
||||||
|
int num_codecs = 1; /*raw codec (no encoding) is always valid*/
|
||||||
|
for ( ind = 1; ind < encoder_get_video_codec_list_size(); ++ind)
|
||||||
|
{
|
||||||
|
- AVCodec *codec = avcodec_find_encoder(listSupCodecs[ind].codec_id);
|
||||||
|
+ const AVCodec *codec = avcodec_find_encoder(listSupCodecs[ind].codec_id);
|
||||||
|
if (!codec)
|
||||||
|
{
|
||||||
|
printf("ENCODER: no video codec detected for %s\n", listSupCodecs[ind].description);
|
||||||
|
diff --git a/gview_v4l2core/jpeg_decoder.c b/gview_v4l2core/jpeg_decoder.c
|
||||||
|
index 8e9cf6b..82ff633 100644
|
||||||
|
--- a/gview_v4l2core/jpeg_decoder.c
|
||||||
|
+++ b/gview_v4l2core/jpeg_decoder.c
|
||||||
|
@@ -1350,7 +1350,7 @@ void jpeg_close_decoder()
|
||||||
|
|
||||||
|
typedef struct _codec_data_t
|
||||||
|
{
|
||||||
|
- AVCodec *codec;
|
||||||
|
+ const AVCodec *codec;
|
||||||
|
AVCodecContext *context;
|
||||||
|
AVFrame *picture;
|
||||||
|
} codec_data_t;
|
||||||
|
@@ -1409,7 +1409,6 @@ int jpeg_init_decoder(int width, int height)
|
||||||
|
|
||||||
|
#if LIBAVCODEC_VER_AT_LEAST(53,6)
|
||||||
|
codec_data->context = avcodec_alloc_context3(codec_data->codec);
|
||||||
|
- avcodec_get_context_defaults3 (codec_data->context, codec_data->codec);
|
||||||
|
#else
|
||||||
|
codec_data->context = avcodec_alloc_context();
|
||||||
|
avcodec_get_context_defaults(codec_data->context);
|
||||||
|
diff --git a/gview_v4l2core/uvc_h264.c b/gview_v4l2core/uvc_h264.c
|
||||||
|
index f526b1e..e3ff5f1 100644
|
||||||
|
--- a/gview_v4l2core/uvc_h264.c
|
||||||
|
+++ b/gview_v4l2core/uvc_h264.c
|
||||||
|
@@ -47,7 +47,7 @@ extern int verbosity;
|
||||||
|
|
||||||
|
typedef struct _h264_decoder_context_t
|
||||||
|
{
|
||||||
|
- AVCodec *codec;
|
||||||
|
+ const AVCodec *codec;
|
||||||
|
AVCodecContext *context;
|
||||||
|
AVFrame *picture;
|
||||||
|
|
||||||
|
@@ -1004,7 +1004,6 @@ int h264_init_decoder(int width, int height)
|
||||||
|
|
||||||
|
#if LIBAVCODEC_VER_AT_LEAST(53,6)
|
||||||
|
h264_ctx->context = avcodec_alloc_context3(h264_ctx->codec);
|
||||||
|
- avcodec_get_context_defaults3 (h264_ctx->context, h264_ctx->codec);
|
||||||
|
#else
|
||||||
|
h264_ctx->context = avcodec_alloc_context();
|
||||||
|
avcodec_get_context_defaults(h264_ctx->context);
|
Loading…
Reference in a new issue