Ну почему freeware? Покупаем недешевые шнурки, так почему не купить удобный мозг системе - хороший плейер. С хорошим звуком. С удобными плей-листами. С хорошими библиотечно-каталогизаторскими возможностями. С человеческим интерфейсом...
Я немного поэкспериментировал с разными "движками".
1. Самый первый и простой -BASS. Плеер работает без проблем, библиотеки хорошо документированы, пишется легко и непринуждённо, но звук не впечатляет. Как у старого AIMP. Хотя XMPlay использует те же библиотеки, даже хеш одинаковый, а его хвалят. Пример одной из бет.
2. На основе плагинов WinAmp. Звук получше, но по отзывам до APlayer не дотягивает, хотя и принцип тот же и никакой пре- и постобработки. Только вход->выход. Пример одной из бет.
3. На движке NewAC. Выход построен на основе знаменитой OpenAsio. Host полностью соответствует SDK от самой Steinberg.
Это последний, который несколько постов назад выкладывал. На этом движке я плееров не встречал (может не повезло), поэтому и решил попробовать. По-моему, звук лучше двух предыдущих. Но сложнее реализация вывода и привычных приблуд вроде перемотки и настройки asio. Компоненты плохо документированы, приходится копаться в исходниках. Пробовал вариант с предварительным преобразованием в WAV - тоже очень понравился. Софтовый тракт -короче некуда. Но длительное перекодирование перед проигрыванием напрягает.
Цитата:Что Вы хотите сделать? Еще одно что-то мп3шное? Тогда Вы ошиблись форумом.
Возможно и ошибся. Уж простите. А поддержка ogg, mp3 не мешает. Загружается только один декодер, соответствующий открытому файлу, а не все сразу. Это не влияет ни на что, разве что конечный размер exe увеличивается на несколько килобайт.
Честно говоря, мне эти форматы на данном этапе нужны, т. к. иногда получается покодить на работе, а там lossless не держу из-за малых объемов локальных дисков и строгого админа по отношению к сетевым.
(28-05-2012 21:04)Dimid писал(а): 1. Самый первый и простой -BASS.
2. На основе плагинов WinAmp.
3. На движке NewAC.
Пробовал вариант с предварительным преобразованием в WAV - тоже очень понравился. Софтовый тракт -короче некуда. Но длительное перекодирование перед проигрыванием напрягает.
...поддержка ogg, mp3 не мешает...
...lossless не держу из-за малых объемов локальных дисков и строгого админа...
Вопрос не в килобайтах и злых админах! Я не о том...
...пошла Маша в лес по грибы да по ягоды, но вернулась ни с чем. Потому что нужно ставить конкретные цели!
Так что, где-то тусуются аудишные программеры? Хочется про причины разного звучания почитать
ПС. Движки - это не то. Движки - это для уровня good enough, таких плейеров УЖЕ валом. Good enough для аудио мало
(28-05-2012 09:56)Dimid писал(а): Перезалил CuePlayer.
Я понимаю, что ещё много чего нужно, но если звук будет хуже чем в Foobar, то смысла в доведении до ума нет.
Сетап LynxL22 + Genelec 8020A
CuePlayer - заработал.
Сравнивал с Foobar, StealthAudioPlayer, J River - настройки по умолчанию, без добавления "горящей смеси" (всяких улучшайзеров).
Рейтинг (субъективно):
1. Foobar v1.1.11
2. StealthAudioPlayer v0.2.3
3. J River v17.0.91
4. CuePlayer v?
Вывод: у "CuePlayer" есть хороший потенциал.
Ваш плеер найдет своих приверженцев, если есть желание и возможность, продолжайте работу. Возможно через некоторое время "CuePlayer" войдет в тройку ЛУЧШИХ плееров. (Эдисон, для изобретения лампочка накаливания провел более 6000 опытов).
Успехов!
(28-05-2012 22:19)UncleStas123 писал(а): ...пошла Маша в лес по грибы да по ягоды, но вернулась ни с чем. Потому что нужно ставить конкретные цели!
Так цель Вы сами обозначили:
Цитата:хороший плейер. С хорошим звуком. С удобными плей-листами. С хорошими библиотечно-каталогизаторскими возможностями. С человеческим интерфейсом...
Это не делается за месяц и даже год. Я всего лишь набросал макет и просил высказать мнение о звуке, а не о форматах и т.д. Между прочим, ни на одном форуме я ничего не выкладывал. Только здесь, чтобы услышать мнение профи. SAP, cPlay, JPLAY очень хороши. И "достаточно хорошо" это не о них. Только хотелось бы звучания SAP с юзабилити Foobar и чтобы выводил asio or wasapi для build-in и других карточек, не имеющих asio. И без заморочек с выбором. Чтобы сам измерял КНИ на выходе и выбирал лучший результат
Цитата:... Хочется про причины разного звучания почитать
Любой программерский форум содержит ветки аудио. Только если бы было всё известно о причинах, то было бы и то, что выше, чем достаточно хорошо. Из личных наблюдений - любой таймер-зло, передискретизация-зло, воспроизведение с hdd - зло. Лучшее качество - воспроизведение wav из памяти. Таким путём пошли авторы SAP, JPLAY. В них почти нет процессов, которые вклинивались бы в воспроизведение. К примеру, для реализации того же бегунка нужен таймер, в нём пишется код, который будет отслеживать с частотой этого таймера текущее место (или время) воспроизведения. А для определения времени воспроизведения последнего трека в CUE вообще нужно вычислить время всего файла и отнять время начала последнего трека. Всё это на основе битрейта, размера и др. А эти значения ещё нужно преобразовать в удобоваримый формат мм:сс... Т. е. каждый тик таймера выполняются десятки математических вычислений. Получается, что для звука нужно избавляться от всего, что происходит в момент воспроизведения. Сомневаюсь, что кому-то удастся создать что-то лучше SAP по качеству воспроизведения и стабильности, но с удобным интерфейсом. Нужно искать компромис между тем и тем.
А вообще, к любому формату, как in, так и out есть описание, SDK и т.д. В них ответы на все вопросы.
Цитата:ПС. Движки - это не то. Движки обеспечивают good enough, таких плейеров УЖЕ валом...
IMHO, это заблуждение. Зачем заново создавать велосипед, если уже есть один качественный. В большинстве используется не всё подряд, а только части кода и заголовочные файлы к библиотекам. К примеру, поддержка cue кривая в любом движке. Поэтому я использую собственный модуль. А в основном, качественные библиотеки пишутся или самими разработчиками формата, или в соответствии с их рекомендациями. Пример - NewAC использует универсальные библиотеки, которые есть во множестве других программ. Вся проблема не столько в них, сколько в реализации удобств и большом количестве if... then...
(28-05-2012 23:41)Dimid писал(а): Из личных наблюдений - любой таймер-зло, передискретизация-зло, воспроизведение с hdd - зло. Лучшее качество - воспроизведение wav из памяти. Таким путём пошли авторы SAP, JPLAY. В них почти нет процессов, которые вклинивались бы в воспроизведение.
Я не знаю, следят ли участники форума за событиями в зоне APlayer'a, но там сейчас сделана пилотная версия плагина линейки in_out_asio - in_wave.dll. В плагине реализован режим воспроизведения, при котором в приложении почти всё время работает единственный поток драйвера ASIO, считывающий данные из памяти. Когда окно плеера свёрнуто в трей и отсутствует (или отключен в настройках) cue-файл, интерфейсная часть плеера также полностью выключается на время воспроизведения. Поклонникам SAP рекомендую сравнить звук. Выходной плагин при воспроизведении через in_wave_asio не используется. В минимальной конфигурации вместо него можно использовать пустую заглушку out_null.dll из архива add_plugins.zip в папке EXTRAS. Также существенно оптимизирован в отношении потребляемых ресурсов универсальный выходной плагин out_asio.dll.
(29-05-2012 09:46)Igor_A писал(а): Я не знаю, следят ли участники форума за событиями в зоне APlayer'a
Да, слежу и радуюсь Вашим успехам и интересным решениям. Всё абсолютно верно. Минимальная конфигурация, минимальный интерфейс, отдельные потоки = звук.
Цитата:Когда окно плеера свёрнуто в трей и отсутствует (или отключен в настройках) cue-файл, интерфейсная часть плеера также полностью выключается на время воспроизведения
Ваше решение, imho, и есть тот компромис, о котором я говорил выше. Единственное, если позволите, 'НО'. Очень трудно простому пользователю разобраться со всеми имеющимися версиями плагинов. Есть беты, есть облегченные и т.д. Только благодаря ветке на doctorhead можно что-то понять.
(28-05-2012 23:41)Dimid писал(а): Чтобы сам измерял КНИ на выходе и выбирал лучший результат
Боже упаси!
Цитата:К примеру, для реализации того же бегунка нужен таймер
Ну зачем Вам таймер, когда у Вас положение слайдера пропорционально исключительно количеству сыгранных семплов? Там нет времени как такового, зачем там таймеры. Ладно был бы у Вас реальный доступ к прерываниям, тогда это это могло быть красиво, а так...
Цитата:IMHO, это заблуждение. Зачем заново создавать велосипед, если уже есть один качественный.
Дык нетути! Нет одного качественного, есть много каких получилось. И на базе какие-получились движков плодятся какие-получаются плейеры. Только чуть хуже, поскольку на баги тех движков накладываются баги этих плейеров (баги - в широком смысле, включая концептуальные и идеологические), короче GIGO в чистом виде. Но зато библиОтеки с хеддерАми, code reuse, OOP и прочая лабуда
to Dimid. В формате 44.1 звучит достойно, между фубаром (версия 1.1.7) и вашим плеером - разницы практически нет (или скажем так - колеблется в ту или другую строну, списываю на себя ).
Вопрос в другом: как дальше планируете развивать ваш проект?
(29-05-2012 17:59)A.Kot писал(а): Переглянув тему, зацікавився, бо часто слухаю FLAC через Aimp2, але ніякого відгуку про нього не побачив, невже він не достойний уваги
Абсолютно не достоин.
Перфекционист-Затейник.
Пластиково-резиновые калоши и сварочные аппараты не переношу на дух
Я и не говорил, что он мне нужет. Даже наоборот, сказал, что это зло. Просто привёл пример одной из причин разного звучания плееров.
Цитата:Дык нетути! Нет одного качественного, есть много каких получилось...
Простите меня за неосведомлённость, возможно Вы где-то упоминали...
А каким плеером пользуетесь Вы? Абсолютно без сарказма и других нехороших побуждений. Просто хотелось бы узнать, какой плеер из существующих на Ваш взгляд оптимальный?
to nia.
Я ещё не решил, буду ли я его развивать дальше. Это всего лишь наброски. Если буду, то всё-таки сделаю предварительную конвертацию в wav в отдельном потоке, возможно - воспроизведение из памяти, принудительное отключение GUI, ну и что-нибудь вроде проводника по папкам. Я не претендовал на какие-то места в рейтингах и т.д. Просто хотелось бы сделать удобный плеер с хорошим звучанием для себя. Ну, а если кому-то понравится, то буду только рад.
(29-05-2012 20:15)Dimid писал(а): Просто привёл пример одной из причин разного звучания плееров.
Да ну, есть бесконечное множество способов сделать плохо и получить УГ. Куда интереснее, существуют ли объективные предпосылки разного звучания хорошо сработанных плейеров.
Цитата:А каким плеером пользуетесь Вы?
Долгое время пользовался Фубаром. Но релиз ноты последних версий наводят на весьма грустные мысли по поводу будущего этого проекта, и я начал думать об альтернативе. И последнее время пользую сПлей, билд 39.
Но есть мнения, весьма авторитетные, что билд 36 - лучше. И мне хочется понять, для этого есть объективные предпосылки, или сПлей просто еще настолько сырой, что у него основная функциональность плавает от билда к билду
Цитата:какой плеер из существующих на Ваш взгляд оптимальный?
- Пришлите нам лучших!
- Лучших уже разобрали.
- Тогда пришлите лучших из худших!
Вот так и с плейерами.
У разработчика-одиночки, да еще и не на фуллтайме, ресурсов с гулькин нос. И если и этот мизер использовать на реализацию всяких глупостей типа мп3, или разных аре с wv-вами, то на действительно важное внимания и сил не хватит, и в результате будет пшик. Но если амбиции не выходят дальше, чем "для себя", то тут конечно...
(29-05-2012 20:55)UncleStas123 писал(а): И если и этот мизер использовать на реализацию всяких глупостей типа мп3, или разных аре с wv-вами,
К плееру привыкаешь как к жене... Если есть плеер хорошо играющий лосслесы, то поневоле хочется пользоваться только им одним, в том числе и для воспроизведения "ущербных" форматов, подсознательно думая, что и их он играет лучше всех )))
А что не так с аре и вэйвами?
Для инфы.
Возникли у меня проблемы с звуковухой, полностью разобраться не получилось, и решил я пока поюзать бортовую звуковушку. Спаял проводок и подключился в разьем материнки http://fotohost.org/images/a19e03af-85kB.jpg
Играет приемлемо хочу заметить, вывожу с материнки цифру через SPDIF и кидаю на ЦАП. Провод сделал ужасный, дешевый RCA разъем через переходник(мама-мама) к другому кабелю RCA-RCA который тоже не ахти, и тем не менее играет неплохо, как временный вариант пойдет. Звучит в любом случае лучше, чем аналоговый вывод с M-Audio Audiophile 2496.
Так вот, с этим трактом я не услышал разницы между фубаром 0.8.3 и 1.1.12. Выводил в обоих случаях через assio4all. По идее так быть не должно, сам в шоке, раньше когда слушал без цапа напрямую с карточки по аналогу слышал разницу между этими версиями проигрывателя, выводил правда через родное ASIO которое с дровами идет.
Подскажите, в виндовс 7 фубар как лучше настроить(KS,WASAPI, итд) и какой версии ?. Фубар интересует потому что слушаю в режиме “нирвана”, создаю плайлист и слушаю в течении часа-двух, не дергаясь на переключение треков, могу даже прикорнуть.
Можете обосновать? В моем случае через KS фубар играл лучше вне зависимости от версий... звук выводил через неплохой usb/spdif конвертор без поддержки ASIO
"Совершенная музыка приводит сердце в точно такое же состояние, какое испытываешь, наслаждаясь присутствием любимого существа, то есть музыка дает, несомненно, самое яркое счастье, какое только возможно на земле" ...(Стендаль)
Можете обосновать? В моем случае через KS фубар играл лучше вне зависимости от версий... звук выводил через неплохой usb/spdif конвертор без поддержки ASIO
Вернулся снова к прослушиванию плеера SAP. И как обычно, для своего удобства, сделал управление плеером на рабочем столе ( как на скрине).
Может кому пригодится - поэтому напишу для всех.
1. Создаем ярлыки на рабочий стол, файлов : StealthAudioPlayer_Next.bat, StealthAudioPlayer_Pause.bat и так далее.
2. Тыкаем ПКМ на ярлык/свойсва/ сменить значок. Оно что-то матюкнеться ( а может и нет), и выбираем иконку ( из архива ниже (всего три комплекта иконок закинул)) с соответствующим действием к нашему файлу.
3. Далее берем и переименовываем на пустое имя. Для этого на первый ярлык жмем переименовать и зажав левый alt, набираем на num lock-e , числа 255, не отпуская Альт. И ентер. Следующий файл, с таким же именем не может быть, поэтому мы набираем Альт 255 , отпускаем , и повторяем комбинацию Альт 255. И так все файлы.
У кого Вин 7, то в имени при одном нажатии на ярлык - ничего не будет, а у кого XP, то при выделении будет синяя полоска на месте имени.
4. Для того что бы убрать значок ярлыка - качаем прогу Fx Visor (скачать отдельно нужной нам разрядности) и запустив ее, выбираем no arrow.
ps Может у кого есть еще предложения, как облегчить управление SAP-ом, то интересно узнать.
pss В идеале, было бы круто назначить управление им, на кнопки пульта для ПК.