Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153

Просьба оценить созданное мной приложение - это видео/аудио плеер

11.03.2012, 19:50. Показов 2360. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! просьба оценить созданное мной приложение - это видео/аудио плеер.
просьба сделать замечания, дать пожелания каких функций не хватает и т.п.
Сразу замечу, что плеер делается для защиты на экзамене, поэтому функционал маленький и на конкуренцию с существующими плеерами не претендует)
Функции, которые уже реализованы:
стоп, пауза, старт, следующий, предыдущий, открыть (один файл,
несколько файлов, перетащить на форму медиа файл), плей лист и
воспроизведение файла из него, путем нажатия двойного щелчка ЛКМ,
удаление файла из плей листа, открытие выбранного файла в его папке,
пауза/старт при ЛКМ на окне видео фрагмента, перемотка с помощью
ползунка, регулировка звука и кнопка mute (выкл./вкл. звук). Ну, вроде
бы и все.
список, поддерживаемых форматов (".mp4", ".flv", ".wma",".mp3",
".avi", ".wmv", ".3gp", ".mpg", ".mpeg", ".evo", ".rec", ".wmp",
".wm", ".dat", ".amw", ".flac", ".aac",".midi", ".wav", ".wax",
".vob", ".ifo", ".mkv", ".mov", ".rm", ".ram", ".dat", ".flic",
".divx"), но зависит от установленных драйверов на вашем ПК.
ссылка - https://skydrive.live.com/?cid... 17EB%21105
Жду отзывов и рекомендаций.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.03.2012, 19:50
Ответы с готовыми решениями:

аудио и видео плеер для joomla
Здравствуйте! Скажите где можно найти хороший MP3 плеер для сайта? Я хочу добавить большое количество музыки на сайт, с возможностью...

Плеер, не активно переключение аудио/видео файлов
Приветствую, почему не активны кнопки переключения файлов в плеере? Свойства компонента обшарил, ничего не нашел. Программа ниже в архиве.

Всеядный видео/аудио плеер для MVC
Загорелись с другом идеей написать сайт для домашнего сервера на Windows. Часть сайта уже была готова, как вдруг мы столкнулись с...

17
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
11.03.2012, 21:14
C#
1
2
3
4
5
6
7
Button_Click_1
/*some code*/
Button_Click_2
/*some code*/
Button_Click_3
/*some code*/
Button_Click_4
скажите, а как вы отличаете обработчики кнопок в коде?
ну а по дизайну
1. почему все зеленое? почему не красное или не жёлтое?
2. куда девается ползунок? почему надо навести мышкой чтоб его узреть?
3. как определить что в данный момент воспроизводится например музыкальный файл? это я к тому что кнопки никак не выделяются во время воспроизведения/паузы
0
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
11.03.2012, 22:32  [ТС]
ну зеленое потому, что мне нравиться зеленый)
насчет - паузы/воспроизведения - исправлю, т.к. это уже вы не первый, кто сделал такое замечание.
и по поводу ползунка - тоже, наверное сделаю его видимым все время.
Спасибо)
жду еще замечаний
0
19 / 19 / 4
Регистрация: 08.03.2012
Сообщений: 72
12.03.2012, 10:46
andrey11231990, а ты можешь кинуть код как воспроизводишь файлы?
0
 Аватар для Dj_SheLL
180 / 85 / 10
Регистрация: 13.02.2010
Сообщений: 318
12.03.2012, 12:45
Не рационально распределено пространство окна.
Я бы подумал над приятным дизайном. даже пусть будет простым, но приятным. Ядовито-зелёный не каждому понравится.
По поводу проигрываемого времени - на скриншоте виден косяк.
Ещё в диалоговом окне я бы поставил фильтр - пользователь не должен думать, какие файлы нужно выбирать, а какие нельзя, иначе у программы будет ошибка.
Скрыл бы с панели задач. Сделал бы в виде виджета на рабочий стол и обязательно с иконкой в трее.
По поводу виджета - нужно продумать быстрый доступ, чтобы у пользователя не было не приятных эмоций, когда он сворачивает все окна, чтобы добраться до плеера.
Я бы ещё продумал бы идею визуализации адуио-потока.
Ну это всё мои мысли.

Т.е. в общем должен быть понятный для всех интерфейс.

Начинание неплохое!Дерзайте!
Миниатюры
Просьба оценить созданное мной приложение - это видео/аудио плеер  
0
35 / 35 / 5
Регистрация: 16.11.2010
Сообщений: 105
12.03.2012, 14:47
andrey11231990, у времени округли секунды до целого, кому нужны миллисекунды ?
0
 Аватар для Мастер Шифу
969 / 71 / 9
Регистрация: 15.10.2011
Сообщений: 583
Записей в блоге: 1
12.03.2012, 18:13
не работает,ничего не вопроизводит, постоянно пишет Error while loading video fale
0
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
12.03.2012, 20:49  [ТС]
код на кнопку play
mediaElement1.LoadedBehavior = MediaState.Manual;
mediaElement1.Play();

Добавлено через 2 минуты
Цитата Сообщение от bob3 Посмотреть сообщение
andrey11231990, у времени округли секунды до целого, кому нужны миллисекунды ?
так все я округлял, не знаю почему у вас отображаються миллисекунды. У меня и еще на нескольких ПК отображаеться все верно.
А какая у вас ОС, какой фраймворк (версия) и какой тип файла вы воспроизводите?

Добавлено через 1 минуту
Цитата Сообщение от Мастер Шифу Посмотреть сообщение
не работает,ничего не вопроизводит, постоянно пишет Error while loading video fale
какая у вас ос, версия фраймворка, какой тип файла, как пытались открыть файлы (перетащить/кнопка add)?
и если можно, скиньте скриншот
0
35 / 35 / 5
Регистрация: 16.11.2010
Сообщений: 105
13.03.2012, 10:19
andrey11231990, на скриншоте Dj_SheLL'a все прекрасно видно (я про дробную часть секунд)
0
 Аватар для Мастер Шифу
969 / 71 / 9
Регистрация: 15.10.2011
Сообщений: 583
Записей в блоге: 1
13.03.2012, 10:27
Цитата Сообщение от andrey11231990 Посмотреть сообщение
какая у вас ос, версия фраймворка, какой тип файла, как пытались открыть файлы (перетащить/кнопка add)?
и если можно, скиньте скриншот
win xp; .NET c 2 по 4; видео avi, mp4; кодеки XVID, h264
0
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
13.03.2012, 18:15  [ТС]
Цитата Сообщение от Мастер Шифу Посмотреть сообщение
Сообщение от andrey11231990
какая у вас ос, версия фраймворка, какой тип файла, как пытались открыть файлы (перетащить/кнопка add)?
и если можно, скиньте скриншот
win xp; .NET c 2 по 4; видео avi, mp4; кодеки XVID, h264
А вы бы не могли попробовать воспроизводить файл меньшего размера. может в этом проблема. Хотя у меня и еще на одном пк ошибок не было (7 и хр), например 2,5 гб воспроизводит спокойно при любом способе добавления файла. но все же, может это влияет
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
17.03.2012, 17:11
1) Сделай, чтобы при щелчке на ползунке громкости можно было по чуть-чуть добавлять громкость, а не сразу на 100% или на 0%, это вообще один из самых сильных минусов.
2) Цвет фона ниочём. Про градиенты слыхал? В WPF это вообще просто всё делается. Кнопка "Закрыть" никак не анимирована, тоесть вообще не реагирует ни на что, как картинка просто. Короче кнопку надо нормальную.

Попробуй может какой-то такой градиент, тут ещё окно отбрасывает тень. Я не предлагаю свой вариант на прогу ставить, просто посмотри, может что-то придумается, сам сделаешь градиент нормальный:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<Window x:Class="Wpf_Window.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="502" Width="741" WindowStartupLocation="CenterScreen" 
        WindowStyle="None" ResizeMode="NoResize" AllowsTransparency="True" Background="{x:Null}"
        TextOptions.TextFormattingMode="Display"
    >
    <Grid>
        <Border CornerRadius="20" Margin="0,0,10,10" MouseLeftButtonDown="Border_MouseLeftButtonDown">
            <Border.Effect>
                <DropShadowEffect BlurRadius="8" Color="Black" Opacity="0.5" />
            </Border.Effect>
            <Grid>
                <Button Content="Закрыть " Height="24" Margin="0,10,10,0" Name="btnClose" VerticalAlignment="Top" Click="btnClose_Click" FontSize="12" TextOptions.TextFormattingMode="Ideal" HorizontalAlignment="Right" Width="60" />
            </Grid>
            <Border.Background>
                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                    <GradientStop Color="#FF6BE26B" Offset="0" />
                    <GradientStop Color="#FF178D17" Offset="0.992" />
                    <GradientStop Color="#FF34AA34" Offset="0.036" />
                    <GradientStop Color="#FF2ED439" Offset="0.956" />
                    <GradientStop Color="#FF6BFF5F" Offset="0.847" />
                    <GradientStop Color="#FF90EF87" Offset="0.226" />
                    <GradientStop Color="#FF79FF72" Offset="0.124" />
                </LinearGradientBrush>
            </Border.Background>
        </Border>
    </Grid>
</Window>
В довесок к XAML, чтобы запустить можно было быстрее сильно не редактируя XAML
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
 
        private void Border_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            DragMove();
        }
 
        private void btnClose_Click(object sender, RoutedEventArgs e)
        {
            Application.Current.Shutdown();
        }
    }
1
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
17.03.2012, 20:29  [ТС]
Цитата Сообщение от Casper-SC Посмотреть сообщение
1) Сделай, чтобы при щелчке на ползунке громкости можно было по чуть-чуть добавлять громкость, а не сразу на 100% или на 0%, это вообще один из самых сильных минусов.
а вы бы не могли подсказать, каким образом это возможно сделать?
там элемент Slider, но я не знаю, как можно настроить его так, что бы ползунок перемещался на то место, на котором находиться указатель мыши. может есть какой-то специальный метод (событие)? или это нужно вручную отлавливать расположение указателя и соответственно перемещать курсор (если так, то как-то слишком много мороки получиться)?
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
17.03.2012, 21:01
Цитата Сообщение от andrey11231990 Посмотреть сообщение
а вы бы не могли подсказать, каким образом это возможно сделать?
Слайдеру в XAML задай свойство:
XML
1
IsMoveToPointEnabled="True"
Добавлено через 1 минуту
И да, тут уже писали, но всё-таки не давай возможность добавлять в список воспроизведения файлы ненужных форматов, типа *.txt и прочих, а то в плейлист лезет всё чему не лень Другие форматы сам добавь, там всё понятно вроде как добавлять.
C#
1
2
3
4
5
6
7
8
9
10
11
        //нажатие по кнопке "Выбрать" (музыкальный файл)
        private void SelectMusicFileButton_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Filter = "Музыкальные файлы|*.mp3; *.mp2; *.wma; *.wav; *.ogg; *.ogm; *.au; *.aif;";
            bool? result = openFileDialog.ShowDialog(this);
            if (result == true)
            {
                //-------
            }
        }
Добавлено через 51 секунду
Ну так что, тень и градиент окну будешь делать?

Добавлено через 10 минут
Добавь в проект манифест, чтобы кнопки у OpenFileDialog и MessageBox небыли квадратные. Для этого сделай такие действия:
Проект -> Добавить новый элемент. Появится окно, выбери в нём "Файл манифеста приложения". В проект добавится файл, если не будешь менять имя, то он будет называться: "app.manifest", открой его и расскоментируй строки:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
  <!-- Включите темы для общих элементов управления и диалоговых окон Windows (Windows XP и более поздние версии) -->
  <!-- <dependency>
    <dependentAssembly>
      <assemblyIdentity
          type="win32"
          name="Microsoft.Windows.Common-Controls"
          version="6.0.0.0"
          processorArchitecture="*"
          publicKeyToken="6595b64144ccf1df"
          language="*"
        />
    </dependentAssembly>
  </dependency>-->
После этого кнопки не будут квадратные.
1
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
18.03.2012, 00:04  [ТС]
Цитата Сообщение от Casper-SC Посмотреть сообщение
Проект -> Добавить новый элемент. Появится окно, выбери в нём "Файл манифеста приложения". В проект добавится файл, если не будешь менять имя, то он будет называться: "app.manifest", открой его и расскоментируй строки:
раскоментировал - появилась ошибка, в которой говориться, что не может найти файл Microsoft.Windows.Common-Controls. Как это можно устранить?
насчет градиента - последую вашему совету и поиграюсь с цветами
За подсказки - огромное спасибо

Добавлено через 8 минут
и еще есть один вопрос - как можно передавать значения в wpf между окнами?
я хотел сделать плей лист в новом окне, т.е. открывать и закрывать его во время работы плеера и в плей листе делать двойной щелчок ЛКМ и что бы файл воспроизводился и выполнять др. команды. Но вот какая проблема у меня возникла - во втором окне я выбираю файл и делаю, например, что бы он воспроизводился, а этого не происходит. А после этого, вообще сам плеер закрываться не хочет, его нужно в студии останавливать.
Читал, что можно использовать сообщения для передачи каких-либо параметров между окнами, но так и не понял как это делать.
И теперь, сам вопрос - как можно передавать название файла между окнами, что бы можно было реализовать плей лист, как в нормальных плеерах?
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
18.03.2012, 09:11
Цитата Сообщение от andrey11231990 Посмотреть сообщение
и еще есть один вопрос - как можно передавать значения в wpf между окнами?
Ну ты даёшь. Это самая обычная передача параметров в любой метод. Окно тоже обычный класс, так что отличий никаких. Почитай книгу чтоли по C#.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System.Windows;
using Microsoft.Win32;
 
namespace WpfApplication1
{
    public partial class MainWindow : Window
    {
        PlaylistWindow playlist;
 
        public MainWindow()
        {
            InitializeComponent();
            playlist = new PlaylistWindow();
            playlist.Show();
        }
 
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Multiselect = true;
            openFileDialog.Filter = "Музыкальные файлы|*.mp3; *.mp2; *.wma; *.wav; *.ogg; *.ogm; *.au; *.aif;";
            bool? result = openFileDialog.ShowDialog(this);
            if (result == true)
            {
                playlist.SetFilesToPlaylist(openFileDialog.FileNames);
            }
        }
    }
}
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using System.Collections.ObjectModel;
using System.Windows;
 
namespace WpfApplication1
{
    public partial class PlaylistWindow : Window
    {
        ObservableCollection<string> files;
 
        public PlaylistWindow()
        {
            InitializeComponent();
            files = new ObservableCollection<string>();
            listView1.ItemsSource = files;
        }
 
        public void SetFilesToPlaylist(string[] newFiles)
        {
            files.Clear();
            for (int i = 0; i < newFiles.Length; i++)
                files.Add(newFiles[i]);
        }
    }
}
В этом коде смотри как вообще передать параметры, а как и когда отображать плейлист лучше напиши по своему, мне просто небыло смысла сидеть заморачиваться, просто показал окно при старте и всё, чтобы затестить работоспособность примера.
1
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
18.03.2012, 16:54  [ТС]
такой, наверное, смешной вопрос по поводу передачи параметров между окнами:
я делаю так - создаю первое окно, на котором есть кнопка для открытия второго окна и медиаелемент
на втором окне - листвью, в котором отображаються добавленные файлы, кнопка для добавления записей. И событие для листвью - двойной щелчок по элементу списка. в этом событии прописываю вызов метода в первом окне, который должен получить строку с адресом файла, присвоить этот адрес медиаелементу и начать воспроизводить этот файл. Но, чет не начинает воспроизводить. Файлы в листвью добавляються, но не воспроизводяться. Пробовал ставить вызов метода и на кноку (решил проверить, на всякий случай) тоже не помогло.
вызов метода со второго окна
C#
1
2
3
4
private void button3_Click(object sender, RoutedEventArgs e)
        {
            mw.PlayFile(MyList[listView1.SelectedIndex].FirstName);
        }
в первом окне сам метод:
C#
1
2
3
4
5
6
public void PlayFile(string fileName)
        {
            mediaElement1.DataContext = fileName;
            mediaElement1.LoadedBehavior = MediaState.Manual;
            mediaElement1.Play();
        }
что я не так делаю?
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
19.03.2012, 21:27
Тут качай, там сделана передача песен и т.д. в плейлист и из него.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.03.2012, 21:27
Помогаю со студенческими работами здесь

Как создать аудио-видео плеер с плейлистом
нужно написать аудио видео плеер с плейлистом !! отдельно видео и отдельно аудио есть ! как написать плейлист не знаю помогите...

Медиа плеер. Воспроизведение любых форматы видео и аудио файлов
Мне задали курсовой проект - медиа плеер, я накопал на просторах интернета библиотеку с помощью которой можно будет реализовать...

Медиа плеер на directx (выдаёт исключение при попытке воспроизвести видео/аудио файл)
Со стороны кода всё правильно, но выдаёт исключение, не могу найти решение проблемы, не хотелось бы переделывать плеер с помощью windows...

Остановка аудио плеера при клике на другой аудио плеер
Всем привет. На сайт добавил такой вот плеерочек. На странице стоит много таких плееров и нужно, чтобы при клике на один из них предыдущий...

Просьба запустить у себя написанную мной программу и сказать ответ :)
Доброго времени суток. За неимением Матлаба на домашнем компе вынужден попросить кого-нибудь запустить у себя мою программу и сказать какой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru