| 46 | |
| 47 | == H.264 Multiview Video Coding (MVC) == |
| 48 | Image:Mmspg-epfl-ch-double-camera.jpg |
| 49 | |
| 50 | '''Description:''' MVC samples exist and the codec is used on Blu-ray media, but FFmpeg is missing a decoder. Since this project also consists of some changes in the current architecture, it is especially important that this project is discussed on the ffmpeg-devel mailing list. |
| 51 | |
| 52 | '''Expected results:''' Create MVC decoder and add a test for the FFmpeg Automated Testing Environment (FATE). |
| 53 | |
| 54 | '''Prerequisites:''' C coding skills, familiarity with git/source code control systems. |
| 55 | |
| 56 | '''Qualification Task:''' Perform work that demonstrates understanding of MVC and that is a subpart of the whole MVC implementation. |
| 57 | |
| 58 | '''Mentor:''' TBA, possibly Michael Niedermayer (michaelni on IRC) |
| 59 | |
| 60 | '''Backup mentor:''' TBA, possibly Kieran Kunhya (kierank on IRC) |
| 61 | |
| 62 | |
| 63 | == Animated Portable Network Graphics (APNG) == |
| 64 | |
| 65 | '''Description:''' FFmpeg currently does not support Animated PNGs. |
| 66 | |
| 67 | Specification: https://wiki.mozilla.org/APNG_Specification |
| 68 | Image:Animated PNG example bouncing beach ball.png |
| 69 | |
| 70 | '''Expected results:''' |
| 71 | |
| 72 | - APNG demuxer |
| 73 | - implement robust probing: |
| 74 | - PNG images are not misdetected as APNG animations |
| 75 | - APNG animations are not misdetected as PNG images |
| 76 | - splits stream into sensible packets (so they can be easily reused in APNG muxer) |
| 77 | - survives fuzzing (zzuf) |
| 78 | - add FATE coverage, coverage should be at least 70% |
| 79 | - test code under valgrind so no invalid reads/writes happen |
| 80 | |
| 81 | - APNG decoder |
| 82 | - use existing PNG decoder code (write decoder in same file) |
| 83 | - implement parsing of all APNG chunks (acTL, fcTL, fdAT) |
| 84 | - error handling |
| 85 | - survives fuzzing (zzuf) |
| 86 | - add test for FATE, coverage should be at least 75% |
| 87 | - CRC checksum validation |
| 88 | - test code under valgrind so no invalid reads/writes happen |
| 89 | |
| 90 | - APNG muxer && APNG encoder |
| 91 | - use existing PNG encoder code (write encoder in same file) |
| 92 | - write compliant files, make sure they play correctly in major web browsers that support APNG |
| 93 | - add test for FATE |
| 94 | |
| 95 | '''Prerequisites:''' C coding skills, familiarity with git/source code control systems. |
| 96 | |
| 97 | '''Qualification Task:''' Implement format autodetection for imagepipe & image demuxer |
| 98 | |
| 99 | '''Mentor:''' TBA, possibly Paul B Mahol (durandal_1707 on IRC) |
| 100 | |
| 101 | '''Backup mentor:''' TBA, possibly Peter Ross (pross-au on IRC) |
| 102 | |