profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/dwbuiten/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

dwbuiten/smallfry 48

JPEG Optimization

dwbuiten/bxd 26

BXD: Binary Hex Diff

dwbuiten/d2vsource 26

D2V parser and decoder for VapourSynth

dwbuiten/go-ffv1 11

FFV1 Go Decoder

dwbuiten/go-mediainfo 11

Basic MediaInfo bindings for Go

dwbuiten/obuparse 8

A simple and portable single file AV1 OBU parser written in mostly C89 with a tiny bit of C99, with a permissive license.

dwbuiten/matroska 5

A full-surface Matroska demuxer (by wrapping Haali's MatroskaParser.c)

dwbuiten/EAD-TorrentBuild 3

A working and good decompilation of EAD's TorrentBuild (for now). Original: http://wiki.depthstrike.com/index.php/EAD:Utilities:TorrentBuild

dwbuiten/nullfuzzer 3

A simple library for fuzzing unchecked calls to allocation functions.

dwbuiten/postproc 3

A standalone postproc! Try #2.

push eventvimeo/l-smash

Derek Buitenhuis

commit sha 9baf45490133607b3acf11308957e9146f774859

colr: Allow newer CICP codepoints in ISOBMFF Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 2 days

push eventvimeo/l-smash

Derek Buitenhuis

commit sha fc957fa6058601eda73a9a46f8ea3ad79471938f

hevc: Allow UNSPEC62 to end an AU This can happen for Dolby Vision HEVC files, where UNSPEC62 is an RPU, which must be either last, or directly before an end of AU NAL. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 2 days

push eventvimeo/l-smash

Derek Buitenhuis

commit sha 4a7550b43f1104edde7cd8ed877dd4aeae4cdf86

Add support for DOVIConfigurationBox and RPU/EL muxing Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 5 days

push eventvimeo/l-smash

Derek Buitenhuis

commit sha cafe3b27a03702a1d033adee0a455bec8cf7af87

Add support for DOVIConfigurationBox Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 5 days

create barnchvimeo/l-smash

branch : dovi

created branch time in 5 days

delete branch dwbuiten/l-smash

delete branch : av1-obuparse-FAST

delete time in 5 days

push eventvimeo/l-smash

Derek Buitenhuis

commit sha bde2e1146f1558313058c9fc2e6765494811b2ba

codecs/h264: Optimize start code search * Don't check is_end unless we know we're at the end of the buffer. * Use the buffer direction instead of show_byte. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha cd33442867096af2d722160acfae0b13fd9032e4

codecs/h264: Convert NAL start code search to read 8 byte chunks at once Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha c325755a3dd7f226a61974893e9578cb0bdd34d4

bytes: Do not zero the memory on empty if it is a reader This seems to be totally unneedd? At least for H.264. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 4b80866a510efd8e37edac89e779acda93b31b55

importer: Stash and reset max read size between probes Probing functions may alter this, so it needs to be reset. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 5 days

PR merged vimeo/l-smash

Reviewers
H.264 Muxing Speedups
+47 -6

1 comment

3 changed files

dwbuiten

pr closed time in 5 days

push eventvimeo/l-smash

Derek Buitenhuis

commit sha d12d9ebf64b4aae9d9296ed1397459fd73674e13

muxer: Do not exit with code 0 when we hit invalid data Exiting with 0 created the false impression in scripts that nothing went wrong during muxing. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha cbb65d0b4f02ed33a89b4a5789d3cd1e91535a8c

Initial AV1 Support Currently supports boxdumper, remuxer, and demuxing/muxing via API. Based on Yusuke Nakamara's AV1 branch[1], with some changes: * boxdumper printing support * Ditched full config OBU parsing in favour of a simple buffer. I will be implementing simple config OBU header parsing (not full) during the importer implementation. * Finished all the missing bits. Breaks ABI - soname version bump is needed - which I will add after import is done, and it is in an upstreamable state. [1] https://github.com/l-smash/l-smash/tree/av1 Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 815c7d038d2b6090d119834615297592744b43cb

AV1 IVF Import Support based on obuparse Part of the IVF code is based off of Yusuke's IVF importer from his AV1 branch[1]. This uses obuparse[2] rather than an local parser, because a local parser would be thousands of lines of code, and obuparse does this for us, and is used in other programs as well. Its license is the same as L-SMASH. Things that are currently marked as TODO or are missing include: * Figure out how to handle VFR IVF files, if it is even possible. The format contains no duration field in its packets, so the best we can do is use the first timestamp delta for the last duration. * Fix muxer.c so that it properly handles timebases and timestamps that do not increment by 1. It seems to assume that all importers produce timestamps that increment by 1, and applies '?fps=<value>' options under this assumption. This turns out to be wrong for e.g. IVF files that are e.g. 30000/1001. As a result, the '?fps=<value>' is broken when importing IVF files, and you need to just make sure your IVF has correct timestamps to begin with. [1] https://github.com/l-smash/l-smash/tree/av1 [2] https://github.com/dwbuiten/obuparse Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 89cc4f6a88cf2f3859fb4ab71ee628a31554b8b7

Use external obuparse This is obviously not upstreamable, but is useful to us. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha e60cb7bf258bb14179a8a488847b2ea96e4fe4a1

muxer/remuxer: Properly set the required av01 brand for AV1 Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 5 days

PR opened vimeo/l-smash

Reviewers
H.264 Muxing Speedups
+47 -6

0 comment

3 changed files

pr created time in a month

create barnchdwbuiten/l-smash

branch : av1-obuparse-FAST

created branch time in a month

push eventdwbuiten/ffms2

Derek Buitenhuis

commit sha 5d6139c1ebd50239d8bc1d6c5c19990bc95687e3

i/o: Set more network options when an HTTP URL is used Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 2 months

issue commentFFMS/ffms2

DNX120 indexing is broken unless -thread_type slice is specified in FFMpeg

To me this sounds purely like an FFmpeg bug, and totally irrelevant to FFMS2's issue tracker?

FranceBB

comment created time in 2 months

CommitCommentEvent

issue closedFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

Tried compiling through MSYS2+MinGW-w64 with ./configure --with-pic --enable-avisynth --enable-shared and it said could not link with FFMPEG because it doesn't work despite the FFMPEG I compiled and installed was fully functional. Said to check config.log and this seemed to be the point of interest.

configure:17062: checking for FFMPEG configure:17069: $PKG_CONFIG --exists --print-errors "libavformat >= 53.20.0 libavcodec >= 53.24.0 libswscale >= 0.7.0 libavutil >= 51.21.0 libswresample >= 1.0.0" configure:17072: $? = 0 configure:17086: $PKG_CONFIG --exists --print-errors "libavformat >= 53.20.0 libavcodec >= 53.24.0 libswscale >= 0.7.0 libavutil >= 51.21.0 libswresample >= 1.0.0" configure:17089: $? = 0 configure:17147: result: yes configure:17162: checking whether FFmpeg works configure:17182: gcc -o conftest.exe -O3 -Wall -Wextra -IC:/msys64/usr/local/include -D__STDC_CONSTANT_MACROS conftest.c -LC:/msys64/usr/local/lib -lavformat -lavcodec -lswscale -lavutil -lswresample >&5 conftest.c: In function 'main': conftest.c:30:17: warning: implicit declaration of function 'avcodec_register_all' [-Wimplicit-function-declaration] 30 | avcodec_register_all(); | ^~~~~~~~~~~~~~~~~~~~ C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\msys64\tmp\cced0LU4.o:conftest.c:(.text.startup+0xa): undefined reference to `avcodec_register_all' collect2.exe: error: ld returned 1 exit status configure:17182: $? = 1

Highly likely an issue on my side but anyways I would appreciate it if someone could enlighten me with a possible solution.

closed time in 3 months

RRINNLONGINUS

issue commentFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

Should be fixed in master.

RRINNLONGINUS

comment created time in 3 months

push eventdwbuiten/ffms2

Stephen Hutchinson

commit sha 60eb28611115493c4619b8b1876e2d206c44bef2

avisynth: Support for non-Windows

view details

Stephen Hutchinson

commit sha 4ad8020524b6380958ba276fdaa38279d2b7344f

configure.ac: fix bsymbolic check The missing comma meant that even if it was needed, it wouldn't get added to the linker invocation.

view details

Fredrik Mellbin

commit sha 0628fe69f014c398d1c5d15d99934a88a4a65c3b

Merge pull request #357 from qyot27/avslinux Allow building AviSynth plugin on non-Windows

view details

Fredrik Mellbin

commit sha 80d0ef394817d77af9a3e87ee244aff697e77f5d

Update projects to VS2019

view details

Fredrik Mellbin

commit sha 39528f5d929d45e2f88333d35cb2eb120c56fc60

Add missing libraries to msvc project

view details

Fredrik Mellbin

commit sha 55c2af57f1bdc587ca98d2e28d3d764c00b3e13a

Bump version number and update changelog

view details

Derek Buitenhuis

commit sha 96cbf38ea9381829a1314f432a2c60495dcefaad

all: Update AVPacket API usage AVPackets must all be on the heap now, since it is no longer part of the libav* ABI. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 586d87de3f896d0c4ff01b21f572375e11f9c3f1

configure: Remove deprecated API use Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 45673149e9a2f5586855ad472e3059084eaa36b1

Use auto for AVCodec The geniuses over at FFmpeg decided to constify this API, so old versions of the library will return AVCodec *, while new versions of the libary will return const AVCodec *, which, in C++, are not OK to convert between. Rather than use some macro hell in ffmscompat.h, we can work around this by using auto. Gross. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 0a684e652930a87de76e7b96652c32afa236393e

ParseVP9: Don't mark frames as invisible in newer versions of FFmpeg They changed how superframes are retured, so in older versions, they are split, and you can get a packet that contains only an invisible frame, but in newer versions, they are not split, and marking a whole superframe as invisible is incorrect. The version was not bumped for this breaking changed, of course,, so we choose the next, unrelated version bump to check for. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 543052579339d658f0be5cab45360946d230c26b

DecodePacket: Call a second time for VP9 The internal VP9 BSF does not follow the push/pull documentation properly. It should keep a queue of data internally so further calls can return EAGAIN, but with VP9, it frees and discards that data when the next packet is sent. We need to call it a maximum of one extra time, to account for super frames that have both a visible and invisible frame in one packet. If we don't, the API happily and silently creates corrupt data output. There are not even any warnings output by the decoder. Happy days. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha b4ee9945708e7ccd4e6b722dc712f087a89b3f81

videosource: Decode all packets, even if hidden, when the file is PAFF Otherwise, we don't have enough packets to decode a frame until every 2nd call to GetFrame, and duplicates are output. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 2778a352a6c5a376d38bdec5211a1d93c7be323f

Use 'use_mfra_for pts' for demuxing Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 5f5471fba87fd057311efde42c9e318613174204

io: Timeout after 2 minutes trying to read over a network Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 9ebe45a41f09a1226a761c810f71dcf27cd0fff3

Fix error check for timeout connection See: http://ffmpeg.org/pipermail/ffmpeg-devel/2021-March/278294.html Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 3d3b9752356328e7c2e20b8901574d4ee66ebfe0

Same, but for videosource Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 0c18dd77df7ad93da4efc16af363e2206b13e700

Check for more network errors Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 05bb81806bcd23200331d3af58812e0845292761

Log non-network errors Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha b8d17ec4a0f05eb44d5968f13b107225d12b7b0c

ffmsindex: Add option to specify progress update interval Also add a line break.. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha dbd322eabeb8e4ff41cdee22dd1d67ce6b91c798

ffmsindex: Always flush stdout Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 3 months

create barnchdwbuiten/ffms2

branch : vp9tempness-with-a-fix-old

created branch time in 3 months

delete branch dwbuiten/ffms2

delete branch : apishenanigans

delete time in 3 months

push eventFFMS/ffms2

Derek Buitenhuis

commit sha 96cbf38ea9381829a1314f432a2c60495dcefaad

all: Update AVPacket API usage AVPackets must all be on the heap now, since it is no longer part of the libav* ABI. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 586d87de3f896d0c4ff01b21f572375e11f9c3f1

configure: Remove deprecated API use Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

Derek Buitenhuis

commit sha 45673149e9a2f5586855ad472e3059084eaa36b1

Use auto for AVCodec The geniuses over at FFmpeg decided to constify this API, so old versions of the library will return AVCodec *, while new versions of the libary will return const AVCodec *, which, in C++, are not OK to convert between. Rather than use some macro hell in ffmscompat.h, we can work around this by using auto. Gross. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>

view details

push time in 3 months

PR merged FFMS/ffms2

Reviewers
FFmpeg API Shenanigans

Commits:

    Use auto for AVCodec

    The geniuses over at FFmpeg decided to constify this API, so old
    versions of the library will return AVCodec *, while new versions
    of the libary will return const AVCodec *, which, in C++, are not
    OK to convert between.

    Rather than use some macro hell in ffmscompat.h, we can work around
    this by using auto.
    configure: Remove deprecated API use
    all: Update AVPacket API usage

    AVPackets must all be on the heap now, since it is no longer
    part of the libav* ABI.
+70 -62

0 comment

7 changed files

dwbuiten

pr closed time in 3 months

issue commentFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

https://github.com/FFMS/ffms2/pull/380

RRINNLONGINUS

comment created time in 3 months

PR opened FFMS/ffms2

Reviewers
FFmpeg API Shenanigans

Commits:

    Use auto for AVCodec

    The geniuses over at FFmpeg decided to constify this API, so old
    versions of the library will return AVCodec *, while new versions
    of the libary will return const AVCodec *, which, in C++, are not
    OK to convert between.

    Rather than use some macro hell in ffmscompat.h, we can work around
    this by using auto.
    configure: Remove deprecated API use
    all: Update AVPacket API usage

    AVPackets must all be on the heap now, since it is no longer
    part of the libav* ABI.
+70 -62

0 comment

7 changed files

pr created time in 3 months

create barnchdwbuiten/ffms2

branch : apishenanigans

created branch time in 3 months

issue commentFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

Oh i see, it's in configure. Fixing.

RRINNLONGINUS

comment created time in 3 months

issue commentFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

Upon looking closer, this is already in ffmscompat.h in master. Are you not building FFMS2 git master?

RRINNLONGINUS

comment created time in 3 months

issue commentFFMS/ffms2

warning: implicit declaration of function 'avcodec_register_all'

It's an easy fix... I will send a PR.

(I have been using a fork of FFMS2 in my personal github account but it has too many ugly upstreamable hacks.(

RRINNLONGINUS

comment created time in 3 months