섹션18 동영상플레이어 버그 질문
312
작성한 질문수 23
다른영상 불러와도 실행하기 전까지는 이전 영상의 음성이 계속 나옴니다.
즉, 영상 실행 하는 상태에서 다른 영상 불러오고, 실행 버튼 누르지 않았는데 음성은 이전 영상 음성이 나옵니다. 버그 같아서 올립니다
영상파일을 음성이 나오는 파일로 해보면 쉽게 알수 있습니다.
2번째는
음성이 아주 적게 들리고 있어서 음성 조절 기능
을 넣코 싶은데 어딜 바꾸면 조을까요.
답변 3
0
이거 똑같은 버그 생기는데 위 답변으로도 해결 안 되는 분들은
didUpdateWidget의 if체크문에서 비디오 컨트롤러 dispose 해보시기 바랍니다. 아래 코드 참조하세요:
@override
void didUpdateWidget(covariant SVideoPlayer oldWidget) {
super.didUpdateWidget(oldWidget);
if (oldWidget.video.path != widget.video.path) {
videoPlayerController.dispose();
initializeController();
}
}
0
안녕하세요!
힌트는 didChangeDependencies입니다.
didChangeDependencies가 실행 됐을때 동영상 플레이를 중지하는 코드를 작성해보세요!
감사합니다!
0
void didChangeDependencies() {
super.didChangeDependencies();
print('____________________________didChangeDependencies()'); // 여기 출력!
// 다른영상 불러와도 실행하기 전까지는 이전 영상의 음성이 나옴 방지
videoController!.pause();
}이렇케 해봤는데 안되네요, 어디가 잘못 한건가요.
Ai 가 알려준 이전에 답변 보니까
@override
void didUpdateWidget(covariant CustomVideoPlayer oldWidget) {
super.didUpdateWidget(oldWidget);
if (oldWidget.video.path != widget.video.path) {
// 다른영상 불러와도 실행하기 전까지는 이전 영상의 음성이 나옴 방지
videoController!.pause();
initializeController();
}
}요러케 하니까 되는데, 문제점은 없나요
3.
didChangeDependencies 에다 인수, if 문 넣으니 에러 나오네요. 문법 에러 같은데 여기다 인수 넣으면 안되는지요
0
제가 함수를 잘못 말씀드렸네요. didChangeDependencies는 의존하는 디펜던시가 변경됐을때 실행됩니다. (제 라이프사이클 섹션 참고 부탁드립니다). 지금 상황에는 didUpdateWidget이 맞습니다.
0
안녕하세요, 인프런 AI 인턴입니다.
cdway님의 질문에 대해 유사한 상황을 겪은 다른 수강생의 질문과 그에 대한 지식공유자의 답변이 도움이 될 것 같습니다. 이전 영상의 음성이 새 영상을 재생하지 않았음에도 계속 나오는 문제는, 영상을 새로 불러올 때 기존의 비디오 플레이어 컨트롤러가 제대로 종료되지 않아서 발생할 수 있습니다.
비슷한 문제를 겪었던 수강생의 질문과 그에 대한 답변입니다:
- “올드_비디오 and 뉴_비디오 보이스 동시 출력됨( 비디오 재생중 onNewVideoPressed 호출시,)” - 이 질문에서는 새로운 영상을 선택할 때 이전 영상의 컨트롤러를 정지시키지 않아 발생하는 문제로 보입니다. 코드팩토리 지식공유자는 새 영상을 선택하는 함수에 컨트롤러를 정지하는 코드를 추가하는 것이 좋을 것 같다고 조언하였습니다.
음성 조절 기능에 대해서는 직접적인 질문이 없었지만, 일반적으로 비디오 플레이어의 볼륨 조절은 컨트롤러의 setVolume 메소드를 이용하여 조절할 수 있습니다. 예를 들어, videoPlayerController.setVolume(0.5);와 같이 설정하여 볼륨을 조절할 수 있습니다. Flutter의 video_player 패키지 문서에서는 볼륨 및 기타 컨트롤에 대한 자세한 정보를 제공할 수 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
198강 (){onTap(e);}의 이해 돕기
0
19
1
video_call 플러그인 설치후 에러 발생
0
45
1
SDK 안드로이드 설치 질문!
0
59
1
코드팩토리 디스코드 링크 다시 부탁드려요~
0
92
1
Webview를 이용해서 URL 상의 페이지 출력 불가
0
69
1
홈스크린 함수를 함축해서 main.dart에 옮기는 문제
0
55
1
플레이스토어
0
59
1
아고라 엔진 init 함수의 반환타입이 Future<void> 이것의 의미는 무엇인가요?
0
55
1
가이드라인 질문
0
57
0
emulator 에러 환경설정 뭐가 문제 일까요??
0
76
1
emulator 실행 오류
0
93
3
Column을 가로방향 최대 사이즈를 차지하도록 하는 방법에 관련
0
71
1
pubspec.yaml에서 font를 추가하면서 weight 값을 지정하는 것이 의미가 있는 것인지 문의
0
43
1
setState()를 호출하지 않으면 build가 실행 안되는 건가요?
0
53
1
video_call 플러그인 설치시 에러문제
0
63
1
children 안의 if 문에서 { } 못쓰는 이유?
0
48
1
이렇게 오류가 떠요
0
63
1
AppBar 사용했는데
0
61
2
[문제해결] '오늘도 출첵!' 의 171번 강의에서 중요한 문제를 발견했습니다
0
56
1
StatefulWidget 실습 에러가 발생합니다.[해결완료]
0
63
1
Video Player 프로젝트에 대한 추가 질문
0
53
0
Row위젯이나 column위젯의 위치는 누가 정하나요??
0
42
1
geolocator 오류때문에 개발진행이 불가능입니다
0
62
1
API 관련 이슈
0
86
2





