Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.01.2015, 09:25
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Получить длину MP3 файла
Доброго времени суток!

Собираю аудио-модуль (на подобии ВК). При загрузке MP3 на сервер, мне нужно получить длительность трека для записи в БД.

Целые библиотеки ради этого подключать не хочется. Можно ли как-нибудь решить эту проблему без использования библиотек?

Заранее всем спасибо за ответы!
Ответить с цитированием
  #2 (permalink)  
Старый 06.01.2015, 10:38
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А ты изучил вообще эту тему? Как в теории можно рассчитать длину?
Она в заголовочной части файла прописана? Или там только битрейт прописан, а длину надо рассчитывать? В любом случае - чтение mp3 формата - гемор. Не подключишь стороннюю либу - так напишешь свою (только зачем??)
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 06.01.2015, 11:14
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

danik.js, я не знаю как этот формат устроен внутри, если бы знал, то не создавал бы эту тему.

Сообщение от danik.js
Не подключишь стороннюю либу - так напишешь свою (только зачем??)
Это одно и тоже, что подключать jQuery ради одного метода. Зачем подключать либу с кучей методов для работы с аудио файлами? Мне всего-лишь нужно только получить duration аудио файла, больше мне нигде не нужно будет работать с аудио.
Ответить с цитированием
  #5 (permalink)  
Старый 06.01.2015, 13:11
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 458

А на клиенте ли не проще это сделать?
var audio = new Audio();
	audio.onloadedmetadata = function() { 
		console.log(this.duration);
	};
	audio.src = 'песенка.mp3';
Ответить с цитированием
  #6 (permalink)  
Старый 06.01.2015, 13:23
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Rise, получить длину на клиенте и затем отправить на сервер вместе с остальными данными - не катит, ибо любой "дурак" сможет запросто подменить значения. Поэтому мне нужно делать все проверки на сервере.

Если ты имеешь ввиду получение длительности при воспроизведении, то - тоже не катит, т.к. у меня будет аналогично ВК: список аудио, около каждого из-них показана длительность, а пробегаться циклом по каждому и получать длину по событию loadedmetadata - изврещение. Ещё при том, что вызов события осуществляется только после буферации (начала воспроизведения).

Deff, открыл хабр, обрадовался, а ссылка на PHP код битая.

Последний раз редактировалось ruslan_mart, 06.01.2015 в 13:37.
Ответить с цитированием
  #7 (permalink)  
Старый 06.01.2015, 15:15
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Rise, натыкался сегодня на эту ссылку, но плохо присмотрелся. Спасибо, работает.

Ответить с цитированием
  #8 (permalink)  
Старый 08.01.2015, 12:12
Аватар для Zend
Профессор
Отправить личное сообщение для Zend Посмотреть профиль Найти все сообщения от Zend
 
Регистрация: 28.11.2009
Сообщений: 328

ffmpeg не вариант установить?

http://habrahabr.ru/post/171239/
Ответить с цитированием
  #9 (permalink)  
Старый 08.01.2015, 14:11
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Zend, вариант, то на хостинге его нет.
Ответить с цитированием
  #10 (permalink)  
Старый 08.01.2015, 14:48
Аватар для Zend
Профессор
Отправить личное сообщение для Zend Посмотреть профиль Найти все сообщения от Zend
 
Регистрация: 28.11.2009
Сообщений: 328

Ruslan_xDD,
Если проектов несколько, то есть смыл рассмотреть вариант недорогого VPS и поставить туда всё что нужно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать битрейт mp3 файла? Dimaz Общие вопросы Javascript 0 26.09.2014 16:40
Как получить текст/код внешнего файла .js SellOut.Name Общие вопросы Javascript 2 27.08.2011 14:42
Получить содержимое HTML файла через input Battleprof Events/DOM/Window 5 13.06.2011 14:51
Как получить имя файла и изменить его? nedosalivan Общие вопросы Javascript 5 29.03.2010 17:51
Возможно ли получить данные из файла на сервере? sdff Общие вопросы Javascript 11 19.07.2008 20:48