...

Практический пример добавления нового кодека в mplayer

Практический пример добавления нового кодека в mplayer

Давайте попробуем теперь самостоятельно добавить новый кодек в MPlayer. Для примера, возмем Cool codec, которым сейчас кодируют некоторые фильмы.
Под win32 этот кодек работает через закрытый драйвер, который понимает mplayer от windows,а параметры он хранит в системном реестре, следовательно у него есть GUID. Таким образом внешне все очень похоже на directshow codecs. Также алгоритм сжатия - mpeg4, только несколько изменнный.
То есть у нас кодек, похожий на dshow, работающий так же, как и он, но только MPlayer его не понимает потому что он ничего не знает про fourcc. Если посмотреть файл, кодированый этим кодеком, то можно увидеть, что внутри вместо привычных DIV3 fourcc'ов там некий COL1.
Теперь открываем codecs.conf и добавляем туда:

        videocodec ffdivx      
        info "FFmpeg DivX ;-) (MS MPEG-4 v3)"  
        status working     
        fourcc MPG3,mpg3 div3    
        fourcc MP43,mp43 div3      ; M$ MPEG4 v3 (fourcc mapping to div3)     
        fourcc DIV5,div5 div3      ; DivX 3.20
        fourcc DIV6,div6 div4      ; -||-
        fourcc DIV3,div3,DIV4,div4   
        fourcc AP41 div3           ; AngelPotion stuff        
        fourcc COL1,col1,COL0,col0 ; Cool codec (based on mpg4ds32.ax)        

        - это то, что добавили.

        driver ffmpeg     
        dll msmpeg4     
        out YV12,I420,IYUV

После чего становется доступным воспроизведение таких роликов.