Skip to content

Instantly share code, notes, and snippets.

Avatar
🌴
On vacation

Jean-Michaël Celerier jcelerier

🌴
On vacation
View GitHub Profile
View minimal-ffmpeg.cpp
extern "C"
{
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libavutil/frame.h>
#include <libavutil/mem.h>
}
#include <cassert>
#include <iostream>
@jcelerier
jcelerier / LICENSE
Created Nov 28, 2020 — forked from targodan/LICENSE
Complementing code for my blog post "Decoding audio files with ffmpeg": https://www.targodan.de/post/decoding-audio-files-with-ffmpeg
View LICENSE
The MIT License (MIT)
Copyright (c) 2016 Luca Corbatto
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
@jcelerier
jcelerier / script.sh
Last active Nov 3, 2020
Apply an audio lowpass on every frame of a gif
View script.sh
#!/bin/sh
# Invocation : script.sh name-of-the.gif
# Find out the size
SIZE=$(identify $1 | egrep --only-matching '[0-9]+x[0-9]+' | head -n 1)
mkdir -p frames
rm -rf frames/*
# Extract individual frames
View ossia_value_interpolate.cpp
#include <ossia/network/value/value.hpp>
#include <ossia/editor/curve/curve_segment/easing.hpp>
#include <iostream>
#include <functional>
struct value_interpolator
{
double progress;
std::function<double(double start, double end, double progress)> easing;
@jcelerier
jcelerier / H264_Decoder.cpp
Created Apr 23, 2019 — forked from roxlu/H264_Decoder.cpp
LibAV parser and decoder example with openGL (YUV420 -> RGB shader).
View H264_Decoder.cpp
#include "H264_Decoder.h"
H264_Decoder::H264_Decoder(h264_decoder_callback frameCallback, void* user)
:codec(NULL)
,codec_context(NULL)
,parser(NULL)
,fp(NULL)
,frame(0)
,cb_frame(frameCallback)
,cb_user(user)
View gist:8cd36705f95087627d4e16fd51acf52b
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
index 6bf1380716..755bc1e58d 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
@@ -28,6 +28,10 @@ CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake
CMAKE_MODULE_NAME = $$cmakeModuleName($${MODULE})
+# TARGET here is the one changed at the end of qt_module.prf,
+# which already contains the Qt5 prefix and QT_LIBINFIX suffix
View gist:e2ab319a4fa1d2343eb614827ba8f7d4
c:\dev\build-verdigris-Desktop_Qt_5_12_0_MSVC2017_64bit-Debug>"C:\Qt\Tools\Preview\Qt Creator 4.8.0-beta2\bin\jom.exe" -j1
jom 1.1.2 - empower your cores
cd tutorial\ && ( if not exist Makefile C:\Qt\5.12.0\msvc2017_64\bin\qmake.exe -o Makefile C:\dev\verdigris\tutorial\tutorial.pro -spec win32-msvc "CONFIG+=debug" "CONFIG+=qml_debug" ) && "C:\Qt\Tools\Preview\Qt Creator 4.8.0-beta2\bin\jom.exe" -f Makefile
"C:\Qt\Tools\Preview\Qt Creator 4.8.0-beta2\bin\jom.exe" -f Makefile.Debug
cl -c -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -Zi -MDd -std:c++14 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 -EHsc /Fddebug\tutorial.vc.pdb -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DQT_QML_DEBUG -DQT_CORE_LIB -I..\..\verdigris\tutorial -I. -I..\..\verdigris\src -I..\..\..\Qt\5.12.0\msvc2017_64\include -I..\..\..\Qt\5.12.0\msvc2017_64\include\QtCore -Idebug -I..\..\..\Qt
View mingw64 llvm
$ ./build-all.sh llvm
-- The C compiler identification is GNU 8.2.0
-- The CXX compiler identification is GNU 8.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /mingw64/bin/cc.exe
System is unknown to cmake, create:
Platform/MINGW64_NT-10.0 to use this system, please send your config file to cmake@www.cmake.org so it can be added to cmake
-- Check for working C compiler: /mingw64/bin/cc.exe
System is unknown to cmake, create:
Platform/MINGW64_NT-10.0 to use this system, please send your config file to cmake@www.cmake.org so it can be added to cmake
View CMakeError.log
Determining if the include file link.h exists failed with the following output:
Change Dir: /home/blah/llvm-mingw/llvm/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/make.exe" "cmTC_237b0/fast"
/usr/bin/make -f CMakeFiles/cmTC_237b0.dir/build.make CMakeFiles/cmTC_237b0.dir/build
make[1]: Entering directory '/home/blah/llvm-mingw/llvm/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_237b0.dir/CheckIncludeFile.c.o
/usr/bin/cc.exe -o CMakeFiles/cmTC_237b0.dir/CheckIncludeFile.c.o -c /home/blah/llvm-mingw/llvm/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c
/home/blah/llvm-mingw/llvm/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c:1:10: fatal error: link.h: No such file or directory
#include <link.h>
View keybase.md

Keybase proof

I hereby claim:

  • I am jcelerier on github.
  • I am jcelerier (https://keybase.io/jcelerier) on keybase.
  • I have a public key ASDuDRC91oz2RnzMRILX_bEBhwij8X7y743yFFAonD2rcQo

To claim this, I am signing this object: