[FFmpeg-devel] Question about HEIF/HEIC support
Hello I have spent some time researching the possibility of adding demuxing and muxing support for the HEIF image format into FFmpeg when I came across this GSOC project from last year. https://summerofcode.withgoogle.com/archive/2019/projects/5632663078043648/. Although it appears the resulting work was never sent back to FFmpeg. After doing a bit more digging I found the Github repository of the author of the original work https://github.com/Swaraj1998/FFmpeg/commit/9a885cddb3550ab863a60d02c5fb78e4ae206cf1 and there is a commit there that seems to contain the required code for HEIF demuxing, I have compiled that branch locally and it seems to handle all the samples I could throw at it. Was there a reason this work was not pushed back to FFmpeg? If it is just a matter of updating the patch to work on the latest master. I would be happy to help out. Thanks Tom ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH 1/2] web/download: remove Zeranoe links
Great. I'll use that in the future. Thanks Tom On Wed, 16 Sep 2020, 14:27 James Almer, wrote: > On 9/16/2020 10:00 AM, Tom Needham wrote: > > Is there a known alternative for windows which provides the same features > > of Zeranoe? If not I would be interested in setting something up but I'm > > having trouble building all the external libs for windows. If anyone has > > any tips or guidance please let me know. > > > > Thanks > > Tom > > Timo Rothenpieler set up https://github.com/BtbN/FFmpeg-Builds/releases > as a replacement. The link will be added to ffmpeg.org soon. > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH 1/2] web/download: remove Zeranoe links
Is there a known alternative for windows which provides the same features of Zeranoe? If not I would be interested in setting something up but I'm having trouble building all the external libs for windows. If anyone has any tips or guidance please let me know. Thanks Tom On Wed, 16 Sep 2020 at 11:56, Steven Liu wrote: > Gyan Doshi 于2020年9月16日周三 下午5:24写道: > > > > ffmpeg.zeranoe.com will close on Sep 18, 2020 > > > > Last published builds are from Aug 31 2020. > > --- > > src/download | 6 -- > > 1 file changed, 6 deletions(-) > > > > diff --git a/src/download b/src/download > > index 02e2fe7..34fa093 100644 > > --- a/src/download > > +++ b/src/download > > @@ -79,9 +79,6 @@ > > Windows EXE Files > > > > > > - https://ffmpeg.zeranoe.com/builds/";> > > -Windows builds by Zeranoe > > - > > > > > > > > @@ -93,9 +90,6 @@ > >https://evermeet.cx/ffmpeg/";> > > Static builds for macOS 64-bit > > > > - https://ffmpeg.zeranoe.com/builds/";> > > -Static and shared builds for macOS > 64-bit > > - > > > > > > > > -- > > 2.27.0 > > > > ___ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > To unsubscribe, visit link above, or email > > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". > > lgtm > > Thanks > Steven > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] .NET video processing with FFMPEG
There is a great wrapper for invoking FFmpeg in .NET available here https://github.com/tomaszzmuda/Xabe.FFmpeg/ however it does not support calling the C API directly. I am not aware of any tools or libraries that have this functionality. Thanks Tom On Wed, 16 Sep 2020 at 12:06, Timo Rothenpieler wrote: > The ffmpeg project does not provide any bindings for other languages > that can't interact with a C API on their own. > You will have to find and talk to the author of that wrapper. > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH V4] avformat: Add Dynacolor MVC Demuxer
Please ignore my previous email as it was sent in error. This demuxer adds support for demuxing files in the Dynacolor format such as the sample located at: http://samples.ffmpeg.org/camera-dvr/dynacolor/dynacolor-camera-sample However some decode errors are showing on the resulting MPEG4 stream. I don't know whether this is a bug with the demuxer or the file as there is only one sample but the output results in a 8 second mp4 file that is playable in VLC media player. I believe that i have addressed the comments that I recieved in the previous review. Also i have managed to improve the efficiency of the demuxer and also made the probe function more useful. Thanks Tom Signed-off-by: Tom Needham <06needh...@gmail.com> --- Changelog| 1 + doc/general.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/dynacolor.c | 411 +++ libavformat/dynacolor.h | 209 libavformat/version.h| 2 +- 7 files changed, 625 insertions(+), 1 deletion(-) create mode 100644 libavformat/dynacolor.c create mode 100644 libavformat/dynacolor.h diff --git a/Changelog b/Changelog index 711861bda9..79d39494c9 100644 --- a/Changelog +++ b/Changelog @@ -54,6 +54,7 @@ version : - DERF demuxer - CRI HCA decoder - CRI HCA demuxer +- Dynacolor MVC Demuxer version 4.2: diff --git a/doc/general.texi b/doc/general.texi index 752618a00b..4eb4716d87 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -452,6 +452,7 @@ library: @item DXA @tab @tab X @tab This format is used in the non-Windows version of the Feeble Files game and different game cutscenes repacked for use with ScummVM. +@item Dynacolor MVC @tab @tab X @item Electronic Arts cdata @tab@tab X @item Electronic Arts Multimedia @tab@tab X @tab Used in various EA games; files have extensions like WVE and UV2. diff --git a/libavformat/Makefile b/libavformat/Makefile index 8fd0d43721..4d1ca8b7ed 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -169,6 +169,7 @@ OBJS-$(CONFIG_DV_MUXER) += dvenc.o OBJS-$(CONFIG_DVBSUB_DEMUXER)+= dvbsub.o rawdec.o OBJS-$(CONFIG_DVBTXT_DEMUXER)+= dvbtxt.o rawdec.o OBJS-$(CONFIG_DXA_DEMUXER) += dxa.o +OBJS-$(CONFIG_DYNACOLOR_DEMUXER) += dynacolor.o OBJS-$(CONFIG_EA_CDATA_DEMUXER) += eacdata.o OBJS-$(CONFIG_EA_DEMUXER)+= electronicarts.o OBJS-$(CONFIG_EAC3_DEMUXER) += ac3dec.o rawdec.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 39d2c352f5..50f3926b05 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -131,6 +131,7 @@ extern AVOutputFormat ff_dv_muxer; extern AVInputFormat ff_dvbsub_demuxer; extern AVInputFormat ff_dvbtxt_demuxer; extern AVInputFormat ff_dxa_demuxer; +extern AVInputFormat ff_dynacolor_demuxer; extern AVInputFormat ff_ea_demuxer; extern AVInputFormat ff_ea_cdata_demuxer; extern AVInputFormat ff_eac3_demuxer; diff --git a/libavformat/dynacolor.c b/libavformat/dynacolor.c new file mode 100644 index 00..05a32b5299 --- /dev/null +++ b/libavformat/dynacolor.c @@ -0,0 +1,411 @@ +/* + * Dynacolor MVC Demuxer + * Copyright (c) 2020 Tom Needham + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "avformat.h" +#include "internal.h" +#include "dynacolor.h" +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" +#include "libavutil/mathematics.h" +#include "libavutil/timecode.h" +#include "libavutil/avassert.h" + +int ff_dyna_read_packet_header(AVFormatContext *ctx, AVIOContext *pb, unsigned char *pes_data, DynacolorPesHeader *pes, + unsigned int *size, time_t *time, DynacolorHeader *header, unsigned int *basicIdx_H, unsigned int *basicIdx_L, + unsigned char first) +{ +int ret = 0; +unsigned int stream_format; + +*(basicIdx_H) = avio_rl32(pb); + +header->Basic.Header1= *(basicIdx_H)&0xFF; +header->Basic.Header2= *(basicIdx_
[FFmpeg-devel] [PATCH] avformat: Add Dynacolor MVC Demuxer
This demuxer adds support for demuxing files in the Dynacolor format such as the sample located at: http://samples.ffmpeg.org/camera-dvr/dynacolor/dynacolor-camera-sample However some decode errors are showing on the resulting MPEG4 stream. I don't know whether this is a bug with the demuxer or the file as there is only one sample but the output results in a 1 second mp4 file that is playable in VLC media player. Signed-off-by: Tom Needham <06needh...@gmail.com> --- Changelog| 1 + doc/general.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/dynacolor.c | 411 +++ libavformat/dynacolor.h | 209 libavformat/version.h| 2 +- 7 files changed, 625 insertions(+), 1 deletion(-) create mode 100644 libavformat/dynacolor.c create mode 100644 libavformat/dynacolor.h diff --git a/Changelog b/Changelog index 711861bda9..79d39494c9 100644 --- a/Changelog +++ b/Changelog @@ -54,6 +54,7 @@ version : - DERF demuxer - CRI HCA decoder - CRI HCA demuxer +- Dynacolor MVC Demuxer version 4.2: diff --git a/doc/general.texi b/doc/general.texi index 752618a00b..4eb4716d87 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -452,6 +452,7 @@ library: @item DXA @tab @tab X @tab This format is used in the non-Windows version of the Feeble Files game and different game cutscenes repacked for use with ScummVM. +@item Dynacolor MVC @tab @tab X @item Electronic Arts cdata @tab@tab X @item Electronic Arts Multimedia @tab@tab X @tab Used in various EA games; files have extensions like WVE and UV2. diff --git a/libavformat/Makefile b/libavformat/Makefile index 8fd0d43721..4d1ca8b7ed 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -169,6 +169,7 @@ OBJS-$(CONFIG_DV_MUXER) += dvenc.o OBJS-$(CONFIG_DVBSUB_DEMUXER)+= dvbsub.o rawdec.o OBJS-$(CONFIG_DVBTXT_DEMUXER)+= dvbtxt.o rawdec.o OBJS-$(CONFIG_DXA_DEMUXER) += dxa.o +OBJS-$(CONFIG_DYNACOLOR_DEMUXER) += dynacolor.o OBJS-$(CONFIG_EA_CDATA_DEMUXER) += eacdata.o OBJS-$(CONFIG_EA_DEMUXER)+= electronicarts.o OBJS-$(CONFIG_EAC3_DEMUXER) += ac3dec.o rawdec.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 39d2c352f5..50f3926b05 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -131,6 +131,7 @@ extern AVOutputFormat ff_dv_muxer; extern AVInputFormat ff_dvbsub_demuxer; extern AVInputFormat ff_dvbtxt_demuxer; extern AVInputFormat ff_dxa_demuxer; +extern AVInputFormat ff_dynacolor_demuxer; extern AVInputFormat ff_ea_demuxer; extern AVInputFormat ff_ea_cdata_demuxer; extern AVInputFormat ff_eac3_demuxer; diff --git a/libavformat/dynacolor.c b/libavformat/dynacolor.c new file mode 100644 index 00..05a32b5299 --- /dev/null +++ b/libavformat/dynacolor.c @@ -0,0 +1,411 @@ +/* + * Dynacolor MVC Demuxer + * Copyright (c) 2020 Tom Needham + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "avformat.h" +#include "internal.h" +#include "dynacolor.h" +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" +#include "libavutil/mathematics.h" +#include "libavutil/timecode.h" +#include "libavutil/avassert.h" + +int ff_dyna_read_packet_header(AVFormatContext *ctx, AVIOContext *pb, unsigned char *pes_data, DynacolorPesHeader *pes, + unsigned int *size, time_t *time, DynacolorHeader *header, unsigned int *basicIdx_H, unsigned int *basicIdx_L, + unsigned char first) +{ +int ret = 0; +unsigned int stream_format; + +*(basicIdx_H) = avio_rl32(pb); + +header->Basic.Header1= *(basicIdx_H)&0xFF; +header->Basic.Header2= *(basicIdx_H) >> 8 & 0xFF; +header->Basic.reserved = *(basicIdx_H) >> 16 & 0x0F; +header->Basic.Source = *(basicIdx_H) >> 20 & 0x01; +header->Basic.WidthBase = *(basicIdx_H) >> 21 & 0x03; +header-&g
[FFmpeg-devel] ffmpeg.org down
This is probably off-topic for this mailing list, but I wasn't sure where to post this. ffmpeg.org seems to be down for me at the moment and all connections are timing out, is there any in progress maintenance/issues currently? Thanks Tom ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH V2] avformat: Add Dynacolor MVC Demuxer
Hi Michael I have fixed the build errors you mentioned by not inlining those functions so they do not get relocated. Updated patch below. From 4c17850cb2546487d789b86f511a30bdef40f817 Mon Sep 17 00:00:00 2001 From: Tom Needham <06needh...@gmail.com> Date: Sun, 21 Jul 2019 21:11:19 +0100 Subject: [PATCH] avformat: Add Dynacolor MVC Demuxer This demuxer adds support for demuxing files in the Dynacolor format such as the sample located at: http://samples.ffmpeg.org/camera-dvr/dynacolor/dynacolor-camera-sample However some decode errors are showing on the resulting MPEG4 stream. I don't know whether this is a bug with the demuxer or the file as there is only one sample but the output results in a 1 second mp4 file that is playable in VLC media player. Signed-off-by: Tom Needham <06needh...@gmail.com> --- Changelog| 1 + doc/general.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/dynacolor.c | 497 +++ libavformat/dynacolor.h | 276 ++ libavformat/version.h| 2 +- 7 files changed, 778 insertions(+), 1 deletion(-) create mode 100644 libavformat/dynacolor.c create mode 100644 libavformat/dynacolor.h diff --git a/Changelog b/Changelog index 711861bda9..79d39494c9 100644 --- a/Changelog +++ b/Changelog @@ -54,6 +54,7 @@ version : - DERF demuxer - CRI HCA decoder - CRI HCA demuxer +- Dynacolor MVC Demuxer version 4.2: diff --git a/doc/general.texi b/doc/general.texi index 752618a00b..4eb4716d87 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -452,6 +452,7 @@ library: @item DXA @tab @tab X @tab This format is used in the non-Windows version of the Feeble Files game and different game cutscenes repacked for use with ScummVM. +@item Dynacolor MVC @tab @tab X @item Electronic Arts cdata @tab@tab X @item Electronic Arts Multimedia @tab@tab X @tab Used in various EA games; files have extensions like WVE and UV2. diff --git a/libavformat/Makefile b/libavformat/Makefile index 8fd0d43721..4d1ca8b7ed 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -169,6 +169,7 @@ OBJS-$(CONFIG_DV_MUXER) += dvenc.o OBJS-$(CONFIG_DVBSUB_DEMUXER)+= dvbsub.o rawdec.o OBJS-$(CONFIG_DVBTXT_DEMUXER)+= dvbtxt.o rawdec.o OBJS-$(CONFIG_DXA_DEMUXER) += dxa.o +OBJS-$(CONFIG_DYNACOLOR_DEMUXER) += dynacolor.o OBJS-$(CONFIG_EA_CDATA_DEMUXER) += eacdata.o OBJS-$(CONFIG_EA_DEMUXER)+= electronicarts.o OBJS-$(CONFIG_EAC3_DEMUXER) += ac3dec.o rawdec.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 39d2c352f5..50f3926b05 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -131,6 +131,7 @@ extern AVOutputFormat ff_dv_muxer; extern AVInputFormat ff_dvbsub_demuxer; extern AVInputFormat ff_dvbtxt_demuxer; extern AVInputFormat ff_dxa_demuxer; +extern AVInputFormat ff_dynacolor_demuxer; extern AVInputFormat ff_ea_demuxer; extern AVInputFormat ff_ea_cdata_demuxer; extern AVInputFormat ff_eac3_demuxer; diff --git a/libavformat/dynacolor.c b/libavformat/dynacolor.c new file mode 100644 index 00..cccbbf82f2 --- /dev/null +++ b/libavformat/dynacolor.c @@ -0,0 +1,497 @@ +/* + * Dynacolor MVC Demuxer + * Copyright (c) 2020 Tom Needham + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "avformat.h" +#include "internal.h" +#include "dynacolor.h" +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" +#include "libavutil/mathematics.h" +#include "libavutil/timecode.h" +#include "libavutil/avassert.h" + +//max total size=sizeof(tHeader)+sizeof(tSuperExtraIdx1)+PENTAMICRO_PES_HEADER_SIZE+frame size +unsigned char ff_dyna_callback_checksum(tBasicIdx *header) +{ +int i; +unsigned char chksum = 0, *pHeader; +pHeader = (unsigned char *)header; +if (*pHeader == '@' && *(pHeader + 1) == '2') { +for (i = 0; i < sizeof(tBasicIdx) - 1; ++i) { +chksum ^= *
Re: [FFmpeg-devel] [PATCH] avformat: Add Dynacolor MVC Demuxer
Please See the updated patch below which applies as expected. From 8f741899b7f6b3884d613f622a548b353af2489e Mon Sep 17 00:00:00 2001 From: Tom Needham <06needh...@gmail.com> Date: Sun, 21 Jul 2019 21:11:19 +0100 Subject: [PATCH] avformat: Add Dynacolor MVC Demuxer This demuxer adds support for demuxing files in the Dynacolor format such as the sample located at: http://samples.ffmpeg.org/camera-dvr/dynacolor/dynacolor-camera-sample However some decode errors are showing on the resulting MPEG4 stream. I don't know whether this is a bug with the demuxer or the file as there is only one sample but the output results in a 1 second mp4 file that is playable in VLC media player. Signed-off-by: Tom Needham <06needh...@gmail.com> --- Changelog| 1 + doc/general.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/dynacolor.c | 497 +++ libavformat/dynacolor.h | 273 + libavformat/version.h| 2 +- 7 files changed, 775 insertions(+), 1 deletion(-) create mode 100644 libavformat/dynacolor.c create mode 100644 libavformat/dynacolor.h diff --git a/Changelog b/Changelog index 711861bda9..79d39494c9 100644 --- a/Changelog +++ b/Changelog @@ -54,6 +54,7 @@ version : - DERF demuxer - CRI HCA decoder - CRI HCA demuxer +- Dynacolor MVC Demuxer version 4.2: diff --git a/doc/general.texi b/doc/general.texi index 752618a00b..4eb4716d87 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -452,6 +452,7 @@ library: @item DXA @tab @tab X @tab This format is used in the non-Windows version of the Feeble Files game and different game cutscenes repacked for use with ScummVM. +@item Dynacolor MVC @tab @tab X @item Electronic Arts cdata @tab@tab X @item Electronic Arts Multimedia @tab@tab X @tab Used in various EA games; files have extensions like WVE and UV2. diff --git a/libavformat/Makefile b/libavformat/Makefile index 8fd0d43721..4d1ca8b7ed 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -169,6 +169,7 @@ OBJS-$(CONFIG_DV_MUXER) += dvenc.o OBJS-$(CONFIG_DVBSUB_DEMUXER)+= dvbsub.o rawdec.o OBJS-$(CONFIG_DVBTXT_DEMUXER)+= dvbtxt.o rawdec.o OBJS-$(CONFIG_DXA_DEMUXER) += dxa.o +OBJS-$(CONFIG_DYNACOLOR_DEMUXER) += dynacolor.o OBJS-$(CONFIG_EA_CDATA_DEMUXER) += eacdata.o OBJS-$(CONFIG_EA_DEMUXER)+= electronicarts.o OBJS-$(CONFIG_EAC3_DEMUXER) += ac3dec.o rawdec.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 39d2c352f5..50f3926b05 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -131,6 +131,7 @@ extern AVOutputFormat ff_dv_muxer; extern AVInputFormat ff_dvbsub_demuxer; extern AVInputFormat ff_dvbtxt_demuxer; extern AVInputFormat ff_dxa_demuxer; +extern AVInputFormat ff_dynacolor_demuxer; extern AVInputFormat ff_ea_demuxer; extern AVInputFormat ff_ea_cdata_demuxer; extern AVInputFormat ff_eac3_demuxer; diff --git a/libavformat/dynacolor.c b/libavformat/dynacolor.c new file mode 100644 index 00..394e36adbe --- /dev/null +++ b/libavformat/dynacolor.c @@ -0,0 +1,497 @@ +/* + * Dynacolor MVC Demuxer + * Copyright (c) 2020 Tom Needham + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "avformat.h" +#include "internal.h" +#include "dynacolor.h" +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" +#include "libavutil/mathematics.h" +#include "libavutil/timecode.h" +#include "libavutil/avassert.h" + +//max total size=sizeof(tHeader)+sizeof(tSuperExtraIdx1)+PENTAMICRO_PES_HEADER_SIZE+frame size +inline unsigned char ff_dyna_callback_checksum(tBasicIdx *header) +{ +int i; +unsigned char chksum = 0, *pHeader; +pHeader = (unsigned char *)header; +if (*pHeader == '@' && *(pHeader + 1) == '2') { +for (i = 0; i < sizeof(tBasicIdx) - 1; ++i) { +chksum ^= *(pHeader + i); +} +} +return chksum; +} + +inline unsigned
[FFmpeg-devel] [PATCH V2] avformat: Add Dynacolor MVC Demuxer
Thanks for your feedback. Please see the attached patch with all the style changes addressed which also applies properly. 0001-avformat-Add-Dynacolor-MVC-Demuxer.patch Description: Binary data ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH] avformat: Add Dynacolor MVC Demuxer
This demuxer adds support for demuxing files in the Dynacolor format such as the sample located at: http://samples.ffmpeg.org/camera-dvr/dynacolor/dynacolor-camera-sample However, some decode errors are showing on the resulting MPEG4 stream. I don't know whether this is a bug with the demuxer or the file as there is only one sample but the output results in a 1 second mp4 file that is playable in VLC media player. Signed-off-by: Tom Needham <06needh...@gmail.com> --- Changelog| 1 + doc/general.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/dynacolor.c | 560 +++ libavformat/dynacolor.h | 308 + libavformat/version.h| 2 +- 7 files changed, 873 insertions(+), 1 deletion(-) create mode 100644 libavformat/dynacolor.c create mode 100644 libavformat/dynacolor.h diff --git a/Changelog b/Changelog index 711861bda9..79d39494c9 100644 --- a/Changelog +++ b/Changelog @@ -54,6 +54,7 @@ version : - DERF demuxer - CRI HCA decoder - CRI HCA demuxer +- Dynacolor MVC Demuxer version 4.2: diff --git a/doc/general.texi b/doc/general.texi index 752618a00b..4eb4716d87 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -452,6 +452,7 @@ library: @item DXA @tab @tab X @tab This format is used in the non-Windows version of the Feeble Files game and different game cutscenes repacked for use with ScummVM. +@item Dynacolor MVC @tab @tab X @item Electronic Arts cdata @tab@tab X @item Electronic Arts Multimedia @tab@tab X @tab Used in various EA games; files have extensions like WVE and UV2. diff --git a/libavformat/Makefile b/libavformat/Makefile index 8fd0d43721..4d1ca8b7ed 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -169,6 +169,7 @@ OBJS-$(CONFIG_DV_MUXER) += dvenc.o OBJS-$(CONFIG_DVBSUB_DEMUXER)+= dvbsub.o rawdec.o OBJS-$(CONFIG_DVBTXT_DEMUXER)+= dvbtxt.o rawdec.o OBJS-$(CONFIG_DXA_DEMUXER) += dxa.o +OBJS-$(CONFIG_DYNACOLOR_DEMUXER) += dynacolor.o OBJS-$(CONFIG_EA_CDATA_DEMUXER) += eacdata.o OBJS-$(CONFIG_EA_DEMUXER)+= electronicarts.o OBJS-$(CONFIG_EAC3_DEMUXER) += ac3dec.o rawdec.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 39d2c352f5..50f3926b05 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -131,6 +131,7 @@ extern AVOutputFormat ff_dv_muxer; extern AVInputFormat ff_dvbsub_demuxer; extern AVInputFormat ff_dvbtxt_demuxer; extern AVInputFormat ff_dxa_demuxer; +extern AVInputFormat ff_dynacolor_demuxer; extern AVInputFormat ff_ea_demuxer; extern AVInputFormat ff_ea_cdata_demuxer; extern AVInputFormat ff_eac3_demuxer; diff --git a/libavformat/dynacolor.c b/libavformat/dynacolor.c new file mode 100644 index 00..059323e9f3 --- /dev/null +++ b/libavformat/dynacolor.c @@ -0,0 +1,560 @@ +/* + * Dynacolor MVC Demuxer + * Copyright (c) 2020 Tom Needham + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "avformat.h" +#include "internal.h" +#include "dynacolor.h" +#include "libavutil/channel_layout.h" +#include "libavutil/intreadwrite.h" +#include "libavutil/mathematics.h" +#include "libavutil/timecode.h" +#include "libavutil/avassert.h" + +//max total size=sizeof(tHeader)+sizeof(tSuperExtraIdx1)+PENTAMICRO_PES_HEADER_SIZE+frame size +inline unsigned char dyna_callback_checksum(tBasicIdx *header) +{ +int i; +unsigned char chksum = 0, *pHeader; +pHeader = (unsigned char *)header; +if (*pHeader == '@' && *(pHeader + 1) == '2') +for (i = 0; i < sizeof(tBasicIdx) - 1; ++i) +{ +chksum ^= *(pHeader + i); +} +return chksum; +} + +inline unsigned char dyna_extra_checksum(tBasicIdx *header) +{ +int i; +unsigned char chksum = 0, *pHeader; +pHeader = (unsigned char *)header; +if (*pHeader == '@' && *(pHeader + 1) == '2') +for (i = 0; i < sizeof(tBasicIdx) -
Re: [FFmpeg-devel] [PATCH] avcodec: Implement DM PAR Muxer/Demuxer
Hi Paul The only windows player I am aware of can be downloaded from here. https://www.dedicatedmicros-support.com/software_release/download.php?file=5357 Also, there is a tool that directly converts these PAR files into H264 format which can be obtained from here. https://www.dedicatedmicros-support.com/software_release/download.php?file=3344 And finally the library I used to create the wrapper can be downloaded from here. https://www.dedicatedmicros-support.com/software_release/download.php?file=3347 Thanks <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=oa-4885-a> Virus-free. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=oa-4885-a> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> On Sun, 7 Jul 2019 at 10:55, Paul B Mahol wrote: > On 7/5/19, Tom Needham <06needh...@gmail.com> wrote: > > Samples are Available from > > > > https://transfernow.net/131xk9g4u0jt > > > > Is there native Windows player for those files? > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".