bramp / bramp/ffmpeg-cli-wrapper

Process stdout should not use CharStream.copy

Aperta
#354 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
Java
Stelle
1.9k
Fork
424
Merge medio
5h 35m
PR unite (30g)
2

Descrizione

**Describe the bug**
`setProcessOutputStream` takes in an Appendable, and later uses CharStreams.copy to transfer the output as text.
This does not work for most cases, as stdout is used to write the output streams.
This means, an encoded file would be interpreted as chars, causing some bytes being lost due to interpretation.

**To Reproduce**
```java
// appendable should be a handle to a file

FFmpeg ffmpeg = new FFmpeg();
ffmpeg.setProcessOutputStream(appenable);

ffmpeg.run(new FFmpegBuilder().addInput("input.mp4")).done().addStdoutOutput().done().build());
```

**Expected behavior**
processOutputStream should be treated as binary.

**Version (if applicable):**
- OS: any
- Java Version: any
- FFmpeg version: any

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia tracciando setProcessOutputStream e la successiva chiamata a CharStreams.copy nel wrapper Java. Riproduci il problema con l’esempio di file codificato fornito e verifica che lo stdout del processo venga preservato come dati binari anziché essere interpretato come caratteri.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
cli
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
50/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.