ReeePlayer - repetição espaçada de fragmentos de vídeo para aprender línguas estrangeiras

Não é fácil começar a assistir a vídeos em um idioma estrangeiro. Isso explica o grande número de artigos com uma grande variedade de dicas:





  • Assista com legendas em russo e não se preocupe.





  • Assista com legendas estrangeiras e faça uma pausa se não estiver claro.





  • Revise várias vezes combinando diferentes abordagens.





, , . . , , . , , (), . , , . , .





@kciray. , !





, . – . - . ReeePlayer, , , , . :





  • .





  • , .





  • .





  • , Anki.





, . . Windows.





( , , ):





, ( 1 , 1 , 2 , 3, 5, 8 . .), . , , . , .





( ) . – . . .





, . . , , , 10 . . , 20 . - , .





, . 9 10, . , 20 , 18.





, , . : interval = C * 1.618 ^ level



. . , , 5 :





, " +1 ", 1? - , 2.5 – 5 . , , , , (, ). – , +1 .





C++ Qt, . ? . , . , K-Lite - .





QMediaPlayer, . – ffmpeg. ffmpeg - . QtAV! . , . , , . , – libVLC. VLC. , , .





, , , :





libvlc_instance_t* inst = libvlc_new(0, NULL);
libvlc_media_t* m = libvlc_media_new_path(inst, "test.mp4");
libvlc_media_player_t* mp = libvlc_media_player_new_from_media(m);
libvlc_media_release(m);
auto handle = reinterpret_cast<unsigned __int64*>(widget->winId())
libvlc_media_player_set_hwnd(mp, handle);
libvlc_media_player_play(mp);
      
      



vlc-qt, , , libVLC vlc-qt, .





2 : 3 4. , . (A-B Loop). . , , . , , libvlc_video_set_scale



. , , : "Seems like a regression in the VLC Windows windowing code".





3.0.11. , . 2-3 . , , : , , 10 . , 3.0.8 . .





. . , . , , . : , 10 , .





. sqlite-. , :





# files <-- clips <-- texts

CREATE TABLE "files" (
    "path"    TEXT
);

CREATE TABLE "clips" (
    "file_id"    INTEGER,
    "begin"      INTEGER,
    "end"        INTEGER,
    "time"       INTEGER,
    "rep_time"   INTEGER
);

#      
CREATE VIRTUAL TABLE texts USING FTS5(clip_id, idx, text);
      
      



, . , . : , , . , :





(root)
    [ "  "]
             .mp4
         - .mp4
      
      



- , , :





(root)
    []
        [ "  "]
                 .mp4
        [ " "]
                 - .mp4
      
      



. – - , .





: ( ), .





, , - , .





, – . . :





JSON :





:





  • .





  • .





  • .





  • . *.sasha.json



    , *.masha.json



    . . *.user.json



    .





  • A sincronização e os backups estão ficando mais complicados. Não deve haver nenhum problema especial com o git, mas você não pode simplesmente colocá-lo no Dropbox ou no disco Yandex. Como alternativa, adicione a capacidade de criar um backup para o aplicativo.





Mas sem arquivos de projeto, você pode simplesmente abrir qualquer diretório com arquivos de vídeo ou áudio, e todos os clipes dentro dele serão lidos. Você também pode, por exemplo, olhar para o trabalho (não recomendado) e, em seguida, copiar para o seu computador doméstico.





Links

  • Projeto no GitHub





    • Descrição em russo





    • Binarnik (por enquanto apenas para Windows)








All Articles