tasks.json과 launch.json 은 .vscode 디렉토리 하에 복사
libavcodec/h264dec.c
- h264_decode_frame ( ... ) 함수가 H264 Decoding Entrypoint로 보임
#!/bin/bash | |
# Building Debugable FFmpeg | |
git clone https://github.com/FFmpeg/FFmpeg.git | |
cd FFmpeg | |
./configure --disable-optimizations --enable-static --disable-shared --disable-stripping --disable-mmx --disable-ssse3 --disable-asm --enable-debug=3 --extra-cflags="-O0 -fno-inline" --enable-gpl --prefix=./build | |
make -j | |
code . | |
{ | |
// IntelliSense를 사용하여 가능한 특성에 대해 알아보세요. | |
// 기존 특성에 대한 설명을 보려면 가리킵니다. | |
// 자세한 내용을 보려면 https://go.microsoft.com/fwlink/?linkid=830387을(를) 방문하세요. | |
"version": "0.2.0", | |
"configurations": [ | |
{ | |
"name": "ffmpeg debugging", | |
"type": "cppdbg", | |
"request": "launch", | |
"program": "${workspaceFolder}/ffmpeg_g", | |
"args": ["-i", "/mnt/c/Users/jangsoopark/Desktop/asdf/research/hanwha/DarkRoom1/ASIX_100lux_Motion_h264.mp4", "-codec:v", "rawvideo", "-pix_fmt", "yuv420p", "asdf.yuv"], | |
"stopAtEntry": false, | |
"cwd": "${fileDirname}", | |
"environment": [], | |
"externalConsole": false, | |
"MIMode": "gdb", | |
"preLaunchTask": "build ffmpeg_g", | |
"setupCommands": [ | |
{ | |
"description": "gdb에 자동 서식 지정 사용", | |
"text": "-enable-pretty-printing", | |
"ignoreFailures": true | |
}, | |
{ | |
"description": "디스어셈블리 버전을 Intel(으)로 설정", | |
"text": "-gdb-set disassembly-flavor intel", | |
"ignoreFailures": true | |
} | |
] | |
} | |
] | |
} |
{ | |
"tasks": [ | |
{ | |
"type": "cppbuild", | |
"label": "build ffmpeg_g", | |
"command": "make", | |
"args": [ | |
"-j" | |
], | |
"options": { | |
"cwd": "${workspaceFolder}" | |
}, | |
"problemMatcher": [ | |
"$gcc" | |
], | |
"group": { | |
"kind": "build", | |
"isDefault": true | |
}, | |
"detail": "디버거에서 생성된 작업입니다." | |
} | |
], | |
"version": "2.0.0" | |
} |