{"action":"created","issue":{"url":"https://api.github.com/repos/flutter/flutter/issues/18328","repository_url":"https://api.github.com/repos/flutter/flutter","labels_url":"https://api.github.com/repos/flutter/flutter/issues/18328/labels{/name}","comments_url":"https://api.github.com/repos/flutter/flutter/issues/18328/comments","events_url":"https://api.github.com/repos/flutter/flutter/issues/18328/events","html_url":"https://github.com/flutter/flutter/issues/18328","id":330877017,"node_id":"MDU6SXNzdWUzMzA4NzcwMTc=","number":18328,"title":"Flutter Video Player Plugin doesn't support m3u8 files on Android","user":{"login":"pyros2097","id":1687946,"node_id":"MDQ6VXNlcjE2ODc5NDY=","avatar_url":"https://avatars0.githubusercontent.com/u/1687946?v=4","gravatar_id":"","url":"https://api.github.com/users/pyros2097","html_url":"https://github.com/pyros2097","followers_url":"https://api.github.com/users/pyros2097/followers","following_url":"https://api.github.com/users/pyros2097/following{/other_user}","gists_url":"https://api.github.com/users/pyros2097/gists{/gist_id}","starred_url":"https://api.github.com/users/pyros2097/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyros2097/subscriptions","organizations_url":"https://api.github.com/users/pyros2097/orgs","repos_url":"https://api.github.com/users/pyros2097/repos","events_url":"https://api.github.com/users/pyros2097/events{/privacy}","received_events_url":"https://api.github.com/users/pyros2097/received_events","type":"User","site_admin":false},"labels":[{"id":284439562,"node_id":"MDU6TGFiZWwyODQ0Mzk1NjI=","url":"https://api.github.com/repos/flutter/flutter/labels/plugin","name":"plugin","color":"fbca04","default":false},{"id":289627367,"node_id":"MDU6TGFiZWwyODk2MjczNjc=","url":"https://api.github.com/repos/flutter/flutter/labels/waiting%20for%20PR%20to%20land%20(fixed)","name":"waiting for PR to land (fixed)","color":"000000","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-06-09T11:05:10Z","updated_at":"2018-06-14T14:36:03Z","closed_at":null,"author_association":"NONE","body":"The flutter videoplayer plugin doesn't play m3u8 video formats. But the underlying exoplayer2 for android which is used supports it.\r\nCurrently the plugin uses the `ExtractorMediaSource` of the exoplayer2 for all videos.\r\nhttps://github.com/flutter/plugins/blob/master/packages/video_player/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayerPlugin.java#L87\r\n\r\nBut exoplayer2 specifies that you need use the `HlsMediaSource` for playing HLS /dash video files.\r\nAs given here in this example. \r\nhttps://github.com/yusufcakmak/ExoPlayerSample\r\n\r\nThe videoplayer plugin should allow to pass a parameter which will decide if its a HLS video and use the HSLMediaSource so that m3u8 videos could be supported.\r\n\r\n## Steps to Reproduce\r\n\r\nThis is a flutter app that shows the error.\r\nhttps://gist.github.com/pyros2097/b839209899482d63b22ac396d213916f\r\n\r\n## Logs\r\n```\r\n[+1916 ms] I/System.out(11421): Keeping screen on\r\n[ +112 ms] I/ExoPlayerImpl(11421): Init 26ce7c7 [ExoPlayerLib/2.8.0] [generic_x86, Android SDK built for x86, Google, 27]\r\n[  +16 ms] D/NetworkSecurityConfig(11421): No Network Security Config specified, using platform default\r\n[+1259 ms] E/ExoPlayerImplInternal(11421): Source error.\r\n[        ] E/ExoPlayerImplInternal(11421): com.google.android.exoplayer2.source.UnrecognizedInputFormatException: None of the available extractors (MatroskaExtractor, FragmentedMp4Extractor, Mp4Extractor, Mp3Extractor, AdtsExtractor, Ac3Extractor, TsExtractor, FlvExtractor, OggExtractor, PsExtractor, WavExtractor, AmrExtractor) could read the stream.\r\n[        ] E/ExoPlayerImplInternal(11421):      at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractorHolder.selectExtractor(ExtractorMediaPeriod.java:931)\r\n[        ] E/ExoPlayerImplInternal(11421):      at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:853)\r\n[        ] E/ExoPlayerImplInternal(11421):      at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:317)\r\n[        ] E/ExoPlayerImplInternal(11421):      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)\r\n[        ] E/ExoPlayerImplInternal(11421):      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)\r\n[        ] E/ExoPlayerImplInternal(11421):      at java.lang.Thread.run(Thread.java:764)\r\n```\r\n\r\n```\r\nAnalyzing limitless...\r\nNo issues found! (ran in 2.3s)\r\n```\r\n\r\n```\r\n[!] Flutter (Channel beta, v0.4.4, on Linux, locale en_US.UTF-8)\r\n    • Flutter version 0.4.4 at /home/pyros2097/Applications/flutter\r\n    • Framework revision f9bb4289e9 (4 weeks ago), 2018-05-11 21:44:54 -0700\r\n    • Engine revision 06afdfe54e\r\n    • Dart version 2.0.0-dev.54.0.flutter-46ab040e58\r\n    ✗ Downloaded executables cannot execute on host.\r\n      See https://github.com/flutter/flutter/issues/6207 for more information\r\n      On Debian/Ubuntu/Mint: sudo apt-get install lib32stdc++6\r\n      On Fedora: dnf install libstdc++.i686\r\n      On Arch: pacman -S lib32-libstdc++5\r\n\r\n\r\n[!] Android toolchain - develop for Android devices (Android SDK 27.0.3)\r\n    • Android SDK at /home/pyros2097/Android/Sdk\r\n    • Android NDK location not configured (optional; useful for native profiling support)\r\n    • Platform android-27, build-tools 27.0.3\r\n    • ANDROID_HOME = /home/pyros2097/Android/Sdk\r\n    • Java binary at: /home/pyros2097/Android/android-studio/jre/bin/java\r\n    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)\r\n    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses\r\n\r\n[✓] Android Studio (version 3.1)\r\n    • Android Studio at /home/pyros2097/Android/android-studio\r\n    ✗ Flutter plugin not installed; this adds Flutter specific functionality.\r\n    ✗ Dart plugin not installed; this adds Dart specific functionality.\r\n    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)\r\n\r\n[✓] Connected devices (1 available)\r\n    • Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator)\r\n\r\n! Doctor found issues in 2 categories.\r\n```"},"comment":{"url":"https://api.github.com/repos/flutter/flutter/issues/comments/397318508","html_url":"https://github.com/flutter/flutter/issues/18328#issuecomment-397318508","issue_url":"https://api.github.com/repos/flutter/flutter/issues/18328","id":397318508,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NzMxODUwOA==","user":{"login":"pyros2097","id":1687946,"node_id":"MDQ6VXNlcjE2ODc5NDY=","avatar_url":"https://avatars0.githubusercontent.com/u/1687946?v=4","gravatar_id":"","url":"https://api.github.com/users/pyros2097","html_url":"https://github.com/pyros2097","followers_url":"https://api.github.com/users/pyros2097/followers","following_url":"https://api.github.com/users/pyros2097/following{/other_user}","gists_url":"https://api.github.com/users/pyros2097/gists{/gist_id}","starred_url":"https://api.github.com/users/pyros2097/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyros2097/subscriptions","organizations_url":"https://api.github.com/users/pyros2097/orgs","repos_url":"https://api.github.com/users/pyros2097/repos","events_url":"https://api.github.com/users/pyros2097/events{/privacy}","received_events_url":"https://api.github.com/users/pyros2097/received_events","type":"User","site_admin":false},"created_at":"2018-06-14T14:36:03Z","updated_at":"2018-06-14T14:36:03Z","author_association":"NONE","body":"Closed the PR 607 and improved on it to support more video formats not just .m3u8\r\nHere is the current PR for tracking.\r\nhttps://github.com/flutter/plugins/pull/613"}}
{"actor":{"display_login":"pyros2097"}}